Sweating the small stuff
Posted by Trixter on January 13, 2008
I formally committed to a talk at Block Party 2008 and informally committed to a wild compo entry. The former I must deliver on; the latter I want to deliver on. I’m just so high-strung about both that I’m not so sure about the latter.
My idea for a wild compo entry was an old-school style megademo for a stock IBM PC with CGA. (To date, there has been only one, by Sourcerers, back in 1989.) By “stock”, I mean no hard drive, no sound blaster… just a floppy drive and the PC speaker. But nothing is as simple as it sounds, and so I find myself in the following thought process:
- A megademo will need sound, or else it will not impress.
- The sound engine must not impact the onscreen full-framerate effects, and must use the PC speaker.
- The only type of sound engine that could do such a thing is a simple arpeggiator.
- There are no trackers that can write or play such music, especially using 60Hz as a timebase (most MOD-style trackers use 50Hz).
- I will have to create such a playback engine, and hope I can optimize it to work in a handful of scanlines.
- I must write a tracker to create the data that will be used to test such an engine.
So tonight I found myself writing a PC Speaker tracker. I’m calling it “BeeperTracker” so that the initials can be “bt” to deliberately avoid being called “st” because that would be sacrilegious. Tonight’s accomplishment? Spending 2 hours writing docs (planning) and 1 hour populating a frequency table with the twelfth root of 2.
I’m so screwed.