This commit is contained in:
Tolik 2024-12-18 00:17:38 +10:00
parent 3c0d7205c7
commit 73f9070083
6 changed files with 66 additions and 57 deletions

View File

@ -158,6 +158,7 @@
EXPORT msgStrings.str_ACEX_MODEL EXPORT msgStrings.str_ACEX_MODEL
EXPORT msgRusStrings.str_ACEX_MODEL EXPORT msgRusStrings.str_ACEX_MODEL
EXPORT BETA_BUILD EXPORT BETA_BUILD
EXPORT BETA_RC
; LUA ALLPASS ; LUA ALLPASS
; print ("DEPACKER", sj.get_label("DEPACKER.PackedMAIN")) ; print ("DEPACKER", sj.get_label("DEPACKER.PackedMAIN"))
; print ("UnPacker", sj.get_label("UnPacker.PackedMAIN")) ; print ("UnPacker", sj.get_label("UnPacker.PackedMAIN"))

View File

@ -954,7 +954,7 @@ PORTS_INIT:
; ˆ­¨æ¨ «¨§ æ¨ï â ©¬¥à  ¬ëè¨ ; ˆ­¨æ¨ «¨§ æ¨ï â ©¬¥à  ¬ëè¨
LD A,#55 LD A,#55
OUT (Z84.CTC.Ch_0),A OUT (Z84.CTC.Ch_0),A
LD A,#2D LD A,#2D ; ᪮à®áâì ¯®àâ  - ¢â®à®© ¬­®¦¨â¥«ì
OUT (Z84.CTC.Ch_0),A OUT (Z84.CTC.Ch_0),A
; reg 0 ; reg 0
XOR A ;LD A,0 XOR A ;LD A,0
@ -962,8 +962,11 @@ PORTS_INIT:
; reg 4 ; reg 4
LD A,4 LD A,4
OUT (Z84.SIO.Ch_B.Ctrl),A OUT (Z84.SIO.Ch_B.Ctrl),A
;!TODO ¢á¯®¬­¨âì
;LD A,#45 ;LD A,#45
LD A,#40 ;LD A,#44
;
LD A,#40 ; ᪮à®áâì ¯®àâ  - ¯¥à¢ë© ¬­®¦¨â¥«ì = 16
OUT (Z84.SIO.Ch_B.Ctrl),A OUT (Z84.SIO.Ch_B.Ctrl),A
; reg 3 ; reg 3
LD A,3 LD A,3
@ -987,7 +990,7 @@ PORTS_INIT:
XOR A XOR A
OUT (Z84.PIO.Port_A.Command),A ; ALL - out OUT (Z84.PIO.Port_A.Command),A ; ALL - out
OUT (Z84.PIO.Port_A.Data),A ; DATA - all zeros OUT (Z84.PIO.Port_A.Data),A ; DATA - all zeros
; ¤«ï printer-a ; ¤«ï ¯à¨­â¥à 
LD A,#0F ; OUT LD A,#0F ; OUT
OUT (Z84.PIO.Port_A.Command),A OUT (Z84.PIO.Port_A.Command),A
OUT (Z84.PIO.Port_A.Command),A OUT (Z84.PIO.Port_A.Command),A

View File

