Drive options precedence

From vice-emu
Revision as of 18:27, 23 March 2023 by Gpz (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

WARNING this page is outdated and incomplete, move over to Drive Emulation Type Cleanup


Disk drive emulation has the fallback order

  • true drive emulation (TDE)
  • disk image emulation
    • file system access, or
    • raw /dev/fd0 device access, or
    • real IEC device access via OpenCBM.

In detail:

  1. Drive #. model must not be None. (None = no drive. Stop.)
  2. If TDE is enabled, this is used. No image attached = empty drive.
    These options are relevant:
    • Drive sound emulation
    • Drive #. model / * (must not be None)
    • Drive #. options / Read only access
    • Drive #. expansion / *
    • Drive #. 40-track image support / *
    • Drive #. idle method / *
    Note that if TDE is enabled, and you want to use disk files, then Enable Virtual devices should be disabled, otherwise there are buggy side-effects (see Bug #580). Unfortunately, to use a printer, this option should be enabled...
    Otherwise (if no TDE)...
  3. Enable Virtual devices must be enabled (otherwise there is no drive. Stop.).
  4. If a disk image is attached to the drive, this disk image is used, regardless of the selection in Drive #. device type.
    These options are relevant:
    • Drive #. options / Read only access
    • Drive #. 40-track image support / *
    and this action:
    • Attach disk image / Unit #....
    Otherwise...
  5. Drive #. device type = None -> no drive. Stop.
    Otherwise... (no disk image is attached)
  6. Drive #. device type = File system access -> directory is accessed
    sets resource FileSystemDevice8 to ATTACH_DEVICE_FS
    These options are relevant:
    • Drive #. options / Read only access
    • Drive #. options / File system directory...
    • Drive #. options / Convert P00 file names
    • Drive #. options / Create P00 files on save
    • Drive #. options / Hide non-P00 files
    Otherwise...
  7. Drive #. device type = Raw device access -> use a real host OS floppy drive
    sets resource FileSystemDevice8 to ATTACH_DEVICE_RAW
    These options are relevant:
    • RAW block device name...
    Otherwise...
  8. Drive #. device type = Real device access -> access device via OpenCBM
    sets resource FileSystemDevice8 to ATTACH_DEVICE_REAL
    These options are relevant:
    • Drive #. options / Enable IEC device
      It sets resource IECDevice8
    Having these 2 things for IEC devices seems unneeded?
    What happens if one of the options is selected but not the other?