FDS file format: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(splitting from FDS)
 
(migrated some disk format information back to the main article)
Line 1: Line 1:
== .FDS format ==
'''fwNES''' was an [[NES emulator]] developed by Fan Wan Yang.  Its most lasting contribution to the NES scene was its disk image file format, an image of the Quick Disk media.
'''fwNES''' was an [[NES emulator]] developed by Fan Wan Yang.  Its most lasting contribution to the NES scene was its disk image file format, an image of the Quick Disk media.


Line 19: Line 18:
* etc...
* etc...


== FDS Disk Side format ==
After the last file block, fill a side with all 0 so that exactly 65500 bytes is reached.


Each disk side must be structured into block as follows :
Gaps and CRCs are not included in the .FDS image.
 
1, 2, 3, 4, 3, 4, ...., 3, 4
 
The 3, 4 pattern should be repeated once per file present on the disk.
 
From the last file, fill the side with all 0 so that the side has exactly 65500 is reached.
 
== Data not stored in the FDS image ==
 
In addition to data stored in the FDS image, there is other data stored on the disc, but removed when the disc is dumped because such data wasn't meaningful for emulation.

Revision as of 21:49, 4 April 2019

fwNES was an NES emulator developed by Fan Wan Yang. Its most lasting contribution to the NES scene was its disk image file format, an image of the Quick Disk media.

The FDS format (file name suffix .fds) is a way to store Famicom Disk System disk data. It consists of the following sections, in order:

  1. Header (16 bytes)
  2. Disk data (65500 * x bytes)

The format of the header is as follows:

  • 0-3: Constant $46 $44 $53 $1A ("FDS" followed by MS-DOS end-of-file)
  • 4: Number of disk sides
  • 5-15: Zero filled

Note: Most games are an even number of sides. Ports from NROM were one side. No commercial FDS game had an odd number of sides greater than 1. Disk sides comes in the following order :

  • Disc 1 Side A
  • Disc 1 Side B
  • Disc 2 Side A
  • Disc 2 Side B
  • etc...

After the last file block, fill a side with all 0 so that exactly 65500 bytes is reached.

Gaps and CRCs are not included in the .FDS image.