These are a couple x86 asm graphics toys I made a while ago. I lost most of my old programs, but these managed to survive, and still actually run! There's no real explanation as to how the effects work, and you won't understand what a lot of the code is doing unless you're familiar with old school interrupts & ports, but they're interesting nonetheless.
Note: Screenshots are 640x400, but the actual programs run in 320x200x256 aka video mode 0x13
The zip contains the example source code, turbo assembler & linker and batch files required to build the examples.
water.asm - water.com
Water effect in 256 bytes. A mouse controlled disturbance with periodic "rain drops", the water pass is slightly wrong
because it doesn't clip at screen edges
bump.asm - bump.com
160 byte 2d bump map effect with crappy fake highlight. The mouse controls the highlight
fire.asm - fire.com
Fire effect with text drawn with the system font. The mouse (again) controls the wandering flame and the palette ramper is more interesting than the fire effect
water2.asm - water2.com
I made this just for this page out of the water & bump programs. It's actually just the water program with
@show_water replaced with @render_bump which was ripped out of
bump.asm.
Here's a couple of the DOS tricks used that I can remember: