mirror of
https://github.com/Tolik-Trek/MK.DEMO.git
synced 2026-06-15 01:21:37 +03:00
Call BIOS API instead of use MemHack
This commit is contained in:
parent
0b262da641
commit
e52bedc0f4
160
MK_DEMO.ASM
160
MK_DEMO.ASM
@ -288,7 +288,7 @@ START:
|
||||
RST ToBIOS
|
||||
|
||||
LD A,2
|
||||
LD C,BIOS.FN_SINC
|
||||
LD C,BIOS.FN_SYNC
|
||||
RST ToBIOS
|
||||
|
||||
|
||||
@ -348,7 +348,7 @@ BEGIN:
|
||||
EX AF,AF'
|
||||
LD A,SYS_PAGE
|
||||
OUT (SLOT3),A
|
||||
LD A,(RAMD_KEYS.H)
|
||||
LD A,(SYS_PAGE.RAMD_KEYS.H)
|
||||
LD (SND_P),A
|
||||
EX AF,AF'
|
||||
OUT (SLOT3),A
|
||||
@ -642,8 +642,8 @@ FON_LOAD:
|
||||
LD A,SYS_PAGE
|
||||
OUT (SLOT3),A
|
||||
|
||||
LD A,(RAMD_KEYS.G)
|
||||
LD H, high RAMD_FAT
|
||||
LD A,(SYS_PAGE.RAMD_KEYS.G)
|
||||
LD H, high SYS_PAGE.RAMD_FAT
|
||||
LD L,A
|
||||
EX AF,AF'
|
||||
LD A,(HL)
|
||||
@ -888,7 +888,7 @@ NO_EXX:
|
||||
*/
|
||||
LD A,SYS_PAGE
|
||||
OUT (SLOT3),A
|
||||
LD H, high RAMD_FAT
|
||||
LD H, high SYS_PAGE.RAMD_FAT
|
||||
LD A,(NEXT_SPRITE)
|
||||
LD L,A
|
||||
LD L,(HL)
|
||||
@ -901,7 +901,7 @@ NO_EXX:
|
||||
LD (NEXT_SPRITE),A
|
||||
INC A
|
||||
RET NZ
|
||||
LD A,(RAMD_KEYS.F)
|
||||
LD A,(SYS_PAGE.RAMD_KEYS.F)
|
||||
LD (IX+SPRITE_TBL.Slot),A
|
||||
LD (IX+SPRITE_TBL.Slot+SPRITE_TBL),A
|
||||
LD (IX+SPRITE_TBL.Slot+SPRITE_TBL*2),A
|
||||
@ -1049,7 +1049,7 @@ L_DDX:
|
||||
AND A
|
||||
JR NZ,NO_SNDP
|
||||
|
||||
LD H, high RAMD_FAT
|
||||
LD H, high SYS_PAGE.RAMD_FAT
|
||||
LD A,(SND_P)
|
||||
LD L,A
|
||||
LD A,SYS_PAGE
|
||||
@ -1061,7 +1061,7 @@ L_DDX:
|
||||
LD (SND_A),HL
|
||||
|
||||
JR NZ,NO_SNDP
|
||||
LD A,(RAMD_KEYS.H)
|
||||
LD A,(SYS_PAGE.RAMD_KEYS.H)
|
||||
LD (SND_P),A
|
||||
|
||||
NO_SNDP:
|
||||
@ -1074,7 +1074,6 @@ NO_SNDP:
|
||||
POP HL
|
||||
LD A,(save_border)
|
||||
OUT (BorderColor),A
|
||||
|
||||
POP AF
|
||||
EI
|
||||
RETI
|
||||
@ -1128,7 +1127,7 @@ SND_A+*: ld hl,#4000
|
||||
CP #80
|
||||
JR C,NO_SNDP
|
||||
|
||||
LD H, high RAMD_FAT - #80
|
||||
LD H, high SYS_PAGE.RAMD_FAT - #80
|
||||
LD A,(SND_P)
|
||||
LD L,A
|
||||
LD A,SYS_PAGE
|
||||
@ -1139,7 +1138,7 @@ SND_A+*: ld hl,#4000
|
||||
LD HL,#4000
|
||||
checkLastPage+*: cp 0
|
||||
jp nz,1F
|
||||
LD A,(RAMD_KEYS.H)
|
||||
LD A,(SYS_PAGE.RAMD_KEYS.H)
|
||||
LD (SND_P),A
|
||||
ld hl,_lastPageMuzOffset
|
||||
1: LD (SND_A),HL
|
||||
@ -1226,7 +1225,7 @@ IM2_Proc:
|
||||
; NC --> A = 䨧.®¬¥à ¯®á«¥¤¥© áâà ¨æë ¡«®ª
|
||||
; CF --> å¥à ¥£® § ¥â, ®è¨¡ª ª ª ï-â®
|
||||
GetLastPageNumber:
|
||||
ld h, high RAMD_FAT
|
||||
ld h, high SYS_PAGE.RAMD_FAT
|
||||
inc a
|
||||
ld l,a
|
||||
|
||||
@ -1284,7 +1283,13 @@ EXIT_TO_DSS:
|
||||
|
||||
|
||||
IF MODE_CBL && MUSIC_22khz
|
||||
CALL MemHack.restore
|
||||
1: CALL MemHack.restore
|
||||
JR NC,1F
|
||||
LD A,R
|
||||
AND 7
|
||||
OUT (BorderColor),A
|
||||
JR 1B
|
||||
1: ;
|
||||
ENDIF
|
||||
|
||||
|
||||
@ -1488,80 +1493,83 @@ RMD_UNMAP:
|
||||
;---[ MemHack ]
|
||||
IF MODE_CBL && MUSIC_22khz
|
||||
MemHack:
|
||||
.free:
|
||||
.free: LD A,ZX_RAM_ID
|
||||
LD C,BIOS.FreeMem
|
||||
JP ToBIOS
|
||||
; IN A,(SLOT3)
|
||||
; EX AF,AF'
|
||||
; LD A,SYS_PAGE
|
||||
; OUT (SLOT3),A
|
||||
|
||||
IN A,(SLOT3)
|
||||
EX AF,AF'
|
||||
LD A,SYS_PAGE
|
||||
OUT (SLOT3),A
|
||||
; LD HL,SYS_PAGE.RAMD_FAT
|
||||
; LD DE,.Buff
|
||||
; xor a
|
||||
; ACC_SetBlockSize
|
||||
; cp #10
|
||||
; ACC_CopyBlock
|
||||
; cp (hl)
|
||||
; ld (de),a
|
||||
; ACC_FillOneByte
|
||||
; ld (hl),a
|
||||
; ACC_Off
|
||||
|
||||
LD HL,RAMD_FAT
|
||||
LD DE,.Buff
|
||||
xor a
|
||||
ACC_SetBlockSize
|
||||
cp #10
|
||||
ACC_CopyBlock
|
||||
cp (hl)
|
||||
ld (de),a
|
||||
ACC_FillOneByte
|
||||
ld (hl),a
|
||||
ACC_Off
|
||||
; LD DE,.Buff + #10
|
||||
; LD L,DCP_PAGE ; #C240
|
||||
; LD A,(HL)
|
||||
; LD (DE),A
|
||||
; INC DE
|
||||
; LD (HL),#50 ; Video Page
|
||||
; INC L ; #C241
|
||||
|
||||
LD DE,.Buff + #10
|
||||
LD L,DCP_PAGE ; #C240
|
||||
LD A,(HL)
|
||||
LD (DE),A
|
||||
INC DE
|
||||
LD (HL),#50 ; Video Page
|
||||
INC L ; #C241
|
||||
; xor a
|
||||
; ACC_SetBlockSize
|
||||
; cp #07
|
||||
; ACC_CopyBlock
|
||||
; cp (hl)
|
||||
; ld (de),a
|
||||
; ACC_FillOneByte
|
||||
; ld (hl),a
|
||||
; ACC_Off
|
||||
|
||||
xor a
|
||||
ACC_SetBlockSize
|
||||
cp #07
|
||||
ACC_CopyBlock
|
||||
cp (hl)
|
||||
ld (de),a
|
||||
ACC_FillOneByte
|
||||
ld (hl),a
|
||||
ACC_Off
|
||||
|
||||
EX AF,AF'
|
||||
OUT (SLOT3),A
|
||||
RET
|
||||
; EX AF,AF'
|
||||
; OUT (SLOT3),A
|
||||
; RET
|
||||
|
||||
.restore:
|
||||
IN A,(SLOT3)
|
||||
EX AF,AF'
|
||||
LD A,SYS_PAGE
|
||||
OUT (SLOT3),A
|
||||
LD BC,4*256 + BIOS.REINIT
|
||||
JP ToBIOS
|
||||
; IN A,(SLOT3)
|
||||
; EX AF,AF'
|
||||
; LD A,SYS_PAGE
|
||||
; OUT (SLOT3),A
|
||||
|
||||
LD DE,RAMD_FAT
|
||||
LD HL,.Buff
|
||||
; LD DE,SYS_PAGE.RAMD_FAT
|
||||
; LD HL,.Buff
|
||||
|
||||
ACC_SetBlockSize
|
||||
cp #10
|
||||
ACC_CopyBlock
|
||||
cp (hl)
|
||||
ld (de),a
|
||||
ACC_Off
|
||||
; ACC_SetBlockSize
|
||||
; cp #10
|
||||
; ACC_CopyBlock
|
||||
; cp (hl)
|
||||
; ld (de),a
|
||||
; ACC_Off
|
||||
|
||||
LD HL,.Buff + #10
|
||||
LD E,DCP_PAGE ; #C240
|
||||
LD A,(HL)
|
||||
LD (DE),A
|
||||
INC HL
|
||||
INC E
|
||||
; LD HL,.Buff + #10
|
||||
; LD E,DCP_PAGE ; #C240
|
||||
; LD A,(HL)
|
||||
; LD (DE),A
|
||||
; INC HL
|
||||
; INC E
|
||||
|
||||
ACC_SetBlockSize
|
||||
cp #7
|
||||
ACC_CopyBlock
|
||||
cp (hl)
|
||||
ld (de),a
|
||||
ACC_Off
|
||||
; ACC_SetBlockSize
|
||||
; cp #7
|
||||
; ACC_CopyBlock
|
||||
; cp (hl)
|
||||
; ld (de),a
|
||||
; ACC_Off
|
||||
|
||||
EX AF,AF'
|
||||
OUT (SLOT3),A
|
||||
RET
|
||||
; EX AF,AF'
|
||||
; OUT (SLOT3),A
|
||||
;RET
|
||||
.Buff: BLOCK #10+1+7, #FF
|
||||
|
||||
ENDIF
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit 6e27011b6259b0256ce65d91a53ef1185223eafa
|
||||
Subproject commit 21c7eb690adb62e35c41fdcda76dc3bf97f369b4
|
||||
Loading…
Reference in New Issue
Block a user