Commodore 64 disk and tape emulation

Commodore 64 disk/tape emulation and data transfer comprises hardware and software for Commodore 64 disk & tape emulation and for data transfer between either Commodore 64 (C64), Commodore (1541) disk drive or Commodore (1530 Datasette) tape deck and newer computers.

There are a large variety of adapters for C64 disk/tape emulation and data transfer, and an even larger variety of compatible software. Many of the adapters interface with the original serial bus disk drive plug or the C2N tape. Others connect to either the user port or the cartridge expansion port using either standardized RS-232 interfaces or proprietary adapters. In combination with software (or firmware), the adapters can either fully support the original communication protocols, provide partial support or apply proprietary communication protocols. Different solutions allow for letting the C64 access programs stored on another computer or the Internet, and for accessing the C64 disk station and tape deck from other computers.

History edit

Some of the oldest adapters are the C64 user port to RS-232 converters. Those were standardized and originally designed to connect printers and other 3rd party hardware, including modems. Later, those adapters have also been adopted for disk drive emulation and even Internet connections. However, the most widespread adapters were probably the different disk drive and printer plug C64 serial bus to parallel port adapter that evolved for transferring data between disk drives and parallel port supplied computers. Because of hard timing requirements on the C64 side, those are unfortunately not applicable to laptops or multitasking operating systems. There also exist a more limited number of adapters for the C64 tape interface. While the data transfer over the user port is usually limited to 2.4 kbit/s, the C64 expansion port cartridge interface supports transfer rates of one to two magnitudes higher through proprietary protocols. There exist C64 expansion port adapters that support both hard disks, memory cards, USB-disks and Ethernet connections.

The software is typically open source, and so is most of the hardware designs. You can therefore build most of the hardware yourself, though they are usually also available from online shops.

Software for C64 disk & tape emulation edit

This section comprises software for emulating the 1541 disk drive or the Commodore 1530 Datasette tape deck on external computers, making them available to a physical Commodore 64.

Remote software Remote OS Remote interface C64 software C64 emulation mode Compatible Hardware
1541-III firmware - - Disk 1541-III
1541EMU MS-DOS GUI no Disk, Fastload 1541EMU
1541Ultimate firmware - menu Disk, Fastload, Tape***, Turbotape*** 1541U-I, 1541U-II
64HDD MS-DOS GUI no Disk X1541, Power-Loader
C2N Windows (Command), Linux, MS-DOS, AmigaOS text no Tape, Turbotape C2N232
C2NLOAD Windows (Command), Linux, MS-DOS, AmigaOS text no Turbotape C2N232
CMBLINK Windows (Command), Linux, MS-DOS, AmigaOS text no/yes*,** Tape C2N232, X1541, PC64
IEC-ATA firmware - - Disk IEC-ATA
MMC2IEC firmware - - Disk MMC2IEC
Over5 Windows 98, Linux, MS-DOS ? yes Disk UserPort-RS232
uIEC firmware - - Disk uIEC
Prlink Linux, MS-DOS, AmigaOS text yes** Tape PC64, Prlink, X1541, (64NET)
sd2iec firmware - - Disk SD2IEC
Serial Slave Windows, Linux, AmigaOS, MacOS, Web interface no yes Disk ExpansionPort-RS232
V-1541 Web interface Web page yes Disk UserPort-RS232
VC1541 MS-DOS GUI no Disk X1541

.* no software required with C2N232, but with X1541 and PC64

.** a simple Basic version of the software on the C64 side is available for typing in to the C64 before the first use.

.*** The 1541 Ultimate II have special adapters to support TAPE emulation.

Software for PC to disk & tape transfer edit

This section comprises software for transferring files and images between the 1541 disk drive or the Commodore 1530 Datasette tape deck and an external computer different from the Commodore 64.

Remote software Remote OS User interface Transfer mode Compatible Hardware
C64S x x x x
Disk64 x x x x
Linux Server 64 x x x x
MNIB ? text Disk ?
mtap & ptap DOS ? Tape X1541, C64S tape adapter
NIBTOOLS Windows XP (etc.)*, Linux* text Disk X1541&XP1541, XU1541
OpenCBM Windows XP (etc.), Linux separate GUI tool Disk X1541, XP1541, XU1541, ZoomFloppy
Personal C64 x x x x
Star Commander DOS textmode dual pane file manager Disk X1541, XP1541
TRANS64 x x x x
X1541 DOS text Disk X1541

