User:Tingo/Floppy machines

From NDWiki
< User:Tingo
Revision as of 18:56, 11 August 2018 by Tingo (talk | contribs) (→‎Software: note that TestFDC is useful)
Jump to navigation Jump to search

My variation of the ND media reader project.

Machine for 5.25 inch floppies

This is an old machine which I got around 2009 or so.

Hardware

The hardware is

  • Dell OptiPlex[1] GX300
  • cpu: Intel Pentium III @ 733 MHz (the motherboard has space for a second processor, but I don't have that or the required VRM module)
  • memory: 2 slots, type RIMM, 512 MB (2 modules of 256 MB, max 1 GB)
  • hard drive: ad4: 476940MB <WDC WD5000AAKS-00TMA0 12.01C01> at ata2-master UDMA100 SATA 1.5Gb/s (was: 190782MB <Seagate ST3200822AS 3.01> at ata2-master SATA150)
  • optical drive: acd0: CDRW <Hewlett-Packard CD-Writer Plus 9500/1.0e> at ata1-master UDMA33
  • floppy drive: 3.5 inch 1..44 MB drive (A:, fd0)
  • floppy drive: 5.25 inch 1.2 MB drive (B:, fd1)
  • network - wired: xl0: <3Com 3c905C-TX Fast Etherlink XL> port 0xec00-0xec7f mem 0xfafff800-0xfafff87f irq 18 at device 12.0 on pci2

The floppy drives are connected to the machine in the usual way, with a normal (PC style, with a twist between first and second floppy connector) floppy cable.

Software

When selecting a machine for this purpose Dave Dunfield's[2] TestFDC program is useful. This is a (MS-)DOS program, but it runs easily from a floppy.

Operating system: FreeBSD[3] i386, version 8.2-stable from 2011. This machine is only used for reading and writing media, so there is no need to upgrade to a newer version of FreeBSD.

tingo@kg-t2$ uname -a
FreeBSD kg-t2.kg4.no 8.2-STABLE FreeBSD 8.2-STABLE #1: Mon Sep 26 13:09:55 CEST 2011
     root@kg-t2.kg4.no:/usr/obj/usr/src/sys/GENERIC  i386

I use fdcontrol[4] to view or set parameters for the floppy drives and dd[5] to read and write floppies. I use ndfs[6] to check if the floppy is in a standard ND format[7].

Usage

I usually ssh into the machine after it is powered up, and do all my work from a shell.

Workflow for reading a floppy

  • insert a floppy in the floppy drive
  • use fdcontrol to set correct format (only needed the first time, and when you change format)
  • (optional) use ndfs to check if the floppy is in a ND standard floppy format.
  • use dd to read floppy
  • transfer the image off the machine via scp[8].

repeat until you have imaged all the floppies you want to image.

The steps for writing are similar, but the order changes, and the direction changes for some of them.

Using fdcontrol

Use fdcontrol to view the settings (note: you need a floppy in the drive for this to work!), as user root do fdcontrol -vF /dev/fd1 (or /dev/fd0 for the first floppy) example

# fdcontrol -vF /dev/fd1
/dev/fd1: 1200 KB media type
   Format:        15,512,0xff,0x1b,80,500,2,0x54,1,0,+mfm,+auto
   Sector size:    512
   Sectors/track:    15
   Heads/cylinder:    2
   Cylinders/disk:    80
   Transfer rate:    500 kbps
   Sector gap:    27
   Format gap:    84
   Interleave:    1
   Side offset:    0
   Flags        <MFM,AUTO>

this shows the default format as 1.2 megabyte PC format.

To change to ND format 17b: as user root fdcontrol -f 1232 /dev/fd1. If you view the settings you get:

# fdcontrol -vF /dev/fd1
/dev/fd1: 1232 KB media type
   Format:        8,1024,0xff,0x35,77,500,2,0x74,1,0,+mfm
   Sector size:    1024
   Sectors/track:    8
   Heads/cylinder:    2
   Cylinders/disk:    77
   Transfer rate:    500 kbps
   Sector gap:    53
   Format gap:    116
   Interleave:    1
   Side offset:    0
   Flags        <MFM>

To change to ND format 0b: as user root fdcontrol -s 8,512,0xff,40,77,500,1,80,0,0,-mfm /dev/fd1. This format looks like this:

# fdcontrol -vF /dev/fd1
/dev/fd1: 308 KB media type
	Format:		8,512,0xff,0x28,77,500,1,0x50,0,0
	Sector size:	512
	Sectors/track:	8
	Heads/cylinder:	1
	Cylinders/disk:	77
	Transfer rate:	500 kbps
	Sector gap:	40
	Format gap:	80
	Interleave:	0
	Side offset:	0
	Flags		<>

If you get errors from fdcontrol, you might have specified a floppy format that your controller and / or floppy drive can't handle.

Using dd

If you get errors when you use dd you should check that the resulting image is of the expected size and that it is readable. Errors from dd usually means

  • you set wrong format with fdcontrol
  • there are read errors on the floppy itself

Machine for 8 inch floppies

Hardware

Software

Usage

History

2018-08-11
I created this page.

References