Supports:
- all "woz test images" v1.3 (WOZ1, WOZ2) are working, except 3.5"
- additionally: Frogger (spiradisc), Choplifter (not Enhanced //e!), Lode Runner, Marble Madness, Skyfox.
- woz images can be .gz or .zip compressed (ie. same as other supported images)
- save-state
Limitations:
- read-only, so WOZ images are forced to be write-protected
. as a result, games that need r/w images won't work (Stickybear Town Builder, Wizardry)
- 5.25" only (not 3.5")
Changed struct Disk_t:
. Added new struct Drive_t with "has-a" relationship to Disk_t
. Split properties of drive into Drive_t and properties of disk into Disk_t
Changes to ease code compilation in GCC.
Disk_t and HDD contain a std::string and for this reason they need a proper constructor, ZeroMemory is not guaranteed to work.
. .dsk / .nib images
. ProDOS format / DOS 3.3 init
. authentic / enhanced disk access speed
For zero-length files, resize to the complete file size when first opened (#506)
. Support both .dsk and .nib
Created a new class FormatTrack to encapsulate the new track formatting logic
Improved precision of 'authentic' drive mode's spin emulation (#125)
Save-state: (save-state DiskII unit v2)
. support Format Track state
. save DiskLastCycle
DenibblizeTrack(): added some debug asserts and comments
Updated for VS2008/VS2013/2015/2017 projs & remove dependency on ddraw.lib for VS2013/2015
Updated disk logging:
. Moved all LOG_DISK_xx macros to new DiskLog.h (since shared by Disk.cpp and DiskFormatTrack.cpp)
. For write nibble: option to log cycle count & sync byte count
. For written track: option to log gap1/2/3 and track size
. For disk latch r/w: option to log when D5AA96 detected
Other:
. Debugger: Fix CD cmd to support absolute paths (#505)
Also:
. support new CpuType independently of Apple2Type
. save-state: don't save disk track image if no disk
. save-state: re-init AppleWin internals & UI to reflect changed Apple2Type
. Format now extensible for supporting new hardware types in the future
. Include missing items like Apple2Type, CyclesThisVideoFrame (#255)
Continue to support loading of old v1 format.
Added card save/load for:
. Mouse (#260)
. HDD (#260)
. Printer
Extended card support for:
. SSC
Other:
. Added save-state v1 struct size checks
. Create SaveState_Structs_v2.h and split out common into SaveState_Structs_common.h
. Refactor HardDisk.cpp to use imagehandle; and consolidate with Disk.cpp
. Fix Disk/HD_GetFullPathName() which wasn't always returning full pathname
. Consolidate common GetImageTitle() and move into DiskImage.cpp