8 ms·
I was just thinking that what the NES really needs is the world's slowest disk drive.
by KerrAvon 5y ago
I was just thinking that what the NES really needs is the world's slowest disk drive.
- Zenst 5y agoI'll defrag that for the younger audience - the commodore 64 had a slow external disc drive and best explained "The 1541 was very slow in loading programs because of a poorly implemented serial bus, a legacy of the Commodore VIC-20" https://en.wikipedia.org/wiki/Commodore_64_peripherals#Floppy_disk_drives https://en.wikipedia.org/wiki/Commodore_64_peripherals#Flopp...
- reaperducer 5y agoI'll defrag that for the younger audience Does the younger audience even know what "defrag" is? I don't think I've defragged a drive since the days when you could magically make more RAM and storage appear by running Stacker.
- corysama 5y agoIf you think Stacker was cool, check out the details of the compression algo that underlied SoftRAM95 ;) https://devblogs.microsoft.com/oldnewthing/20211111-00/?p=105897 https://devblogs.microsoft.com/oldnewthing/20211111-00/?p=10...
- squarefoot 5y agoThe 1541 was slow also because of the firmware. There was this kit that I bought sometime in the 80s which, if memory serves, consisted of EPROMs and a small board to be swapped into the C64 and the disk drive in place of their original firmware, then a parallel cable to connect the drive to the C64 via the user port. The firmware also added a much more advanced BASIC interpreter and some utilities. Curiously, by using the parallel cable disk operations became dramatically faster than with the original DIN connector as expected, but if I removed the parallel cable say because I needed the user port, it continued to work, clearly not at the same speed, but still a lot faster than when using the original ROM, so there probably was some room for optimization in the original firmware too. Unfortunately I can't remember the name of that kit, it was one of the many "turbo" this or that on the market at that time, and by today standards looked definitely homemade.
- selcuka 5y agoEven using the stock serial cable you can make the disk drive much faster (up to 19kB/sec) with software: https://www.c64-wiki.com/wiki/Transwarp https://www.c64-wiki.com/wiki/Transwarp
- OneLeggedCat 5y agoThere was a cartridge you could buy and shove in the back that made everything load about 5x. I wish I could remember the name of it. --edit-- ah here it is https://en.wikipedia.org/wiki/Epyx_Fast_Load https://en.wikipedia.org/wiki/Epyx_Fast_Load
- fistynuts 5y agoI recently bought a C64 and was recommended this modern replacement, it works with the vast majority of games https://www.thefuturewas8bit.com/shop/commodore/eflr.html https://www.thefuturewas8bit.com/shop/commodore/eflr.html
- orionblastar 5y agoSome of the modern clones of the C64 use JIffyDOS built into the Kernel for faster loading from 1541 drives. The 1541 drive has a 6502 CPU and built in DOS (Commodore DOS not MS-DOS) firmware. It is like getting a whole different computer in the floppy drive which is why it was so expensive.
- EvanAnderson 5y agoThere's some nice background here: https://www.lemon64.com/forum/viewtopic.php?t=52439 https://www.lemon64.com/forum/viewtopic.php?t=52439 The Ultimate 1541 talk is also great: https://www.youtube.com/watch?v=_1jXExwse08 https://www.youtube.com/watch?v=_1jXExwse08 The 1541 maintained compatibility with the VIC. The VIC had very slow firmware routines to communicate with its 1540 disk drive because a shift register in the 6522 VIA chip didn't work properly. The C64 had an improved VIA with a working shift register. The 1541 attached to a C64 was going to be much faster than the 1540 and the VIC. A board rework in the 1541, however, removed a trace needed for the high-speed operation, so the 1541 and a C64 ended up being no faster than a 1540 and a VIC (and actually slower because the VIC-II in the C64 needed to take control of the bus periodically introducing jitter in the communications).
- EvanAnderson 5y agoI've been trying to find a reference to the board rework removing the high speed serial capability. I heard about it originally in a video or podcast and I'm going to do some digging to find that. To correct the record, though, the board rework story references the C64 motherboard and not the 1541 board.
- vinkelhake 5y agoAlso worth checking out: http://www.quiss.org/freespin/ http://www.quiss.org/freespin/ This is a demo running entirely on the 1541 using a hacked together connector from the drive's serial out to a monitor. Audio is generated using the stepper motor.
- kingcharles 5y agoo_O What's amazing is that it's actually a neat demo with cool music. And the only additional hardware it uses is ONE RESISTOR.
- Zenst 5y agowow, now that is some serious hacking and mind-blowing. Probably one of the best abuses of hardware I've seen for a while.
- pigeons 5y agoYet it was so much faster than the cassette drive!
- IcePic 5y agoAnd both of them are really fast nowadays with the recent fastloaders. Some 10 kbit/s for tape with https://csdb.dk/release/?id=212586 https://csdb.dk/release/?id=212586 and either https://csdb.dk/release/?id=189130 https://csdb.dk/release/?id=189130 or http://www.linusakesson.net/software/spindle/v3.php http://www.linusakesson.net/software/spindle/v3.php for 1541 giving you some 6-8 kbyte/s all without extra hardware, just better code. Crazy but true.
- Hackbraten 5y agoHere’s also an amazingly detailed writeup of one such optimization attempt, GCR on-the-fly decoding: https://www.linusakesson.net/programming/gcr-decoding/index.php https://www.linusakesson.net/programming/gcr-decoding/index....
- rzzzt 5y agoI can't find any stats on the Famicom Disk System, but it was probably not a beast.
- anyfoo 5y agoBelieve me, it was very hard to make a slower disk system than the C64 had with the 1541 even back then, and even compared to older hardware. Others in the thread already elaborated why it came to that: A sequence of accidents led to the bus being bitbanged in a terrible way.
- bullen 5y agoThat and one button joystick! But fortunately for us RR-Net and Nunchuk64 solves both problems. I load Super Mario Bros. 64 in 1 second over ethernet with codenet from my PC and then I play it with NES Mini I2C controller on C64!