145 Commits
Author SHA1 Message Date
tomcw 21ea317902 Add Input Config GUI for hooking system keys (eg. Alt+Tab) and Alt+Enter behaviour. (#1532)
Add cmd line: -hook-system-key
Default to not hooking system keys, ie. hook filter is off
Update help doc.
2026-10-24 17:59:06 +01:00
tomcw a565bb34f4 Shift key mod: set default when loading old save-state with no SKM value 2026-10-04 11:34:45 +01:00
tomcw c59b64ee05 Input Config: Add Shift Key Mod option (#1234)
. Save-state: save to 'Game I/O Connector' unit
2026-10-03 21:58:39 +01:00
Tom Charlesworth 0e1e4caa71 Config->Slots: Just use MessageBox() for a modal dialog (#1507, PR #1508) 2026-09-19 21:47:59 +01:00
Kelvin Lee 3e8054b462 Replace BOOL (almost all) with bool (PR #1509)
. Remove uses of !!
2026-07-26 21:49:53 +01:00
Kelvin Lee 8193cc1fd1 Remove void argument lists (PR #1505) 2026-07-05 16:43:36 +01:00
Kelvin Lee 926c592f75 Replace some BOOL usages with proper bool (PR #1500)
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.
2026-06-06 14:12:42 +01:00
tomcw 125898724a Config Slots: fix for cancelling SSC sub-dialog (fixes #1502) 2026-05-30 14:52:54 +01:00
Andrea 56168d4132 Fix crash when a HD card is on a slot != 7 (PR #1498)
* Snapshot_GetDefaultFilenameAndPath(): fix segfault. SLOT7 -> i
* Disk & HardDisk: tidy up casts and iterations.
Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2026-05-17 19:13:11 +01:00
tomcw e3419bed9a Config: improve msg when Saturn memory changes 2026-05-17 14:05:18 +01:00
tomcw fabc5104f3 Slots config: fix for Disk II/HDC firmware change. (fixes #1493) 2026-04-19 20:34:01 +01:00
tomcw 64a957a2ae Config: minor tidy 2026-04-18 17:45:35 +01:00
tomcw e586865730 Slots config for rw3: if user hasn't touched slider, then pressing 'OK' on Options dialog won't query it. (#1470)
. Preserve finer grain memory size (don't round up to 1MiB)
2026-04-18 17:32:07 +01:00
tomcw 0f6bf4e171 Slots config for HDC: (#1470)
. Support HDC firmware selection from combo: auto, SP, BLK2, BLK4 modes
2026-04-18 12:31:04 +01:00
tomcw 17b65ffd8a Slots config:
. On selecting a new card in a slot, then reset to the card's default options
. On opening Config dialog, reset config for empty slots
. On HDD insert: check for dup image-name against all other 7 units
2026-04-18 10:46:54 +01:00
tomcw 11c1dae084 Slots config: ignore when same image is selected for floppy or HDD image 2026-04-17 22:15:31 +01:00
tomcw 07651adf71 Rename references of Apple II+ to Apple II Plus (#1449)
And also:
. Apple ][ -> Apple II
. Apple //e -> Apple //e (original)
. Enhanced Apple //e -> Apple //e (enhanced)
. Disk][ -> Disk II
2026-04-11 19:00:46 +01:00
tomcw 1ce0a84b1b Refactor CPageSlots::InitOptions() (fixes #1487) 2026-04-11 14:44:17 +01:00
Andrea f513fd2f6a CardManager: make GetCardChoicesForSlot()/AuxSlot() more x-platform. (PR #1484)
Move the Windows UI string to a common separate function.
2026-04-05 10:50:08 +01:00
tomcw 175a72bc50 Fix for starting with model=IIe, and specifying '-s0 saturn'. (#1486) 2026-04-04 17:36:35 +01:00
tomcw 8219799b83 Minor UI tweaks:
. Don't assume slot 6 has a Disk II card
. Disk II config dialog: check the 'show status' box regardless of slot
2026-04-03 15:18:44 +01:00
Andrea 88928d157b Fix linux build. (PR #1483) 2026-04-03 13:45:13 +01:00
tomcw 599e81d07f Config Slots: Reset to Default: set MB's speech chips to defaults
On loading save-state: Save any MBs's speech chips to Registry
2026-03-23 20:52:23 +00:00
tomcw 91ca49f4f5 Slots config: Disk II: add option for 13-sector firmware, and save to Registry 2026-03-20 15:20:42 +00:00
tomcw a20631b366 Advanced config: change so that a No-Slot clock change causes restart 2026-03-20 12:31:49 +00:00
tomcw f7941967f1 Advanced config: add option for No-Slot clock, and save to Registry 2026-03-17 22:31:34 +00:00
tomcw 75e04ba54a Minor: Fix/improve some comments 2026-03-17 21:54:28 +00:00
tomcw abbf5d996a Slots config: Mockingboard/Phasor cards: add option for speech chips, and save to Registry 2026-03-15 13:25:19 +00:00
tomcw 0de5f2c432 Slots config: fix issue with being II+ and 'Reset all to Default' not setting aux slot. (#1470) 2026-03-14 16:38:07 +00:00
tomcw b004316a03 Slots config: Saturn card: add option for mem size (16K-128K), and save to Registry 2026-03-14 16:02:13 +00:00
tomcw 3b30fb4a55 Config: fix for new SSC added, and COM port selected 2026-03-08 17:36:18 +00:00
tomcw e9cbbcf262 Resources: remove old IDD_PROPPAGE_DISK 2026-03-08 12:15:36 +00:00
TomCh 80ec6e5545 Improve Configuration GUI for better slot/card selection (#853, PR #1462)
. 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
2026-03-07 22:00:07 +00:00
TomCh 1a68914a4a Fix all x64 warnings in the AppleWin proj (PR #1434)
NB. 10 warnings still in libyaml proj (but there's no upstream update - so will leave as-is).
2025-09-22 21:25:35 +01:00
Andrea acbef19489 Remove TEXT() and _T(). (PR #1379) 2025-02-13 20:48:37 +00:00
Andrea 168e868677 Remove TCHAR and <tchar.h> (PR #1373)
. Replace TCHAR -> char.
. Remove <tchar.h> and related functions.
2025-02-08 11:09:09 +00:00
Andrea 35f176e4d8 Replace DWORD -> uint32_t. (PR #1350)
Some have been left where tightly coupled with the Win32 API.
2024-12-21 12:32:00 +00:00
tomcw 8a3de5592a Help doc: add Hayden dongle 2024-08-25 14:31:44 +01:00
TomCh 57ba330072 Support Hayden dongle (#1312, PR #1325) 2024-08-21 22:15:34 +01:00
tomcw a16a134ae5 Robocom Interface Module dongle: use actual values for 1000 & 1500 series dongles. (#1247) 2024-02-24 20:12:06 +00:00
TomCh 927b0da09a Support Robocom's Interface Module protection dongles (#1247, PR#1248) 2023-07-17 21:02:55 +01:00
TomCh 5ba153c244 Add support for SD Music card (PR #1217)
Differences compared to Mockingboard:
. Only one 6522
. AY8913 is selected by address b7

Add cmd line: -sN sdmusic
Add cmd line: -mb-audit (to enable selection of additional sound cards, eg. for mb-audit)
2023-04-28 16:41:22 +01:00
TomCh 273d07d83f Support MegaAudio card for testing mb-audit (PR #1211)
Differences compared to Mockingboard:
. TIMER1 underflows to $FFFE before it's reloaded with latch.
. TIMER1's LATCH=$0000 gets interpreted as $FFFF.
. Partial TIMER2 support: IFR.T2 gets set on underflow. But T2 reads as 0x00FF.
. AY register reads are unsupported (always read as 0).

Config->Sound: show 'MEGA Audio' in drop-down menus only if it was specified on the cmd line.
2023-04-12 18:19:18 +01:00
TomCh 7aef95f071 Support Cortechs Corp CodeWriter protection key (#1205) 2023-03-31 12:01:19 +01:00
tomcw 055c299bb4 Debugger: use dedicated MB structs to populate mini-mem views.
Remove old v1 save-state header files.
2023-03-09 20:16:21 +00:00
tomcw b0220169b8 Fix a few Coverity issues (#470) 2023-02-05 21:53:51 +00:00
TomCh 71c67cf132 Refactor Mockingboard into a class (#1171)
Mockingboard or Phasor cards can be inserted into any slot.
Change Config->Sound to that slots 4+5 to be individually selected for the 3 soundcard types.
Add MockingboardCardManager class to manage multiple cards and mix the sound buffers.
2023-01-28 18:15:28 +00:00
tomcw af9d2a6402 Help: add info about dongle 2023-01-01 19:34:32 +00:00
tomcw 043bc49f3d Add a new Registry Configuration interface: "Game I/O Connector" (like Slots).
Change Config->Advanced to show 'Game I/O Connector' (instead of 'Copy Protection Dongle').
2022-12-31 17:32:50 +00:00
Matthew D'Asaro e5a87b5063 Add support for hardware copy protection dongles in game i/o socket (#1153, PR #1154)
Changes:
- Add a drop-down menu to the 'Advanced' tab that lets the user select a dongle in use
- Add a new file "CopyProtectionDongles.cpp" that is a place to put drivers for these.
- Add a driver for the one known dongle we have now - Speed Star
- Modify Joystick.cpp to allow PB0-PB2 to be "pushed" by the protection dongle.
2022-12-16 09:04:29 +00:00