One of the important lessons:

I like to put as little strain as possible on the floppy disks that I have, especially when installing operating systems. I thus like to prepare disk images on my modern Linux box in QEMU (where I can use floppy images instead of actual disks) and then transfer them over to my real retro box.

Older operating systems like OS/2 make extensive use of CHS addressing and even store some of this information in the HPFS filesystem header. CHS info spreads all over the place. So, simply creating a QEMU disk image, installing something and then copying to another drive probably won’t work, because QEMU guesses some CHS geometry that won’t necessarily match that of the target drive.

The solution is to a) create a QEMU disk image of the exact same size (in bytes) as the intended target drive, b) configure a matching CHS geometry in QEMU. The latter can be done like so:

-drive file=warp3.raw,if=none,id=disk1,format=raw
-device ide-hd,drive=disk1,cyls=495,heads=16,secs=32,bios-chs-trans=none

How do you know the correct CHS geometry? Ask the BIOS of the target machine.

And then be very thankful that we don’t have to deal with this anymore today. 😂

⤋ Read More

@lyse@lyse.isobeef.org Yeah, it’s really, really annoying. 😂

I would have loved to transfer the contents of one particular hard drive onto a Compact Flash card, doing a 1:1 copy using dd – but that just won’t work. The card has a different CHS geometry than the HDD. I actually spent a couple of days trying to work around this: Reading/understanding/reverse-engineering OS/2’s boot loader code and trying to fix the incorrect bytes. It does indeed boot now and I learned a lot. QEMU is quite powerful and allows you to attach a gdb process to the machine, so you can single-step the instructions, read memory, and what not. But fdisk still shows errors, so I don’t trust it … Maybe writing to a particular area of the filesystem will crash the whole thing. 🫤

It’s a strange hobby that I picked there. 😂

⤋ Read More

Participate

Login to join in on this yarn.