mirror of
https://github.com/UzixLS/zx-sizif-xxs.git
synced 2025-07-19 07:11:28 +03:00
magic rom: fix hot switching to +3 mode when basic48 active
This commit is contained in:
@ -130,15 +130,24 @@ save_config:
|
||||
|
||||
|
||||
init_cpld:
|
||||
.check_ram48k:
|
||||
ld a, (cfg.ram) ; if ram == 48K - run basic48
|
||||
cp 1 ; ...
|
||||
jr nz, .do_load ; ...
|
||||
jr nz, .check_plus3_disabled ; ...
|
||||
ld a, #10 ; ...
|
||||
ld bc, #7ffd ; ...
|
||||
out (c), a ; ...
|
||||
ld a, #4 ; ...
|
||||
ld bc, #1ffd ; ...
|
||||
out (c), a ;
|
||||
out (c), a ; ...
|
||||
jr .do_load
|
||||
.check_plus3_disabled:
|
||||
ld a, (cfg.plus3) ; if plus3 disabled - set 1ffd rom to basic48
|
||||
or a ; ... this is required for case when plus3 will be
|
||||
jr nz, .do_load ; ... activated later by magic menu - this prevents
|
||||
ld a, #4 ; ... hang if user activating plus3 while basic48 active
|
||||
ld bc, #1ffd ; ...
|
||||
out (c), a ; ...
|
||||
.do_load:
|
||||
ld b, CFG_T ; B = registers count
|
||||
ld c, #ff ;
|
||||
|
Reference in New Issue
Block a user