André's 8-bit Pages  Projects  Code  Resources  Tools  Forum
(by Google)

André 's CBM hardware modifications

On these pages you will find a number of hacks I applied to my Commodore 8-bit equipment. Some of them are designed by me, others are taken from magazins or the web. If there are no schematics available and you desperately need them, mail me and I will (probably) write them up and put them here.

The RS232 interface is a standard interface in the PC world and I use it as a terminal connection to my multitasking OS for the C64 or the CS/A65 or Gecko computers.

  • C64-1 : The userport of the C64 can do more than the approximately 2400 baud the original kernal software can handle. With a small modification, invented by Daniel Dallmann, it can do 9600 baud. See http://www.zimmers.net/anonftp/pub/cbm/documents/projects/rs232/rs232-userport-9600.zip.
  • C64-2 : Originally I built a 6551 interface for the C64 that was mounted between the SID and its socket in the C64. Nevertheless, this IC is crap compared to the UART 16550A with 16 byte FIFO, especially if you use a multitasking OS like my GeckOS. So I modified the interface to use an UART. Find the description, schematics and some source code in c64-uart-1.tar.gz. You can now also find a better description in an article I once wrote for TCJ.

Besides the above modifications I did some more. Also the original C64 kernal is not very comfortable. So I decided to do some modifications to it.

  • EPROM : First of all, to modify the kernal, you have to replace an 8k ROM chip. As, normally, you will not have a ROM, but an EPROM chip, you need an adapter. I originally used the Kernal switch adapter of the 64er magazin. However, as I am about to overhaul all my CBM devices now, I guess I am doing my own one (where all kernals are in one EPROM only, saving place and soldering...). Wait for the schematics coming soon (I hope).
  • Kernal : The software to modify the ROM is a bit of a mess, because it is quite old and you have to fit the new code into the holes made by removing the tape and/or the old RS232 code. Find them on my page with the new C64 kernals. I hope I find the time to clean that up a bit. It includes drivers for the CBM IEEE488 interface, an UART 16550A RS232 driver, function key mapping and a DOS wedge.
  • Burst mode : To use the burst mode of the VC1571 in my C128D I implemented some schematics to connect the CIA shift registers with the IEC bus. I used it in the BDOS program, that reads PC disks with the VC1571 and runs on the C64 or C128. Sorry, no schematics at this time.
  • Modules : To be able to switch the IEEE488 ROM off when I like it, I built two switches into the C64, that could set the EXROM and GAME line to either open, GND, or the module. Sorry, no schematics at this time.
  • CS/A65 : I have built an interface for the C64 expansion port to use all the memory and I/O cards of the CS/A65 computer - which includes another video card, extra RAM, IEEE488 and SCSI interfaces. For the SCSI interfaces see the SCSI-64 pages also. For more on the adapter see the C64-CS/A pages.

My old VC1541 (a really early one in a white case, fitting the color of the VIC20 and not the color of the C128 like later white versions) really got some history. First I had speeddos installed, later I built the IEEE488 interface into the drive. Then I experimented with a DOS-1 (670 blocks free) and a 2MHz modification. Also I disabled the original power supply and use a PC power supply. I will try to get these things out of my archives and prepare them for the web (actually now I don't even remember whether it worked at all...).

  • Power supply : I removed the power regulators and used a PC-style power supply instead. Sorry, no schematics at this time.
  • Write-protect : With this switch you could remove the write protection of a protected disk. This is a fixed switch, so it has to be set back to normal when a disk is changed, to make the VC1541 recognize the disk change. Sorry, no schematics at this time.
  • LED : I removed the power LED and used a two-colored LED in the drive only to indicate power and activity (green is idle, red is active/error) Sorry, no schematics at this time.
  • 2 MHz : If you use the IEEE488 bus (and not the time-critical serial IEC bus) you can speed up the drive - I thought. I tried but yet no success. Sorry, no schematics at this time.
  • DOS : I experimented a lot with the VC1541, but currently only the IEEE488 DOS is installed. I see whether I can get the other stuff out of the archives.

All Copyrights are acknowledged. The information here is provided under the terms of the GNU Public License version 2 unless noted otherwise.

Return to Homepage

Last modified: 2010-05-31
follow

Follow my 8-bit tweets on Mastodon (In new window) or Bluesky

discuss

Discuss my site on this 6502.org forum thread

(Forum registration required to post)

hot!

Dive into the retro feeling and build yourself a Micro-PET or a Multi-board Commodore 4032 replica

Need more speed? Speed up your 6502 computer with this 10 MHz 6502 CPU accelerator board

Interested in electronics design? Look at the design lesson I got from Bil Herd, the hardware designer of the C128

Want 64bit? - pimp the 6502 with the 65k processor design!