SB600 - CP1 Tools and Gadgets                     (user friendly)

     

 

THE SUPERBOARD DISK DRIVE Challange

Using a 610 RAM/Floppy expansion board

If you intend to use floppy drives on your SB600 bard or C1P system, you will need a floppy controller board 610, that is connected via a 40pin ribbon cable to the free socked on the SB600 motherboard. In addition, databus driver had to be present in two sockets nearby the CPU. There was a second option presented in the 1982 issue 11 of Elektor. This Europe-size interface board needed an additional card connector board and did not include the needed memory for OS65D. The most convenient but most expensive solution was the mentioned 610 board. It would fit on top of the SB600 motherboard into the C1P metal case. Check out the interesting summary of Mark Csele.

610.gif

In my case, I do have the 610 board and a Data Separator PCB plugged onto the Pin header on the backside of the board.
This Data Separator provides a separation of the Clock and Data pulses of an 125k FM data stream. It also provides a Disk Motor signal that is extended by 4 to 5 seconds, a standard 34pole FDC connector and several jumpers for drive configurations.

One of the main design flaws of the 610 controller board, is the fact, when power is turned on/off, disk Write Enable signal and Disk select signal can be low for several milli seconds and cause data corruption on the inserted floppy disk. The first drives that came with the C1P had a head load mechanism, that provided some minor protection (the head was not loaded on power on or before power off) but to avoid data corruption, you always had to take out the floppy disk before power cycling your computer.

Modern Floppy controller ICs do have an internal reset circuit and open collector outputs where the floppy drive itself includes pull-up resistors powered by the disk drive supply voltage. A much safer concept to avoid glitches at the drive input lines. Unfortunately, this was not done for the 610 board with its 6920 PIA port and driver IC.

Especially, as this drives do not have a HeadLoad, there was an odd behavior, when the diskette was left in the drive on powering down. What happens is on the 610, the WE line will go low (pull-up resistors will go to ground) and may cause data corruption on the disk. In case of a HeadLoad mechanism, this is prevented, but not on more modern drives. Later, after some experiments, inverting WE on the Data Separator by a open collector driver solved this issue.

To ensure compatibility with standard drive setups, removing three pull-up resistors from the 610 board and having these on the drive (powered by the 5V of the drive), solved the data corruption issue, and finally was the better solution.

These are R43, R44 and R41 of the WE line. The drives have to provide +5V pull-up capability.

With the standard WE level, YE-DOS should run on a C1P with some modifications to make it read and write correctly on 3.5 inch double sided drives.

Running the OS65D disk operating system, min. 20kB of memory are needed, as the program occupies including buffers around 10k of main memory and leaves not much room for Basic or other programs.

The initial SB600 or C1P were delivered in 4K or 8K versions, therfore memoy expansion was needed. The 610 board provides max. 24k of memory in 48 SRAM ICs. Other disk operating systems, like Pico-DOS or Hexdos reduced the amout of memory needed. YE-DOS went another way not using any of the main memory, instead in one of the first version make use of 10x2114 piggy-pack RAM chips to get 5k additional memory in the area of $E000 to $F7FF.

Today I'm using an universal memory expansion board, than can be plugged into the SB600 expansion socket, or in case of an 610 expansion card, into the 610 expansion socket, when simply turned around.

Using on a SB600 with 8k memory already populated:
Here you can configure the RAM board to fill memory from $2000 to $7FFF and $8000 to $9FFF for a total of 40k.

Using on a 610 board with 24k memory already populated:
Here you can configure the RAM board to provide the YE-OSI RAM section from $E000 to $F7FF and
you may choose to place memory from $A000 to $BFFF (to replace the BASIC Roms) and $8000 to $9FFF for a total memory of 53.5k. Plenty of RAM to build any kind of new disk operating systems. Whats great is, by choosing the pin header location, you can either use it in an SB600 or for the 610 expansion card.

If you do not have a 610 expansion card or disk drives/diskettes available, but you like to load programs into the machine without using the slow and flaky cassette interface, a Fastloader module may be of interest.

Alternative Fastloader module for SD-card and serial USB interface

This module plugs into the ACIA 6850 socket and interfaces to an SD-card and serial RS232 USB interface. So no modification to your SB600 board are needed.
In the current experimental version, an small controller interfaces to the OSI computer, optional as well to an PC, if needed.
It works  standalone by using commands like Directory, Load or Save directly from BASIC. Programs are stored on a micro-SD card (HW-125 standard plug-in card attached).
Due to its integration, it is possible to implement a disk operation system just by using an SD-card over the standard OSI serial port. But this would be up to further software devellopment.

However, if this sound interesting to you, have look to the following descriptions.

 

 

 

610_MOD.gif

610 board setup guide

 

 

610 DATA Separator Plug-in board for standard Floppy disk


DS1.gif

DS1_Jumper.gif

 

 

 DS1_schematics.gif

Schematics download

DS1_Table.gif

Interface Pinout

 

 

 

 

 

SB600 and 610 32k memory expansion board

 ME1.gif

 

 

ME1_Schematics.gif

S
chematics download

 

 

Fastloader module for SD-card and serial USB connection

SER1.gif

 

FAST1.gif

General Info

 

 

Last Update: Feb 2024