@ -161,7 +161,7 @@ TRAY_FN:
; #0B - ABORTED COMMAND ; #0B - ABORTED COMMAND
; #80 - TIME OUT ; #80 - TIME OUT
AP_COM: EXX AP_COM: EXX
LD DE,#8000 ;LD DE,#8000
CALL CD_WAITPRT CALL CD_WAITPRT
EXX EXX
JR NC,.READY JR NC,.READY
@ -173,7 +173,7 @@ AP_COM: EXX
.pause: DJNZ .pause .pause: DJNZ .pause
EXX EXX
LD DE,#8000 ;LD DE,#8000
CALL CD_WAITPRT CALL CD_WAITPRT
EXX EXX
RET C RET C
@ -186,7 +186,6 @@ AP_COM: EXX
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (C),A OUT (C),A
LD A,B
LD DE,RAM_ATAPI_PK ;!FIXIT ¬®¦¥â ­  á⥪¥ ¢ë¤¥«ïâì ¬¥áâ®? LD DE,RAM_ATAPI_PK ;!FIXIT ¬®¦¥â ­  á⥪¥ ¢ë¤¥«ïâì ¬¥áâ®?
LD BC,PKTSIZE LD BC,PKTSIZE
LDIR LDIR
@ -209,19 +208,20 @@ AP_COM: EXX
LD BC,IDE.Write.Command LD BC,IDE.Write.Command
LD A,IDE.ATAPI.Packet LD A,IDE.ATAPI.Packet
OUT (C),A OUT (C),A
LD DE,#8000 ;LD DE,#8000
CALL CD_WAITPRT CALL CD_WAITPRT
EXX EXX
RET C RET C
EXX EXX
LD DE,#0908 LD DE,#0908
CALL CD_WAITPRT CALL CD_WAITPRT.Custom
EXX EXX
BIT IDE.ControlBit.Error,A BIT IDE.ControlBit.Error,A
JR NZ,.CDERROR JR NZ,.CDERROR
JR NC,.YEP_DRQ JR NC,.YEP_DRQ
LD A,#80 ; TIME OUT ;!HARDCODE LD A,#80 ; ERROR TIME OUT ;!HARDCODE
RET RET
;
.YEP_DRQ: .YEP_DRQ:
LD C,SLOT3 LD C,SLOT3
IN B,(C) IN B,(C)
@ -236,16 +236,16 @@ AP_COM: EXX
OUTI OUTI
DEC A DEC A
JR NZ,.OUTPKT JR NZ,.OUTPKT
;
POP BC POP BC
OUT (C),B OUT (C),B
;
LD B,#80 LD B,#80
.pause2: DJNZ .pause2 .pause2: DJNZ .pause2
;
.AP_LOOP: .AP_LOOP:
EXX EXX
LD DE,#8000 ;LD DE,#8000
CALL CD_WAITPRT CALL CD_WAITPRT
EXX EXX
RET C RET C
@ -279,7 +279,6 @@ AP_COM: EXX
LD BC,IDE.Read.Counter LD BC,IDE.Read.Counter
IN A,(C) IN A,(C)
AND #02 AND #02
;CP #02
JR NZ,.FROM_CD JR NZ,.FROM_CD
;.TO_CD: ;.TO_CD:
LD BC,IDE.Read.Data LD BC,IDE.Read.Data
@ -293,7 +292,9 @@ AP_COM: EXX
JR NZ,.WR_T_CD JR NZ,.WR_T_CD
EX DE,HL EX DE,HL
JR .AP_LOOP JR .AP_LOOP
;
.FROM_CD: .FROM_CD:
; 能恥丞<E681A5> <20> 砲鄍祚垠平言 𨸹鄍<F0A8B8B9> <EFBD9E>
LD A,H LD A,H
OR L OR L
JR Z,.NULL JR Z,.NULL
@ -308,6 +309,7 @@ AP_COM: EXX
JR NZ,.RD_F_CD JR NZ,.RD_F_CD
EX DE,HL EX DE,HL
JR .AP_LOOP JR .AP_LOOP
;
.NULL: LD BC,IDE.Read.Data .NULL: LD BC,IDE.Read.Data
.RD_N_CD: .RD_N_CD:
IN A,(C) IN A,(C)
@ -325,34 +327,32 @@ AP_COM: EXX
;----------------------------------------------------------------------; ;----------------------------------------------------------------------;
; D - MASK CD_WAITPRT: LD DE,#8000 ; D - MASK, E - PATTERN
; E - PATTERN .Custom: LD BC,IDE.Read.Status
CD_WAITPRT:
LD BC,IDE.Read.Status
LD A,100 LD A,100
LD HL,#0000 LD HL,#0000
.CWAITPX: .LOOP_A: EX AF,AF'
EX AF,AF' .LOOP_HL: IN A,(C)
.CWAITP0:
IN A,(C)
CP #FF CP #FF
JR Z,.CWAITP1 JR Z,.error
AND D AND D
CP E CP E
JR NZ,.CWAITP2 ;
AND A ; JR NZ,.NEXT_TRY
RET ; AND A
.CWAITP2: ; RET
DEC L RET Z
JR NZ,.CWAITP0 ;
.NEXT_TRY: DEC L
JR NZ,.LOOP_HL
DEC H DEC H
JR NZ,.CWAITP0 JR NZ,.LOOP_HL
EX AF,AF' EX AF,AF'
DEC A DEC A
JR NZ,.CWAITPX JR NZ,.LOOP_A
;
EX AF,AF' EX AF,AF'
.CWAITP1: .error: SCF
SCF
RET RET
;----------------------------------------------------------------------; ;----------------------------------------------------------------------;

