MeGALoDOS
V1.42F

For Commdore 1541-II

Project scope and plan

It´s a bird... It´s a plane... It´s MeGALoDOS!

Background

Recently I saw for the first time a 1541 floppy drive running DolphinDOS 2.0 fand I was flabbergasted. Why? The speed when loading both directories and files were incredible fast compared to normal fast loaders. Maybe I have been living under a rock for the last 40+ years, but I would not be too surprised if also others have missed the magnificent speed a normal-looking 1541 floppy drive could provide.

How could a 1541 become so incredible fast? Normally, the 1541 floppy drive is connected to the Commodore 64 via the SERIAL PORT. Somewhat faster loading over the SERIAL PORT can be achieved by replacing the original Commodore Kernal/ROM DOS routines with optimised versions (e.g. JiffyDOS and cartridge fastloader). But if you want to see really high transfer speeds the 1541 floppy drive will utilize the USER PORT (aka the parallell port). Now the 1541 floppy drive will be FAST!

Solutions such as DolhpinDOS, Professional DOS and Prologic DOS are examples of 1541-speeders utilizing the USER PORT. Each solution differs somewhat in speed and functionality, but what they have in common is that they communicate with the C64 via the USER PORT. For such solutions it is required to modify the 1541 by installing a custom PCB enabling USER PORT communication, and in addition a custom ROM image on the Commodore 64 must be installed.

Imagine a solution that could combine all types of floppy speeders... both USER- and SERIAL PORT loaders. Well, say hello to MeGALoDOS!

MeGALoDOS is the ultimate floppy speeder hardware for the 1541 and 1541II designed by Thomas Linke. Based on a CPLD, the hardware of all common floppy speeders are replicated to be utilized in both the 1541 and 1541II floppy drives.

In addition to the original DOS on the motherboard, MeGALoDOS offers (from the MeGALoDOS assembly- and user instructions):

  • Professional DOS (Rapi DOS)

  • Dolphin DOS (2.0)

  • Prologic DOS

  • Speeddos Expert (40 tracks) and Speeddos (35 tracks)

  • S-JiffyDOS and JiffyDOS (licensing required!)

  • Turbo Access and Turbo Trans

  • Quick DOS


All hardware features of the original Speeder are replicated:

  • Track buffer RAM

  • 2MHz mode (Professional DOS, Prologic DOS)

  • RAM Floppy (TurboTrans)


Using a small ATMega processor, MeGALoDOS also provides the following features:

  • Track display

  • Selection of DOS via display

  • Electronic disk punch

  • Electronic write protection

  • Electronic setting of the device number

  • Reset button


Project scope

The goal is to install the MeGALoDOS in a 1541-II (Chinon) floppy drive, and to use this together with a C64G equipped with a SuperKernal ROM switcher.

Milestones

- Assemble MeGALoDOS v1.42F module
- Mount the rotary switch and LED on cables with Dupont connector
- Assemble the VIA parallell adapter
- Assemble the USER PORT adapter
- Install MeGALoDOS (including all modules and parts) in 1541-II floppy drive
- Verify operation by testing

Assembly - MeGALoDOS v1.42

All the parts required for the MeGALoDOS v1.42F module come in an antistatic bag. The SMD components are already mounted on the PCB (phew!). What remains is to solder the IC sockets and pin headers.

The content is:

  • 1 x MeGALoDOS v1.42F PCBA

  • 1 x 40 pin machined socket

  • 1 x 32 pin machined socket

  • 1 x 32 pin 4 Mbit Flash memory IC (SST 39SF040/70-4C-PHE)

  • 1 x dual color LED

  • 2 x 20 pin header strip

  • 1 x (3+5) pin header strip (actually space for nine, but one pin deliberately removed)

  • 1 x (2*4) pin header strip

  • 2 x 2 pin header strip

Below are pictures of the parts listed above.

To assemble the MeGALoDOS board the instructions stated in the "MeGALoDOS assembly- and user instructions" (German) are followed. Unfortunately, I do not speak German, but I will try my best to follow it. The assembly instructions are well documented and supported with pictures. So with some luck, Google translate and helping hand from Thomas Linke I think we should be fine.

STEP#1 - Soldering the first 20-pin header

The first action is to solder one of the 20-pin headers to board. In the picture below you can see where the pin header is soldered.

NOTE#1: before soldering the 20 pins are shortened slightly. Why? To make sure that the 40-pin socket is flush to the board the pins beneath (from the 20-pin header) can not protrude too much. The pins are shortened using a diagonal cutter.

