This is one of my current projects. It is based on the Ampro Little Board Plus which is a single board computer designed to be mounted on the back of a 5.25″ floppy disk drive.
It uses a Z80 processor running at 4MHz and includes two serial ports, one parallel port, a floppy disk controller and a SCSI controller. It runs CP/M 2.2 and is happy to boot off a floppy or hard disk. I’ve added a SCSI2SD to emulate several 20MB hard disk drives.
The user interacts with the machine using a serial terminal.
I started off with the two 40 track Mitsubishi drives shown but have been using a gotek (with FlashFloppy) for the software load.
Currently, i’m loading up a whole bunch of software from images created using cpmtools. Eventually this will be mounted in an external drive enclosure.
This took me a bit longer than I expected because I didn’t read the instructions. CP/M needs to be configured to have some hard disk buffer space, otherwise the format fails mysteriously. I changed it from 60k to 56k. That allows room for the maximum 88MB of total disk storage.
The hformat program allowed for different controllers but after some experimenting I found success with the Seagate ST-225N hard disk.
+-----
Form 5.25"/HH Cylinders 615| | |
Capacity form/unform 21/ 25 MB Heads 4| | |
Seek time / track 65.0/20.0 ms Sector/track 17| | |
Controller SCSI1 SINGLE-ENDED Precompensation
Cache/Buffer KB Landing Zone 670
Data transfer rate MB/S int Bytes/Sector 512
1.500 MB/S ext ASYNC
I set up sd2scsi with 7 drives each with 615 x 4 x 17 = 41820 sectors of 512 bytes.
I used hinit (with burst mode) to set up 2 partitions on drive 0 and drive 1:
8192k
8192k
This needs to be done on every boot (really? yes) but an alias can be created:
alias
HINIT YD010 AF8192 AG8192, YD110 AF8192 AG8192,.
hardinit
then another alias that does this and swaps the drives over:
alias
HARDINIT; SWAP AF BG CH DI; STARTUP
HSTART
Startup can contain whatever is wanted, eg a menu program.
HSTART can be run on boot by adding at item 5 in the config program.
Copy the system track from the boot floppy to the hard disk using SYSGEN (watch out for the letter swapping).
Less than obvious (it’s in a separate section of the hard disk software manual right at the end) are instructions for autostart, noting HGEN in particular.:
When the system starts, it looks for a boot floppy. If it finds it, then it will boot from it. If it doesn’t find it, in about 10 seconds it will boot from the first hard disk partition. For some reason it keeps looking for a disk in the first floppy disk drive. If you give it one it stops but does nothing with the disk.
The Little Board was designed so that it could be mounted to a 5.25″ floppy disk drive. In keeping with this vibe, it uses a floppy disk drive power connector with just 12V and 5V; -12V for RS232 is generated on the board itself.
With this in mind, i thought that perhaps a disk drive enclosure could be a useful starting point. I had bought a hard disk in an external enclosure at a swap meet, but i was unable to find any information on the interface. I figured that the drive within would not be reliable in any case.
The enclosure has a heavy linear supply providing +5V and +12V. The drive itself is a full height 5.25″ drive, so there is sufficient accommodation for two half height floppy disk drives.
I figured that i could sequester unused parts, including the hard disk, just in case i wanted to return it to its original state.
I wanted to include a physical floppy disk drive, a gotek emulator, the Little Board, and a SCSI2SD card. If i mounted the Little Card to the floppy drive then it would have been underneath which would make it difficult to access the connectors.
Instead, i created a “baseplate” to accommodate the Little Board and the SCSI2SD. I mounted the baseplate on the top cover.
I replaced the perspex front panel with a new aluminium panel with a cutout for the drives and holes for power and hard disk lights and a reset switch.
Both the front panel and the baseplate were earthed. I used metal standoffs and cleared paint so that they would ground the cards.
The front panel got a couple of coats of gloss Bermuda blue.
The enclosure had a couple of cutouts for connectors, which gave enough space for two 9 pin serial ports and the 25 pin printer port. I made up a custom panel to overlay the existing cutouts.