

GCR decoding on the fly - silentbicycle
http://www.linusakesson.net/programming/gcr-decoding/index.php

======
userbinator
It's always nice to see just how far people have taken the C64's extremely
limited hardware; one thing that's surprising to many is that the floppy drive
contains a CPU identical to the one in the main unit.

The rest of his site is very interesting too - I think some of his other
articles have made it onto HN before. I like that he has a series of articles
on obfuscated programming:

[http://www.linusakesson.net/programming/obfuscation.php](http://www.linusakesson.net/programming/obfuscation.php)

...and below that, another series titled "sane programming":

[http://www.linusakesson.net/programming/index.php](http://www.linusakesson.net/programming/index.php)

His demos are worth watching too.

~~~
weinzierl
"one thing that's surprising to many is that the floppy drive contains a CPU
identical to the one in the main unit."

I don't know of other applications but there has been a Mandelbrot program
that used the processor in the floppy as a co-processor.

The C64 has a 6510 processor and the 1541 floppy has a 6502. As far as I
remember the only difference are 4 additional IO ports that the 6510 has and
that the C64 uses for (memory) bank switching. So for computational purposes
the processors are identical.

~~~
vidarh
8 IO ports. The C64 uses 4 of them for bank switching, and 3 of them to
control the tape drive.

I seem to remember the 1541 can work with a 6510 too. And the C64 might
possibly work with a 6502 too as long as you hardwire the right pins to +5 or
ground to get the default memory banks (but the tape drive will be
inaccessible).

The 1541 also contains two IO chips - the 6522 VIA that are almost compatible
with the 6526 CIA chips in the C64 to the extent that you can "repair" a C64
by pulling the IO chips from the disk drive. I did that as a temporary measure
once or twice. They are pin compatible, but the 6522 lacks the real time clock
of the 6526, but pretty much no software ever uses the realtime clock (the
6522 have timers instead).

The 1541 really is a pretty complete computer. A lot of the early Commodore
designs (and others) really foreshadow modern designs where everything has
steadily moved to more CPUs again, unlike typical early PCs that burdened the
main CPU too much (one of the reasons - in addition to the OS - that the
Amigas felt so responsive even when compared against PCs with faster CPUs).

A few years before it came on the market, people would've paid good money for
a device like that to use it as a computer rather than a disk drive...

------
genericacct
The best part of the site is his piano rendition of the Martin Galway
soundtrack of a c64 videogame called "parallax" \-- check it out.

~~~
vidarh
I have it on my music player. It could do with better recording quality, but
it's great anyway..

