...
This commit is contained in:
parent
36d209867e
commit
e7c6ad1dca
@ -46,7 +46,7 @@
|
|||||||
; 128 - ¨¨æ¨ «¨§¨à®¢ âì ᢮© ¡®à áâà ¨æ vROM
|
; 128 - ¨¨æ¨ «¨§¨à®¢ âì ᢮© ¡®à áâà ¨æ vROM
|
||||||
;
|
;
|
||||||
; ॣ HL: ¯à¨ ॣ B[7]=1 ¤à¥á áâà ¨æ (11 èâ):
|
; ॣ HL: ¯à¨ ॣ B[7]=1 ¤à¥á áâà ¨æ (11 èâ):
|
||||||
; byte1 - RAM block ID, byte2..11 - áâà ¨æë ¤«ï vROM
|
; byte1 - RAM block ID, byte2..11 - áâà ¨æë ¤«ï vROM - ZXSlot: 1,2,3(=0),à áè¨à¥ ï
|
||||||
; ॣ A: ®¬¥à ZX TASK ¯®ª çâ® ¢á¥£¤ ®«ì!!!
|
; ॣ A: ®¬¥à ZX TASK ¯®ª çâ® ¢á¥£¤ ®«ì!!!
|
||||||
;¢ë室: CF = 0: HL - ®¬¥à à ¬¡«®ª®¢ ¤«ï ०¨¬®¢ 0..16. H=vRAM, L=vROM
|
;¢ë室: CF = 0: HL - ®¬¥à à ¬¡«®ª®¢ ¤«ï ०¨¬®¢ 0..16. H=vRAM, L=vROM
|
||||||
; CF = 1: A - ®¬¥à ®è¨¡ª¨
|
; CF = 1: A - ®¬¥à ®è¨¡ª¨
|
||||||
@ -98,6 +98,7 @@ FN_ENTRANCE: ;!TODO A - TASK NUMBER
|
|||||||
|
|
||||||
|
|
||||||
;-----------------------------------------------------------------------;
|
;-----------------------------------------------------------------------;
|
||||||
|
; <20>¥ ¯®àâ¨âì DE
|
||||||
;‚室: A - TASK NUMBER
|
;‚室: A - TASK NUMBER
|
||||||
GET_ZX_TASK_DATA:
|
GET_ZX_TASK_DATA:
|
||||||
GET_ZX_TASK_DATA_OFFSET
|
GET_ZX_TASK_DATA_OFFSET
|
||||||
@ -327,6 +328,7 @@ GET_SCORP_RAM: CALL FREE_vRAM
|
|||||||
; 3 - EXPANSION. C § ªàëâ묨 128-¬¨ ¯®àâ ¬¨:
|
; 3 - EXPANSION. C § ªàëâ묨 128-¬¨ ¯®àâ ¬¨:
|
||||||
; 4 - TR-DOS, 5 - BASIC 48
|
; 4 - TR-DOS, 5 - BASIC 48
|
||||||
; A = TASK
|
; A = TASK
|
||||||
|
; CF = 1 - ¥ ¯¥à¥ãáâ ¢«¨¢ âì ¯ «¨âàã
|
||||||
GOTO_SPEC: DI
|
GOTO_SPEC: DI
|
||||||
PUSH AF
|
PUSH AF
|
||||||
; set shared pages
|
; set shared pages
|
||||||
@ -341,9 +343,17 @@ GOTO_SPEC: DI
|
|||||||
LD A,B
|
LD A,B
|
||||||
LD (SYS_PAGE.CONFIG_DE.ZX_START),A
|
LD (SYS_PAGE.CONFIG_DE.ZX_START),A
|
||||||
;
|
;
|
||||||
POP AF
|
POP DE
|
||||||
LD SP,#C000
|
LD SP,#C000
|
||||||
|
LD A,D
|
||||||
CALL GET_ZX_TASK_DATA
|
CALL GET_ZX_TASK_DATA
|
||||||
|
LD A,(IX + _#ZX_TASK_DATA.STATE)
|
||||||
|
RR E
|
||||||
|
JR NC,.save_state
|
||||||
|
OR %0000'0100
|
||||||
|
.save_state: LD (IX + _#ZX_TASK_DATA.STATE),A
|
||||||
|
;
|
||||||
|
; [ ] free zx pages! ;!TODO ¥á«¨ § ¤ ç ¯ãáâ ï, â® ¯¥à¢ë© ¨¨â
|
||||||
;
|
;
|
||||||
;!TODO ᤥ« âì ªâ¨¢ æ¨î ¢¨â ¤«ï ¯ à ¬¥âà ¨§ Setup
|
;!TODO ᤥ« âì ªâ¨¢ æ¨î ¢¨â ¤«ï ¯ à ¬¥âà ¨§ Setup
|
||||||
;!TODO ãáâ ®¢¨âì £¤¥-¨¡ã¤ì ¨¦¥ áâíª ¨§ TASK
|
;!TODO ãáâ ®¢¨âì £¤¥-¨¡ã¤ì ¨¦¥ áâíª ¨§ TASK
|
||||||
@ -365,7 +375,9 @@ GOTO_SPEC: DI
|
|||||||
RLCA
|
RLCA
|
||||||
CALL FN_SYNC
|
CALL FN_SYNC
|
||||||
;
|
;
|
||||||
CALL SET_TXT_PALETTE.ZX ; [ ] free zx pages! ¯à®¯ã᪠âì íâ®, ç⮡ § ¤ ¢ âì ¯®«ì§®¢ ⥫ìáªãî ¯ «¨âàã
|
LD A,(IX + _#ZX_TASK_DATA.STATE)
|
||||||
|
AND %0000'0100 ;!TODO § ¯®¬¨âì/¢®ááâ ®¢¨âì ª á⮬ãî ¯ «¨âàã?
|
||||||
|
CALL Z,SET_TXT_PALETTE.ZX
|
||||||
;
|
;
|
||||||
LD E,0
|
LD E,0
|
||||||
CALL LP_SET_32
|
CALL LP_SET_32
|
||||||
@ -373,27 +385,18 @@ GOTO_SPEC: DI
|
|||||||
LD E,0
|
LD E,0
|
||||||
LD HL,#5104
|
LD HL,#5104
|
||||||
CALL LP_SET_32.X
|
CALL LP_SET_32.X
|
||||||
|
; .SHARED_BUFFER_256b
|
||||||
|
LD A,(IX + _#ZX_TASK_DATA.vRAM_ID)
|
||||||
|
LD HL,SYS_PAGE.SHARED_BUFFER_256b
|
||||||
|
CALL EMM.GetMemBlkPages
|
||||||
|
;!FIXIT
|
||||||
|
;RET C
|
||||||
|
; !FIXIT ¯à®¢¥àª à §¬¥à ¡«®ª , ᤥ« âì, ç⮡ ¢ë¡¨à «áï ®¡êñ¬ ¯ ¬ïâ¨
|
||||||
|
;LD A,B
|
||||||
|
;CP 16
|
||||||
|
;
|
||||||
|
|
||||||
;¬®¦® ¨á¯®«ì§®¢ âì ª®£¤ -¨¡ã¤ì ª ª-¨¡ã¤ì
|
;.TASK_0: XOR A ; § ¤ ç 0, ०¨¬ 256 ª¨«®¡ ©â
|
||||||
; LD D,#35
|
|
||||||
; CALL CMOS_RD
|
|
||||||
; BIT 0,A
|
|
||||||
; PUSH AF
|
|
||||||
; CALL Z,SPRINTER_1
|
|
||||||
; POP AF
|
|
||||||
; PUSH AF
|
|
||||||
; CALL NZ,AY8910
|
|
||||||
; POP AF
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.TASK_0: XOR A ; § ¤ ç 0, ०¨¬ 256 ª¨«®¡ ©â
|
|
||||||
.START_TASK: LD IY,.BASIC_128
|
.START_TASK: LD IY,.BASIC_128
|
||||||
JP INIT_PAGES ; ¨¨æ¨ «¨§ æ¨ï ®¬¥à®¢ áâà ¨æ ०¨¬ ᯥªâàã¬
|
JP INIT_PAGES ; ¨¨æ¨ «¨§ æ¨ï ®¬¥à®¢ áâà ¨æ ०¨¬ ᯥªâàã¬
|
||||||
;
|
;
|
||||||
@ -423,53 +426,65 @@ GOTO_SPEC: DI
|
|||||||
;*****************************************
|
;*****************************************
|
||||||
;!TODO á⥪ ãáâ ®¢«¥ ¢® ¢â®à®© áâà ¨æ¥, ¥ ¨á¯®«ì§®¢ âì ¨«¨ ãáâ ¢«¨¢ âì ¢ ¤àã£ãî!
|
;!TODO á⥪ ãáâ ®¢«¥ ¢® ¢â®à®© áâà ¨æ¥, ¥ ¨á¯®«ì§®¢ âì ¨«¨ ãáâ ¢«¨¢ âì ¢ ¤àã£ãî!
|
||||||
; ¨¨æ¨ «¨§ æ¨ï áâà ¨æ zx spectrum
|
; ¨¨æ¨ «¨§ æ¨ï áâà ¨æ zx spectrum
|
||||||
|
; HL - ¤à¥á ¡«®ª áâà ¨æ ¢ SLOT3
|
||||||
|
; B - ª®«¨ç¥á⢮ íâ¨å áâà ¨æ
|
||||||
INIT_PAGES:
|
INIT_PAGES:
|
||||||
AND A
|
LD A,SYS_PAGE
|
||||||
LD E,A
|
OUT (SLOT1),A
|
||||||
EX AF,AF'
|
;
|
||||||
LD A,E
|
RES 7,H
|
||||||
|
|
||||||
; BIT 7,A
|
|
||||||
; JR Z,SCORPION_256_MODE
|
; AND A
|
||||||
; BIT 6,A
|
; LD E,A
|
||||||
; JR Z,PENTAGON_128_MODE
|
; EX AF,AF'
|
||||||
;
|
; LD A,E
|
||||||
|
|
||||||
|
; BIT 7,A
|
||||||
|
; JR Z,SCORPION_256_MODE
|
||||||
|
; BIT 6,A
|
||||||
|
; JR Z,PENTAGON_128_MODE
|
||||||
|
;
|
||||||
;PENTAGON_48_MODE:
|
;PENTAGON_48_MODE:
|
||||||
; AND #3C
|
; AND #3C
|
||||||
; OUT (SLOT0),A
|
; OUT (SLOT0),A
|
||||||
; INC A
|
; INC A
|
||||||
; OUT (SLOT1),A
|
; OUT (SLOT1),A
|
||||||
; INC A
|
; INC A
|
||||||
; OUT (SLOT2),A
|
; OUT (SLOT2),A
|
||||||
; INC A
|
; INC A
|
||||||
; LD D,A
|
; LD D,A
|
||||||
; LD BC,#1FFD
|
; LD BC,#1FFD
|
||||||
; XOR A
|
; XOR A
|
||||||
; OUT (C),A
|
; OUT (C),A
|
||||||
; LD B,#7F
|
; LD B,#7F
|
||||||
; OUT (C),A
|
; OUT (C),A
|
||||||
; LD A,D
|
; LD A,D
|
||||||
; OUT (SLOT3),A
|
; OUT (SLOT3),A
|
||||||
; JR INIT_VIDEO_REG
|
; JR INIT_VIDEO_REG
|
||||||
;
|
|
||||||
;
|
================================================================
|
||||||
; PENTAGON_128_MODE:
|
; PENTAGON_128_MODE:
|
||||||
; LD D,8
|
; LD D,8
|
||||||
; AND #38
|
; AND #38
|
||||||
; JR ALL_MODE
|
; JR ALL_MODE
|
||||||
|
|
||||||
SCORPION_256_MODE:
|
; SCORPION_256_MODE:
|
||||||
LD D,16
|
; LD D,16
|
||||||
AND #30 ; ¤® 4-å ᯥªâà㬮¢
|
; AND #30 ; ¤® 4-å ᯥªâà㬮¢
|
||||||
|
|
||||||
ALL_MODE:
|
;ALL_MODE:
|
||||||
OUT (SLOT0),A
|
LD A,(HL) ; áâà ¨æ ¤«ï SLOT1
|
||||||
XOR 5 ; [ ] free zx pages!
|
EX AF,AF'
|
||||||
OUT (SLOT1),A
|
;
|
||||||
XOR 7 ; [ ] free zx pages!
|
INC HL
|
||||||
|
DEC B
|
||||||
|
LD A,(HL)
|
||||||
OUT (SLOT2),A
|
OUT (SLOT2),A
|
||||||
OR #0F ; [ ] free zx pages!
|
INC HL
|
||||||
LD E,A
|
OUT (SLOT3),A
|
||||||
|
OUT (SLOT0),A
|
||||||
|
|
||||||
|
|
||||||
.loop: DEC D
|
.loop: DEC D
|
||||||
|
|
||||||
@ -493,7 +508,7 @@ ALL_MODE:
|
|||||||
INC D
|
INC D
|
||||||
JR NZ,.loop
|
JR NZ,.loop
|
||||||
|
|
||||||
INIT_VIDEO_REG:
|
.INIT_VIDEO_REG:
|
||||||
XOR A
|
XOR A
|
||||||
OUT (RGADR),A ; ॣ¨áâà ¢¨¤¥® ¤à¥á
|
OUT (RGADR),A ; ॣ¨áâà ¢¨¤¥® ¤à¥á
|
||||||
OUT (RGMOD),A ; ॣ¨áâà ¬®¤ë
|
OUT (RGMOD),A ; ॣ¨áâà ¬®¤ë
|
||||||
@ -528,7 +543,7 @@ INIT_VIDEO_REG:
|
|||||||
;
|
;
|
||||||
|
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
NO_SCREEN_ALT:
|
.NO_SCREEN_ALT:
|
||||||
AND A
|
AND A
|
||||||
JP (IY)
|
JP (IY)
|
||||||
;-----------------------------------------------------------------------;
|
;-----------------------------------------------------------------------;
|
||||||
|
|||||||
@ -202,8 +202,8 @@ SettingsItemsTabs:
|
|||||||
DB paramName
|
DB paramName
|
||||||
DW CMOS_CELL.BootUpParams.Mask.StartDelay : DB %0001'0000
|
DW CMOS_CELL.BootUpParams.Mask.StartDelay : DB %0001'0000
|
||||||
DB msgStrings.valDisabled
|
DB msgStrings.valDisabled
|
||||||
DB msgStrings.valNormal
|
DB msgStrings.valShort
|
||||||
DB msgStrings.valEnabled
|
DB msgStrings.valLong
|
||||||
|
|
||||||
IF UnusedSettingsFeatures ; !TODO
|
IF UnusedSettingsFeatures ; !TODO
|
||||||
_mSETitemParams TypRate
|
_mSETitemParams TypRate
|
||||||
@ -583,7 +583,8 @@ msgStrings:
|
|||||||
_mSetStr parSaveRAMdrvs, tmp_Counter : DZ 'Save RAM-disks : '
|
_mSetStr parSaveRAMdrvs, tmp_Counter : DZ 'Save RAM-disks : '
|
||||||
_mSetStr parUpdBios, tmp_Counter : DZ 'Update BIOS : '
|
_mSetStr parUpdBios, tmp_Counter : DZ 'Update BIOS : '
|
||||||
_mSetStr parStartDelay, tmp_Counter : DZ 'Start delay : '
|
_mSetStr parStartDelay, tmp_Counter : DZ 'Start delay : '
|
||||||
_mSetStr valNormal, tmp_Counter : DZ 'Average '
|
_mSetStr valShort, tmp_Counter : DZ 'Short '
|
||||||
|
_mSetStr valLong, tmp_Counter : DZ 'Long '
|
||||||
_mSetStr parTypRate, tmp_Counter : DZ 'Typematic rate (chars/sec) : '
|
_mSetStr parTypRate, tmp_Counter : DZ 'Typematic rate (chars/sec) : '
|
||||||
_mSetStr val_6, tmp_Counter : DZ '6 '
|
_mSetStr val_6, tmp_Counter : DZ '6 '
|
||||||
_mSetStr val_8, tmp_Counter : DZ '8 '
|
_mSetStr val_8, tmp_Counter : DZ '8 '
|
||||||
@ -741,7 +742,8 @@ msgRusStrings:
|
|||||||
_mSetStrRus parSaveRAMdrvs, tmp_Counter : DZ '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>⑤⑧<EFBFBD> RAM-え瓷<EFBFBD> : '
|
_mSetStrRus parSaveRAMdrvs, tmp_Counter : DZ '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>⑤⑧<EFBFBD> RAM-え瓷<EFBFBD> : '
|
||||||
_mSetStrRus parUpdBios, tmp_Counter : DZ '。⑭←キ┘ BIOS : '
|
_mSetStrRus parUpdBios, tmp_Counter : DZ '。⑭←キ┘ BIOS : '
|
||||||
_mSetStrRus parStartDelay, tmp_Counter : DZ '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⑭<EFBFBD> <EFBFBD>┐<EFBFBD>⑧<EFBFBD> : '
|
_mSetStrRus parStartDelay, tmp_Counter : DZ '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⑭<EFBFBD> <EFBFBD>┐<EFBFBD>⑧<EFBFBD> : '
|
||||||
_mSetStrRus valNormal, tmp_Counter : DZ '‘।¥¥ '
|
_mSetStrRus valShort, tmp_Counter : DZ 'Š®à®âª®¥ '
|
||||||
|
_mSetStrRus valLong, tmp_Counter : DZ '„«¨®¥ '
|
||||||
_mSetStrRus parTypRate, tmp_Counter : DZ '<EFBFBD><EFBFBD>牀痰<EFBFBD> <EFBFBD>≒<EFBFBD><EFBFBD>皰<EFBFBD><EFBFBD> : '
|
_mSetStrRus parTypRate, tmp_Counter : DZ '<EFBFBD><EFBFBD>牀痰<EFBFBD> <EFBFBD>≒<EFBFBD><EFBFBD>皰<EFBFBD><EFBFBD> : '
|
||||||
_mSetStrRus val_6, tmp_Counter : DZ '6 '
|
_mSetStrRus val_6, tmp_Counter : DZ '6 '
|
||||||
_mSetStrRus val_8, tmp_Counter : DZ '8 '
|
_mSetStrRus val_8, tmp_Counter : DZ '8 '
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user