Use 2.88 MB floppy image?

Discussions about using Windows guests in VirtualBox.
Post Reply
Rootman
Posts: 251
Joined: 1. Oct 2012, 18:29

Use 2.88 MB floppy image?

Post by Rootman »

It's been a long time since I've messed with floppies and floppy images. I am trying to use a 2.88 floppy image on Virtualbox 4.2.10 r84104 and it just won't work. I can mount the image on my host using imdisk and see contants but it won't work in either a DOS or Windows Xp or 7 or PE guest under VBox.

Is there some trick to doing it?
Perryg
Site Moderator
Posts: 34369
Joined: 6. Sep 2008, 22:55
Primary OS: Linux other
VBox Version: OSE self-compiled
Guest OSses: *NIX

Re: Use 2.88 MB floppy image?

Post by Perryg »

Floppies are a thing (blast) from the past. VirtualBox does not install the controller by default, so did you add the controller in the guest setting?
Rootman
Posts: 251
Joined: 1. Oct 2012, 18:29

Re: Use 2.88 MB floppy image?

Post by Rootman »

Well, YES I added a controller and attached an image. In both DOS and Windows GUESTS it won't let me access a 2.88 MB image. It will handle 1.44's but not 2.88's. I can mount the same images in IMDISK to the host and they show up fine and can be written to but not formatted.

Ahh, the bad old days of floppies.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Use 2.88 MB floppy image?

Post by mpack »

What is the exact size in bytes of your floppy image file?

Also, what is the goal? You mention that you can access the contents, hence you can move those contents to shared folder or an ISO (CD). I can't imagine why anyone would use the obscure 2.88MB format as a distribution standard.
Rootman
Posts: 251
Joined: 1. Oct 2012, 18:29

Re: Use 2.88 MB floppy image?

Post by Rootman »

I've tried several, on disk size from the HOST is:
blank.ima = 289,792 bytes <-- not sure why so small, corrupted?
blank_floppy288.ima = 2,949,120 bytes

When trying them I get a DEVICE NOT READY error. Can't format them either.

The goal is provide access to these funky industrial machines that have USB ports that can be booted to (surprisingly) but the machines only have 512 megs of RAM, so my WIN PE disks won't function correctly. They have built in 1.44 floppies, but the operators are complaining that they run out of room. I've mapped TWO 1.44 images on a USB drive via GRUB4DOS and it worked, boot to floppy A: and you can also copy crap off on to floppy B: as well. I can mount the images on a Windows machine to load them and pull off data using IMDISK. Updating the machines "PC" component is mega thousands of dollars. I was shocked as hell when I could boot to the USB drive and thought it would be a cinch to map a few floppy images via grub4dos, boot to FreeDOS and let them copy their stuff off and on the stick, pull it and get to the data on a Windows machine. They need to do this like once or twice a year, changes in the amount of files and file size has made the 1.44 disks cramped - let alone find a PC with a floppy drive and keep the floppies clean and safe. Seems like they go to hell just sitting in a box in my desk :)
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Use 2.88 MB floppy image?

Post by mpack »

The small one is likely compressed or truncated. VirtualBox can't use those. It must be a raw, uncompressed image of exactly the correct size, because VirtualBox uses the size to decide which floppy drive type to simulate - and there were many types over the years (single sided, double sided and high capacity versions of both 5.25" and 3.5" drives).

2,949,120 bytes is the correct size.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Use 2.88 MB floppy image?

Post by mpack »

I've just done some experiments myself with mounting a 2.88MB floppy image in an XP VM.

Before doing that, I checked the VBox source code. The file "fdc.c" (Floppy Disk Controller) does have code to recognize several floppy variants of around that capacity, including the precise capacity discussed here.

VirtualBox itself seemed to be perfectly happy with the floppy image. However, when I ran XP it saw that there was a floppy disk present, but it refused to display its contents. When I tried to format the disk only the 3.5" 1.44MB size option was offered. I tried to research whether XP in fact includes drivers for a 2.88MB floppy, but couldn't find anything definitive. Hence my present guess is that this is a format that was never natively supported by generic DOS or Windows. Third party drivers would be needed. That's as far as my enthusiasm got me.
Rootman
Posts: 251
Joined: 1. Oct 2012, 18:29