.*This software requires that OpenCBM is available.

Hardware edit

The following table addresses hardware for connecting the Commodore 64, the 1541 disk drive or the Commodore 1530 Datasette tape deck to external computers, data storage (such as disks and memory cards) or the Internet.

Hardware Type[1] C64 interface 1541 / C2N interface Remote interface Compatible software
1541-III Adapter Disk connector SD card, MMC card firmware
1541EMU Connector Disk connector[2] Disk Parallel, game port 1541EMU
1541U-I Cartridge Expansion port, disk connector SD card, MMC card firmware
1541U-II Cartridge Expansion port, disk connector, TAPE adapter MicroSD card, USB flash drive, Ethernet, TAPE adapter Integrated
64NET Cable ? Parallel Prlink
C2N232 Adapter Tape connector Serial C2NLOAD, CMBLINK
C64S tape adapter Adapter Tape Parallel mtap & ptap
Cassadapt Adapter Tape Audio TapWav, TAPClean, AudioTAP, WAV-PRG
Comet64 Adapter User port Serial, Ethernet V-1541
Handic V24 Adapter User port Serial Over5
IEC-ATA Adapter Disk connector ATA hard disk drive firmware
MMC2IEC Adapter Disk connector MMC card firmware
PC64 Cable User port Parallel CBMLINK, Linux Server 64, Personal C64, Prlink
PRLINK Cable User port Parallel Prlink
Power-Loader Cable User port Parallel 64HDD
SD2IEC Adapter Disk connector SD card firmware
Silver Surfer Cartridge Expansion port Serial Serial Slave
Swiftlink Cartridge Expansion port Serial Serial Slave
Turbo Chameleon Cartridge Expansion port Disk Ethernet, MMC card, SD card Http-Load, WarpCopy64, Contiki
Turbo232 Cartridge Expansion port Serial Serial Slave
uIEC Adapter Disk connector CF card, SD card, IDE hard disk drive firmware
VIC-1011A RS232C Adapter User port Serial Over5
X1541 Cable Disk connector[2] Disk Serial X1541, Star Commander, CBMLINK, Prlink, disk64, c64s, 64HDD, VC1541, trans64, mtap & ptap
XP1541 Connector Disk Serial, parallel Star Commander, OpenCBM
XU1541 Adapter Disk USB OpenCBM
ZoomFloppy Adapter Disk USB OpenCBM
USB2IEC Adapter Disk USB OpenCBM, VICE Emulator

Software by C64 compatibility edit

Full emulation of the Commodore 1541 disk drive or Commodore 1530 datasette is required e.g. to support fast loaders. Software that supports the basic transfer protocols, such as load and save, will not support fast loaders.

Software exists that replaces the basic transfer protocols with proprietary alternatives. These protocols require special software on both the host side and the Commodore 64 side.

Some software supports transfer between a disk or tape drive and a computer other than a Commodore 64.

Floppy disks edit

Full emulation
  • The 1541EMU emulates the internal hardware of the Commodore 1541 disk drive on a host computer and supports the 1541EMU cable only. The 1541EMU software was designed in 2001–2002 by Ville Muikkula et al.[3] The realtime requirements for emulating the 1541 disk drive are exceptionally hard. PCs with multitasking operating systems are therefore not supported. Even though the timing can be adjusted in software, the communication is not likely to work on PCs with newer processors than Pentium.[ref required]
  • The 1541 Ultimate firmware completely emulates the Commodore 1541 disk drive on the 1541U-I cartridge, using a disk connector output on the cartridge. Full emulation is also planned for the 1541U-II cartridge. It allows access to the disk content on memory cards (I) and USB-disks (II). The selected disk can be downloaded either through an accurate 1541 on-board emulation (II). A proprietary protocol is also available for faster but not fully compatible transfer (both I and II).[4][5]
  • The Chameleon firmware completely emulates the Commodore 1541 disk drive on the Turbo Chameleon 64 cartridge, using a disk connector output on the cartridge. The emulator provides access to a MMC or SD card on the cartridge.
