1. Registry functions
The set of functions are changed to consistently use bool arguments.
The macros are changed to inline functions to improve type checking.
RegSaveValue() are overloaded with help of templates to reduce
typecasting at call sites. For instance, bool value would be converted
consistently instead of relying on call sites to convert bool to int values.
2. Memory functions
BOOL usages were unnecessary. Mostly internal usages which can simply be bool.
3. FrameBase
Some member variables are changed to bool.
BOOL was used because of those Registry functions.
Additional changes:
- Some expressions are forced to be bool when assigning to bool variables.
* Snapshot_GetDefaultFilenameAndPath(): fix segfault. SLOT7 -> i
* Disk & HardDisk: tidy up casts and iterations.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
. Add PropSheetPage: Slots (and include 'Reset to Default')
- include config options for some cards
. Remove PropSheetPages: Sound & Disk
. Config page: refactor and add 'Reset all to Default'
. Input page: refactor
. Advanced page: refactor
* Bump debugger version 2.9.1.19
* Cleanup
* Debugger: Update DISK INFO to display disk info across 2 lines of text
* Debugger: Fix ConsolePrint() to wrap long lines of text
* Debugger: Update DISK INFO to show last nibble for non WOZ floppy image
* Replace optional pointer with reference in GetCurrentState()
* Add Log.h to Disk.h
* Cleanup GetCurrentState()
* Cleanup whitespace
* Add single line output for DISK INFO foundation. Still need CONFIG DISK #
* 2.9.1.21 Added: DISK INFO [#]
. In 2x windowed mode: always show slot 5 Disk II LEDs.
. Add tooltips for slot 5/6 track/sector info (d1 & d2) - shows dec/hex & fractional track position.
- but this track/sector info is now on a UI toggle in the Config -> Disk tab.
. Debugger: add 'DISK SLOT n' - to set current slot of Disk II card
- ie. support 'DISK INFO' for slot 5
Use FindTrackSeamWOZ() to find longest run of sync FF/10 nibbles.
Jitter added:
. only for tracks 33.0 and above
. only for tracks with long runs of sync FF/10 of more than 110
Changes:
. DumpTrackWOZ() outputs nibble then zeros (instead of zeros first)
. Debugger: 'disk info' outputs bitOffset (instead of byteOffset+mask)
- Update LogOutput() and LogFileOutput().
- Add StrFormat() to produce std::string out of snprintf() & add StrFormat.cpp to projects.
- Add PTRDIFF_T_FMT in parallel to SIZE_T_FMT to StdAfx.h, for completeness.
- In Log.cpp, changed to get timestamp using posix functions.
- Removed TCHAR usage throughout - simply use char.
. Significant bit-cells after a gap between latch access upped from 50 to 100 (#1020)
. Minor track sync mod: Update bitStream position for current track before re-calc'ing position for new track (#1022)
. Minor: for DiskII I/O regs $A/B (Select Drive 1/2) update the isWOZ variable to reflect new image-type
. Add user-protection when unchecking HDD controller (as images aren't restored on a 'cancel')
. Fix possible crash when removing (via Config->Disk) either Disk2 card(s5) or HDD card(s7), then cancelling during emulation
. Fix m_buf[] size
Initially all cards are removed before loading save-state.
Use new Registry "Configuration/Slot 2" location to save SSC's port name.
Use new Registry "Configuration/Slot 7" location to save HDV's image names.
Use new Registry "Configuration/Slot n" (and "Configuration/Slot Auxiliary") locations to save all other card types.
Command line: -s<slot> (eg. -s7 empty) now get persisted to the Registry.
Only update 'HDV Starting Directory' for slot7 & drive1.
Change to using Registry's 'Configuration\Slot n' for disk ii image pathnames (was 'Preferences').
Delete Registry's 'Configuration\Slot n' section each time there's a change of card.
Add same functionality to conf.ini.
LoadConfiguration(): load from the new Slot-n section (or otherwise the old legacy key).
Only update Registry's 'Starting Directory' for s6,d1.
Update help doc.