3 ms·
Completely stock. The floppy drives can crank out a byte every 32 microseconds giving a theoretical maximum of 30.5 KB/second. Then you lose some to seeking a
by gp2000 12y ago
Completely stock. The floppy drives can crank out a byte every 32 microseconds giving a theoretical maximum of 30.5 KB/second. Then you lose some to seeking and other overhead. A full screen is 1 KB so 30 FPS is within reach (I'm only doing 25). Actually, a graphics screen of 128 x 48 can be encoded in 768 bytes. Finding time to do the unpacking is the tricky part.
The floppy reading and and video/audio display are completely interleaved. The program works in 32 microsecond steps with 13.5 microseconds dedicated to reading the disk and 18.5 microseconds spent on graphics and audio update. These two conceptional threads communicate via a 32 KB ring buffer.
You can hear the disk seek a few times before the display starts as it builds up some buffer. I imagine a graphics display could be managed at a coarser level of interleaving at the expense of floppy bandwidth. Audio, however, needs constant servicing to work at all.