Interface DiskFactory

All Known Implementing Classes:
CpmDiskFactory, DosDiskFactory, GutenbergDiskFactory, NakedosDiskFactory, PascalDiskFactory, ProdosDiskFactory, RdosDiskFactory

public interface DiskFactory
The DiskFactory inspects a given Source inspect it to see if it matches filesystem structure(s). Invoke via Disks.inspect(Source) which will return a Context. The Context _can be empty_. If this is the case, devices can be created via the DiskFactory.Context.blockDevice() and DiskFactory.Context.trackSectorDevice() builders.
The builders follow the observation about what each filesystem currently uses:
 OS         13-sector  16-sector   800K    HDV
 =========  =========  ==========  ======  ========
 CP/M       -          CP/M        -       -
 DOS        Physical   DOS         Pascal  -
 Gutenberg  -          DOS         -       -
 NakeDOS    -          Physical    -       -
 Pascal     -          Pascal      Pascal  -
 ProDOS     -          Pascal      Pascal  Pascal
 RDOS       Physical   DOS         -       -
 
  • 13-sector disks are only track/sector devices. (And RDOS has a unique mapping to 256 byte blocks).
  • 16-sector disks have a variety of sector mappings. It can also double as a "standard" 512 byte block, as well as a unique CP/M 1024 block device.
  • 800K disks are only standard 512 byte block (Prodos or Pascal). OzDOS and UniDOS do have unique mappings to track and sector, but logically, they are block devices.
  • Anything else (larger than 800K) are "hard-disk" images and only blocks.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static class 
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void