Re: Use 2.88 MB floppy image?

Post by Rootman »

It's funny, I was using FreeDOS which COMES on a 2.88 image, It just can't seem to format or write to the floppy under Vbox. however I am not able to boot to it on the floppy, i had downloaded the CD version and created a small VM and installed it to the HD and was attempting to created a 2.88 floppy with a few more tools on it that what comes with the bare bones 2.88 MB floppy image. It must be a VBox issue.

About XP - I did find this:

The 2.88MB floppy format is not supported by Windows XP.

Microsoft Knowledge Base Article - 309623
Floppy Disk Formats That Are Supported in Windows XP

Windows XP supports the following floppy disk formats:
1.44 megabyte (MB) 3.5" floppy disk (read, write, format)
720 kilobyte (KB) 3.5" floppy disk (read, write only)
1.2MB 5.25" floppy disk (read, write only)
360KB 5.25" floppy disk (read, write only)

BUT, IMDisk will open the image just fine and show the contents and accept writing, I'm just note to format the disk.

Funny.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Use 2.88 MB floppy image?

Post by mpack »

I'm not sure why you keep mentioning Imdisk. Imdisk is not constrained by a requirement to emulate a specific type of floppy drive.

I have no experience with FreeDOS and hence can't comment on what formats it supports. You seem to have established that non of the guests you mentioned in your OP will support this format. That would seem to be the end of the matter! (if XP didn't support an obscure 3.5" floppy format, it's for sure that Vista, Win7 and Win8 won't support it either! Since I expect XP to have supported anything that WinDOS supported, I guess that means that DOS didn't support it either).
Rootman
Posts: 251
Joined: 1. Oct 2012, 18:29

Re: Use 2.88 MB floppy image?

Post by Rootman »

Sorry for the confusion. I mention IMDisk because it CAN open the image disks and see / write to them, which PROVES the images are valid and WORK. I can also boot to the 2.88 images using grub and get to a FreeDOS prompt. MS-DOS or FREEDOS, it doesn't matter to me, I just started with FreeDOS because it COMES on a 2.88 image.

The "guests" I mentioned at first (XP, WIn 7) don't NEED to see the 2.88, I mention them because the 2.88 won't work with them EITHER - which until I found the prior mentioned article about XP - I didn't know about. The guest I am trying to get to work - FreeDOS - should and DOES - at least on the right hardware - support 2.88s. Hardware that it appears VBox says it will support but evidently does not.

I have a use for a bootable USB drive that emulates 2 floppies that needs a bit more room than 1.44 X 2 can provide, hence my interest in 2.88. The particular machine that I am trying to use it on does not have enough RAM to run WinPE so that I can easily exchange files with it's built in "disk", which appears to be a FAT16 or FAT32 formatted SSD of some sort. It's a weird ass machine that the manufacturer stepped in to the 21st century with by providing a bootable USB port but no ethernet adapter, they want the users to use (GASP!) RS232 and buy an expensive COM package to use on a PC Our current crop of PCs don't even have a serial port on them. And the managers here are loath to setup a dedicated older PC with a serial port to this POS just to move a few files back and forth a few times a year to.

So my brilliant idea was a USB bootable flash drive that someone on ANY Windows machine can use IMDisk to copy files TO one or both floppy images, plug the thing into the machine, boot it to FreeDOS and execute a simply batch file to push or pull files to and from the machine. Only I can't get the 2.88 image to work. And wouldn't you guess it, they have 1.6 MB of data in one set of files, too big for 1.44 MB floppy.

So I need to set this up and test it somehow, VBox I THOUGHT could be that test bed, but it appears that while it SAYS it supports 2.88's it does not really seem to.