NOTE#2: take care to install the 20 pin headers in the correct place. Since there are four places where this would fit, it is nice to place this right the first time (unless you love desoldering).

STEP#2 - Soldering the 40-pin socket (6502 CPU)

The 40 pin machined socket is soldered to the board. It is important to make sure that the socket is flush with the board. A good way to secure that is to solder only one pin in two of the corners first. While re-heating the solder points the socket is firmly pressed into the board making it flush.

NOTE: Make sure to place the socket the right direction aligning the notch (see picture below). Although it is not the end of the world if its the wrong way, it looks better and you reduce the risk of someone misplacing the 6502 CPU and damaging it.

Flipping the board this is what it looks like at after step #2.

STEP#3 - Soldering the second 20-pin header

The second 20- pin header is soldered in place. There is only one row available left so the placement should be easy to find. See picture below.

STEP#4 - Soldering the 32-pin socket (Flash memory)

The 32 pin machined socket is soldered to the board. In the same was with the 40-pin socket two of the corners are soldered first. While re-heating these solder points the socket is pressed down firmly making it flush with the PCB.

NOTE: Make sure to place the socket the right direction aligning the notch (see picture below). Although it is not the end of the world if its the wrong way, it looks better and you reduce the risk of someone misplacing the Flash memory and damaging it.

STEP#5 - Soldering the (2*4) and (3+5) pin headers

First the 2*4 pin headers are soldered into the top right corner of the board. These pin headers will connect to the rotary encoder and a SPI display later. In the picture below you can see the position of these when they are soldered in place.

Just below the (3+5) row of pin headers are soldered. This row of pin headers will connect to the floppy drive and multicolour LED later. See picture below.

STEP#6 - Soldering the 2 pin header and a 90 degree pin header

A 2 pin header is soldered in for the DEV# connector just next to the row of (2*4) pin headers. See picture below. These pin headers will be connected to the #0 and #1 on the VIA board later.

Since the MeGALoDOS is going to be installed in a 1541-II soldering a 90 degree angled pin header for the RESET line might not be required. Nevertheless, I solder in such a pin header as a precaution. See picture below.

STEP#7 - Closing the jumper SJ3

As mentioned this MeGALoDOS will be installed in a 1541-II floppy drive. Therefore the jumper SJ3 should be closed on the MeGALoDOS board instead of using the RESET cable (according to the user manual there are some cases where this not function and the RESET line should be used instead). See pictures below - both before and after bridging the the SJ3 jumper.

STEP#8 - Installing the flash memory

Final step is to install the 32 pin flash memory IC in the socket. The MeGALoDOS v1.42F module should now be completed, and the next assembly can start. Below are pictures of the MeGALoDOS module after assembly.

Rotary encoder and LED

The MeGALoDOS will be equipped with display which show the current ROM Kernal in use. To choose between ROM Kernals a rotary encoder is used. In addition a dual coloured (RED/GREEN) LED is used to show status (what this status represent is I am not sure of yet - but that will be apparent later). Both the rotary switch and the LED must have cables which have female DuPont connectors. Below is a picture of the parts that will be assembled to accomplish this.

Rotary encoder

Before the four DuPont cables are connected to the rotary encoder the center pin must be soldered to another pin. Which one? In the picture below the rotary encoder is seen from below. With the row with three pins on the right hand side, the center pin must be short circuited to the bottom left pin.

To prevent the cables from short circuit when soldered to the parts seven heat-shrink tubes will be used. Each of the tube is cut to be approximately 2 cm long.

A small insulated wire is soldered between the center pin (right side) and the bottom pin (left side). Then the remaining four DuPont cables are soldered to the position 1-4 as shown in the picture above. NOTE: the DuPont cables can be fiddly to solder on the pins as the metal is the cable is not very susceptible to the solder. But with plenty of flux and patience the cables are soldered in place.

Dual coloured LED (RED/GREEN)

The dual coloured LED is soldered to three DuPont cables in the same way as the rotary switch. Heat-shrinking tubes are used in the same way.

VIA parallel adapter V1.2

One of the VIA chips in the 1541-II floppy drive will function as a parallell interface to the Commodore 64. But do be able to do that the VIA must be installed in an adapter which allow a parallell USER PORT cable to be attached. Below is a picture of the VIA adapter before any components are soldered onto the PCB.

Only three parts will be soldered to the PCB:

  • 40 pin socket

  • 2 x 7 pin header

  • 1 x 2 pin header (90 degree angle)

In the pictures below the VIA adapter is shown with all the parts soldered.

Banner picture credits: sebos (forum64.de)