retrocomputing

4421 readers
57 users here now

Discussions on vintage and retrocomputing

founded 2 years ago
MODERATORS
1
 
 

I'll leave this here if someone is interested in this. I had to spend some time to figure all this out so it might save somebody's time:

So I found this old PC with a real native floppy interface (i.e. not USB floppy drives) and I wanted to use Linux to image and low-level format old disks more conveniently than in DOS or Windows.

The problem is, modern Linux kernels have dropped support for low-level floppy controller commands (i.e. the FDRAWCMD ioctl) in the floppy module: the ioctl has always been problematic and it was finally dropped in April 2022.

That means you can't do anything but basic generic block device operations on floppies on a modern Linux distribution. So things like dd and basic mtools commands like mdir or mtype. That's fine if your floppies have a standard format and are in good working condition. For anything else though, you're SOL.

I had already installed the 32-bit version of Debian 12 Bookworm on my old PC, which is the most modern version of i686 Linux you can find at the moment, and I had it all configured nicely. So I wasn't exactly keen on regressing to an older distro until I found one with full native floppy support - not to mention the PITA of downloading and trying progressively older distros until I found one.

So I simply regressed the kernel and finally found the last one that still has FDRAWCMD support enabled:

~$ uname -srv
Linux 4.19.0-20-686-pae #1 SMP Debian 4.19.235-1 (2022-03-17)

