================================================================================ Atari ST - The Snowman Converted To OpenGL By Jeff Molofee ( NeHe ) http://nehe.gamedev.net - 2002 ================================================================================ This was one of my favorite Atari ST demos back in the day. I toyed with the idea of porting it to the PC many years ago, but always ran into problems trying to grab both the graphics and the sounds from this demo. The original soundtrack is a raw audio format. Sounded raspy on my Atari Ste and just as bad using Steem (emulator). After converting the audio I was happy to hear that the quality of the sample is not really all that bad. The resulting WAV file sounds good, and is almost the exact same size as the original audio file. The audio file is the only file from the original Atari ST demo that must be replaced. I didn't feel like making a player :( The video was a completely different story, and took many hours of late night coding and many more hours reading documentation from the net. The file snowbit1.neo contains the text you see on either side of the animation. NEO for those of you that have never heard of it is an Atari ST format created by an art program called NeoChrome. NeoChrome is not all that complex. However, it's a 4bpp image with a resolution of 320x200. Not exactly an OpenGL friendly format. The bits are reversed, and each palette index is created by calculating the bits on all 4 bitplanes per pixel (alot of work). Alot of struggling, alot of reading the NEO specs and alot more struggling. Many hours later, I finished coding a basic loader able to convert the image to a 24bit RGB format. YAY!!! The video file snowmain.dat was a little trickier. I wasn't really sure what type of data was in the file. I spent almost an entire day trying to extract data. I went through the entire file with a hex editor at least 20 times. I searched the net for information on the "grabber" software mentioned on the main screen. In the long run, I discovered that the data inside this file is actually NeoChrome images without the header (YAY again!!!). 75 images to be exact. Each image 160x100x4bpp. Which means each image is 16000/2 bytes or 8000 bytes. 8000*75=600000 which is exactly the size of snowmain.dat. I wrote a quick console application to rip all the images from the file. I did this in order to map out each frame and so I could grab the colors from each frame using Adobe. The exported files are .IFF format... a nice AMIGA format that is very similar to .NEO. Instead of every bitplane being stored one after another, .IFF's store each bitplane on a seperate line. Plus Irfanview loads .IFF files (more good news). After extracting the data, building a palette, resampling the sound, and coding the NeoChrome loader, I started on the animation. More work! It turns out that the 75 frames of animation are not in order, and some frames are used multiple times. I actually had to watch the original demo at 10% speed in order to write out a list of which frame to display and how long to keep it on the screen. All in all, it was a long process, but like any project I pushed myself, and learned alot of new things in the process. I hope you enjoy the port as much as I do! * It's interesting to note that there is a frame of animation (frame 13) that is not used in the demo. It's a single picture of a house. Not sure if the original coder forgot to include it or if it's just one of them mysteries :) Please share this file with as many people as you can. Hopefully this demo motivates other Atari fans out there. It would be nice to see some of the classics brought to life on the PC! As mentioned above, if you already have the ST version of this demo... copy The Snowman.exe into the directory. This demo works with the original Atari ST files! ** HUGE RESPECT to the original coders!!! ================================================================================ Original Readme Follows ================================================================================ Welcome to The Snowman, a Christmas demo brought to you directly from the Atari Land of Plenty -- West Germany. This demo was created using ST Replay 4 to digitize the music and The Grabber to digitize and animate the graphics. This demo requires a color monitor, double-sided drive and at least one meg of memory to run. YOU MUST FORMAT THE DISK TO 82 TRACK, 10 SECTORS as the files are over 800K when unarced. Simply unarc to the double sided disk, create an AUTO folder and copy RUN.PRG into this folder. Then, simply reboot with your newly-created disk in Drive A. Brought to you from: ST VISION International User Group Postfach 1651 D-6070 LANGEN West Germany via Unicorn Publications (makers of Atari Interface Magazine) 3487 Braeburn Circle Ann Arbor, MI 48108 (313) 973-8825 ================================================================================