...
This commit is contained in:
parent
895f85e04d
commit
ea26e1f584
@ -1 +1 @@
|
|||||||
Subproject commit ba1bc48d1597637a512a5333d2a76f94b5b26231
|
Subproject commit 817bba0c1abebdb890f77ee129578ebe06fb5131
|
||||||
@ -26,8 +26,7 @@ CMOS_EMU_WR:
|
|||||||
;
|
;
|
||||||
|
|
||||||
; § ¯¨áì ¢ CMOS
|
; § ¯¨áì ¢ CMOS
|
||||||
CMOS_WR:
|
CMOS_WR: ; [x]
|
||||||
; [x]
|
|
||||||
_mCMOS_MAX_TEST
|
_mCMOS_MAX_TEST
|
||||||
;
|
;
|
||||||
CALL CMOS_TEST
|
CALL CMOS_TEST
|
||||||
@ -40,9 +39,7 @@ CMOS_WR:
|
|||||||
;
|
;
|
||||||
|
|
||||||
;!FIXIT ¯® ¤®ª¥ äãªæ¨î ¤®«¦¥ ¯¥à¥¤ ¢ë室®¬ CF áâ ¢¨âìáï
|
;!FIXIT ¯® ¤®ª¥ äãªæ¨î ¤®«¦¥ ¯¥à¥¤ ¢ë室®¬ CF áâ ¢¨âìáï
|
||||||
CMOS_EMU_RD:
|
CMOS_EMU_RD: PUSH DE
|
||||||
PUSH DE
|
|
||||||
|
|
||||||
LD C,SLOT3
|
LD C,SLOT3
|
||||||
IN B,(C)
|
IN B,(C)
|
||||||
LD E,SYS_PAGE
|
LD E,SYS_PAGE
|
||||||
@ -51,14 +48,12 @@ CMOS_EMU_RD:
|
|||||||
LD D, high SYS_PAGE.CMOS_EMULATOR
|
LD D, high SYS_PAGE.CMOS_EMULATOR
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
OUT (C),B
|
OUT (C),B
|
||||||
|
|
||||||
POP DE
|
POP DE
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
|
|
||||||
; ç⥨¥ ¨§ CMOS
|
; ç⥨¥ ¨§ CMOS
|
||||||
CMOS_RD:
|
CMOS_RD: ; [x]
|
||||||
; [x]
|
|
||||||
_mCMOS_MAX_TEST
|
_mCMOS_MAX_TEST
|
||||||
;
|
;
|
||||||
CALL CMOS_TEST
|
CALL CMOS_TEST
|
||||||
|
|||||||
@ -408,38 +408,42 @@ EXIT_SETUP: CALL INT_OFF
|
|||||||
LD A,B
|
LD A,B
|
||||||
JR NZ,.Set_Page41
|
JR NZ,.Set_Page41
|
||||||
CP 'X'
|
CP 'X'
|
||||||
;JR Z,.vROMs_Installed
|
|
||||||
;
|
|
||||||
.Set_Page41: CALL NZ,ZXMODE_SETUP.Set_Page41
|
.Set_Page41: CALL NZ,ZXMODE_SETUP.Set_Page41
|
||||||
.vROMs_Installed:
|
|
||||||
; XOR A
|
.set_ZX_params: LD BC,CMOS_CELL.QuickStartSetUp.Mask.ZxRom
|
||||||
; LD BC,4*256 + BIOS.ZX_MEMORY_MANAGER ; [ ] free zx pages! HARDCODE MANAGE_ZX_PAGES.GET_SCORP_RAM
|
CALL GET_CMOS_VALUE
|
||||||
; RST ToBIOS_18 ;!TODO áâà ¨¢ âì ¢ BIOS zx mode
|
LD L,A
|
||||||
; JR NC,.set_ZX_params
|
LD BC,CMOS_CELL.QuickStartSetUp.Mask.Hardware
|
||||||
; ;
|
CALL GET_CMOS_VALUE
|
||||||
; CALL ScreenPOS.CRLF
|
|
||||||
; LD A,msgStrings.noMemZX
|
|
||||||
; LD E,COLORS.CGA.INK.RED
|
|
||||||
; CALL POSTMSC
|
|
||||||
; .loop_di: DI
|
|
||||||
; HALT
|
|
||||||
; JR .loop_di
|
|
||||||
;
|
|
||||||
.set_ZX_params: ;LD H,A ; Block_ID.vRAM
|
|
||||||
;LD DE,256*0 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_0
|
|
||||||
;LD A,(SYS_PAGE.Block_ID.vROM)
|
|
||||||
;LD L,A
|
|
||||||
;LD B,#FE ; !HARDCODE Port All Mode data
|
|
||||||
;LD A,%0000'0010
|
|
||||||
;EX AF,AF'
|
|
||||||
;XOR A
|
|
||||||
;
|
;
|
||||||
|
EX AF,AF
|
||||||
LD A,ROM.EXTENSION
|
LD A,ROM.EXTENSION
|
||||||
OUT (SYS_PORT.ROM),A
|
OUT (SYS_PORT.ROM),A
|
||||||
;XOR A
|
EX AF,AF
|
||||||
;JP GOTO_SPECTRUM.FN
|
OR A
|
||||||
;!TODO áâà ¨¢ âì ¢ BIOS zx mode
|
JP Z,SPRINTER_ZX.custom_ROM
|
||||||
JP SPRINTER_ZX
|
DEC A
|
||||||
|
JP Z,Pentagon_48.custom_ROM
|
||||||
|
DEC A
|
||||||
|
JP Z,PENTAGON_128.custom_ROM
|
||||||
|
DEC A
|
||||||
|
JP Z,PENTAGON_512.custom_ROM
|
||||||
|
DEC A
|
||||||
|
JP Z,SCORPION_256.custom_ROM
|
||||||
|
DEC A
|
||||||
|
JP Z,ZX_Spectrum_48.custom_ROM
|
||||||
|
DEC A
|
||||||
|
JP Z,ZX_SPECTRUM_128.custom_ROM
|
||||||
|
; error
|
||||||
|
XOR A
|
||||||
|
OUT (SYS_PORT.ROM),A
|
||||||
|
LD D,CMOS_CELL.QuickStartSetUp
|
||||||
|
CALL CMOS_WR
|
||||||
|
LD A,SYS_PAGE
|
||||||
|
OUT (SLOT3),A
|
||||||
|
RET
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -732,8 +732,8 @@ SETDEF: ;!TODO
|
|||||||
LD B,0
|
LD B,0
|
||||||
CALL WRITCMS
|
CALL WRITCMS
|
||||||
|
|
||||||
LD A,CMOS_CELL.ZX_RUN_ROM
|
LD A,CMOS_CELL.QuickStartSetUp
|
||||||
LD B,CMOS_CELL.ZX_RUN_ROM.BASIC_128
|
LD B,CMOS_CELL.QuickStartSetUp.ZxRom.Basic128
|
||||||
CALL WRITCMS
|
CALL WRITCMS
|
||||||
|
|
||||||
CALL CHEKSUM
|
CALL CHEKSUM
|
||||||
@ -1027,7 +1027,7 @@ DEFVAL: DB SAVERAM+EXTBIOS+SDELAY1 ;#0E - OPTIONS
|
|||||||
DB 0 ;#18 - HEADS SLAVE
|
DB 0 ;#18 - HEADS SLAVE
|
||||||
DB 0 ;#19 - SECTORS SLAVE
|
DB 0 ;#19 - SECTORS SLAVE
|
||||||
DB 0 ;#1A - Int conf, Screen sync, COLOR STYLE
|
DB 0 ;#1A - Int conf, Screen sync, COLOR STYLE
|
||||||
DB TURBON+SPRIN ;#1B - HARDARE CONF
|
DB CNF_PORT.TURBO.ON + CNF_PORT.CNF_0 ;#1B - HARDARE CONF
|
||||||
DB BAS128 ;#1C - RESET MODE
|
DB BAS128 ;#1C - RESET MODE
|
||||||
DB REBOOTM + 4 ;#1D - REBOOT + LoadZXroms by ZX flag
|
DB REBOOTM + 4 ;#1D - REBOOT + LoadZXroms by ZX flag
|
||||||
DB 0 ;#1E - TRDOS
|
DB 0 ;#1E - TRDOS
|
||||||
|
|||||||
@ -51,14 +51,14 @@
|
|||||||
},
|
},
|
||||||
[2]={
|
[2]={
|
||||||
"LoadZXroms", -- 1
|
"LoadZXroms", -- 1
|
||||||
"TrDosA", -- 2
|
"QS_SetUpHardware", -- 2
|
||||||
"TrDosB", -- 3
|
"QS_SetUpZxRom", -- 3
|
||||||
"TrDosC", -- 4
|
"TrDosA", -- 4
|
||||||
"TrDosD", -- 5
|
"TrDosB", -- 5
|
||||||
"SetTime", -- 6 DEFINES.INC --> NEW_FEATURE
|
"TrDosC", -- 6
|
||||||
"HddWrPr", -- 7 DEFINES.INC --> HDDwriteProtect
|
"TrDosD", -- 7
|
||||||
-- 8
|
"SetTime", -- 8 DEFINES.INC --> NEW_FEATURE
|
||||||
-- 9
|
"HddWrPr", -- 9 DEFINES.INC --> HDDwriteProtect
|
||||||
-- 10
|
-- 10
|
||||||
-- 11
|
-- 11
|
||||||
-- 12
|
-- 12
|
||||||
@ -422,8 +422,37 @@ SettingsItemsTabs:
|
|||||||
DB columnNum,lineNum
|
DB columnNum,lineNum
|
||||||
DB paramName
|
DB paramName
|
||||||
DW CMOS_CELL.BootUpParams.Mask.QuickStartROM : DB %0000'0001
|
DW CMOS_CELL.BootUpParams.Mask.QuickStartROM : DB %0000'0001
|
||||||
DB msgStrings.parQuickStartSP
|
DB msgStrings.valQuickStartSP
|
||||||
DB msgStrings.parQuickStartZX
|
DB msgStrings.valSpectrum
|
||||||
|
|
||||||
|
|
||||||
|
_mSETitemParams QS_SetUpZxRom
|
||||||
|
DW OnChangeAction.nothing
|
||||||
|
IF NEW_FEATURE : DB paramLine : ENDIF
|
||||||
|
DB columnNum,lineNum
|
||||||
|
DB paramName
|
||||||
|
DW CMOS_CELL.QuickStartSetUp.Mask.ZxRom : DB %0000'0101
|
||||||
|
DB msgStrings.valQS_SetUpBasic128
|
||||||
|
DB msgStrings.valQS_SetUpBasic48p
|
||||||
|
DB msgStrings.valQS_SetUpTrDos
|
||||||
|
DB msgStrings.valQS_SetUpExp
|
||||||
|
DB msgStrings.valQS_SetUpTrDos48
|
||||||
|
DB msgStrings.valQS_SetUpBasic48
|
||||||
|
|
||||||
|
_mSETitemParams QS_SetUpHardware
|
||||||
|
DW OnChangeAction.nothing
|
||||||
|
IF NEW_FEATURE : DB paramLine : ENDIF
|
||||||
|
DB columnNum,lineNum
|
||||||
|
DB paramName
|
||||||
|
DW CMOS_CELL.QuickStartSetUp.Mask.Hardware : DB %0011'0000
|
||||||
|
DB msgStrings.valSprinterZX
|
||||||
|
DB msgStrings.valPentagon48
|
||||||
|
DB msgStrings.valPentagon128
|
||||||
|
DB msgStrings.valPentagon512
|
||||||
|
DB msgStrings.valScorpion256
|
||||||
|
DB msgStrings.valZXSpectrum48
|
||||||
|
DB msgStrings.valZXSpectrum128
|
||||||
|
|
||||||
|
|
||||||
_mSETitemParams TrDosA
|
_mSETitemParams TrDosA
|
||||||
DW OnChangeAction.nothing
|
DW OnChangeAction.nothing
|
||||||
@ -652,8 +681,7 @@ msgStrings:
|
|||||||
_mSetStr val312_50, tmp_Counter : DZ '312/50Hz'
|
_mSetStr val312_50, tmp_Counter : DZ '312/50Hz'
|
||||||
_mSetStr val320_49, tmp_Counter : DZ '320/49Hz'
|
_mSetStr val320_49, tmp_Counter : DZ '320/49Hz'
|
||||||
_mSetStr parQuickStartROM, tmp_Counter : DZ 'Run in mode : '
|
_mSetStr parQuickStartROM, tmp_Counter : DZ 'Run in mode : '
|
||||||
_mSetStr parQuickStartZX, tmp_Counter : DZ 'Spectrum'
|
_mSetStr valQuickStartSP, tmp_Counter : DZ 'Sprinter'
|
||||||
_mSetStr parQuickStartSP, tmp_Counter : DZ 'Sprinter'
|
|
||||||
_mSetStr valDefault, tmp_Counter : DZ 'Default'
|
_mSetStr valDefault, tmp_Counter : DZ 'Default'
|
||||||
_mSetStr valFDD, tmp_Counter : DZ 'FDD ' ; ????? ¯®¤ã¬ âì ª ª¨¥ ¢ ਠâë ¢®§¬®¦ë
|
_mSetStr valFDD, tmp_Counter : DZ 'FDD ' ; ????? ¯®¤ã¬ âì ª ª¨¥ ¢ ਠâë ¢®§¬®¦ë
|
||||||
_mSetStr valHDD, tmp_Counter : DZ 'HDD ' ; ????? ¯®¤ã¬ âì ª ª¨¥ ¢ ਠâë ¢®§¬®¦ë
|
_mSetStr valHDD, tmp_Counter : DZ 'HDD ' ; ????? ¯®¤ã¬ âì ª ª¨¥ ¢ ਠâë ¢®§¬®¦ë
|
||||||
@ -665,6 +693,23 @@ msgStrings:
|
|||||||
_mSetStr valLoadZXromsManually, tmp_Counter : DZ 'Manually '
|
_mSetStr valLoadZXromsManually, tmp_Counter : DZ 'Manually '
|
||||||
_mSetStr valLoadZXromsFlag, tmp_Counter : DZ 'By ZX flag'
|
_mSetStr valLoadZXromsFlag, tmp_Counter : DZ 'By ZX flag'
|
||||||
_mSetStr valLoadZXromsCAD, tmp_Counter : DZ 'On restart'
|
_mSetStr valLoadZXromsCAD, tmp_Counter : DZ 'On restart'
|
||||||
|
;
|
||||||
|
_mSetStr parQS_SetUpHardware, tmp_Counter : DZ 'ZX Mode : '
|
||||||
|
_mSetStr valSprinterZX, tmp_Counter : DZ 'SprinterZX'
|
||||||
|
_mSetStr valPentagon48, tmp_Counter : DZ 'Pent. 48 '
|
||||||
|
_mSetStr valPentagon128, tmp_Counter : DZ 'Pent. 128 '
|
||||||
|
_mSetStr valPentagon512, tmp_Counter : DZ 'Pent. 512 '
|
||||||
|
_mSetStr valScorpion256, tmp_Counter : DZ 'Scorp 256 '
|
||||||
|
_mSetStr valZXSpectrum48, tmp_Counter : DZ 'Speccy 48 '
|
||||||
|
_mSetStr valZXSpectrum128, tmp_Counter : DZ 'Speccy 128'
|
||||||
|
;
|
||||||
|
_mSetStr parQS_SetUpZxRom, tmp_Counter : DZ 'Start in ZX mode : '
|
||||||
|
_mSetStr valQS_SetUpBasic128, tmp_Counter : DZ 'Basic 128 '
|
||||||
|
_mSetStr valQS_SetUpBasic48p, tmp_Counter : DZ 'Basic 48+ '
|
||||||
|
_mSetStr valQS_SetUpTrDos, tmp_Counter : DZ 'TR-DOS '
|
||||||
|
_mSetStr valQS_SetUpExp, tmp_Counter : DZ 'Expansion '
|
||||||
|
_mSetStr valQS_SetUpTrDos48, tmp_Counter : DZ 'TR-DOS 48 '
|
||||||
|
_mSetStr valQS_SetUpBasic48, tmp_Counter : DZ 'Basic 48+ '
|
||||||
; _mSetStrRus valLoadZXromsAuto, tmp_Counter : DZ 'On call '
|
; _mSetStrRus valLoadZXromsAuto, tmp_Counter : DZ 'On call '
|
||||||
IF NEW_FEATURE
|
IF NEW_FEATURE
|
||||||
_mSetStr parSetTime, tmp_Counter : DZ 'Date and time setup : '
|
_mSetStr parSetTime, tmp_Counter : DZ 'Date and time setup : '
|
||||||
@ -812,8 +857,7 @@ msgRusStrings:
|
|||||||
_mSetStrRus val312_50, tmp_Counter : DZ '312/50ľ'
|
_mSetStrRus val312_50, tmp_Counter : DZ '312/50ľ'
|
||||||
_mSetStrRus val320_49, tmp_Counter : DZ '320/49ľ'
|
_mSetStrRus val320_49, tmp_Counter : DZ '320/49ľ'
|
||||||
_mSetStrRus parQuickStartROM, tmp_Counter : DZ '‡ ¯ã᪠¢ ०¨¬¥ : '
|
_mSetStrRus parQuickStartROM, tmp_Counter : DZ '‡ ¯ã᪠¢ ०¨¬¥ : '
|
||||||
_mSetStrRus parQuickStartZX, tmp_Counter : DZ '<EFBFBD><EFBFBD><EFBFBD>珮<EFBFBD>'
|
_mSetStrRus valQuickStartSP, tmp_Counter : DZ '‘¯à¨â¥à'
|
||||||
_mSetStrRus parQuickStartSP, tmp_Counter : DZ '<EFBFBD><EFBFBD>┃皀<EFBFBD>'
|
|
||||||
_mSetStrRus valDefault, tmp_Counter : DZ '<EFBFBD>® 㬮«ç ¨î'
|
_mSetStrRus valDefault, tmp_Counter : DZ '<EFBFBD>® 㬮«ç ¨î'
|
||||||
_mSetStrRus valFDD, tmp_Counter : DZ 'FDD '
|
_mSetStrRus valFDD, tmp_Counter : DZ 'FDD '
|
||||||
_mSetStrRus valHDD, tmp_Counter : DZ 'HDD '
|
_mSetStrRus valHDD, tmp_Counter : DZ 'HDD '
|
||||||
@ -825,6 +869,23 @@ msgRusStrings:
|
|||||||
_mSetStrRus valLoadZXromsManually, tmp_Counter : DZ '‚àãçãî '
|
_mSetStrRus valLoadZXromsManually, tmp_Counter : DZ '‚àãçãî '
|
||||||
_mSetStrRus valLoadZXromsFlag, tmp_Counter : DZ '<EFBFBD>® ä« £ã ZX '
|
_mSetStrRus valLoadZXromsFlag, tmp_Counter : DZ '<EFBFBD>® ä« £ã ZX '
|
||||||
_mSetStrRus valLoadZXromsCAD, tmp_Counter : DZ '<EFBFBD>ਠà¥áâ àâ¥'
|
_mSetStrRus valLoadZXromsCAD, tmp_Counter : DZ '<EFBFBD>ਠà¥áâ àâ¥'
|
||||||
|
;
|
||||||
|
_mSetStrRus parQS_SetUpHardware, tmp_Counter : DZ '<EFBFBD>¥¦¨¬ ZX : '
|
||||||
|
_mSetStrRus valSprinterZX, tmp_Counter : DZ '‘¯à¨â¥à ZX '
|
||||||
|
_mSetStrRus valPentagon48, tmp_Counter : DZ '<EFBFBD>¥â £® 48 '
|
||||||
|
_mSetStrRus valPentagon128, tmp_Counter : DZ '<EFBFBD>¥â £® 128'
|
||||||
|
_mSetStrRus valPentagon512, tmp_Counter : DZ '<EFBFBD>¥â £® 512'
|
||||||
|
_mSetStrRus valScorpion256, tmp_Counter : DZ '‘ª®à¯¨® 256'
|
||||||
|
_mSetStrRus valZXSpectrum48, tmp_Counter : DZ '‘¯¥ªâà㬠48 '
|
||||||
|
_mSetStrRus valZXSpectrum128, tmp_Counter : DZ '‘¯¥ªâà㬠128'
|
||||||
|
;
|
||||||
|
_mSetStrRus parQS_SetUpZxRom, tmp_Counter : DZ '‘â àâ ०¨¬ ZX ¢ : '
|
||||||
|
_mSetStrRus valQS_SetUpBasic128, tmp_Counter : DZ 'Basic 128 '
|
||||||
|
_mSetStrRus valQS_SetUpBasic48p, tmp_Counter : DZ 'Basic 48+ '
|
||||||
|
_mSetStrRus valQS_SetUpTrDos, tmp_Counter : DZ 'TR-DOS '
|
||||||
|
_mSetStrRus valQS_SetUpExp, tmp_Counter : DZ 'Expansion '
|
||||||
|
_mSetStrRus valQS_SetUpTrDos48, tmp_Counter : DZ 'TR-DOS 48 '
|
||||||
|
_mSetStrRus valQS_SetUpBasic48, tmp_Counter : DZ 'Basic 48+ '
|
||||||
; _mSetStrRus valLoadZXromsAuto, tmp_Counter : DZ '<27>ਠ¢ë§®¢¥ '
|
; _mSetStrRus valLoadZXromsAuto, tmp_Counter : DZ '<27>ਠ¢ë§®¢¥ '
|
||||||
IF NEW_FEATURE
|
IF NEW_FEATURE
|
||||||
_mSetStrRus parSetTime, tmp_Counter : DZ '„ â ¨ ¢à¥¬ï : '
|
_mSetStrRus parSetTime, tmp_Counter : DZ '„ â ¨ ¢à¥¬ï : '
|
||||||
|
|||||||
@ -425,7 +425,7 @@ CLEAR_RAM:
|
|||||||
LD BC,BIOS.REINIT.FREE_NO_ZX_MEM
|
LD BC,BIOS.REINIT.FREE_NO_ZX_MEM
|
||||||
;LD C,BIOS.FullInit
|
;LD C,BIOS.FullInit
|
||||||
;
|
;
|
||||||
RST_to_BIOS
|
CALL ToBIOS_FromEXT
|
||||||
; ¯à¨ ®ç¨á⪥ ¯ ¬ï⨠¨§ ¬¥î ᯥªâà㬠¢®§¢à â ¢ DSS ¯® CAD
|
; ¯à¨ ®ç¨á⪥ ¯ ¬ï⨠¨§ ¬¥î ᯥªâà㬠¢®§¢à â ¢ DSS ¯® CAD
|
||||||
; ¡ã¤¥â ®¯ áë¬ (RAM Blocks ®á¢®¡®¤¨«¨áì),
|
; ¡ã¤¥â ®¯ áë¬ (RAM Blocks ®á¢®¡®¤¨«¨áì),
|
||||||
; ¯®í⮬㠮⪫îç ¥¬ ¯¥à¥å¢ â à¥á¥â .
|
; ¯®í⮬㠮⪫îç ¥¬ ¯¥à¥å¢ â à¥á¥â .
|
||||||
@ -433,7 +433,7 @@ CLEAR_RAM:
|
|||||||
LD BC,BIOS.SET_PORTS
|
LD BC,BIOS.SET_PORTS
|
||||||
;[x] SET_PORTS: no need to call from #3D13 and DI. 31/12/23
|
;[x] SET_PORTS: no need to call from #3D13 and DI. 31/12/23
|
||||||
;CALL ToBIOS_3D13
|
;CALL ToBIOS_3D13
|
||||||
RST_to_BIOS
|
CALL ToBIOS_FromEXT
|
||||||
;
|
;
|
||||||
EI
|
EI
|
||||||
RET
|
RET
|
||||||
@ -518,106 +518,50 @@ Hardware_Menu_STR:
|
|||||||
;******************************
|
;******************************
|
||||||
|
|
||||||
|
|
||||||
;**************************************************
|
|
||||||
;Sprinter ZX
|
|
||||||
;[ ] free zx pages!
|
;[ ] free zx pages!
|
||||||
|
;**************************************************
|
||||||
/*
|
SPRINTER_ZX: LD L,0 ; â®çª ¢å®¤ ¢ <20>‡“
|
||||||
|
.custom_ROM: LD H,BIOS.RST_CONF.SP97_1
|
||||||
LD H,A ; Block_ID.vRAM
|
|
||||||
;!TODO áâà ¨¢ âì ¢ BIOS zx mode
|
|
||||||
LD DE,256*0 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_0
|
|
||||||
LD A,(SYS_PAGE.Block_ID.vROM)
|
|
||||||
LD L,A
|
|
||||||
LD B,#FE ; !HARDCODE Port All Mode data
|
|
||||||
LD A,%0000'0010
|
|
||||||
EX AF,AF'
|
|
||||||
XOR A
|
|
||||||
;
|
|
||||||
;POP HL ; <20>… 㦥. ¤à¥á ¢®§¢à â ¢ EXP ¨§ SETUP
|
|
||||||
LD A,ROM.EXTENSION
|
|
||||||
OUT (SYS_PORT.ROM),A
|
|
||||||
XOR A
|
|
||||||
JP GOTO_SPECTRUM.FN
|
|
||||||
|
|
||||||
; ‚室: D: 0 - BASIC 128, 1 - BASIC 48, 2 - TR-DOS 128,
|
|
||||||
; 3 - EXPANSION. C § ªàëâ묨 128-¬¨ ¯®àâ ¬¨:
|
|
||||||
; 4 - TR-DOS, 5 - BASIC 48
|
|
||||||
; E: § 票¥ ¤«ï SYS_PORT/CNF_PORT
|
|
||||||
; H: ;!TODO Block_ID.vROM
|
|
||||||
; L: Block_ID.vRAM
|
|
||||||
; A: TASK Number = 0
|
|
||||||
; B: Port All Mode
|
|
||||||
;A'[1..0]: 1 - int scorp, 2 - int pent, 3 - int ZX
|
|
||||||
; A'[2]: 0 - set default palette, 1 - don't change palette
|
|
||||||
; A'[7]: 0 - 320, 1 - 312 áâப
|
|
||||||
|
|
||||||
; 1 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 48k. 3 áâà ¨æë
|
|
||||||
; 2 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 128k. 2+6 áâà ¨æë
|
|
||||||
; 3 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 512k. 2+30 áâà ¨æë
|
|
||||||
; 4 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ¨æë
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
SPRINTER_ZX: ;DI
|
|
||||||
;LD A,CNF_PORT.CNF_0 + CNF_PORT.TURBO.ON
|
|
||||||
;OUT (SYS_PORT.ROM),A
|
|
||||||
;LD SP,SYS_PAGE.SYS_SP
|
|
||||||
;LD A,SYS_PAGE
|
|
||||||
;OUT (SLOT3),A
|
|
||||||
;
|
|
||||||
LD A,BIOS.RST_CONF.SP97_1
|
|
||||||
LD DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_0 ; !HARDCODE 4 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ¨æë
|
LD DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_0 ; !HARDCODE 4 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ¨æë
|
||||||
LD BC,#FE*256 + %0000'0010 ; !HARDCODE Port All Mode data. int pent, set default palette, 320 áâப
|
LD BC,#FE*256 + %0000'0010 ; !HARDCODE Port All Mode data. int pent, set default palette, 320 áâப
|
||||||
JR PREPARE_TO_START_ZX
|
JR PREPARE_TO_START_ZX
|
||||||
;
|
;
|
||||||
ZX_SPECTRUM_128:
|
ZX_SPECTRUM_128:
|
||||||
;DI
|
LD L,0 ; â®çª ¢å®¤ ¢ <20>‡“
|
||||||
;LD SP,SYS_PAGE.SYS_SP
|
.custom_ROM: LD H,BIOS.RST_CONF.AY8910
|
||||||
;LD A,SYS_PAGE
|
|
||||||
;OUT (SLOT3),A
|
|
||||||
;
|
|
||||||
LD A,BIOS.RST_CONF.AY8910
|
|
||||||
LD DE,2*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.SCORP_RESET ; !HARDCODE 2 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 128
|
LD DE,2*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.SCORP_RESET ; !HARDCODE 2 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 128
|
||||||
LD BC,#FA*256 + %1000'0011
|
LD BC,#FA*256 + %1000'0011
|
||||||
JR PREPARE_TO_START_ZX
|
JR PREPARE_TO_START_ZX
|
||||||
|
|
||||||
SCORPION_256: ;DI
|
|
||||||
;LD SP,SYS_PAGE.SYS_SP
|
|
||||||
;LD A,SYS_PAGE
|
|
||||||
;OUT (SLOT3),A
|
|
||||||
;
|
;
|
||||||
LD A,BIOS.RST_CONF.AY8910
|
SCORPION_256: LD L,0 ; â®çª ¢å®¤ ¢ <20>‡“
|
||||||
|
.custom_ROM: LD H,BIOS.RST_CONF.AY8910
|
||||||
LD DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_1 ; !HARDCODE 4 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ¨æë
|
LD DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_1 ; !HARDCODE 4 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ¨æë
|
||||||
LD BC,#FE*256 + %1000'0001
|
LD BC,#FE*256 + %1000'0001
|
||||||
;JR PREPARE_TO_START_ZX
|
|
||||||
PREPARE_TO_START_ZX:
|
PREPARE_TO_START_ZX:
|
||||||
DI
|
DI
|
||||||
EX AF,AF'
|
|
||||||
LD A,CNF_PORT.CNF_0 + CNF_PORT.TURBO.ON
|
LD A,CNF_PORT.CNF_0 + CNF_PORT.TURBO.ON
|
||||||
OUT (SYS_PORT.ROM),A
|
OUT (SYS_PORT.ROM),A
|
||||||
LD A,SYS_PAGE
|
LD A,SYS_PAGE
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
EX AF,AF'
|
|
||||||
;
|
;
|
||||||
|
PUSH HL
|
||||||
PUSH BC
|
PUSH BC
|
||||||
PUSH DE
|
PUSH DE
|
||||||
PUSH DE
|
PUSH DE
|
||||||
;
|
;
|
||||||
LD C,A
|
LD C,H
|
||||||
RST_to_BIOS
|
CALL ToBIOS_FromEXT
|
||||||
;
|
;
|
||||||
POP DE
|
POP DE
|
||||||
LD B,D
|
LD B,D
|
||||||
;LD C,BIOS.ZX_MEMORY_MANAGER
|
|
||||||
;RST_to_BIOS
|
|
||||||
CALL MANAGE_ZX_PAGES.FN_ENTRANCE.API
|
CALL MANAGE_ZX_PAGES.FN_ENTRANCE.API
|
||||||
JR C,.loop_rst
|
JR C,.loop_rst
|
||||||
;
|
;
|
||||||
POP DE
|
POP DE
|
||||||
POP BC
|
POP BC
|
||||||
|
POP HL
|
||||||
;
|
;
|
||||||
LD D,0 ; !HARDCODE â®çª ¢å®¤ ¢ <20>‡“ ᯥªâàã¬
|
LD D,L ; !HARDCODE â®çª ¢å®¤ ¢ <20>‡“ ᯥªâàã¬
|
||||||
LD H,A
|
LD H,A
|
||||||
LD A,(SYS_PAGE.Block_ID.vROM)
|
LD A,(SYS_PAGE.Block_ID.vROM)
|
||||||
LD L,A
|
LD L,A
|
||||||
@ -627,26 +571,17 @@ PREPARE_TO_START_ZX:
|
|||||||
JP GOTO_SPECTRUM.FN
|
JP GOTO_SPECTRUM.FN
|
||||||
;
|
;
|
||||||
.loop_rst: LD BC,BIOS.REINIT.HARD_RESET
|
.loop_rst: LD BC,BIOS.REINIT.HARD_RESET
|
||||||
RST_to_BIOS
|
CALL ToBIOS_FromEXT
|
||||||
JR .loop_rst
|
JR .loop_rst
|
||||||
|
|
||||||
|
|
||||||
PENTAGON_128: ;DI
|
|
||||||
;LD SP,SYS_PAGE.SYS_SP
|
|
||||||
;LD A,SYS_PAGE
|
|
||||||
;OUT (SLOT3),A
|
|
||||||
;
|
;
|
||||||
LD A,BIOS.RST_CONF.AY8910
|
PENTAGON_128: LD L,0 ; â®çª ¢å®¤ ¢ <20>‡“
|
||||||
|
.custom_ROM: LD H,BIOS.RST_CONF.AY8910
|
||||||
LD DE,2*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.SCORP_RESET ; !HARDCODE 2 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 128
|
LD DE,2*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.SCORP_RESET ; !HARDCODE 2 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 128
|
||||||
LD BC,#FE*256 + %0000'0010
|
LD BC,#FE*256 + %0000'0010
|
||||||
JR PREPARE_TO_START_ZX
|
JR PREPARE_TO_START_ZX
|
||||||
|
|
||||||
PENTAGON_512: ;DI
|
|
||||||
;LD SP,SYS_PAGE.SYS_SP
|
|
||||||
;LD A,SYS_PAGE
|
|
||||||
;OUT (SLOT3),A
|
|
||||||
;
|
;
|
||||||
LD A,BIOS.RST_CONF.AY8910
|
PENTAGON_512: LD L,0 ; â®çª ¢å®¤ ¢ <20>‡“
|
||||||
|
.custom_ROM: LD H,BIOS.RST_CONF.AY8910
|
||||||
LD DE,3*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_512 + CNF_PORT.SCORP_RESET ; !HARDCODE 3 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 512
|
LD DE,3*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_512 + CNF_PORT.SCORP_RESET ; !HARDCODE 3 - ¢ë¤¥«¥¨¥ ¯ ¬ï⨠Pentagon 512
|
||||||
LD BC,#FE*256 + %0000'0010
|
LD BC,#FE*256 + %0000'0010
|
||||||
JR PREPARE_TO_START_ZX
|
JR PREPARE_TO_START_ZX
|
||||||
@ -676,17 +611,17 @@ PENTAGON_512: ;DI
|
|||||||
|
|
||||||
; LD A,L
|
; LD A,L
|
||||||
; LD C,BIOS.FN_SYNC
|
; LD C,BIOS.FN_SYNC
|
||||||
; RST_to_BIOS
|
; CALL ToBIOS_FromEXT
|
||||||
|
|
||||||
; LD HL,#4104 ;!HARDCODE
|
; LD HL,#4104 ;!HARDCODE
|
||||||
; LD E,0
|
; LD E,0
|
||||||
; LD BC,256*4 + BIOS.LP_OPEN_S ;!HARDCODE
|
; LD BC,256*4 + BIOS.LP_OPEN_S ;!HARDCODE
|
||||||
; RST_to_BIOS
|
; CALL ToBIOS_FromEXT
|
||||||
|
|
||||||
; LD HL,#5104 ;!HARDCODE
|
; LD HL,#5104 ;!HARDCODE
|
||||||
; LD E,0
|
; LD E,0
|
||||||
; LD BC,256*4 + BIOS.LP_OPEN_S
|
; LD BC,256*4 + BIOS.LP_OPEN_S
|
||||||
; RST_to_BIOS
|
; CALL ToBIOS_FromEXT
|
||||||
|
|
||||||
; POP DE
|
; POP DE
|
||||||
; LD A,E
|
; LD A,E
|
||||||
@ -736,7 +671,7 @@ UTILIT:
|
|||||||
;LD A,0 ; DETECT_HDD
|
;LD A,0 ; DETECT_HDD
|
||||||
;CALL EXP_HDD
|
;CALL EXP_HDD
|
||||||
LD C,BIOS.HDD_INIT
|
LD C,BIOS.HDD_INIT
|
||||||
RST_to_BIOS
|
CALL ToBIOS_FromEXT
|
||||||
;CALL DOS_OFF
|
;CALL DOS_OFF
|
||||||
|
|
||||||
|
|
||||||
@ -748,14 +683,14 @@ UTILIT:
|
|||||||
UTIL_DISK:
|
UTIL_DISK:
|
||||||
XOR A
|
XOR A
|
||||||
LD C,BIOS.FreeMemRMD
|
LD C,BIOS.FreeMemRMD
|
||||||
RST_to_BIOS
|
CALL ToBIOS_FromEXT
|
||||||
|
|
||||||
LD HL,C_DEMO6
|
LD HL,C_DEMO6
|
||||||
CALL CALL_DOS1
|
CALL CALL_DOS1
|
||||||
|
|
||||||
XOR A
|
XOR A
|
||||||
LD C,BIOS.GET_RAMD_ST
|
LD C,BIOS.GET_RAMD_ST
|
||||||
RST_to_BIOS
|
CALL ToBIOS_FromEXT
|
||||||
|
|
||||||
JR C,UTIL_DISK_L1
|
JR C,UTIL_DISK_L1
|
||||||
JR Z,UTIL_DISK_L1
|
JR Z,UTIL_DISK_L1
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user