Sunday, April 7, 2013

Floppy Decoding Code for the 6502...

Here's a wonderful post talking about the process of writing code that decoded floppy disk data read in realtime, on a 6502 processor.  Readers who are geekly and of a certain age will identify with this.  Younger folks will probably just shake their heads at the lameness of their elders :)

What struck me about this post was the way the author brings back the challenges of programming on those old, slow microprocessors – and the way we engineers glommed onto tricks like the “illegal” op codes (almost every microprocessor had them).  I never wrote any code that decoded floppy data, but I did many other similarly challenging things.  A couple that spring to mind: variable-slew stepper motor control (to speed up and quieten floppy disk positioners) and realtime FSK radioteletype decoding, with multipath and single-side dropout handling.  Both of these would be trivial today; your average smartphone could do it in a high-level language.  But back then, the microprocessors could only do things like that if you pulled out every trick in the book, and perhaps invented a new trick or two along the way...

No comments:

Post a Comment