To install this kernel, do this:

  • Add the Debian 10 (aka Buster) repo to your APT sources.list:

    sudo bash -c "echo deb http://ftp.debian.org/debian buster main >> /etc/apt/sources.list"

  • Update the cache:

    sudo apt update

  • Install the older kernel (this assumes that you're on a 32-bit machine of course):

    sudo apt install linux-image-4.19.0-20-686-pae

  • Reboot, go into the Grub menu and select the 4.19 kernel after the POST.

  • Once the machine has rebooted, confirm that the 4.19 kernel is running:

    uname -v

If you haven't done it yet, install common floppy tools:

sudo apt install mtools
sudo apt install fdutils

Also add youself to the disk group to have access to the floppy interfaces as a user, not just as root:

sudo useradd -G disk your_username

To confirm that low-level floppy access is functional, insert a floppy you don't care about in the drive corresponding to A: in DOS and do:

superformat /dev/fd0 --superverify

You should see something like this (here it didn't work, I used a floppy with bad sectors for the sake of example):

~$ superformat /dev/fd0 --superverify
Measuring drive 0's raw capacity
In order to avoid this time consuming measurement in the future,
add the following line to /etc/driveprm:
drive0: deviation=-480
CAUTION: The line is drive and controller specific, so it should be
removed before installing a new drive 0 or floppy controller.

 Verifying cylinder 15, head 1 error during command execution
   66 04 0f 01 01 02 12 1b ff 
44 20 20 0f 01 01 02 
CRC error in data field
CRC error in data or address
cylinder=15 head=1 sector=1 size=2
error during command execution
   66 04 0f 01 01 02 12 1b ff 
44 20 20 0f 01 01 02 
CRC error in data field
CRC error in data or address
cylinder=15 head=1 sector=1 size=2
 Verifying cylinder 15, head 1 error during command execution
   66 04 0f 01 01 02 12 1b ff 
44 20 20 0f 01 01 02 
CRC error in data field
CRC error in data or address
cylinder=15 head=1 sector=1 size=2
error during command execution
   66 04 0f 01 01 02 12 1b ff 
44 20 20 0f 01 01 02 
CRC error in data field
CRC error in data or address
cylinder=15 head=1 sector=1 size=2

And as a reminder, here are a few useful commands for direct floppy access in Linux (without mounting the device):

  • List the content of a floppy DOS-stylee:
~$ mdir a:
 Volume in drive A has no label
 Volume Serial Number is 2819-14E6
Directory for A:/

COMMAND  COM     93040 2005-04-18  17:54 
DISPLAY  SYS     17175 2005-04-18  17:54 
EGA      CPI     58870 2005-04-18  17:54 
EGA2     CPI     58870 2005-04-18  17:54 
EGA3     CPI     58753 2005-04-18  17:54 
KEYB     COM     21607 2005-04-18   3:04 
KEYBOARD SYS     34566 2005-04-18  17:54 
KEYBRD2  SYS     31942 2005-04-18  17:54 
KEYBRD3  SYS     31633 2005-04-18  17:54 
KEYBRD4  SYS     13014 2005-04-18  17:54 
MODE     COM     29239 2005-04-18  17:54 
AUTOEXEC BAT         0 2012-10-15  17:46 
CONFIG   SYS         0 2012-10-15  17:46 
       13 files             448 709 bytes
                            889 344 bytes free
  • Dump the entire floppy raw in an image file:
~$ dd if=/dev/fd0 of=floppy.img
2880+0 records in
2880+0 records out
1474560 bytes (1.5 MB, 1.4 MiB) copied, 50.8244 s, 29.0 kB/s
  • List the content of the floppy image file as if it was a real floppy:
~$ mdir :: -i floppy.img 
 Volume in drive : has no label
 Volume Serial Number is 2819-14E6
Directory for ::/

No files
                          1 457 664 bytes free
  • Copy a file to/from a floppy:
~$ mcopy test.txt a:
~$ mcopy a:test.txt .
  • Dump a file on the floppy on the console like DOS' TYPE would:
~$ mtype a:test.txt

Complete list of mtools utilities:

~$ mtools
Supported commands:
mattrib, mbadblocks, mcat, mcd, mclasserase, mcopy, mdel, mdeltree
mdir, mdoctorfat, mdu, mformat, minfo, mlabel, mmd, mmount
mpartition, mrd, mread, mmove, mren, mshowfat, mshortname, mtoolstest
mtype, mwrite, mzip

Complete list of fdutils utilities:

~$ dpkg -L fdutils | awk '{FS="/"} /bin\/[a-z]/ {print $4}'
diskd
diskseekd
fdmount
fdrawcmd
floppycontrol
floppymeter
getfdprm
setfdprm
superformat
xdfcopy
fdutilsconfig
fdlist
fdmountd
fdumount
xdfformat

I hope this helps.

2
3
4
5
6
 
 
7
 
 

cross-posted from: https://kbin.earth/m/pcgaming@lemmy.ca/t/951433

A community devoted to all things Commodore Amiga.

8
23
submitted 1 day ago* (last edited 1 day ago) by ptz@dubvee.org to c/retrocomputing@lemmy.sdf.org
 
 

It is easy to forget that many technology juggernauts weren’t always the only game in town. Ethernet seems ubiquitous today, but it had to fight past several competing standards. VHS and Blu-ray beat out their respective competitors. But what about USB? Sure, it was off to a rocky start in the beginning, but what was the real competition at that time? SCSI? Firewire? While those had plusses and minuses, neither were really in a position to fill the gap that USB would inhabit. But [Ernie Smith] remembers ACCESS.bus (or, sometimes, A.b) — what you might be using today if USB hadn’t taken over the world.

9
 
 

I love this art. I photocopied it this afternoon and figured you'd might like it.

10
 
 

Did you know there was a contender for computer peripheral interconnectivity before USB but not Firewire, Apple Desktop Bus or others?

It’s ACCESS.bus, which effectively expanded the I²C protocol.

11
12
13
 
 

I've started dumping those floppies I recovered the other day that have content in them. Where do you suggest I upload the images?

I was thinking of sticking them on my Github and just writing a script to list the content of each image in the README.md, and then those who want to make sense of what it is can have at it.

14
15
 
 

My company's first IT guy - he was hired when the company was created in the mid 80s - retired after a lifetime of very competent IT work.

The man was a bit of a packrat, and there was a mountain of old computer cruft in his office and in his storage spaces.

We cleared all those spaces last week and I saved a few things, like a pair of Apple IIs with the original monitors and joysticks, because I had one when I was a teenager - so ya know, for memory's safe.

But I let the rest go to the landfill because, while I know a lot of that crap has some value today, there was so much of it and I simply didn't have time to catalog everything and put it up for sale on behalf of the company. Not to mention, I'm generally not a fan of old stuff: I had to suffer it when it was the only thing around and I'm glad it's gone personally.

The last pile however, I finally decided to save: it's 4 big cardboard boxes full of new unopened boxes of 3 1/2 and 5 1/4 floppies and written ones (maybe 500 of each blank and 500 with something on em), 10 NOS 3 1/2 floppy drives and one nondescript beige PC with a 5 1/4 drive, another 3 1/2 drive and a DVD burner in the bays.

My plan is to image what's worth imaging (probably not much) that's still readable (probably not much either) then format and recondition the written disks and sell them all when I have free time, and just keep a couple of 3 1/2 drives and the 5 1/4 for myself (because I'm a bit of a packrat too 🙂) and sell the other 8 3 1/2 drives.

Or I could simply sit on them until they become truly rare 🙂

Anybody has any idea what that junk might be worth today?

16
 
 

I’m looking for a mouse and keyboard that will work for my retro 98SE build while also being acceptable for playing on my windows 11 pc that’s connected via KVM at the same desk.

Requirement is for it to use PS/2 so I don’t have to connect another input device because the USB driver decided not to load on 98.

I’ve been trying to google for information but not getting a lot of good answers. Thanks in advance for your advice folks

17
 
 

LGR retrospective on the HP Mini 1000, one of the more popular PCs from the short-lived era of the netbook! If you could even call it an era. In hindsight, it was all a bit silly, even though the 45nm processors making it possible were quite exciting at that point in time. So join me in reviewing the Mini 1000 that I had back in 2009 (or close to it) and putting it through its paces 16 years later!

18
19
20
21
22
23
 
 

OneCore is an incredible project for Windows XP that lets you run modern software on this decades-old operating system. So today, we're gonna throw a few programs at it and see how well it works!

24
 
 

Today we're taking a look at SpotifyXP, a project to bring back Spotify to Windows XP!

25
 
 

It's time for another super mini mail call episode! We have a couple exciting new developments to help us make our old retro computers better. Thanks to everyone who has sent stuff in.

view more: next ›