The random ramblings of a French programmer living in Norway...
← Half a Life in Video GamesCroissants! →
  Freeboot revisited
Sat 18th January 2020   
Once upon a time I had to sell my Oric to buy an Atari ST.

Unfortunately I barely managed to get enough money to get myself a Singled Sided floppy drive model, which quickly proved to be an issue since most people were swapping around double sided floppy disks.

To solve the issue, I bought an external Double Sided Cumana floppy drive, which allowed me to access all these floppies... but not boot on them!

Cumana external disk Drive
Cumana external disk Drive

Enters the FreeBoot!

Atari ST FreeBoot

The FreeBoot is nothing more than a set of switches to install on the back of the machine, as well as a generous amount of wires to solder around.

One of the switch was used to trick the Atari in believing the external drive was A: by swapping the Drive Select signal wires for the two disk units

The second switch was another trick, this time fumbling with the Side Select, allowing you to store the content of TWO single sided floppies on ONE double sided floppy1.

We are now in 2020, and most physical floppy related parts have started to reach the limits of their lifespan:

Some of the floppies are getting read errors, some of the drives are struggling to read floppies.

The solution to this issue has been the development of "Floppy Drive Emulators", such as the HxC Floppy Emulator2 and GoTek3 which are designed to be plug and play replacements for normal Shugart compatible floppy disk drives.

To use these on the Oric, you still need to provide a floppy disk controller board, which is why some additional projects have been released, such as the Cumulus, as well as more recently some hybrid solutions (Cumana Reborn project).

As someone who likes to preserve things, but also keep them relevant and usable, I wanted to get the best of both world:

A working 3" disk unit AND a modern disk emulator to facilitate development and debugging.

HxC vs GoTek

I have been using an HxC since 2013, and the device is definitely working well.

Unfortunately this particular model (REV C) does not have a super practical form factor:

Gotek, HxC, 3
Gotek, HxC, 3" and 3.5" drives

Since I wanted to use the floppy emulator with the Microdisc, I needed something that would match nicely the device, so this time I gave a shot at the GoTek.

One important thing about the GoTek, is that the default device is not super awesome: If you are not willing to cut, solder, flash, etc... don't get a GoTek (or get somebody to do the modifications for you).

So I ordered the device, as well as an OLED screen, a buzzer, some connecting cables, and a rotary encoder.

It took quite some time before I got all the parts, but after putting it all together, it did work quite nicely!

Pimp my GoTek

You can search online for "GoTek mods", there are a ton of pages with information, so I'm not going to repeat anything there.

What I did, is basically to follow this youtube tutorial, it just worked4 (a few of the links have changed on the various sites, but the data is still there).

I took a few photos during the updated, so there you go.

After the removal of the three (standard) screws at the bottom, you can see the simple board of the GoTek, with the power and floppy connectors on the back, a small cable connecting the board to the 7 digit display, and in this case (marked in the red rectangle) the lack of pins on one of thje internal connectors.

Gotek without pins
Gotek without pins

Firmware Upgrade

The first job is to solder some pins there, they are standard spacing, so you can either find a jumper block from an old PC motherboard, or cut two sections (4 and 5 pins long) in a 2.54mm breakable row of pin connectors, then you put them in the holes (you can use a jumper to keep them together), and put some solder at the bottom.


Installing the pin blocs
Installing the pin blocs

With the pin installed, you can now connect the four cables to the correct pins (+5V, GND, TXD, RXD) on the USB to TTL interface, and place the "program" jumper.

Ready to install FlashFloppy
Ready to install FlashFloppy

Installing the FlashFloppy firmware takes literally less time than it takes to locate the Flash program and the firmware - just follow the video and make sure to click on the right check boxes -, and when you are done remove all the cables, without forgetting the "program" jumper.

When this is done, you can pretty much just put a USB stick (formatted in FAT32) with a few HFE5 files on it, connect it to your Oric disk controller, and you are done!

Except with the default display, all you have is two buttons to switch from 000 to 001 to 002... not super ergonomic, so we need to install the OLED screen.

OLED screen installation

Get ready for an extremely technical operation:
  • Look at the position of the cables
  • Unplug the connector from the board, rotate it 90 degrees and plug it back
  • Unplug the 7 digit screen
  • Plug the OLED screen
It's basically all done with some magic with the cables (the worse part is to cut out one more centimeter to fit the larger screen)

Installing the OLED screen
Installing the OLED screen

The next step is to get some noise.

Toc toc toc, griii grii

It is not absolutely necessary, but it's nice to hear when there are disk accesses being done without having to look at the screen.

The procedure is again, very simple: Put the buzzer somewhere where it will resonate, and connect the two wires to the two pins on the black jumper block.

Installing the piezo buzzer
Installing the piezo buzzer

At this point, all you need to do is to screw it back all together, plug it on the controller board, and if everything is working, you should be able to select the floppy images by name, and you should hear the faint sound of the virtual head moving around when the floppy boots and load data.

Loading... Pulsoids!
Loading... Pulsoids!

If you want to use both the GoTek and the Microdisc, all you need to do is to use the connector on the back of the microdisc, and set either the microdisc or the GoTek as the second drive using jumpers.

The only issue, is that you can only boot on the drive A: so if you are doing testing, having to change jumpers all the time is kind of annoying.

Time to install the floppy selector!

Drive Select Switch

All you need, is a two poles/two positions (DPDT) switch6.

Backplate Switches
Backplate Switches

The idea is that on the drives, each of the "drive select" jumper actually has a common pin, so you can just solder the center pin to the common, and each of the two other pins of the same pole on each drive select pin, and do the reverse for the second drive.

It worked fine, the only issue I had was that the 3" floppy drive has a metal shielding cover which caused problem with the lenght of the connectors I used.

Beware of the drive shielding
Beware of the drive shielding

I solved the problem by removing the plastic protection on the cable pins, and replaced it by a thermal shrinkling sleeve, because it was then possible to bend it into submission without causing short circuits.

This will probably not win any electronic and hardware design award, but it worked :)

Final drive selector connections
Final drive selector connections

And after putting it all together, here is what it looks like:

Final result, back and front
Final result, back and front

With the switch in bottom position, the bottom drive (3") appears as A: and the top drive (GoTek) appears as B:

With the switch in top position, we get the opposite.

This should make it much easier to transfer data from one format to the other!

Possible improvement

Technically, it would be possible to rotate the OLED screen by 180 degrees, and put the GoTek *under* the microdisc, like if it was part of the stand.

That may happen, but that would be for a new upgrade, and would probably require some 3D printing to get a nice result without butchering a perfectly working Microdisc unit :)

1. This means we have on each side a complete system, with a boot sector, file directory and allocation tables.
4. That being said, I would suggest using a small portable drill to cut the hole for the screen instead of a hobby knife - faster and safer!
5. There is work done apparently on natively supporting the Oric DSK file format, but for the moment you need to use the HxC tools to convert the DSK to HFE
6. I used a MS-500F compatible one
comments powered by Disqus