Support IIe aux slot: empty or with 80-col(1KiB) card (#1341, PR #1351)

Add new command line switch: -aux <empty|std80|ext80|rw3>
Add 6502/65C02 x normal/debugger alt read support for CPU emulation (#1353).
Fix bug in MemReadFloatingBus() reading from mem[] - no good, if MF_AUXREAD is set.
Support odd 80-col text video mode when aux slot is empty:
. add a new videoMode flag for VF_80COL_AUX_EMPTY.
Correctly support 80COL & DHIRES soft-switches when aux slot is empty or with std80 card.
Support VidHD's SHR with -aux <empty|std80>.
Save-state: support aux slot empty or with std80 card.
This commit is contained in:
TomCh
2024-12-30 21:39:16 +00:00
committed by GitHub
parent a2b03483ee
commit 16b2cf329e
17 changed files with 591 additions and 135 deletions

View File

@@ -6811,13 +6811,13 @@ enum ViewVideoPage_t
VIEW_PAGE_5 // Pseudo
};
Update_t _ViewOutput ( ViewVideoPage_t iPage, int bVideoModeFlags )
static Update_t _ViewOutput ( ViewVideoPage_t iPage, UINT bVideoModeFlags )
{
switch ( iPage )
{
case VIEW_PAGE_X:
bVideoModeFlags |= !GetVideo().VideoGetSWPAGE2() ? 0 : VF_PAGE2;
bVideoModeFlags |= !GetVideo().VideoGetSWMIXED() ? 0 : VF_MIXED;
bVideoModeFlags |= GetVideo().VideoGetSWPAGE2() ? VF_PAGE2 : 0;
bVideoModeFlags |= GetVideo().VideoGetSWMIXED() ? VF_MIXED : 0;
break; // Page Current & current MIXED state
case VIEW_PAGE_0: bVideoModeFlags |= VF_PAGE0; break; // Pseudo Page 0 ($0000)
case VIEW_PAGE_1: bVideoModeFlags |= 0 ; break; // Hardware Page 1 ($2000), NOTE: VF_HIRES will be passed in
@@ -6830,6 +6830,8 @@ Update_t _ViewOutput ( ViewVideoPage_t iPage, int bVideoModeFlags )
break;
}
bVideoModeFlags |= GetVideo().VideoGet80COLAUXEMPTY() ? VF_80COL_AUX_EMPTY : 0; // Preserve this flag
DebugVideoMode::Instance().Set(bVideoModeFlags);
GetFrame().VideoRefreshScreen( bVideoModeFlags, true );
return UPDATE_NOTHING; // intentional