Partial emulation
  • The 64HDD is a serial bus and disk drive emulator, developed in 1999–2010 by Nicholas Coplin.[6]
  • The MMC2IEC firmware provides emulation of the Commodore 1541 disk drive on the MMC2IEC adapter, providing access to a MMC memory card.
  • The sd2iec firmware provides access to an SD card with a Commodore DOS-compatible interface on the SD2IEC adapter. It also supports many fast loaders, but it is not a Commodore 1541 disk drive emulation.
  • The uIEC firmware provides emulation of the Commodore 1541 disk drive on the uIEC adapter, providing access to either an IDE hard disk, a CF memory card or a SD memory card, depending on the version, but it has been superseded by a port of the sd2iec firmware to the uIEC hardware in 2008.
  • The VC1541 is a Commodore 1541 serial protocol emulator developed in 1997–1998 by Torsten Paul.[7]
Proprietary options
  • The Over 5 is a software package for transferring files between a C64 and an host machine (which can be an Amiga, PC or Unix box). It works in two different ways, either using the C64 as a server to the host for accessing floppy disks or using the host as a hard disk server for the C64. Over5 was developed in ????-2002 by Daniel Kahlin. It was later ported to Win32 by Martin Sikström and to Unix by Andreas Anderson.[8]
  • The Serial Slave allows you to use a PC as a virtual disk drive for your C64 or C128. It was developed in 2001–2002 by Per Olofsson and friends.[9]
  • The V-1541 is a program that replaces the standard LOAD and SAVE operations on a Commodore 64 computer. The V-1541 program allows your Commodore 64 computer to access files and other content on the Internet at CommodoreServer.com. CommodoreServer.com is a Virtual Disk Drive to which you can upload D64 disk images from any Internet computer and later download the disk from the Commodore 64.[10]
Disk transfer
  • The C64S (C64 Software Emulator) is a Commodore 64 emulator that supports transfer to/from a 1541 disk drive. It was developed in 1994–1997 by Miha Peternel.
  • The DISK64 is a disk transfer tool developed in 1993–1994 by Alfred Schwall.
  • The MNIB was developed in 2000–2004 by Markus Brenner. It has been succeeded by NIBTOOLS.
  • The NIBTOOLS is a disk transfer program designed for copying original disks and converting them into G64 and D64 disk image formats on a PC. NIBTOOLS requires OpenCBM. NIBTOOLS is based on MNIB and was developed since 2005 by Pete Rittwage.[11]
  • The OpenCBM allows for access to a VIC 1540, 1541, 1570, 1571, or even 1581 floppy drive from the PC on Windows NT, 2000 and XP. With OpenCBM you can copy D64 or D71 images from a real drive to the PC, or from the PC to a real drive with the help of d64copy. Furthermore, you can copy single files in both directions. Some more tools (for example, cbmctrl) are given, too. OpenCBM started out as cbm4linux, a Linux-only solution written in 1999–2003 by Michael Klein.[12] Spiro Trikaliotis ported it over to the Windows platform in 2005 under the name cbm4win. With version 0.4.0, both versions were joined back into one source with the common name OpenCBM. For Windows, due to limitations of the drivers of the cards, it is unlikely that PCI or CardBus cards will work. However, ISA cards will work. For Linux, chances are high that all cards will work.[13]
  • The Personal C64 is a Commodore 64 emulator that supports transfer to/from 1541 disk drive. It was developed in 1994–1997 by Wolfgang Lorenz.[14]
  • The Star Commander copies files and disks between a PC and the Commodore 1541/1570/1571/1581 drive, optionally using fast loader. Star Commander was developed in 1994–2010 by Joe Forster/STA.[15] Commodore disk drives expect a tighter synchronization than the Commander can keep under a multi-tasking PC operating system. The best results is therefore obtained by running the Commander under plain DOS.[16]
  • The Trans64 is a program to transfer files between the PC and a C64 floppy drive. Trans64 was developed in 1994–1997 by Bernhard Schwall.
  • The X1541 was developed in 1992 by Leopoldo Ghielmetti.

