fb39ca4 Posted June 26, 2014 Share Posted June 26, 2014 (edited) The Bad Apple video has been made to display on many retro systems, such as the Sega Megadrive, Gameboy Color, NES, Pokemon Mini, and IBM PC. I've also written a version for the TI-84+ SE calculator. I decided to try my hand at making one for the Atari 2600. Features/specs: 3:40 of monochrome video 40x32 resolution at 20FPS 512KiB 3F ROM NTSC Lossless compression - video data fits in under 390KiB as opposed to 685KiB uncompressed. Kernel capable of displaying at 60FPS Unfortunately, there is no sound. The melody to the song has a very wide range, though, so I don't think it would sound good on the 2600's sound hardware anyways. The ROM is attached if you want to try it out. I've only tested it on emulators, so try it on real hardware at your own risk. badapple6-25-14.bin Edited June 26, 2014 by fb39ca4 13 Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/ Share on other sites More sharing options...
Rybags Posted June 26, 2014 Share Posted June 26, 2014 Cool... now we just need it for the computer line. Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3018570 Share on other sites More sharing options...
John_L Posted June 26, 2014 Share Posted June 26, 2014 really neat, well done! Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3018847 Share on other sites More sharing options...
fb39ca4 Posted June 27, 2014 Author Share Posted June 27, 2014 I finally figured out how to record a video. I used Z26, MSI Afterburner, and the Lagarith codec. Still need to figure out how to crop it properly and make sure the on screen display doesn't show up though. What is the generally accepted setup for recording 2600 emulator footage? https://mediacru.sh/2Iz0XX05Es2Q 1 Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3019265 Share on other sites More sharing options...
John_L Posted June 27, 2014 Share Posted June 27, 2014 I use cam studio, it's free, easy to use, and can record a specific window if you want rather than the entire screen... should work well. Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3019273 Share on other sites More sharing options...
+nanochess Posted June 27, 2014 Share Posted June 27, 2014 You could use a tracker like the NES version for playing a simple rendition of the music, only 4 bytes more (tone and volume for each channel) at 60hz. Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3019323 Share on other sites More sharing options...
raindog Posted June 27, 2014 Share Posted June 27, 2014 https://mediacru.sh/2Iz0XX05Es2Q Off-topic, I realize, but thanks for turning me on to Mediacrush. Youtube has been getting very, very irritating over the last year or two and it's nice to see an open-source competitor that's not designed to promote a failed social network. 1 Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3019531 Share on other sites More sharing options...
fb39ca4 Posted June 27, 2014 Author Share Posted June 27, 2014 (edited) You could use a tracker like the NES version for playing a simple rendition of the music, only 4 bytes more (tone and volume for each channel) at 60hz.The other issue apart from tuning is that the beats of the music do not line up with 60Hz. From the TI-84 version, I discovered 32nd notes play at 18Hz. Back then, I had interrupts, so it wasn't a problem. Here though, there still just might be a way, but then I still have to deal with the poor tuning. Off-topic, I realize, but thanks for turning me on to Mediacrush. Youtube has been getting very, very irritating over the last year or two and it's nice to see an open-source competitor that's not designed to promote a failed social network.Mediacrush is a nice service, but it serves a different purpose from YouTube. YouTube, apart from providing hosting, also lets people discover new videos with searching and reccomendations. Mediacrush is more like an image host, but for pictures, audio, and video. You have to link to the content on another site for it to be visible. I use Mediacrush for quickly sharing things with people, while I use YouTube for a final video. Edited June 27, 2014 by fb39ca4 1 Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3019612 Share on other sites More sharing options...
fb39ca4 Posted July 1, 2014 Author Share Posted July 1, 2014 I've got a 30FPS version somewhat working now. It is supposed to use a 512K ROM/256K RAM 3E cartridge. It decompresses data into the RAM beforehand, allowing for more efficient compression that would not work on-the-fly. Problem is, Stella seems to be only supporting 32K of cartridge RAM. If you try and run the ROM, it looks like mostly garbage, because data going into the RAM gets overwritten by data that was supposed to go into a later bank. I've got the original version, if anyone does know of an emulator that supports 256K RAM, and I have a shortened version that only needs to decompress to 32K so you can see it work. Make sure to set it manually to a 3E cartridge - Stella does not seem to autodetect it. badapple6-30-14.bin badapple6-30-14short.bin Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3022375 Share on other sites More sharing options...
LS_Dracon Posted July 1, 2014 Share Posted July 1, 2014 How about a 12 fps version with twice vertical resolution? Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3022564 Share on other sites More sharing options...
fb39ca4 Posted July 1, 2014 Author Share Posted July 1, 2014 Did you mean to say 15FPS? That would be ideal when the source material is 30FPS. That would be doable. I'm currently doing 6 scanlines per row of pixels, with each scanline loading part of the data for the next row of pixels, but I have just enough time to do it in three scanlines if I wanted to. I prefer higher framerates, however. Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3022825 Share on other sites More sharing options...
LS_Dracon Posted July 2, 2014 Share Posted July 2, 2014 12 Actually, movie half frame rate (24 fps). But 15 fps works too. I think the opposite, image would look better with more resolution than framerate, you have more detail and time to look at. Good demo BTW. Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3022897 Share on other sites More sharing options...
fb39ca4 Posted July 2, 2014 Author Share Posted July 2, 2014 No, the original video is 30FPS. And I actually just realized adding more vertical resolution might be an issue because I am currently using 3 bytes of RAM per row of vertical resolution that stores the bank and address of where the data for each row is located. 32 rows x 3 = 96 bytes, which gives me just enough space for everything else. In the ROM, it is packed into 2 bytes per row and everything for the frame about to be rendered is unpacked in the VBLANK. I could read the two bytes from ROM and then unpack it on the fly, but I don't think I have time for that in a three scanline kernel. Meanwhile, I'm making progress on a 40x32@30FPS version that should run with only 32K cartridge RAM. It'll all be dependent on how good the compression turns out. 1 Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3022979 Share on other sites More sharing options...
fb39ca4 Posted July 8, 2014 Author Share Posted July 8, 2014 (edited) I finished the 30FPS version this weekend. It also only 414K of ROM, meaning there is going to be plenty of space left over for the music I'm working on. This version decompresses data in the background to the 32K cartridge RAM, so make sure you run it as a 3E ROM. The screen changes between red and green to illustrate when the decompressor is running and not running, respectively, but I'll of course remove that in the final release. Right now, however, the ROM only works in Stella, and not Z26, which has me worried. Can someone with a real 2600 and flashcart try this and report back if it works? I have neither, so the testing would be much appreciated. On another note (pardon the pun), does Stella only check the state of the TIA sound registers once per frame? Because I am trying to update the registers at 36Hz, and the timing of the notes sounds very off. At 30Hz, everything sounds fine, but then the music plays too slow for the video. badapple-7-7-14.bin Edited July 8, 2014 by fb39ca4 3 Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3027070 Share on other sites More sharing options...
LS_Dracon Posted July 10, 2014 Share Posted July 10, 2014 No, Stella change sound as will just like graphics. You can see some techniques in games like Stella's Stoking menu, where one sound channel register is changed every scanline, to create, by software, multi channel music (with quality) like in pitfall 2 (this last uses a special chip for this). Naturally, this takes a lot of processor time. Give a search here and you will find many information about it. 3 Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3028610 Share on other sites More sharing options...
+SvOlli Posted November 16, 2014 Share Posted November 16, 2014 It would be interesting if this demo can be changed in a way to run on the Harmony Encore, so we can enjoy it on real hardware... 1 Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3114390 Share on other sites More sharing options...
Andromeda Stardust Posted November 16, 2014 Share Posted November 16, 2014 (edited) Does the Encore support 512Kbytes of ROM and however much RAM this video demo eats? Also, everything but the file in the original post are completely scrambled in Stella 4.x Edited November 16, 2014 by stardust4ever Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3114401 Share on other sites More sharing options...
+batari Posted November 23, 2014 Share Posted November 23, 2014 Does the Encore support 512Kbytes of ROM and however much RAM this video demo eats? Also, everything but the file in the original post are completely scrambled in Stella 4.x it has a total 32k flash and 520k RAM so yes, in theory this scheme could be supported. Just barely Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3119338 Share on other sites More sharing options...
fb39ca4 Posted November 24, 2014 Author Share Posted November 24, 2014 I finally found the time to work on this again, and I finished up the music. Here's the video: https://www.youtube.com/watch?v=Ko9ZA50X71s And here is the ROM. Remember to launch it in Stella using 3E bankswitching. BadApple1_0.bin 9 Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3119932 Share on other sites More sharing options...
Tjoppen Posted November 26, 2014 Share Posted November 26, 2014 Not too shabby Now do it with a 96 pixel kernel and a custom 5-bit synth! Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3121630 Share on other sites More sharing options...
+JAC! Posted November 26, 2014 Share Posted November 26, 2014 I like the 1.0 version. Nice touch on the music and really good for VCS actually. Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3121763 Share on other sites More sharing options...
Godzilla Posted January 21, 2015 Share Posted January 21, 2015 dang this is awesome! Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3158523 Share on other sites More sharing options...
+Zeptari Posted April 8, 2015 Share Posted April 8, 2015 Can this be scaled down to run on the Harmony cart? Is there a list of intro type demos that run on the original Harmony cart? Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3214369 Share on other sites More sharing options...
Andromeda Stardust Posted April 8, 2015 Share Posted April 8, 2015 Can this be scaled down to run on the Harmony cart? Is there a list of intro type demos that run on the original Harmony cart? It can supposedly run on the Harmony Encore, if the powers that be choose to support it. Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3214391 Share on other sites More sharing options...
ZylonBane Posted April 9, 2015 Share Posted April 9, 2015 Awesome, I'd never even heard of the original video before. Have now watched it an unhealthy number of times. If this frame engine really is capable of running at 60 FPS, I wonder how it would look to use temporal dithering (30Hz flicker) to simulate an intermediate grey color. Granted, doubling the frame rate would blow up the ROM size even more. Quote Link to comment https://forums.atariage.com/topic/226949-bad-apple-full-motion-video-on-the-2600/#findComment-3215013 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.