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:
|
init_cpld:
|
||||||
|
.check_ram48k:
|
||||||
ld a, (cfg.ram) ; if ram == 48K - run basic48
|
ld a, (cfg.ram) ; if ram == 48K - run basic48
|
||||||
cp 1 ; ...
|
cp 1 ; ...
|
||||||
jr nz, .do_load ; ...
|
jr nz, .check_plus3_disabled ; ...
|
||||||
ld a, #10 ; ...
|
ld a, #10 ; ...
|
||||||
ld bc, #7ffd ; ...
|
ld bc, #7ffd ; ...
|
||||||
out (c), a ; ...
|
out (c), a ; ...
|
||||||
ld a, #4 ; ...
|
ld a, #4 ; ...
|
||||||
ld bc, #1ffd ; ...
|
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:
|
.do_load:
|
||||||
ld b, CFG_T ; B = registers count
|
ld b, CFG_T ; B = registers count
|
||||||
ld c, #ff ;
|
ld c, #ff ;
|
||||||
|
Reference in New Issue
Block a user