Cassette tapes edit

Full emulation
  • The C2N fully emulates the Commodore 1530 via the C2N232 device. C2N was developed in ???? by Marko Mäkelä.[17]
  • The C2NLOAD first provides a turbo tape over the standard Commodore 1530 datasette Load routine, and then automatically loads the requested program file at 38.400 bit/s. C2NLOAD was developed in 2001–2006 by Marko Mäkelä.[18]
Proprietary options
  • The CBMLINK is a data transfer system between Commodore 8-bit computers and other systems (Amiga, IBM PC compatible, Apple, Unix workstations). Supported by the VICE emulator. CMBLINK was developed in 2001–2003 by Marko Mäkelä, based on PRLINK.[19]
  • The Linux Server 64 was developed by Roger Lawhorn. It supports the same commands as CMBLINK, but adds a series of commands for printing and scanning using hardware connected to a PC.[20]
  • The Prlink is a software for data transfer between Commodore 8-bit computers and an Amiga (AmigaDOS) or a PC clone (Linux, MS-DOS). Prlink was developed in 1994–1996 by Marko Mäkelä and Olaf Seibert. It was succeeded by CBMLINK developed in 2001–2003 by Marko Mäkelä.[19]
Tape transfer
  • The mtap & ptap are MS-DOS tools for creating real tape files (.TAP files) from original C64, VIC-20 and C16 tapes using the Commodore Datasette, and for playing back .TAP files to real tapes for use with an actual Commodore 64 machine. mtap & ptap were developed in 1998–2002 by Markus Brenner.[21]

Hardware by C64 compatibility edit

Tape connector adapters
  • The C2N232 adapter is a RS-232 interface that can be plugged to the cassette port of an 8-bit Commodore computer and supports emulation of the tape deck. The C2N232 hardware was designed in 2001–2003 by Marko Mäkelä. It is freely available as open source, and a few hundred were built and sold.[17]
  • The C64S tape adapter lets you connect your tape deck to a PC parallel port.[22]
  • The Cassadapt tape adapter allows to convert tape programs (T64 and PRG) from a PC to either the Commodore 64 or a C2N tape deck.[23]
Disk connector adapters
  • The 1541-III is a PIC microcontroller controlling a MMC/SD card with .D64 files. It does however NOT support fastloaders.[24]
  • The 1541EMU cable hardware supports full emulation of the Commodore 1541 disk drive. The cable exists in type0 and type1 flavors with full and slightly reduced compatibility, respectively.[3] The 1541EMU hardware was designed in 2001–2002 by Ville Muikkula et al. for use with the 1541EMU software. The 1541EMU cable is available through both building instructions and shops.[25]
  • The 1541U-I (and 1541U-II) emulates a 1541 disk drive for Commodore computers. It uses an SD-card or MMC-card to store virtual floppy disks. Disk content can be browsed through software on the cartridge and navigated through buttons on the device. The selected disk can be downloaded either through the fully compatible 1541 interface or through a faster but less compatible proprietary interface.[4]
  • The X1541 cables allow (full emulation of? /) copying to and from the Commodore 1541 disk drive. The realtime requirements for emulating the 1541 disk drive are exceptionally hard, and a variety of cable flavors have been constructed to improve compatibility with multi-tasking systems and faster PCs than the Pentium to some degree.[26] For compatibility, check the documentation of each application, or confer the reference. The X1541 cable is available through both building instructions and shops.[25][27] The original X1541 cable was designed in 1992 by Leopoldo Ghielmetti for use with the X1541 software.
  • The XP1541 cables are variants of the X1541 cables flavors, adding parallel support for faster transfer between PC and the C64 disk drive. The XP1541 cable was designed in 1997 by Joe Forster/STA.[28]
  • The XU1541 adapter (beta) attaches a 1541 etc. disk drives to a PC using the USB connection, opening for easy transfer of disk images from and to the disk drive. The XU1541 is currently only recommended for people who are willing to cope with glitches and will perhaps even do some testing and bug hunting.[29]
  • The ZoomFloppy connects your Commodore 1541/1571/1581 drives to a Windows, Mac, or Linux computer. This allows you to read and write files or entire disk images from the original media.[30] The ZoomFloppy uses the XUM1541 firmware by Nate Lawson, based on XU1541.[31] The PCB was manufactured by Jim Brain and can also be bought online.[32]
