The 1541-III was my very first big project. It brought me a lot fun (and fame) in the Commodore retro computing scene. When I started this project I could not have known about the attention it would get (as seen from my perspective). The prototype of the 1541-III was presented to the public at the HCC Commodore club meeting in Maarssen in februari 2006. The attention it got made me realize that it should be made into a project everyone could build themselves, so a redesign was made and was available at the end of2006. From then on a lot of things changed in the Commodore retro scene. The most important is perhaps the 1541-ultimate ( http://www.1541ultimate.net/content/index.php) This is an FPGA based cartridge that is capable of a near 100% compatibility with the 1541 and 1541-II diskdrive. Although this is a cartridge is also connects to the IEC bus, this way you'll have the benefits of both worlds. So if you are a real retro fan and like playing lot's of C64 games from .D64 or cartridges, I suggest you'll try this device. My gues is that it will be the last cartridge you'll ever plugin.
But back to the 1541-III and it's effect it had on other people. After seeing the 1541-III project Lars Ole Pontoppidan decided that he would build a similar device according his own design using a different microcontroller, he called it the MMC2IEC (http://pontoppidan.info/lars/index.php?proj=mmc2iec ). Although this device was a functional one it was the cornerstone of the development of the SD2IEC (http://www.c64-wiki.com/index.php/SD2IEC ). This device is truly based on an open source coding and more then one developer has written code for it. Which is great as this has resulted in a device that has the simplicity of the 1541-III concept and a high degree of compatibility with the 1541 diskdrive (although not 100% compatibillity, it is better then the 1541-III. It's certainly very useful and relatively cheap). Though the case design of the SD2IEC doesn't look as nice as that of the 1541-III if I may say so. But that's a matter of taste.
The 1541-III also has been produced by some nice guy called Pyrofer http://www.pyrofersprojects.com/15413.php he changed the circuit board design to fit into a C64DTV (the commodore 64 inside a joystick). Great idea, very practical indeed. This small version of the 1541-III was also used in the Ben Heck portable C64 project http://www.benheck.com/commodore-64-original-hardware-laptop
With the 1541-ultimate and the SD2IEC devices being produced the 1541-III project was becoming obsolete and closed. In other words, the device was functional and a new generation of devices has become available from other developers. The 1541-III has been an inspiration for new technologies for the old commodore 64 and other commodore 8-bit computers. Which makes me very proud about this project. There will be no bugfixes or improvements, the project has ended. If you do not agree, you are free to download the sources as found below in the download section and continue development on your own. In the mean while I will be concentrating on other projects...
What it does:
The 1541-III is a PIC microcontroller controlling an FAT16 MMC/SD card with .D64 files. It is connected to a Commodore computer via the standard IEC-bus (the serial bus normally used to connect diskdrives and printers). The main goal of the circuit is to behave like a 1541 disk drive (therefore the name 1541-III). The MMC/SD card contains D64-files (or normal .PRG files). The user can select one .D64 file with standard LOAD"$",DEVICE commands. Once a .D64 file is selected it can be accessed like it was a real 5¼" floppy. The nice thing of this solution is that you can download these D64-files from internet to your MMC/SD card without the need of extra tools or cables. Because the 1541-III doesn't need to be inserted into the expansion port or require additional software or kernel it will work on every commodore computer (and even the hacked C64 DTV) that has an IEC-bus. It has been successfully tested on the following machines: VIC20, C64, C16/+4 <click here to go to the download area to download screenshots>
Because the circuit is based on a PIC microcontroller and not a fancy FPGA or 65xx processor it will never act 100% the same as a 1541. This is the main reason why fastloaders will not work as on a real 1541. The firmware (programmed in C) of the 1541-III is released as open source software, everybody can develop new features. For all functionality and how it works, see the manual in the download section at the bottom of this page.
How it all started:
I wanted some extra hardware to fit the big 'hole' inside my SX64. That hole was created by the previous owner who liked some additional buttons (reset, device selection etc.) and replaced the complete disk storage compartment for an ugly “glued on” front plate. Also the extra hardware I would like to build must be compatible with my other CBM machines (C16 and VIC20) and the usage of .D64 files seemed like an obvious choice. Therefore an IEC based device with standard DOS commands that could use the .D64 files that can be found all over the internet... strangely at that point in time such a device did not exist. So I decided to build it myself, from scratch. Just for fun.
Therefore I had to learn the IEC-bus principles and low level command structures and since these docs are rare, I had to build my own (PC-based, LPT-port, VisualBasic6.0) logic analyser first (it had to be low cost...). Also how files are stored on a MMC/SD-card, how to access these files, how to interpret .D64 files, how to interpret real IEC-bus commands etc... Fortunately the FAT16 code could be reused from another project. Having only one or two hours each day, it took me a year to come this far. But I liked the results and what it could do.
In order to get more information I decided to go to one of the HCC Commodore User Group meetings, I’ve had heard from Ruben G. that they sell datasettes, books, disk drives and all sorts of things that are of interest to a Commodore fan. So why not see for myself if they have any books that could help me with this project. But one thing let to another and before I knew it, the 1541-III project was anounced to be demonstrated at the 18th of Feb. 2006. And oh... for those who think “what a familiar kind of casing...” the first prototype is build inside an old Amiga mouse/joystick switchbox. Simply because i needed a box for the project and wanted it to look a bit like a Commodore device... or in other words something with a retro look and that box had exactly the right colors.
This memorable day made me realize that the 1541-III project is a very interesting project for other Commodore fans as well. The demonstration day was very overwhelming but inspiring but unfortunately I did not find any book sof interest that day. But I continue visiting the club meetings and everytime I learn “new” things about retro computing and mostly there are some books or hardware for sale I can really use.
The initial prototype holds a 2 line character LCD, but during further development of this project it quickly became clear that a 2 line char LCD could not hold all the relevant info in a convenient way. Therefor the Nokia 3310 display (PCD8544, cheap, small, graphical, 84x48pixels) completely replaced the character LCD in this project. The final design changes has resulted in a version smaller and easier to construct (see photo right-hand-side). The main idea behind this hobby project is open source, because this project is loved by so many people I want to make it available to all of them. Also by giving away the source code and hardware designs, the development on other IEC-based devices is encouraged. And by making the firmware of the 1541-III upgradeable (using a bootloader) the users can easily stay up-to-date and receive the newest bugs... –uhhh- i mean bug fixes and improved functionality.
|Allmost 1.5 years after the initial start of the project, I finally managed to build the 1541-III inside my SX-64 and although it looks VERY retro (with those big switches and large red reset button), I’m pleased with the result. Mostly because it helps me to keep a tidy workspace and I can take it with me whenever I want to show the project. A happy end after all...|
The files regarding the 1541-III are stored on my GitHUb page: https://github.com/JanDerogee/1541-III
The design is based on a 18F2620, the bootloader is intened to easily update the firmware using the serialport and a small software tool on your PC (Windows only). For an overview of the changes within the firmware, please read sourcecode (MAIN.C, history:)