Anex86 PC98 floppy image
From Just Solve the File Format Problem
(Difference between revisions)
(Created page with "{{FormatInfo | formattype = electronic | subcat = Disk Image Formats | extensions = {{fdi}} }} The FDI disk image format for NEC PC-98 disk images seems to or...") |
(→Sample files) |
||
| (7 intermediate revisions by 3 users not shown) | |||
| Line 2: | Line 2: | ||
| formattype = electronic | | formattype = electronic | ||
| subcat = Disk Image Formats | | subcat = Disk Image Formats | ||
| − | | extensions = {{fdi}} | + | | extensions = {{ext|fdi}} |
}} | }} | ||
| Line 24: | Line 24: | ||
The next 4,064 bytes of the header seem to always be pad bytes. | The next 4,064 bytes of the header seem to always be pad bytes. | ||
| + | |||
| + | fddtype values: | ||
| + | 0x10 1MB/640KB 2DD | ||
| + | 0x30 0xb0 1.44MB 2HD | ||
| + | 0x50 0xd0 320KB 2D | ||
| + | 0x70 0xf0 640KB 2DD | ||
| + | 0x90 1.2MB 2HD | ||
== FDI file image contents == | == FDI file image contents == | ||
The remaining portion of the file is a raw dd-style image of the disk. In the case of an HDM image, you can prepend a 4096-byte header onto the image to turn it into an FDI (see example below). | The remaining portion of the file is a raw dd-style image of the disk. In the case of an HDM image, you can prepend a 4096-byte header onto the image to turn it into an FDI (see example below). | ||
| + | |||
| + | == Software == | ||
| + | * [https://github.com/barbeque/pc98-disk-tools PC98 Disk Tools] | ||
| + | * [https://hp.vector.co.jp/authors/VA013937/editdisk/index_e.html DiskExplorer] | ||
| + | * https://gitlab.com/bunnylin/98ripper | ||
== Examples == | == Examples == | ||
| Line 52: | Line 64: | ||
|| cylinders || 77 || | || cylinders || 77 || | ||
|} | |} | ||
| + | |||
| + | == Sample files == | ||
| + | * {{DexvertSamples|archive/fat12}} | ||
Latest revision as of 15:34, 16 February 2024
The FDI disk image format for NEC PC-98 disk images seems to originate from the Anex86 PC98 emulator.
Contents |
[edit] FDI File Header
The FDI header is 4096 bytes long, Intel little-endian, and starts with this 32-byte header.
typedef struct {
BYTE dummy[4];
BYTE fddtype[4];
BYTE headersize[4];
BYTE fddsize[4];
BYTE sectorsize[4];
BYTE sectors[4];
BYTE surfaces[4];
BYTE cylinders[4];
} FDIHDR;
The next 4,064 bytes of the header seem to always be pad bytes.
fddtype values:
0x10 1MB/640KB 2DD 0x30 0xb0 1.44MB 2HD 0x50 0xd0 320KB 2D 0x70 0xf0 640KB 2DD 0x90 1.2MB 2HD
[edit] FDI file image contents
The remaining portion of the file is a raw dd-style image of the disk. In the case of an HDM image, you can prepend a 4096-byte header onto the image to turn it into an FDI (see example below).
[edit] Software
[edit] Examples
For a 1261568-byte "2HD" disk image (like *.HDM format), the header is as follows:
| Field | Value | Comment |
|---|---|---|
| dummy | 0 | |
| fddtype | 144 | Unsure what this value actually means |
| header size | 4096 | Includes the 32-bytes in the header |
| fdd size | 1261568 | |
| sector size | 1024 | |
| sector count | 8 | |
| surfaces | 2 | double-sided disk |
| cylinders | 77 |