RS-232 user port adapters

The User Port RS-232 adapters provides a low-speed serial port for Commodore 8-bit computers, originally for connecting printers etc. They can operate at speeds of up to 2.4 kbit/s.

  • The Comet64 Internet Modem is a Serial-to-Ethernet (S2E) device. This modem connects to the user port and provides an Internet connection. Also available with RS-232 output.[33]
  • The EZ-232 RS232 Serial Interface provides a low-speed serial port for Commodore 8-bit computers. It can operate at speeds of up to 2400 bit/s, when configured as a standard interface, and at speeds of up to 9600 bit/s, when configured as a UP9600 interface. The EZ-232 RS232 Serial Interface was designed by Jim Brain.[34]
  • The Handic V24 is a RS-232 converter for Commodore machines.
  • The VIC-1011A RS232C is a RS-232 converter for Commodore machines.[citation needed]
Proprietary user port adapters
  • The PC64 cable was designed in 1994 by Wolfgang Lorenz.[35]
  • The Power-Loader cable is a companion for the X1541 cables flavors, adding parallel support for faster transfer between PC and the C64. The Power-Loader (Pwr/XE) cable was developed by Nicholas Coplin, for use with 64HDDsoftware.[36]
  • The Prlink is a cable designed for the Prlink software by Marko Mäkelä and Olaf Seibert.
RS-232 expansion port adapters
Expansion port cartridges provides a high-speed connection to an external computer and/or the Internet. The output interface is a RS-232 interface for connecting to an external computer. Internet connection can be obtained through the external computer or via a series to Internet adapter.[37] Some adapters also have separate Ethernet interface for connecting to Internet. The most common cartridges for external connection is listed below.[38]
  • The RR Net is an add on to the Retro-Replay cartridge that allows for broadband Internet access.
  • The Silver Surfer add on to the Retro-Replay cartridge provides RS-232 capabilities. It provides a transfer rate probably similar to that of Turbo232, limited to 57.8 kbit/s for most software.[39] Silver Surfer is available from an online store.[40]
  • The SwiftLink-232 is a RS-232 serial port cartridge for the C64/128. It provides up to 38.4 kbit/s transfer rate.[41] Swiftlink was manufactured by CMD, who has stopped producing Commodore gear. There exist several clones such as the Datapump cartridge or the Pitchlink cartridge.[42] The Link-232 is another clone of Swiftlink.
  • The Turbo232 cartridge is a high-speed RS-232c modem interface for Commodore 64 or 128 computer. It provides up to 230 kbit/s transfer rate, though limited to 57.8 kbit/s for most software.[43] Turbo232 was manufactured by CMD, who has stopped producing Commodore gear.
Proprietary expansion port adapters
  • The 1541Ultimate-II emulates a 1541 disk drive for Commodore computers on a cartridge, using MicroSD or USB disks to store virtual floppy disks. The disk can be downloaded through fast, but not fully compatible proprietary disk emulation. Disk connector for fully compatibility is integrated, but not yet supported in software (as for the 1541U-I). Disk content can be browsed through software on the cartridge and navigated through buttons on the device.[4]
  • The Comet64 Internet Modem Serial-to-Ethernet device provides an Ethernet connection. See the Comet64 Internet Modem entry under the User Port RS232 section.

