TomCh
001f04c706
Phasor in Echo+ mode: fix the chip-select polarity (PR #1276 )
2024-02-03 21:07:29 +00:00
TomCh
53fddfe41a
Fix SD Music card for mb-audit v1.50 (PR #1275 )
...
. Fix for mb-audit's TestAYReadHiZ (bus-state wasn't being set correctly for SD Music's 6522 accessed via $Cs8x)
2024-01-30 19:48:34 +00:00
tomcw
56cc779351
MegaAudio card: Reads of 6522 IRB & IRA always return 0x00
...
. generalise the implementation: move AY READ logic down to 6522 read
2024-01-21 20:43:02 +00:00
tomcw
43daabec54
MegaAudio card: AY READ always drives bus with 0x00
2024-01-21 15:03:33 +00:00
tomcw
0888a25710
Small refactor for AY(s) driving bus for 6522 PortA
2024-01-06 18:20:33 +00:00
tomcw
69151a2aff
MB/Phasor: support AY(s) driving bus for 6522 PortA (ie. for the PSG READ function)
...
. Bump MB/Phasor save-state unit to v11
. Tested against mb-audit v1.50
2024-01-03 21:22:25 +00:00
tomcw
a8de7f2030
6522: fix reading IRB - used as MB detection by Werewolf! ( #1260 )
2023-12-29 10:16:51 +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
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
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
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
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
0d0adc1f22
Phasor's Echo+: support dual-mono (R copied to L)
2023-02-25 21:25:46 +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
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
6b176f8ff5
Mockingboard: fix out of bounds access. (PR #1177 )
2023-02-05 21:03:37 +00:00
tomcw
6a3a3114c7
MB:6522: fix edge case for IRQ not firing for very small latch values. ( Fixes #1175 )
2023-02-04 12:09:19 +00:00
tomcw
958c71de5f
Phasor save-state v10: load older state's AYs in correct order. ( Fixes #1174 )
2023-01-30 21:27:49 +00:00
tomcw
749329b99f
Phasor card fixes:
...
. Reset/Power-cycle: revert to PH_Mockingboard mode
. Load state: set SSI263() to 'm_phasorMode'
2023-01-29 19:20:07 +00:00
tomcw
d61d348f94
Fix comment
2023-01-29 13:37:07 +00:00
tomcw
cf722ff0cc
Fix so that MockingboardCardMgr asserts IRQ based on the wired-OR sum of all MB card's 6522s. ( Fixes #1173 )
2023-01-29 13:32:55 +00:00
tomcw
c56d341bdb
Remove old debug code
2023-01-28 20:56:54 +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
32c7babf51
Phasor load save-state:
...
. Fix regression when switched to using correct primary AY8913 (regressed at 1.30.10 and 1.30.11)
. Specifically fixes AppleWin-Test: phasor-fugue.aws.yaml
. NB. bumps Mockingingboard version in save-state to v8
2022-09-24 20:16:19 +01:00
tomcw
9e9996bee7
SSI263: support reg3's amplitude
2022-06-03 22:09:32 +01:00
tomcw
16f66da594
SSI263: support phoneme zero amplitude
...
Refine Phasor native mode's logic for SSI263 access
2022-06-02 20:32:16 +01:00
tomcw
5236bb95b6
Phasor: use correct primary AY8913 for Phasor & MB modes (now checked in mb-audit v1.2)
2022-05-21 11:15:01 +01:00
tomcw
08c730c647
Cmd line: add -wav-speaker <file> & -wav-mockingboard <file>
2022-04-17 16:23:51 +01:00
Kelvin Lee
80f3eaeb91
Various *Name() functions can simply return const std::string& (PR #1049 )
2022-02-28 20:52:18 +00:00
tomcw
3fe06faf65
MB/6522: remove the legacy g_nMBTimerDevice variable.
...
Fix ASSERT from previous commit as SY6522.Reset() needs CriticalSection.
2022-02-12 18:42:58 +00:00
TomCh
f7c6ef397c
Split 6522 out of MB code and into own class (PR #1028 )
...
NB. Update CpuInitialize() & CriticalSection creation:
. call CpuInitialize() on WM_CREATE to create CriticalSection
. needed as MB_Initialize() needs CriticalSection
2022-02-05 18:48:36 +00:00
Andrea
7ab65492c6
Load save-state for Cards: improve error messages. ( #1025 )
...
. better error message for (unlikely) slot mismatch.
. better error message if load state version is invalid.
2022-01-30 21:25:40 +00:00
Andrea
47f721882e
throw std::runtime_error instead of std::string (PR #1011 )
...
+ add more information about location of yaml parser error.
2021-12-18 16:37:28 +00:00