Commit Graph

14 Commits

Author SHA1 Message Date
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 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
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 17a4746df6 6522: reset also clears DDRB, DDRA, PCR 2023-03-11 21:08:41 +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
Andrea b2926390c8
Remove unused includes. (PR #1178) 2023-02-05 21:04:45 +00:00
tomcw f03f5e0904 Fix for 6522 counter underflows falsely delaying when IRQ occurs. (Fixes #1176) 2023-02-05 11:02:56 +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
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 514d2adb79 6522: Fix IFR.T2 when counter.b15=1 2022-02-26 21:10:42 +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