View File

@ -7,7 +7,6 @@
ENDM ENDM
; ;
;!FIXIT ¯® ¤®ª¥ ­  äã­ªæ¨î ¤®«¦¥­ ¯¥à¥¤ ¢ë室®¬ CF áâ ¢¨âìáï ;!FIXIT ¯® ¤®ª¥ ­  äã­ªæ¨î ¤®«¦¥­ ¯¥à¥¤ ¢ë室®¬ CF áâ ¢¨âìáï
CMOS_EMU_WR: CMOS_EMU_WR:
PUSH DE PUSH DE
@ -26,6 +25,7 @@ CMOS_EMU_WR:
; ;
; § ¯¨áì ¢ CMOS ; § ¯¨áì ¢ CMOS
;!FIXIT ¯¥à¥¤¥« âì ¯® ¤®ª¥ ­  „ «« á ¨ § ¯¨áì ¢ ï祩ª¨ ç á®¢
CMOS_WR: ; [x] CMOS_WR: ; [x]
_mCMOS_MAX_TEST _mCMOS_MAX_TEST
; ;

View File

@ -1,5 +1,6 @@
;=======================[All shared EQUs]=======================; ;=======================[All shared EQUs]=======================;
BETA_BUILD EQU 17 ; ¤®¡ ¢«ï¥â áâப㠨 á®®¡é¥­¨¥ ® â¥á⮢®© ᡮથ ­  áâ à⮢®¬ íªà ­¥ BETA_BUILD EQU 10 ; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><E9A5AD> <20> <20><><EFBFBD><EFBFBD><E2AEA2> ᡮથ <20><> <20><><EFBFBD><EFBFBD><EFBFBD><E2AEA2> <20><><EFBFBD>
BETA_RC EQU 1 ;
;======================[All shared defines]=====================; ;======================[All shared defines]=====================;
DEFINE PACKED_MAIN 0 ; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®? DEFINE PACKED_MAIN 0 ; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®?
DEFINE SP2000_Loader_Flag #0107 ; DEFINE SP2000_Loader_Flag #0107 ;

View File

@ -8,8 +8,12 @@ BIOS_ver_hex EQU EXP_ID.VER*256+EXP_ID.MOD
DEFINE BIOS_ver_string '0'+EXP_ID.VER, '.', '0'+EXP_ID.MOD/10, '0'+EXP_ID.MOD-(EXP_ID.MOD/10)*10 DEFINE BIOS_ver_string '0'+EXP_ID.VER, '.', '0'+EXP_ID.MOD/10, '0'+EXP_ID.MOD-(EXP_ID.MOD/10)*10
IF BETA_BUILD > 0 IF BETA_BUILD > 0
IF BETA_RC > 0
DEFINE BETA_str_ver "RC","0"+BETA_RC
ELSE
DEFINE BETA_str_ver "BETA ","0"+BETA_BUILD DEFINE BETA_str_ver "BETA ","0"+BETA_BUILD
ENDIF ENDIF
ENDIF
;--------------------------------------- ;---------------------------------------
DEFINE BoardID_start #5283 DEFINE BoardID_start #5283
DEFINE BoardID_end #47E8 DEFINE BoardID_end #47E8