...
This commit is contained in:
parent
22f4acafbe
commit
0ec6b77447
@ -1 +1 @@
|
|||||||
Subproject commit 265b46fce2afbc3e8acef59e83d78b84b88d4ced
|
Subproject commit b1851fc9f30652ff464f323a7f2873806bd51bfd
|
||||||
@ -174,19 +174,6 @@ INIT_vROM: LD A,(IX + _#ZX_TASK_DATA.vROM_ID)
|
|||||||
;-----------------------------------------------------------------------;
|
;-----------------------------------------------------------------------;
|
||||||
|
|
||||||
|
|
||||||
;????? ¤®?
|
|
||||||
/*
|
|
||||||
;-----------------------------------------------------------------------;
|
|
||||||
;‚室: A - TASK NUMBER
|
|
||||||
FREE_vROM: LD A,(IX + _#ZX_TASK_DATA.vROM_ID)
|
|
||||||
CALL EMM.FreeMem
|
|
||||||
PUSH AF
|
|
||||||
CALL RES_FLAG_ZXvROM
|
|
||||||
POP AF
|
|
||||||
RET
|
|
||||||
;-----------------------------------------------------------------------;
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
;-----------------------------------------------------------------------;
|
;-----------------------------------------------------------------------;
|
||||||
@ -234,22 +221,6 @@ SET_7FFD: LD A,(HL)
|
|||||||
JR Z,SET_7FFD
|
JR Z,SET_7FFD
|
||||||
RET
|
RET
|
||||||
;-----------------------------------------------------------------------;
|
;-----------------------------------------------------------------------;
|
||||||
|
|
||||||
|
|
||||||
;-----------------------------------------------------------------------;
|
|
||||||
;!FIXIT ª®áïª á® á⥪®¬ ¢ SLOT3
|
|
||||||
;‚•Ž„: HL - ᯨ᮪ áâà ¨æ.
|
|
||||||
INIT_SCORP_vRAM:; first 128 kb
|
|
||||||
LD E,0
|
|
||||||
CALL INIT_PENT_vRAM
|
|
||||||
; second 128 kb
|
|
||||||
LD A,#10
|
|
||||||
CALL INIT_PENT_vRAM.set_1ffd
|
|
||||||
; A = 0
|
|
||||||
LD B,#1F
|
|
||||||
OUT (C),A
|
|
||||||
RET
|
|
||||||
;-----------------------------------------------------------------------;
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
@ -282,25 +253,12 @@ FREE_vRAM: XOR A
|
|||||||
;-----------------------------------------------------------------------;
|
;-----------------------------------------------------------------------;
|
||||||
|
|
||||||
|
|
||||||
;!FIXIT SET_TASK_POINTER
|
|
||||||
;-----------------------------------------------------------------------;
|
;-----------------------------------------------------------------------;
|
||||||
;‚믮«ï¥âáï ¤«ï ¢ë¤¥«¥¨ï 3 áâà ¨æ Ž‡“ 48k ¨ 14 áâà ¨æ Ž‡“ Scorp256k
|
;‚믮«ï¥âáï ¤«ï ¢ë¤¥«¥¨ï 3 áâà ¨æ Ž‡“ 48k ¨ 14 áâà ¨æ Ž‡“ Scorp256k
|
||||||
;‚室: ---
|
;‚室: ---
|
||||||
;‚ë室: A - RAM block ID
|
;‚ë室: A - RAM block ID
|
||||||
GET_SCORP_RAM: CALL FREE_vRAM
|
GET_SCORP_RAM: CALL FREE_vRAM
|
||||||
CALL .SCORP
|
; ¢ë¤¥«¨âì áâà ¨æë ᪮à¯
|
||||||
RET C
|
|
||||||
LD D,L
|
|
||||||
; Get Pent128 mem
|
|
||||||
LD B,3+5
|
|
||||||
CALL EMM.GetMem
|
|
||||||
; A - Pent128 mem block id
|
|
||||||
LD B,D ; Scorp128 mem block id
|
|
||||||
CALL EMM.MergeMemBlocks
|
|
||||||
LD (IX + _#ZX_TASK_DATA.vRAM_ID),A
|
|
||||||
RET
|
|
||||||
;
|
|
||||||
.SCORP: ; ¢ë¤¥«¨âì áâà ¨æë ᪮à¯
|
|
||||||
XOR A
|
XOR A
|
||||||
LD DE,#F0D0 ; ¤«ï 䨫ìâà . #F0 - ¬ ᪠, #D0 - áâà ¨æë ISA #D0..#DF
|
LD DE,#F0D0 ; ¤«ï 䨫ìâà . #F0 - ¬ ᪠, #D0 - áâà ¨æë ISA #D0..#DF
|
||||||
LD BC,8*256 + #FF ; B - ª®«¨ç¥á⢮ áâà ¨æ, C - Œ¥âª ª®æ à ¬¡«®ª
|
LD BC,8*256 + #FF ; B - ª®«¨ç¥á⢮ áâà ¨æ, C - Œ¥âª ª®æ à ¬¡«®ª
|
||||||
@ -319,6 +277,14 @@ GET_SCORP_RAM: CALL FREE_vRAM
|
|||||||
DJNZ .allocate_loop
|
DJNZ .allocate_loop
|
||||||
; L = 㪠§ â¥«ì æ¥¯®çª¨.
|
; L = 㪠§ â¥«ì æ¥¯®çª¨.
|
||||||
AND A
|
AND A
|
||||||
|
LD D,L
|
||||||
|
; Get Pent128 mem
|
||||||
|
LD B,3+5
|
||||||
|
CALL EMM.GetMem
|
||||||
|
; A - Pent128 mem block id
|
||||||
|
LD B,D ; Scorp128 mem block id
|
||||||
|
CALL EMM.MergeMemBlocks
|
||||||
|
LD (IX + _#ZX_TASK_DATA.vRAM_ID),A
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
; 䨫ìâà ¤«ï áâà ¨æ ᪮à¯
|
; 䨫ìâà ¤«ï áâà ¨æ ᪮à¯
|
||||||
@ -336,10 +302,8 @@ GET_SCORP_RAM: CALL FREE_vRAM
|
|||||||
LD L,E
|
LD L,E
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
.error_no_mem: ;PUSH DE
|
.error_no_mem: LD A,C
|
||||||
LD A,C
|
|
||||||
CALL EMM.FreeMem
|
CALL EMM.FreeMem
|
||||||
;POP DE
|
|
||||||
LD A,BIOS.Error.EMM.NoMemory
|
LD A,BIOS.Error.EMM.NoMemory
|
||||||
SCF
|
SCF
|
||||||
RET
|
RET
|
||||||
@ -486,7 +450,7 @@ RES128_PROG:
|
|||||||
; !!! NO USE STACK !!!
|
; !!! NO USE STACK !!!
|
||||||
;
|
;
|
||||||
;*****************************************
|
;*****************************************
|
||||||
;!TODO
|
;!TODO á⥪ ãáâ ®¢«¥ ¢ âà¥â쥩 áâà ¨æ¥, ¥ ¨á¯®«ì§®¢ âì ¨«¨ ãáâ ¢«¨¢ âì ¢ ¤àã£ãî!
|
||||||
; ¨¨æ¨ «¨§ æ¨ï áâà ¨æ zx spectrum
|
; ¨¨æ¨ «¨§ æ¨ï áâà ¨æ zx spectrum
|
||||||
INIT_PAGES:
|
INIT_PAGES:
|
||||||
AND A
|
AND A
|
||||||
@ -529,11 +493,11 @@ SCORPION_256_MODE:
|
|||||||
|
|
||||||
ALL_MODE:
|
ALL_MODE:
|
||||||
OUT (SLOT0),A
|
OUT (SLOT0),A
|
||||||
XOR 5
|
XOR 5 ; [ ] free zx pages!
|
||||||
OUT (SLOT1),A
|
OUT (SLOT1),A
|
||||||
XOR 7
|
XOR 7 ; [ ] free zx pages!
|
||||||
OUT (SLOT2),A
|
OUT (SLOT2),A
|
||||||
OR #0F
|
OR #0F ; [ ] free zx pages!
|
||||||
LD E,A
|
LD E,A
|
||||||
|
|
||||||
.loop: DEC D
|
.loop: DEC D
|
||||||
@ -561,8 +525,8 @@ ALL_MODE:
|
|||||||
INIT_VIDEO_REG:
|
INIT_VIDEO_REG:
|
||||||
XOR A
|
XOR A
|
||||||
OUT (RGADR),A ; ॣ¨áâà ¢¨¤¥® ¤à¥á
|
OUT (RGADR),A ; ॣ¨áâà ¢¨¤¥® ¤à¥á
|
||||||
; OUT (RGSCR),A ; ॣ¨áâà íªà
|
|
||||||
OUT (RGMOD),A ; ॣ¨áâà ¬®¤ë
|
OUT (RGMOD),A ; ॣ¨áâà ¬®¤ë
|
||||||
|
; OUT (RGSCR),A ; ॣ¨áâà íªà
|
||||||
|
|
||||||
;!TEST
|
;!TEST
|
||||||
; Restore old Spectrum Screen
|
; Restore old Spectrum Screen
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user