This commit is contained in:
Anatoliy Belyanskiy 2023-12-10 08:27:00 +10:00
parent 27b24be434
commit 5fed4f166d

View File

@ -81,11 +81,12 @@
;
; Standart EQU section
;***************************************
org_addr EQU #8000+CLP_Buffer
code_addr EQU BEGIN
stack_point EQU #BFFE
stack_buffer EQU 64
program_start EQU BEGIN
org_addr EQU #8000+CLP_Buffer
code_addr EQU BEGIN
stack_point EQU #BFFE
stack_buffer EQU 64
program_start EQU BEGIN
Loader_length EQU 0
;***************************************
;
@ -159,7 +160,21 @@ BEGIN: LD (LINE_X),IX
RST ToBIOS
ENDIF
;
;!TODO
;LD HL,SPECTRUM_HOME_DIR
;LD BC,Dss.AppInfo.EXE_HomeDir
;RST ToDSS
;;
;LD C,Dss.CurDisk
;RST ToDSS
;ADD A,'A'
;LD (USER_CURRENT_DRV),A
;;
;LD HL,USER_CURRENT_DIR
;LD C,Dss.CurDir
;RST ToDSS
;
JP COMAND_LINE
@ -200,9 +215,14 @@ EXIT_ALL: LD C,Dss.PChars
;LD C,Dss.PChars
;RST ToDSS
;---------------------------------------
1: LD BC,Dss.Exit
;!TODO
;LD HL,USER_CURRENT_DRV
;LD C,Dss.ChDir
;RST ToDSS
;
.loop: LD BC,Dss.Exit
RST ToDSS
JR 1B
JR .loop
;
@ -219,12 +239,12 @@ COMAND_LINE: LD HL,(LINE_X)
CALL FIND_FILES
CALL MAKE_FULL_NAME
LD A,Spec_Page ;!FIXIT don't use it in new version
LD A,SHARED_PAGE
CALL READ_FILE_1
JP NC,CONTINUE
NO_FIL: CALL MAKE_FULL_NAME.def_cnf
LD A,Spec_Page ;!FIXIT don't use it in new version
LD A,SHARED_PAGE
CALL READ_FILE_1
JR C,ERROR_FILE
JP CONTINUE
@ -417,7 +437,7 @@ N_LINE: LD (HL),0
CALL READ_FILE_1
POP DE
;
LD A,Spec_Page
LD A,SHARED_PAGE
OUT (SLOT3),A
JP C,ERROR_FILE
.skip_load:
@ -499,7 +519,7 @@ LOADING_PALETTE:
;*************************************
LD A,Spec_Page
LD A,SHARED_PAGE
OUT (SLOT3),A
LD HL,(A_LINES + (OPTIONS_LINE-1)*2 ) ; áâப  ¯ à ¬¥â஢
LOOP_PAR1: LD A,(HL)
@ -622,11 +642,18 @@ SKIP_IMAGE: LD A,(No_run_+2)
LD HL,MSG_EXIT1
JP NZ,SETUP_RAM_DRIVES
LD BC,SLOT3
IN B,(C)
LD A,Spec_Page
OUT (C),A
;
LD A,"Z"
LD (Spec_Page.flag_Z),A
LD A,"X"
LD (Spec_Page.flag_X),A
;
OUT (C),B
;
JP EXIT_ALL
@ -735,7 +762,7 @@ Get_RAM_Disk_E: LD A,D
JR Z,ERROR_NO_MEM
PUSH AF
;***************************************
; [ ] 04/11/2023 Žâ¤¥«ì­ë¥ à ¬¤¨áª¨ ¤«ï ०¨¬  ᯥªâà㬠 ¨ DSS
; [x] 04/11/2023 Žâ¤¥«ì­ë¥ à ¬¤¨áª¨ ¤«ï ०¨¬  ᯥªâà㬠 ¨ DSS
.free_disk: DI
;!TEST
;XOR A ; RAM-Drive E:
@ -1192,6 +1219,7 @@ MAKE_FULL_NAME: LD HL,(CNF_NAME)
LD BC,Dss.EX_Path.GET_ALL
RST ToDSS
;
OR 2
CP 3 ; only "FileName.ext"?
LD HL,(CNF_NAME)
JR Z,.get_app_path
@ -1214,6 +1242,8 @@ MAKE_FULL_NAME: LD HL,(CNF_NAME)
.mode+1: LD HL,0
LD BC,12 ;!HARDCODE filename length
LDIR
XOR A
LD (DE),A
LD HL,ONE_FILE
RET
;----------------------------------------------------------------------;
@ -1227,12 +1257,19 @@ CHECK_ZX_FLAG:
IN B,(C)
LD A,Spec_Page
OUT (C),A
LD A,(Spec_Page.flag_Z)
CP 'Z'
JR NZ,.no_zx
LD A,(Spec_Page.flag_X)
CP 'X'
JP Z,.exit
LD HL,(Spec_Page.flag_Z)
LD DE,'Z'+'X'*256
AND A
SBC HL,DE
JR Z,.exit
; LD A,(Spec_Page.flag_Z)
; CP 'Z'
; JR NZ,.no_zx
; LD A,(Spec_Page.flag_X)
; CP 'X'
; JP Z,.exit
;
.no_zx: LD A,1
LD (NO_ZX_FLAG),A
@ -1281,17 +1318,20 @@ RMD_Keep: DB "RMD-Keep", 255,0 ;!TEST; [ ] 05/11/2023
;/Turbo /Lines312 /Sprinter /7FFD /1FFD /Mem512 /Int-Sc /To-TRDOS /no-run /origin /ret-zx /ret-fn
CNF_FILE: DB "SPECTRUM.CFG",0
.Size EQU $-CNF_FILE
ONE_FILE: BLOCK FULL_FILE_NAME_LENGTH,0
;
;!TODO
;USER_CURRENT_DRV DB 'Z:'
;USER_CURRENT_DIR EQU $
;SPECTRUM_HOME_DIR EQU USER_CURRENT_DIR + 256
;
;
;
;
IFDEF NEED_LOADER
Loader_length EQU $-BEGIN
ELSE
Loader_length EQU 0
ENDIF
;----------------------------------------------[End Loader section]
;