On the virtual get-together today, we tested the new FDISK 1.3.3 with a large virtual hard disk. I wanted to report a bug from that.
Test setup: QEMU on Linux. "hda" (hard drive .. created with *qemu-img create 4gb.img 4G*) is set to a blank 4GB virtual disk file. "fda" (floppy) is set to a virtual floppy image with a copy of FDISK 1.3.3. "cdrom" is set to FreeDOS 1.3 RC3 (basically, the initial boot environment) Procedure: Boot QEMU using FreeDOS 1.3 RC3 and go into the installer, but immediately exit to DOS. This means the FreeDOS installer is on "A:" and the floppy image with FDISK 1.3.3 is on "B:" 1. Change to "B:" and run FDISK 2. "Create DOS partition or Logical DOS Drive" - "Create Primary DOS Partition" - set the new partition to "3000" Mbytes ... this creates a "C:" partition that is "3004" Mbytes 3. "Create DOS partition or Logical DOS Drive" - "Create Extended DOS Partition" - this shows the "Maximum space available for partition is 1098 MBytes" .. use that default value to create the extended partition 4. FDISK asks to "Create Logical DOS Drive in the Extended DOS Partition" - do that, but set the logical drive to be 500 Mbytes ... this creates a "D:" partition that is "502" Mbytes 5. FDISK asks to "Create a Logical DOS drive in the Extended DOS Partition" - and shows the "Maximum space available for partition is 596 Mbytes" .. use that default value to create the next extended partition ... this creates an "E:" partition that is "588" Mbytes 6. FDISK asks to "Create a Logical DOS drive in the Extended DOS Partition" - and shows the "Maximum space available for partition is 8 Mbytes" .. use that default value to create the next extended partition ... this doesn't create a new partition, but instead now displays "D:" as "0" Mbytes, with "FAT12" and "100%" usage ... FDISK also says "All available space in the Extended DOS Partition is assigned to logical drives" - so I exit But the virtual disk is now messed up. And it seems FDISK is confused too. When I try to exit the program with Esc, it displays: pDrive->log_drive[index].start_cyl (0) != extended_cylinder (383) And if I exit QEMU, I can use Linux fdisk to display the contents of my virtual drive image: $ fdisk -l 4gb.img > Disk 4gb.img: 4 GiB, 4294967296 bytes, 8388608 sectors > Units: sectors of 1 * 512 = 512 bytes > Sector size (logical/physical): 512 bytes / 512 bytes > I/O size (minimum/optimal): 512 bytes / 512 bytes > Disklabel type: dos > Disk identifier: 0x00000000 > Device Boot Start End Sectors Size Id Type > 4gb.img1 63 6152894 6152832 2.9G b W95 FAT32 > 4gb.img2 6152895 8385929 2233035 1.1G 5 Extended > 4gb.img5 6152958 4301120190 4294967233 2T 1 FAT12 > 4gb.img6 7181118 8385929 1204812 588.3M b W95 FAT32 Note the "FAT12" partition is set completely wrong. Interestingly, things are quite different if I don't try to create that last 8MB logical drive. I'll send that in a follow-up.
_______________________________________________ Freedos-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freedos-devel