I can go though a convoluted process of installing FreeDOS to a HD (which I already have done) in VBox, shut it down, mount the FreeDOS HD under another guest like XP, open and write the FreeDOS tools that I want to it from the FreeDOS HD onto the floppy image by accessing the 2.88 images IN VBOX with IMDisk. Once I get what I want from FreeDOS I can access the 2.88 images from my host - or ANY PC and push / pull files to and form it using IMDisk. It would be so much simpler if I could just USE the 2.88s under the FreeDOS guest and simply COPY the DOS command I want - and a free Norton Commander clone.

Maybe I'll try some lightweight Linux and a USB ethernet adapter and try and get it on the network.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Use 2.88 MB floppy image?

Post by mpack »

Rootman wrote:FreeDOS - should and DOES - at least on the right hardware - support 2.88s. Hardware that it appears VBox says it will support but evidently does not.
Your evidence for that latter assertion seems scant to me, so far. All we know for sure so far is that you can't get it to work.

Thinking some more about the evidence...

A glance at the VBox source code tells me that an floppy size table lookup is all that distinguishes support for one floppy size vs another. Therefore, since the code is common, if one supported format works (and 1.44MB definitely works) then they all should work, provided there isn't a bug in the parameters (tracks, cylinders) returned by the lookup table.
 Edit:  Just checked the fdc.c code again: quite simple, no lookup bug. SPT value for 2.88MB is exactly twice what you'd expect for 1.44MB.

I believe KosherDOS used to use the BIOS for floppy I/O (that was part of the definition of a BIOS). So if the VBox (nee Bochs) BIOS reads 2.88MB floppies then I guess DOS ought to handle it as well. I have not yet checked the BIOS source code. XP of course wants 32bit drivers, not BIOS calls, so it would be no surprise if it doesn't recognize the disk regardless of the BIOS.
[Edit2] I just checked the BIOS source code. It too has apparant explicit support for 2.88MB floppies. 
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Use 2.88 MB floppy image?

Post by mpack »

I tried to test the theory that a 2.88MB image should work in DOS. I'm at work at the moment, so I downloaded the same image I used for the XP test I did at home this morning. However, here at work VirtualBox (not the guest) refuses to mount the disk, giving me VERR_UNSUPPORTED and saying that it couldn't get the storage format. The size and first few sectors seem ok to me, I'm not sure what else it checks. I'm using VBox 4.1.22 at work, 4.2.8 at home. I'll try to remember to try this again at home.
Rootman
Posts: 251
Joined: 1. Oct 2012, 18:29

Re: Use 2.88 MB floppy image?

Post by Rootman »

Well as usual I was over thinking this thing. I simply needed a good sized space to use on my USB stick to transfer files. My first thought was the old standard of floppies. 1.44 images were too small, 2.88s were giving me grief. Then it dawned on me, how about a HDD RAW image?

So I created a 20 MB .VHD static (raw) image under VBox, added it to a VM along with the FreeDOS CD ISO I downloaded. Booted to the ISO. FDISK'd, FORMATTED and installed FreeDOS to the 20mb disk. Shut off the machine. Copied the 20MB.vhd file to the USB stick and edited the grub4dos menu for it.

I can boot to this 20MB HDD emulation via a USB flash drive, write and read files to and from it. Then I can mount the 20mb.vhd file in any Windows machine using IMDisk (or any other such utility) and copy files to and from it. Sure beats paying $695 for some slow ass RS232 software and running a cable for it. Couple of batch files to "automate" it all and I'm done. The last time the machine crashed - which is what started me down this path, the company had to pay the vendor to come in and restore the files from some old backup that was years old. Now we can keep it up to date.

VBox was simply used to CREATE the drive, mount it along with a FreeDOS ISO file to make it bootable with the FreeDOS OS. It's not how I usually use it but it turned out to be just the right tool.
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Mostly XP

Re: Use 2.88 MB floppy image?

Post by mpack »

Well, I tried accessing a 2.88MB floppy from a DOS 6.22 VM. As predicted, VBox 4.2.8 which I'm still running at home was happy to mount the floppy. However DOS gave disk errors when it tried to access the floppy, so something definitely isn't working. I can't see why VBox would have a problem, but it does seem that that's the case. This sounds like the kind of dead-OS bug Michaln is often interested in, heaven knows why!
Post Reply