References edit

  1. ^ Cable: Wires and plugs only, Connector: Wires, plugs and simple components, Adapter / Cartridge: PCB with standard and or programmable components
  2. ^ a b Disk connector interfaces (e.g. x1541/xp1541 cables) have hard real-time requirements, and are in general not compatible with Pentium and newer PCs or multitasking operation systems.
  3. ^ a b "Home of 1541EMU". Kotinet.com. Retrieved 2013-10-11.
  4. ^ a b c "Home of 1541 Ultimate". 1541ultimate.net. Retrieved 2013-10-11.
  5. ^ "1541 Ultimatec on the 64-Wiki". C64-wiki.com. 2010-11-30. Retrieved 2013-10-11.
  6. ^ "Home of the 64HDD project". 64hdd.com. Retrieved 2013-10-11.
  7. ^ "Home of VC1541". Vc1541.sourceforge.net. 2003-07-29. Retrieved 2013-10-11.
  8. ^ "Home of Over5". Kahlin.net. Retrieved 2013-10-11.
  9. ^ Home of Serial Slave Archived 2001-11-29 at archive.today
  10. ^ "Official blog of Commodore Server". Commodoreserver.com. Retrieved 2013-10-11.
  11. ^ "NIBTOOLS at the Disk Preservation Project". diskpreservation.com. Retrieved 2013-10-11.
  12. ^ "Home of cbm4linux". Lb.shuttle.de. Archived from the original on 2006-09-26. Retrieved 2013-10-11.
  13. ^ "OpenCBM on Spiro's home on the web". Trikaliotis.net. Retrieved 2013-10-11.
  14. ^ "Home of Personal C64". Zimmers.net. 1997-06-05. Retrieved 2013-10-11.
  15. ^ "Home of Star Commander". Sta.c64.org. 2010-01-11. Retrieved 2013-10-11.
  16. ^ Documentation of StarCommander, section 3
  17. ^ a b "Marko Mäkelä's old computers: Commodore C2N Datasette Codec c2n". Ktverkko.fi. Retrieved 2013-10-11.
  18. ^ "Marko Mäkelä's old computers: Commodore C2N datassette emulator with RS-232 interface". Ktverkko.fi. Retrieved 2013-10-11.
  19. ^ "Home of Linux Server 64". Rll.home.insightbb.com. Archived from the original on 2012-10-15. Retrieved 2013-10-11.
  20. ^ "Minstrel's Commodore page: mtap & ptap". Markus.brenner.de. Retrieved 2013-10-11.
  21. ^ "Markus Brenner: The C64S tape adapter". Markus.brenner.de. Retrieved 2013-10-11.
  22. ^ "C8D Cassadapt". Cbm8bit. Retrieved 2013-10-11.
  23. ^ "1541-III". Jderogee.tripod.com. Archived from the original on 2013-09-12. Retrieved 2013-10-11.
  24. ^ a b "The X1541 Shop". Sta.c64.org. Retrieved 2013-10-11.
  25. ^ "The X-series interfaces". Sta.c64.org. Retrieved 2013-10-11.
  26. ^ "64Copy Central". Ist.uwaterloo.ca. 2012-01-12. Retrieved 2013-10-11.
  27. ^ "The XP1541 interface". Sta.c64.org. Retrieved 2013-10-11.
  28. ^ "Spiro's home on the web: The XU1541". Trikaliotis.net. 2008-01-28. Retrieved 2013-10-11.
  29. ^ "Nate Lawson: The ZoomFloppy manual" (PDF). Retrieved 2013-10-11.
  30. ^ "Nate Lawson: The XUM1541 firmware". Root.org. Retrieved 2013-10-11.
  31. ^ IEEE Connector. "Go4Retro online store: ZoomFloppy". Store.go4retro.com. Retrieved 2013-10-11.
  32. ^ "The Comet64 Internet Modem". Commodoreserver.com. Retrieved 2013-10-11.
  33. ^ "Everything Commodore The EZ-232 manual". Retrieved 2013-10-11.
  34. ^ "The Joe Forster/STA: PC64 overview". Sta.c64.org. Retrieved 2013-10-11.
  35. ^ "The Joe Forster/STA: Power-Loader". Sta.c64.org. Retrieved 2013-10-11.
  36. ^ "Using a UDS-10 (UDS-100) Device Server". Armory.com. Retrieved 2013-10-11.
  37. ^ [1][permanent dead link]
  38. ^ "Silver Surfer". Ar.c64.org. Retrieved 2013-10-11.
  39. ^ Vesalia.de online store: Silver Surfer.
  40. ^ Replay Resources: The SwiftLink manual [dead link]
  41. ^ "Andreas Andersson: Over5 and Swiftlink clones". E.kth.se. 2002-04-21. Retrieved 2013-10-11.
  42. ^ Replay Resources: The Turbo232 manual [dead link]