Commit Graph

1416 Commits

Author SHA1 Message Date
tomcw
52447ad7d9 Load save-state: fix page 0 & 1 corruption when loading save-state with a RAMWorks card with 2 or more aux 64K banks (#1262) 2023-12-31 10:14:47 +00:00
tomcw
a8de7f2030 6522: fix reading IRB - used as MB detection by Werewolf! (#1260) 2023-12-29 10:16:51 +00:00
Kelvin Lee
abab213e15
WIN64: Use correct IReferenceClock definition from <strmif.h> (PR #1250) 2023-12-27 22:14:10 +00:00
tomcw
6bfa28e478 z80: remove the de-optimisation pragmas from z80mem.cpp. (#755) 2023-12-27 13:45:13 +00:00
tomcw
7fcdc9a2a9 z80.cpp: rename CPP macro from DEBUG to DEBUG_Z80; and change logic to '#if 0 && defined(DEBUG_Z80)' to ensure it's never enabled. (#1265) 2023-12-27 13:37:14 +00:00
tomcw
e7f2e3d541 Add new cmd line -mac-lc-card-dlgr to support the DLGR bug in the 'Apple IIe card Mac LC' (#1258) 2023-11-26 17:59:04 +00:00
tomcw
be427a6a30 Phasor: AY RESET resets both AYs attached to 6522 regardless of Phasor mode & CS bits. (#1197) 2023-09-07 21:40:13 +01:00
tomcw
a7a2ef63f2 Bump debugger version: 2.9.2.0 (fixes #1206) 2023-07-21 21:18:23 +01:00
TomCh
927b0da09a
Support Robocom's Interface Module protection dongles (#1247, PR#1248) 2023-07-17 21:02:55 +01:00
tomcw
d3521ffe90 TRK/SEC UI: fix to show sector in later ProDOS versions (#1215) 2023-07-01 21:48:50 +01:00
tomcw
faff74a98d WOZ: Support very large 5.25 WOZ images (#1240) 2023-06-29 21:52:59 +01:00
tomcw
f8d238f2b0 Joystick: Stylistic improvements to code (#429) 2023-06-20 20:16:58 +01:00
TomCh
cac30b31ed
Support 'squaring the circle' for analog sticks (#429, #1237, PR #1242)
Using @audetto's transformation.
2023-06-19 20:29:34 +01:00
Andrea
eead359a85
Fix warning about wrong printf modifier for size_t. (PR #1241) 2023-06-18 20:21:29 +01:00
Andrea
2759527f0d
Remove some StringCb* functions and fix assertion. (PR #1239)
. Return an error for an invalid .bin image.
2023-06-17 20:41:48 +01:00
michaelangel007
03ce472e63 Debugger: 2.9.1.26: When adding symbols list the address first then the name for readability 2023-06-06 09:35:45 -07:00
michaelangel007
1d4d1291f3 Debugger: Cleanup add symbol 2023-06-06 09:23:35 -07:00
Michael "Code Poet" Pohoreski
677ba8ffb3
Debugger: 2.9.1.25 Fixed: R P ## wasn't setting P flag status register. (#1238) 2023-06-03 19:03:11 -07:00
Michael "Code Poet" Pohoreski
000ebab3c5
Debugger 2.9.1.24 (#1236) 2023-06-03 11:08:16 -07:00
Michael "Code Poet" Pohoreski
928090c756
Debugger df qol (#1229)
* Remove trailing whitespace
* Debugger 2.9.1.21 Fixed: 'df' showing zero was displaying 0 instead 0.0
* Fix debug float output
* Debugger 2.9.1.22 Fixed: 'df <addr>' was incorrectly getting marked up as 'db'
* Debugger 2.9.1.23: Show floating-point values in scientific notation.
* Cleanup formatting
* Fix debug FAC output
2023-06-03 11:04:28 -07:00
sh95014
e5c4e2c51b
Allow alternate directory for built-in symbols (#1230)
* allow an alternate directory for built-in symbol tables -- needed because macOS apps are a bundle (tree of directories) and resources are packaged somewhere within, not necessarily in the same directory as the executable.
* use tabs
* add parentheses
2023-06-02 09:28:04 -07:00
Andrea
0d635d2817
Fix read of uninitialised values in sound_ay_overlay(). (PR #1226) 2023-05-29 15:18:06 +01:00
tomcw
47841bf58a Debugger: Improve stop reason for 'brkop n' cmd to include address 2023-05-19 22:24:10 +01:00
Andrea
771282a792
Avoid a potential memory leak if RamWorks memory size were configurable. (PR #1225) 2023-05-08 14:45:35 +01:00
Andrea
4b18918e0f
Mockingboard: define sample rate and number of channels only once. (PR #1223) 2023-05-05 21:49:26 +01:00
tomcw
009f77ddc0 Add getter-functions for GetJoystick1() and GetJoystick2() 2023-05-05 21:36:38 +01:00
tomcw
c305e1b9f1 Merge branch 'winmmjoy' of ssh://github.com/fabricecaruso/AppleWin into fabricecaruso-winmmjoy 2023-05-03 21:36:47 +01:00
Andrea
a648c3e607
Mockingboard: do not play sound unless a card is present. (PR #1222) 2023-05-02 21:47:01 +01:00
Andrea
0ecd2e865a
Fix a linux/gcc issue where sizeof(wchar_t)==4. (PR #1218) 2023-05-02 21:41:06 +01:00
tomcw
96a386a77a Config->Sound: improve UX for extra MB cards when cmd-line is empty 2023-04-29 09:47:50 +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
Michael "Code Poet" Pohoreski
e1b0b20aad
Debugger DISK INFO QoL (#1212)
* 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 [#]
2023-04-28 16:28:49 +01:00
Michael "Code Poet" Pohoreski
f8da683d45
1204 debugger long input crash (#1213)
* Debugger: Clamp long input
* Fix backspace when input line has 78 characters
* Colorize console error line
* Cleanup alignment
* Init
* Refactor common expression
* Add support for a long input line when we decide to enable it
* Unabbreviate SOL and EOL
2023-04-24 20:00:08 -07:00
Andrea
a140946a23
RIFF: fix sizes. (PR #1214) 2023-04-23 20:10:51 +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
Michael "Code Poet" Pohoreski
33185f3f2b
Update BMP import from GIMP 2.10 with X8 R8 G8 B8 (#1209) 2023-04-10 14:33:55 -07:00
michaelangel007
a68a29bcd0 Debugger: More QoL when BP hit #1200 2023-04-01 12:37:46 -07:00
tomcw
79024f0078 Debugger: match new stop reason message for HDD DMA (PR #1200) 2023-03-31 14:35:05 +01:00
TomCh
7aef95f071
Support Cortechs Corp CodeWriter protection key (#1205) 2023-03-31 12:01:19 +01:00
michaelangel007
48f4a03e6c Debugger: Cleanup formatting 2023-03-31 03:59:12 -07:00
michaelangel007
db5b668eec Debugger: Step-over #1194 2023-03-31 03:46:04 -07:00
Michael "Code Poet" Pohoreski
a3c6156508
Debugger step-over can fail (#1194, PR #1203)
. QoL cleanup (show RTS address) for step-over failure cases
. Add source code for repro test 1 and 2
2023-03-31 09:45:54 +01:00
michaelangel007
4e8006456f Debugger: Cleanup LBR formatting 2023-03-29 08:25:34 -07:00
Michael "Code Poet" Pohoreski
9a857183ba
Debugger cleanup misc march 2023 (#1199)
* Cleanup breakpoints

* Cleanup sections

* Tab cleanup
2023-03-26 11:31:15 -07:00
michaelangel007
a5c5603749 Debugger cleanup 2023-03-26 11:24:03 -07:00
michaelangel007
86f71cb3d7 Debugger cleanup 2023-03-26 11:13:11 -07:00
michaelangel007
e5b6a819da Debugger cleanup 2023-03-26 11:08:48 -07:00
michaelangel007
363b8d6990 Merge 2023-03-26 11:00:26 -07:00
michaelangel007
19ed8088c4 Debugger Cleanup indentation 2023-03-26 11:00:06 -07:00
Michael "Code Poet" Pohoreski
72566373ce
Debugger stop reason (#1200)
* Add global breakpoint so we can display last breakpoint triggered information

* Cleanup

* 2.9.1.15 Pretty print what register and breakpoint number when a breakpoint is triggered

* Bump debugger version 2.9.1.15

* Fix missing space between type and var

* Cleanup

* Add CHC_REGS
2023-03-26 10:54:30 -07:00
michaelangel007
4c08b9c20c Debugger: Cleanup: Alphabetize and Prototype breakpoint utility helpers 2023-03-23 12:42:44 -07:00
michaelangel007
8c9ba27acd Debugger: Remove unused func 2023-03-23 12:33:31 -07:00
michaelangel007
2dd3f0dbe0 Debugger: Cleanup: Apply Debugger coding started to functions 2023-03-23 12:32:14 -07:00
michaelangel007
755f023ed8 Debugger: Cleanup: DRY no breakpoints message 2023-03-23 12:16:21 -07:00
michaelangel007
730c2d8fcc Update coding standard with style already in use 2023-03-23 08:47:38 -07:00
michaelangel007
1398e7495d Debugger: Post #1191 cleanup. Add BPCHANGE params 2023-03-23 08:08:18 -07:00
michaelangel007
a767763486 Debugger: QoL for bpchange when no args 2023-03-23 08:06:02 -07:00
michaelangel007
f97531c5c0 Cleanup function to match coding-standard 2023-03-23 08:05:29 -07:00
michaelangel007
a8e6941a68 Debugger: Post cleanup for #1191. Pre-requsite for bpchange. 2023-03-23 08:00:56 -07:00
michaelangel007
b7263bb1f7 Debugger: Fix BPL to have header and be colorized 2023-03-22 20:33:34 -07:00
michaelangel007
9bf2bcda4e Cleanup alignment in _BWZ_List 2023-03-20 08:29:51 -07:00
Andrea
5287bfb409
Breakpoints: some new features (#1191)
* Debugger: add new flags to breakpoints.

Stop / no stop.
Hit count
Keep temp breakpoint alive so they can be inspected.

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>

* Debugger: ensure temporary breakpoints are removed when the execution restarts.

This code:

_BWZ_Clear(pBP, iBreakpoint);

was actually a bug since the function needs the root points of all breakpoints, not to a particular one.

* Breakpoints: some extra tweaks.

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>

* Remove reundant code and comment.

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>

* Breakpoints: coding standards.

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>

---------

Signed-off-by: Andrea Odetti <mariofutire@gmail.com>
2023-03-20 06:25:25 -07:00
tomcw
387b66d213 Debugger: on DebugInitialize() reset counts for BPs, Watches & ZP pointers.
. fixes an issue when BPs set, do a VM restart (eg. change h/w config), and it was STEPPING when no BPs were set!
2023-03-12 16:52:05 +00:00
tomcw
17a4746df6 6522: reset also clears DDRB, DDRA, PCR 2023-03-11 21:08:41 +00:00
tomcw
5a7076135e Debugger: mini-view for AYs: show AY PSG function: RD, WR, LA (or '--' if INACTIVE) 2023-03-11 13:56:44 +00:00
tomcw
bf4eed6600 Debugger: mini-view: fix for 'm1 AYsn' 2023-03-11 11:53:20 +00:00
tomcw
2f8ad98fc0 Debugger: mini-mem views:
Add: 'm1 MBsn' and 'm2 MBsn' (eg. 'm1 MB4A').
Support 'm1 MBs' and 'm1 AYs' (eg. 'm1 MB4') which defaults to 6522-A.
Move the 2nd mini-mem view (ie. m2) down 1 line.
Remove legacy mini-mem devices: AY0-AY3 and SY0-SY3 (eg. 'm1 SY0').
. so eg. 'm1 AY0' now means show slot-0's AY1 & AY2.
2023-03-11 10:51:23 +00:00
tomcw
80328b2bac Debugger: mini-mem: fix SYn to match AYn 2023-03-09 23:02:31 +00:00
tomcw
1416cc1676 Debugger: mini-mem views: support Phasor's AY1&AY2 pair in a single view.
. use: AYsn, where s=0-7 (slot), n=A|B (6522)
2023-03-09 22:53:09 +00: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
3f2f071fa6 MB: rename consts AY0/AY1 to AY1/AY2 (for consistency with mb-audit code) 2023-03-07 21:51:24 +00:00
tomcw
57c26c59b2 Update History.txt & some Phasor-related comments 2023-03-07 18:06:06 +00:00
tomcw
fb37310acd Phasor: support AY READ from both AYs (#1192) 2023-03-06 22:25:30 +00:00
tomcw
df0f4356ec Fix so that MB can still read AY regs after setting INACTIVE state (#1193) 2023-03-05 21:09:08 +00:00
tomcw
a3a89ad156 Phasor/MB: For AY INACTIVE state, bus floats high - so reflect this in 6522 PortA (fixes #1193) 2023-03-05 15:43:13 +00:00
tomcw
500f32071b Phasor/MB (#1192)
. For MB: isChipSelected[0] = true. So do this on Reset() or for Phasor when switching to MB mode.
. Add "Notes on Phasor's AY-3-8913 chip-select & r/w"
. Refactor some common code into SY6522::UpdatePortAForHiZ()
2023-03-05 15:37:52 +00:00
tomcw
7110e92f14 MB/Phasor save-state: persist 'Chip Select' & 'Reg Address Latch Valid' for MB card too 2023-03-04 23:25:53 +00:00
tomcw
d8e30e56be Phasor: support discrete LATCH & READ PSG functions (#1192)
. Recode 'MB_SUBUNIT::state' as a 2-element array
2023-03-04 22:41:07 +00:00
tomcw
3b53c882ab Phasor: improve odd Phasor logic for AY1 & AY2 chip select (#1192) 2023-03-04 19:38:11 +00:00
tomcw
34141b0c1d Phasor:
. add 2nd nAYCurrentRegister (Reg. Address Latch) for 2nd AY8913.
. add support for the odd Phasor logic when doing discrete LATCH and WRITE PSG functions.
(keep in sync with mb-audit v1.3)
2023-03-04 18:14:00 +00:00
tomcw
89eb0cb07b Mockingboard: After AY is reset, then latched addr isn't valid
. Save-state: save all 8 bits of latched addr.
. Debugger: for mini-AY dump, show latched addr (current register shown in white)
2023-03-01 21:01:59 +00:00
tomcw
db44b15c37 For Phasor (native/Echo+ modes) improve support for null AY chip-select case 2023-02-28 20:42:53 +00:00
tomcw
453268a302 Add command line: -capslock=off (#1187) 2023-02-27 22:42:57 +00:00
tomcw
9cf3d00288 For Phasor (native/Echo+ modes) support the null AY chip-select case (for eg. mb-audit v0.9) 2023-02-26 21:52:46 +00:00
tomcw
d612972e6c Add command line support for hard disk controller (hdc) in slot-5 (#1033)
. -s5 hdc
. -s5h1 <pathname>
NB. No GUI config support, so no way to plug/unplug HDDs.
2023-02-26 20:42:21 +00:00
tomcw
0d0adc1f22 Phasor's Echo+: support dual-mono (R copied to L) 2023-02-25 21:25:46 +00:00
tomcw
abe606b2a6 Alt+Enter: fix regression, as this key combo should default to toggling full screen (#1188) 2023-02-25 10:58:53 +00:00
tomcw
bca99278b6 Simplify Phasor's Echo+ mode's chip-select (#1183) 2023-02-21 21:32:11 +00:00
tomcw
dc029a4700 Fix Phasor's Echo+ mode's dual chip-select (#1183) 2023-02-21 21:08:20 +00:00
ThorstenB
e3863d47de
Properly catch the use of multiple Z80 cards. (PR #1184) 2023-02-20 19:57:25 +00:00
tomcw
cc07dc7f7b Fix Phasor's Echo+ mode to use correct AYs (#1183) 2023-02-19 21:22:44 +00:00
tomcw
13ee80686c Phasor: support reading AY8913 regs for Echo+ mode 2023-02-19 18:28:37 +00:00
tomcw
bcdaa3e1c1 Phasor: support Echo+ mode (#1183) 2023-02-19 16:38:06 +00:00
Andrea
fd8ed23b56
2 small fixes: enum comparison and include. (PR #1182) 2023-02-19 09:46:07 +00:00
tomcw
1aa0e38696 Typo in comment 2023-02-17 17:20:56 +00:00
Andrea
fb11c74d62
Avoid a couple of warnings. (PR #1180) 2023-02-17 17:18:29 +00:00
tomcw
b0220169b8 Fix a few Coverity issues (#470) 2023-02-05 21:53:51 +00:00
Andrea
5dd14256c2
CardManager: remove redundant calls. (PR #1179) 2023-02-05 21:05:57 +00:00
Andrea
b2926390c8
Remove unused includes. (PR #1178) 2023-02-05 21:04:45 +00:00
Andrea
6b176f8ff5
Mockingboard: fix out of bounds access. (PR #1177) 2023-02-05 21:03:37 +00:00