From 2a869d746e2b709f086fb35a628148edffddd48d Mon Sep 17 00:00:00 2001 From: Anatoliy Belyanskiy Date: Sun, 28 Jan 2024 01:52:52 +1000 Subject: [PATCH] =?UTF-8?q?=D0=B7=D0=B0=D0=BC=D0=B5=D0=BD=D0=B0=20=D0=BC?= =?UTF-8?q?=D0=B5=D1=82=D0=BE=D0=BA=20=D0=BD=D0=B0=20Sp2000.inc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SP_TRDOS.ASM | 1878 ++++++++++++++++++++++---------------------- Shared_Includes | 2 +- TRDOS/TR_MSD_2.ASZ | 82 +- TRDOS/TR_MSD_3.ASZ | 104 +-- TRDOS/TR_MSD_S.ASZ | 270 +++---- TRDOS/TR_RMD_S.ASZ | 60 +- 6 files changed, 1197 insertions(+), 1199 deletions(-) diff --git a/SP_TRDOS.ASM b/SP_TRDOS.ASM index e81b60c..2989ddf 100644 --- a/SP_TRDOS.ASM +++ b/SP_TRDOS.ASM @@ -8,7 +8,7 @@ ORG 0 ;*************************************** - INCLUDE 'INC/SPRINT00.INC' + INCLUDE 'Shared_Includes/constants/sp2000.inc' INCLUDE 'inc/rom_routines.inc' INCLUDE 'Shared_Includes/constants/zx_char_codes.inc' INCLUDE 'Shared_Includes/constants/BIOS_equ.inc' @@ -147,7 +147,7 @@ CONT_6: JR Z,CONT_6 CONT_7: DEC HL - LD (P_RAMTOP),HL + LD (ZX_VARS.P_RAMTOP),HL LD DE,#3EAF LD BC,#00A8 LD A,E @@ -186,72 +186,72 @@ CONT_8: RET_1: EX DE,HL INC HL - LD (UDG),HL + LD (ZX_VARS.UDG),HL DEC HL LD BC,AUTO_0540 - LD (ERR_BEEP),BC - LD (TOP_CLEAR),HL + LD (ZX_VARS.ERR_BEEP),BC + LD (ZX_VARS.TOP_CLEAR),HL LD HL,03C00h - LD (ZG),HL - LD HL,(TOP_CLEAR) + LD (ZX_VARS.ZG),HL + LD HL,(ZX_VARS.TOP_CLEAR) LD (HL),'>' DEC HL LD SP,HL DEC HL DEC HL - LD (ERR_SP),HL + LD (ZX_VARS.ERR_SP),HL LD DE,01303h PUSH DE IM 1 - LD IY,ERR_NR - LD HL,BEG_ADRESS + LD IY,ZX_VARS.ERR_NR + LD HL,ZX_VARS.BEG_ADRESS AUTO_00A8: - LD (CHANS),HL + LD (ZX_VARS.CHANS),HL LD DE,AUTO_15AF LD BC,15h EX DE,HL CALL AUTO_0117 EX DE,HL DEC HL - LD (DATA_ADR),HL + LD (ZX_VARS.DATA_ADR),HL INC HL - LD (BAS_PROG),HL - LD (BAS_VARS),HL + LD (ZX_VARS.BAS_PROG),HL + LD (ZX_VARS.BAS_VARS),HL LD (HL),128 INC HL - LD (E_LINE),HL + LD (ZX_VARS.E_LINE),HL DB 54 AUTO_00C8: DEC C INC HL LD (HL),128 INC HL - LD (WORK_SP),HL - LD (STK_BOT),HL - LD (STK_END),HL + LD (ZX_VARS.WORK_SPACE),HL + LD (ZX_VARS.STK_BOT),HL + LD (ZX_VARS.STK_END),HL LD A,'8' - LD (ATTR_P),A - LD (ATTR_T),A - LD (BORDER),A + LD (ZX_VARS.ATTR_P),A + LD (ZX_VARS.ATTR_T),A + LD (ZX_VARS.BORDER),A LD HL,0223h - LD (KEY_TIME),HL + LD (ZX_VARS.KEY_TIME),HL DEC (IY-58) DEC (IY-54) LD HL,015C6h - LD DE,REP_K_TYME + LD DE,ZX_VARS.REP_K_TYME LD BC,14 CALL AUTO_0117 SET 1,(IY+1) - LD HL,RET_INS + LD HL,ZX_VARS.RET_INS AUTO_0100: LD (HL),201 RST_ROM ROUTINE.clear_prb - LD HL,L_SCR_SIZE + LD HL,ZX_VARS.L_SCR_SIZE LD (HL),2 LD HL,AUTO_128B PUSH HL LD A,170 - LD (PR_BUFER),A + LD (ZX_VARS.PRINTER_BUFFER),A EI JP AUTO_3D31 AUTO_0117: @@ -266,7 +266,7 @@ AUTO_0124: AUTO_012A: CALL AUTO_20E5 CALL AUTO_1D97 - LD HL,(E_LINE) + LD HL,(ZX_VARS.E_LINE) INC HL LD E,(HL) INC HL @@ -276,49 +276,49 @@ AUTO_012A: EX DE,HL JR Z,AUTO_0140 XOR A - LD (ERR_3D00),A + LD (ZX_VARS.ERR_3D00),A AUTO_0140: PUSH HL CALL AUTO_0232 POP HL - LD (NEW_PPC),HL + LD (ZX_VARS.NEW_PPC),HL XOR A - LD (NEW_S_PPC),A + LD (ZX_VARS.NEW_S_PPC),A RST_ROM ROUTINE.set_min - LD HL,(BAS_PROG) + LD HL,(ZX_VARS.BAS_PROG) DEC HL - LD (DATA_ADR),HL - LD SP,(ERR_SP) - LD A,(ERR_3D00) + LD (ZX_VARS.DATA_ADR),HL + LD SP,(ZX_VARS.ERR_SP) + LD A,(ZX_VARS.ERR_3D00) OR A LD HL,AUTO_1B76 JR Z,AUTO_0166 RST_ROM ROUTINE.report_0 AUTO_0166: PUSH HL - LD HL,RET_INS + LD HL,ZX_VARS.RET_INS PUSH HL RET AUTO_016C: ; вход через 3D03 CALL xchg_intf1 CALL BUFER_ON LD A,255 - LD (MSG_FLAG),A + LD (ZX_VARS.MSG_FLAG),A XOR A - LD (DOS_FLAG),A + LD (ZX_VARS.DOS_FLAG),A LD A,170 - LD (FLAG_BOOT),A + LD (ZX_VARS.FLAG_BOOT),A LD HL,AUTO_0201 - LD (ADR_RET),HL + LD (ZX_VARS.ADR_RET),HL LD HL,0 ADD HL,SP - LD (DOS_SP),HL + LD (ZX_VARS.DOS_SP),HL DEC HL DEC HL LD SP,HL CALL AUTO_021D - LD HL,(TOP_CLEAR) - LD DE,(CH_ADR) + LD HL,(ZX_VARS.TOP_CLEAR) + LD DE,(ZX_VARS.CH_ADR) SBC HL,DE EX DE,HL JR NC,AUTO_01A5 @@ -326,7 +326,7 @@ AUTO_016C: ; LD DE,101h SBC HL,DE AUTO_01A5: - LD (CH_ADR),HL + LD (ZX_VARS.CH_ADR),HL AUTO_01A8: CALL AUTO_01C7 AUTO_01AB: @@ -340,7 +340,7 @@ AUTO_01AB: JP NZ,AUTO_01D3 INC HL CALL AUTO_3048 ; convert words - LD HL,(ADR_DOS_COM) + LD HL,(ZX_VARS.ADR_DOS_COM) JP AUTO_030A AUTO_01C7: LD A,(HL) @@ -353,12 +353,12 @@ AUTO_01C7: CALL AUTO_1E43 AUTO_01D3: LD HL,0 - LD (DISK_1_FLG),HL + LD (ZX_VARS.DISK_1_FLG),HL CALL AUTO_20E5 CALL AUTO_1D63 - LD HL,FLAG_BOOT + LD HL,ZX_VARS.FLAG_BOOT LD (HL),170 - LD HL,FL_NUMBER+1 + LD HL,ZX_VARS.FL_NUMBER+1 LD A,(HL) OR A LD (HL),0 @@ -366,9 +366,9 @@ AUTO_01D3: CALL AUTO_1E1C CALL AUTO_0212 AUTO_01F3: - LD SP,(DOS_SP) - LD HL,(ADR_RET) - LD BC,(DOS_ERR_2) + LD SP,(ZX_VARS.DOS_SP) + LD HL,(ZX_VARS.ADR_RET) + LD BC,(ZX_VARS.DOS_ERR_2) LD B,0 AUTO_0200: JP (HL) @@ -376,8 +376,8 @@ AUTO_0201: CALL AUTO_0232 BIT 7,(IY+0) RET NZ - LD DE,RET_INS - LD SP,(ERR_SP) + LD DE,ZX_VARS.RET_INS + LD SP,(ZX_VARS.ERR_SP) PUSH DE RET AUTO_0212: @@ -387,35 +387,35 @@ AUTO_0212: CALL BASIC_RST20 JR AUTO_0212 AUTO_021D: - LD HL,(ERR_SP) - LD (ERR_SP_COPY),HL - LD HL,(DOS_SP) + LD HL,(ZX_VARS.ERR_SP) + LD (ZX_VARS.ERR_SP_COPY),HL + LD HL,(ZX_VARS.DOS_SP) DEC HL DEC HL - LD (ERR_SP),HL + LD (ZX_VARS.ERR_SP),HL LD DE,AUTO_3D16 LD (HL),E INC HL LD (HL),D RET AUTO_0232: - LD HL,(ERR_SP_COPY) - LD (ERR_SP),HL + LD HL,(ZX_VARS.ERR_SP_COPY) + LD (ZX_VARS.ERR_SP),HL RET AUTO_0239: ; вход через 3D00 LD HL,0 - LD (DOS_FLAG),HL + LD (ZX_VARS.DOS_FLAG),HL ADD HL,SP - LD (DOS_SP),HL + LD (ZX_VARS.DOS_SP),HL DEC HL DEC HL LD SP,HL CALL LOAD_CR - LD HL,FLAG_BOOT + LD HL,ZX_VARS.FLAG_BOOT LD A,(HL) CP 170 LD A,0 - LD (DOS_ERR_2),A + LD (ZX_VARS.DOS_ERR_2),A JP Z,AUTO_02CB LD (HL),170 CALL AUTO_1D97 @@ -423,22 +423,22 @@ AUTO_0239: ; LD HL,NEW_NAME RST PRINT_LN CALL INIT_2X80 - LD A,(BEG_ADRESS) + LD A,(ZX_VARS.BEG_ADRESS) CP 244 JR Z,AUTO_0271 LD HL,AUTO_1000 AUTO_0270: RST PRINT_LN AUTO_0271: - LD A,(PR_BUFER) + LD A,(ZX_VARS.PRINTER_BUFFER) CP 170 JR NZ,AUTO_02CB CALL xchg_intf1 AUTO_027B: - LD HL,(E_LINE) + LD HL,(ZX_VARS.E_LINE) LD A,254 AUTO_0280: - LD (BAS_DOS_FLG),A + LD (ZX_VARS.BAS_DOS_FLG),A LD (HL),247 INC HL LD (HL),'"' @@ -454,14 +454,14 @@ AUTO_0280: LD (HL),'"' INC HL CMD_NEW_EXEC: - LD (K_CUR),HL + LD (ZX_VARS.K_CUR),HL LD (HL),13 INC HL LD (HL),128 INC HL - LD (WORK_SP),HL - LD (STK_BOT),HL - LD (STK_END),HL + LD (ZX_VARS.WORK_SPACE),HL + LD (ZX_VARS.STK_BOT),HL + LD (ZX_VARS.STK_END),HL SET 3,(IY+1) JR AUTO_02EF AUTO_02B0: @@ -478,7 +478,7 @@ AUTO_02B9: AUTO_02BB: PUSH BC XOR 8 - OUT (P_DOS_FF),A + OUT (FDC_93.DrvCTRL),A PUSH AF LD A,5 CALL pause_1ms @@ -487,33 +487,33 @@ AUTO_02BB: DJNZ AUTO_02BB RET AUTO_02CB: - LD HL,(DOS_SP) + LD HL,(ZX_VARS.DOS_SP) DEC HL DEC HL LD SP,HL CALL xchg_intf1 CALL OPEN_CH0 - LD A,(PDOS_COPY) + LD A,(ZX_VARS.PDOS_COPY) OR 3 CALL AUTO_02B9 - LD A,(PDOS_COPY) + LD A,(ZX_VARS.PDOS_COPY) CALL AUTO_02B9 XOR A - LD (MSG_FLAG),A + LD (ZX_VARS.MSG_FLAG),A CALL INPUT_LINE CALL AUTO_3032 ; ПРЕОБРАЗОВАНИЕ СТРОКИ AUTO_02EF: CALL AUTO_1D9F ; ФУНКЦИЯ BASIC ??? ( CLS LOW SCR ) LD HL,AUTO_02CB - LD (ADR_RET),HL + LD (ZX_VARS.ADR_RET),HL XOR A - LD (DOS_ERR_2),A - LD HL,(E_LINE) + LD (ZX_VARS.DOS_ERR_2),A + LD HL,(ZX_VARS.E_LINE) PUSH HL - LD DE,COM_LN_COPY + LD DE,ZX_VARS.COM_LN_COPY CALL AUTO_02B0 POP HL - LD (ADR_DOS_COM),HL + LD (ZX_VARS.ADR_DOS_COM),HL AUTO_030A: LD A,(HL) LD B,A @@ -523,7 +523,7 @@ AUTO_030A: CP 254 ; RETURN JR Z,AUTO_031A PUSH AF - CALL AUTO_3DC8 ; SET CONT_DISK + CALL AUTO_3DC8 ; SET ZX_VARS.CONT_DISK POP AF AUTO_031A: LD HL,TRDOS_CMD.LIST ; СПИСОК КОМАНД @@ -542,12 +542,12 @@ AUTO_0320: CP 254 CALL NZ,BUFER_ON ; Включить буфер, если не RETURN LD A,9 - LD (S_NAME_NUM),A + LD (ZX_VARS.S_NAME_NUM),A XOR A - LD (DOS_ERR_2),A - LD (DOS_ERROR),A - LD (ERR_3D00),A - LD HL,FLAGS + LD (ZX_VARS.DOS_ERR_2),A + LD (ZX_VARS.DOS_ERROR),A + LD (ZX_VARS.ERR_3D00),A + LD HL,ZX_VARS.FLAGS RES 7,(HL) LD B,0 LD HL,TRDOS_CMD.TABLE @@ -563,7 +563,7 @@ AUTO_0320: PUSH DE JP (HL) AUTO_0359: - LD HL,FLAGS + LD HL,ZX_VARS.FLAGS SET 7,(HL) POP HL JP (HL) @@ -576,7 +576,7 @@ AUTO_03AC: CALL PRINT_CR CALL PRINT_CR AUTO_03B5: - LD BC,(FREE_SEC) + LD BC,(ZX_VARS.FREE_SEC) CALL AUTO_1DA9 LD HL,AUTO_29D2 RST PRINT_LN @@ -584,15 +584,15 @@ AUTO_03C0: JP AUTO_01D3 AUTO_03C3: PUSH AF - LD A,(BAS_DOS_FLG) + LD A,(ZX_VARS.BAS_DOS_FLG) CP 254 JR NZ,AUTO_03CD POP AF RET AUTO_03CD: POP AF - LD (DOS_ERR_2),A - LD A,(MSG_FLAG) + LD (ZX_VARS.DOS_ERR_2),A + LD A,(ZX_VARS.MSG_FLAG) OR A CALL Z,PRINT_L ;!FIXIT Ошибка!!! Перед печатью надо открыть поток 0 и очистить низ экрана. @@ -608,13 +608,13 @@ AUTO_03E4: JP AUTO_1C4A AUTO_03E8: XOR A - LD (CAT_SEC),A + LD (ZX_VARS.CAT_SEC),A AUTO_03EC: - LD DE,(CAT_SEC) + LD DE,(ZX_VARS.CAT_SEC) LD D,0 AUTO_03F2: CALL BUFER_ON - LD HL,BUFER + LD HL,ZX_VARS.BUFFER LD B,1 JP READ_DISK AUTO_03FD: @@ -623,7 +623,7 @@ AUTO_03FD: JR AUTO_03F2 RD_HEAD_DSK: CALL AUTO_03FD - LD A,(CODE_10H) + LD A,(ZX_VARS.CODE_10H) CP 16 JR Z,AUTO_0415 ;!TEST @@ -640,7 +640,7 @@ AUTO_0415: CALL get_disk_type RES 0,(HL) RES 1,(HL) - LD A,(TYPE_DISK) + LD A,(ZX_VARS.TYPE_DISK) BIT 0,A JR NZ,AUTO_0425 SET 0,(HL) @@ -650,7 +650,7 @@ AUTO_0425: SET 1,(HL) RET TEST_CR: - LD HL,(ADR_DOS_COM) + LD HL,(ZX_VARS.ADR_DOS_COM) INC HL LD A,(HL) CP 13 @@ -661,12 +661,12 @@ TEST_CR: CMD_CAT: CALL TEST_CR LD BC,2 - LD (MED_LEN),BC + LD (ZX_VARS.MED_LEN),BC JR Z,AUTO_046A CP '#' JR NZ,AUTO_045D - LD (CH_ADR),HL ; КАНАЛ ДЛЯ CAT + LD (ZX_VARS.CH_ADR),HL ; КАНАЛ ДЛЯ CAT CALL AUTO_1E0B CALL AUTO_1D8C CP 13 @@ -686,10 +686,10 @@ AUTO_0460: CALL SET_DRIVE AUTO_046A: CALL SINTAX_RET - LD A,(OPER_DISK) - LD (DISK_2_FLG),A + LD A,(ZX_VARS.OPER_DISK) + LD (ZX_VARS.DISK_2_FLG),A CALL RD_HEAD_DSK - LD A,(MED_LEN) + LD A,(ZX_VARS.MED_LEN) AUTO_0479: CP 2 PUSH AF @@ -702,14 +702,14 @@ AUTO_0479: JP NC,CMD_ERROR CALL AUTO_1D84 LD A,255 - LD (DISK_1_FLG),A + LD (ZX_VARS.DISK_1_FLG),A LD HL,AUTO_29F7 RST PRINT_LN - LD HL,DISK_NAME + LD HL,ZX_VARS.DISK_NAME RST PRINT_LN CALL PRINT_CR - LD A,(N_FILES) - LD HL,N_DEL_FL + LD A,(ZX_VARS.N_FILES) + LD HL,ZX_VARS.N_DEL_FL SUB (HL) PUSH HL CALL AUTO_1DA3 @@ -721,11 +721,11 @@ AUTO_0479: LD HL,AUTO_2A1D RST PRINT_LN CALL AUTO_03E8 - LD HL,BUFER + LD HL,ZX_VARS.BUFFER AUTO_04B6: CALL AUTO_04F6 CALL PRINT_CR - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) ADD A,'A' RST RST10 LD B,2 @@ -766,8 +766,8 @@ AUTO_04E8: AUTO_04F6: PUSH HL PUSH BC - LD A,(DISK_2_FLG) - LD HL,OPER_DISK + LD A,(ZX_VARS.DISK_2_FLG) + LD HL,ZX_VARS.OPER_DISK CP (HL) CALL NZ,SET_DISK POP BC @@ -787,12 +787,12 @@ AUTO_050C: POP HL RET AUTO_0517: - LD HL,CAT_SEC + LD HL,ZX_VARS.CAT_SEC INC (HL) CALL AUTO_03EC POP BC POP HL - LD HL,BUFER + LD HL,ZX_VARS.BUFFER RET GET_DISK: AND 223 @@ -816,15 +816,15 @@ CMD_NEW: AUTO_0540: CALL AUTO_102E CALL AUTO_1CB0 - LD A,(OPER_DISK) - LD (DISK_1_FLG),A + LD A,(ZX_VARS.OPER_DISK) + LD (ZX_VARS.DISK_1_FLG),A JP NZ,AUTO_03D9 PUSH BC CALL AUTO_165D CALL AUTO_1CB0 PUSH AF - LD A,(DISK_1_FLG) - LD HL,OPER_DISK + LD A,(ZX_VARS.DISK_1_FLG) + LD HL,ZX_VARS.OPER_DISK CP (HL) JP NZ,CMD_ERROR CALL RD_HEAD_DSK @@ -836,23 +836,23 @@ AUTO_0569: CALL AUTO_1E43 JP AUTO_03E1 AUTO_0572: - LD A,(ERR_3D00) + LD A,(ZX_VARS.ERR_3D00) OR A RET AUTO_0577: - LD A,(N_DEL_FLS) + LD A,(ZX_VARS.N_DEL_FLS) OR A JP Z,AUTO_03D9 JP AUTO_03E1 AUTO_0581: PUSH BC CALL AUTO_1D97 - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) ADD A,'A' CALL PRINT_SYM LD A,':' CALL PRINT_SYM - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME CALL AUTO_2938 LD HL,AUTO_2820 CALL PRINT_L @@ -870,20 +870,20 @@ AUTO_0581: XOR A RET AUTO_05B4: - LD A,(FL_TYPE) + LD A,(ZX_VARS.FL_TYPE) CP '#' JR Z,AUTO_05BD XOR A RET AUTO_05BD: LD A,10 - LD (S_NAME_NUM),A + LD (ZX_VARS.S_NAME_NUM),A CALL AUTO_1CB3 LD A,9 - LD (S_NAME_NUM),A + LD (ZX_VARS.S_NAME_NUM),A RET AUTO_05CB: - LD A,(FL_NAME) + LD A,(ZX_VARS.FL_NAME) CP '*' ;JP NZ,AUTO_03D9 JR Z,.next @@ -894,32 +894,32 @@ AUTO_05CB: LD A,(HL) CP '*' JP NZ,CMD_ERROR - LD A,(OPER_DISK) - LD (DISK_2_FLG),A - LD A,(DISK_2_FLG) + LD A,(ZX_VARS.OPER_DISK) + LD (ZX_VARS.DISK_2_FLG),A + LD A,(ZX_VARS.DISK_2_FLG) CALL SET_DISK CALL RD_HEAD_DSK LD A,255 - LD (BUF_FLAG+1),A + LD (ZX_VARS.BUF_FLAG+1),A AUTO_05F4: - LD A,(DISK_1_FLG) + LD A,(ZX_VARS.DISK_1_FLG) CALL SET_DISK CALL RD_HEAD_DSK - LD A,(BUF_FLAG+1) + LD A,(ZX_VARS.BUF_FLAG+1) INC A - LD (BUF_FLAG+1),A + LD (ZX_VARS.BUF_FLAG+1),A LD C,A CALL AUTO_165D - LD A,(FL_NAME) + LD A,(ZX_VARS.FL_NAME) CP 0 JP Z,AUTO_03E1 CP 1 JR Z,AUTO_05F4 - LD HL,FL_START - LD DE,VAR_2 + LD HL,ZX_VARS.FL_START + LD DE,ZX_VARS.VAR_2 LD BC,7 LDIR - LD A,(DISK_2_FLG) + LD A,(ZX_VARS.DISK_2_FLG) CALL SET_DISK CALL AUTO_1CB3 JR NZ,AUTO_0634 @@ -933,36 +933,36 @@ AUTO_0634: JR AUTO_05F4 AUTO_063C: CALL AUTO_03FD - LD A,(N_FILES) + LD A,(ZX_VARS.N_FILES) CP 128 JP Z,AUTO_1C45 - LD HL,VAR_2 - LD DE,FL_START + LD HL,ZX_VARS.VAR_2 + LD DE,ZX_VARS.FL_START LD BC,7 LDIR - LD DE,(FL_SIZE) + LD DE,(ZX_VARS.FL_SIZE) LD D,0 OR A - LD HL,(FREE_SEC) + LD HL,(ZX_VARS.FREE_SEC) SBC HL,DE JP C,AUTO_1C45 - LD (FREE_SEC),HL - LD HL,(CLEAR_SEC) - LD (FL_PLACE),HL + LD (ZX_VARS.FREE_SEC),HL + LD HL,(ZX_VARS.CLEAR_SEC) + LD (ZX_VARS.FL_PLACE),HL PUSH HL CALL AUTO_072F POP HL - LD (FL_PLACE),HL - LD HL,(CONT_SEC) - LD (CLEAR_SEC),HL - LD HL,N_FILES + LD (ZX_VARS.FL_PLACE),HL + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.CLEAR_SEC),HL + LD HL,ZX_VARS.N_FILES INC (HL) LD C,(HL) DEC C LD B,0 PUSH BC LD DE,CONT_1 - LD (CONT_SEC),DE + LD (ZX_VARS.CONT_SEC),DE CALL AUTO_1E43 POP BC CALL AUTO_166B @@ -971,7 +971,7 @@ AUTO_063C: ; ; CMD_COPY: - LD HL,(ADR_DOS_COM) + LD HL,(ZX_VARS.ADR_DOS_COM) INC HL LD A,(HL) AND 223 @@ -984,27 +984,27 @@ CMD_COPY: CALL AUTO_166F CALL AUTO_102E CALL AUTO_1CB0 - LD A,(OPER_DISK) - LD (DISK_1_FLG),A + LD A,(ZX_VARS.OPER_DISK) + LD (ZX_VARS.DISK_1_FLG),A ;!TEST Ошибка!!! COPY "*","*" надо проверять всегда, иначе при ; наличии на диске файла с именем "*" скопируется только этот файл ;JP NZ,AUTO_05CB CALL CMD_COPY.FIXED ; CALL AUTO_165D - LD HL,FL_START - LD DE,VAR_2 + LD HL,ZX_VARS.FL_START + LD DE,ZX_VARS.VAR_2 LD BC,7 LDIR CALL AUTO_1CB0 PUSH AF PUSH BC - LD A,(OPER_DISK) - LD (DISK_2_FLG),A - LD A,(DISK_1_FLG) + LD A,(ZX_VARS.OPER_DISK) + LD (ZX_VARS.DISK_2_FLG),A + LD A,(ZX_VARS.DISK_1_FLG) CALL SET_DISK CALL RD_HEAD_DSK - LD A,(DISK_2_FLG) + LD A,(ZX_VARS.DISK_2_FLG) CALL SET_DISK CALL RD_HEAD_DSK POP BC @@ -1017,72 +1017,72 @@ CMD_COPY: AUTO_06F3: CALL AUTO_063C CALL AUTO_1E43 - LD A,(FL_TYPE) + LD A,(ZX_VARS.FL_TYPE) CP '#' JP NZ,AUTO_03E1 LD A,10 - LD (S_NAME_NUM),A - LD HL,FL_START + LD (ZX_VARS.S_NAME_NUM),A + LD HL,ZX_VARS.FL_START INC (HL) - LD A,(DISK_1_FLG) + LD A,(ZX_VARS.DISK_1_FLG) CALL SET_DISK CALL AUTO_05B4 JP NZ,AUTO_03E1 AUTO_0716: CALL AUTO_165D - LD HL,FL_START - LD DE,VAR_2 + LD HL,ZX_VARS.FL_START + LD DE,ZX_VARS.VAR_2 LD BC,7 LDIR - LD A,(DISK_2_FLG) + LD A,(ZX_VARS.DISK_2_FLG) CALL SET_DISK CALL RD_HEAD_DSK JR AUTO_06F3 AUTO_072F: - LD A,(VAR_2_0) + LD A,(ZX_VARS.VAR_2_0) OR A RET Z PUSH HL - LD HL,L_5D23 + LD HL,ZX_VARS.L_5D23 SUB (HL) POP HL JR NC,AUTO_0775 - LD A,(VAR_2_0) + LD A,(ZX_VARS.VAR_2_0) LD B,A XOR A - LD (VAR_2_0),A + LD (ZX_VARS.VAR_2_0),A AUTO_0744: PUSH BC - LD A,(DISK_1_FLG) + LD A,(ZX_VARS.DISK_1_FLG) CALL SET_DISK POP BC PUSH BC - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) PUSH HL - LD DE,(VAR_2_1) + LD DE,(ZX_VARS.VAR_2_1) CALL READ_DISK - LD HL,(CONT_SEC) - LD (VAR_2_1),HL - LD A,(DISK_2_FLG) + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.VAR_2_1),HL + LD A,(ZX_VARS.DISK_2_FLG) CALL SET_DISK POP HL POP BC - LD DE,(FL_PLACE) + LD DE,(ZX_VARS.FL_PLACE) CALL WRITE_DISK - LD HL,(CONT_SEC) - LD (FL_PLACE),HL + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.FL_PLACE),HL JR AUTO_072F AUTO_0775: - LD (VAR_2_0),A + LD (ZX_VARS.VAR_2_0),A PUSH HL - LD HL,L_5D23 + LD HL,ZX_VARS.L_5D23 LD B,(HL) POP HL XOR A JR AUTO_0744 AUTO_0781: XOR A - LD (N_DEL_FLS),A + LD (ZX_VARS.N_DEL_FLS),A JR AUTO_07A0 ; ; @@ -1092,31 +1092,31 @@ CMD_ERASE: CALL SINTAX_RET CALL AUTO_102E XOR A - LD (N_DEL_FLS),A + LD (ZX_VARS.N_DEL_FLS),A CALL AUTO_292F CALL AUTO_07A0 JP NZ,AUTO_0577 JP AUTO_03E1 AUTO_07A0: - LD A,(FL_NAME) - LD (FST_SYM_NAME),A + LD A,(ZX_VARS.FL_NAME) + LD (ZX_VARS.FST_SYM_NAME),A RET NZ - LD HL,N_DEL_FLS + LD HL,ZX_VARS.N_DEL_FLS INC (HL) PUSH BC CALL AUTO_03FD - LD A,(N_FILES) + LD A,(ZX_VARS.N_FILES) POP BC INC C CP C JR NZ,AUTO_07BC DEC A - LD (N_FILES),A + LD (ZX_VARS.N_FILES),A XOR A AUTO_07BC: PUSH AF JR Z,AUTO_07C3 - LD HL,N_DEL_FL + LD HL,ZX_VARS.N_DEL_FL INC (HL) AUTO_07C3: PUSH BC @@ -1128,11 +1128,11 @@ AUTO_07C3: JP Z,AUTO_07D2 LD A,1 AUTO_07D2: - LD (FL_NAME),A + LD (ZX_VARS.FL_NAME),A PUSH AF CALL AUTO_1E40 - LD A,(FST_SYM_NAME) - LD (FL_NAME),A + LD A,(ZX_VARS.FST_SYM_NAME) + LD (ZX_VARS.FL_NAME),A POP AF JR Z,AUTO_07E7 CALL AUTO_1CB3 @@ -1142,13 +1142,13 @@ AUTO_07D2: AUTO_07E7: BLOCK #07E7-$,255 CALL AUTO_03FD - LD HL,(FL_PLACE) - LD (CLEAR_SEC),HL - LD DE,(FL_SIZE) - LD HL,(FREE_SEC) + LD HL,(ZX_VARS.FL_PLACE) + LD (ZX_VARS.CLEAR_SEC),HL + LD DE,(ZX_VARS.FL_SIZE) + LD HL,(ZX_VARS.FREE_SEC) LD D,0 ADD HL,DE - LD (FREE_SEC),HL + LD (ZX_VARS.FREE_SEC),HL JP AUTO_1E43 WG93_EXE_: AND 252 @@ -1231,12 +1231,12 @@ CMD_STAR: CALL AUTO_0531 LD A,(DE) CALL GET_DISK - LD (CONT_DISK),A + LD (ZX_VARS.CONT_DISK),A CALL SET_DISK JP AUTO_03E1 AUTO_102E: LD B,'C' - LD A,(DOS_ERROR) + LD A,(ZX_VARS.DOS_ERROR) OR A JR NZ,AUTO_104D CALL AUTO_1D8C @@ -1251,7 +1251,7 @@ AUTO_102E: JR Z,AUTO_104D LD B,'B' AUTO_104D: - LD HL,FL_TYPE + LD HL,ZX_VARS.FL_TYPE LD (HL),B RET AUTO_1052: @@ -1341,8 +1341,8 @@ AUTO_112E: DB 13,13," File Name Start Length " DB "Line",0 AUTO_1151: - LD HL,(WORK_SP) - LD (VAR_1),HL + LD HL,(ZX_VARS.WORK_SPACE) + LD (ZX_VARS.VAR_1),HL LD BC,AUTO_021D+5 JP AUTO_1E23 AUTO_115D: @@ -1404,8 +1404,8 @@ AUTO_11A8: AUTO_11B0: PUSH HL PUSH BC - LD A,(DISK_2_FLG) - LD HL,OPER_DISK + LD A,(ZX_VARS.DISK_2_FLG) + LD HL,ZX_VARS.OPER_DISK CP (HL) CALL NZ,SET_DISK POP BC @@ -1424,11 +1424,11 @@ AUTO_11B0: CMD_LIST: CALL TEST_CR LD BC,2 - LD (MED_LEN),BC + LD (ZX_VARS.MED_LEN),BC JR Z,AUTO_1205 CP '#' JR NZ,AUTO_11F8 - LD (CH_ADR),HL + LD (ZX_VARS.CH_ADR),HL CALL AUTO_1E0B CALL AUTO_1D8C CP 13 @@ -1447,10 +1447,10 @@ AUTO_11FB: CALL SET_DRIVE AUTO_1205: CALL SINTAX_RET - LD A,(OPER_DISK) - LD (DISK_2_FLG),A + LD A,(ZX_VARS.OPER_DISK) + LD (ZX_VARS.DISK_2_FLG),A CALL RD_HEAD_DSK - LD A,(MED_LEN) + LD A,(ZX_VARS.MED_LEN) CP 2 PUSH AF CALL Z,AUTO_1D97 @@ -1459,34 +1459,34 @@ AUTO_1205: JP NC,CMD_ERROR CALL AUTO_1D84 LD A,255 - LD (DISK_1_FLG),A + LD (ZX_VARS.DISK_1_FLG),A CALL AUTO_1151 - LD HL,CLEAR_SEC - LD DE,(VAR_1) + LD HL,ZX_VARS.CLEAR_SEC + LD DE,(ZX_VARS.VAR_1) LD BC,RST20 LDIR CALL AUTO_03E8 - LD HL,BUFER + LD HL,ZX_VARS.BUFFER PUSH HL AUTO_123E: LD HL,AUTO_10B3 PUSH BC RST PRINT_LN - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) LD BC,CONT_2+1 ADD HL,BC RST PRINT_LN LD HL,AUTO_10BA RST PRINT_LN - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) ADD A,'A' CALL PRINT_SYM CALL PRINT_CR - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) LD BC,3 ADD HL,BC LD A,(HL) - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) LD BC,CONT_2 ADD HL,BC SUB (HL) @@ -1494,7 +1494,7 @@ AUTO_123E: CALL AUTO_1DA3 LD HL,AUTO_10AA RST PRINT_LN - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) LD BC,2 ADD HL,BC LD A,(HL) @@ -1518,7 +1518,7 @@ AUTO_1292: RST PRINT_LN LD HL,AUTO_111E RST PRINT_LN - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) LD BC,4 ADD HL,BC LD C,(HL) @@ -1617,7 +1617,7 @@ AUTO_132C: AUTO_1333: DJNZ AUTO_132C AUTO_1335: - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) LD BC,RST20+1 ADD HL,BC LD B,2 @@ -1660,13 +1660,13 @@ AUTO_1375: CALL AUTO_1CB0 JP NZ,AUTO_03D9 CALL AUTO_13B7 - LD A,(FL_TYPE) + LD A,(ZX_VARS.FL_TYPE) CP '#' JP NZ,AUTO_03E1 AUTO_1393: LD A,10 - LD (S_NAME_NUM),A - LD HL,FL_START + LD (ZX_VARS.S_NAME_NUM),A + LD HL,ZX_VARS.FL_START INC (HL) CALL AUTO_1D97 LD HL,AUTO_27AA @@ -1681,30 +1681,30 @@ AUTO_13A5: JR AUTO_1393 AUTO_13B7: CALL AUTO_165D - LD HL,FL_START - LD DE,VAR_2 + LD HL,ZX_VARS.FL_START + LD DE,ZX_VARS.VAR_2 LD BC,7 LDIR - LD A,(VAR_2_0) - LD (ERR_3D00),A + LD A,(ZX_VARS.VAR_2_0) + LD (ZX_VARS.ERR_3D00),A CALL RD_HEAD_DSK CALL get_disk_type - LD (DOS_CH_ADR),A + LD (ZX_VARS.DOS_CH_ADR),A LD A,255 - LD (COM_LN_COPY+1),A + LD (ZX_VARS.COM_LN_COPY+1),A CALL AUTO_1451 - LD HL,(FL_NUMBER+1) - LD (FL_PLACE),HL - LD HL,(CONT_SEC) - LD (CLEAR_SEC),HL - LD HL,N_FILES + LD HL,(ZX_VARS.FL_NUMBER+1) + LD (ZX_VARS.FL_PLACE),HL + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.CLEAR_SEC),HL + LD HL,ZX_VARS.N_FILES INC (HL) LD C,(HL) DEC C LD B,0 PUSH BC LD DE,CONT_1 - LD (CONT_SEC),DE + LD (ZX_VARS.CONT_SEC),DE CALL AUTO_1E43 POP BC CALL AUTO_166B @@ -1712,39 +1712,39 @@ AUTO_13B7: RET AUTO_1403: XOR A - LD (COM_LN_COPY+1),A + LD (ZX_VARS.COM_LN_COPY+1),A CALL RD_HEAD_DSK CALL get_disk_type - LD (DOS_CH_ADR+1),A + LD (ZX_VARS.DOS_CH_ADR+1),A CALL AUTO_1CB3 JP Z,AUTO_1C50 CALL AUTO_03FD - LD A,(N_FILES) + LD A,(ZX_VARS.N_FILES) CP 128 JP Z,AUTO_2723 - LD HL,VAR_2 - LD DE,FL_START + LD HL,ZX_VARS.VAR_2 + LD DE,ZX_VARS.FL_START LD BC,7 LDIR CALL AUTO_03FD - LD A,(ERR_3D00) - LD (FL_SIZE),A - LD DE,(FL_SIZE) + LD A,(ZX_VARS.ERR_3D00) + LD (ZX_VARS.FL_SIZE),A + LD DE,(ZX_VARS.FL_SIZE) LD D,0 OR A - LD HL,(FREE_SEC) + LD HL,(ZX_VARS.FREE_SEC) SBC HL,DE JP C,AUTO_1C45 - LD (FREE_SEC),HL - LD HL,(CLEAR_SEC) - LD (FL_PLACE),HL - LD (FL_NUMBER+1),HL + LD (ZX_VARS.FREE_SEC),HL + LD HL,(ZX_VARS.CLEAR_SEC) + LD (ZX_VARS.FL_PLACE),HL + LD (ZX_VARS.FL_NUMBER+1),HL RET AUTO_1451: - LD A,(VAR_2_0) + LD A,(ZX_VARS.VAR_2_0) OR A RET Z - LD A,(COM_LN_COPY+1) + LD A,(ZX_VARS.COM_LN_COPY+1) OR A JR NZ,AUTO_146F CALL AUTO_1D97 @@ -1756,28 +1756,28 @@ AUTO_1465: JR NZ,AUTO_1465 CALL AUTO_1D9F AUTO_146F: - LD A,(VAR_2_0) + LD A,(ZX_VARS.VAR_2_0) OR A RET Z PUSH HL - LD HL,L_5D23 + LD HL,ZX_VARS.L_5D23 SUB (HL) POP HL JR NC,AUTO_14CB - LD A,(VAR_2_0) + LD A,(ZX_VARS.VAR_2_0) LD B,A XOR A - LD (VAR_2_0),A + LD (ZX_VARS.VAR_2_0),A AUTO_1484: PUSH BC - LD (RD_WR_COM),A - LD HL,(VAR_1) + LD (ZX_VARS.RD_WR_COM),A + LD HL,(ZX_VARS.VAR_1) PUSH HL - LD DE,(VAR_2_1) + LD DE,(ZX_VARS.VAR_2_1) CALL AUTO_14D8 CALL READ_DISK - LD HL,(CONT_SEC) - LD (VAR_2_1),HL + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.VAR_2_1),HL CALL AUTO_1D97 LD HL,AUTO_2785 CALL PRINT_L @@ -1786,21 +1786,21 @@ AUTO_14A5: CP 'Y' JR NZ,AUTO_14A5 CALL AUTO_1D9F - LD A,(COM_LN_COPY+1) + LD A,(ZX_VARS.COM_LN_COPY+1) OR A CALL NZ,AUTO_1403 POP HL POP BC - LD DE,(FL_PLACE) + LD DE,(ZX_VARS.FL_PLACE) CALL AUTO_14E4 CALL WRITE_DISK - LD HL,(CONT_SEC) - LD (FL_PLACE),HL + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.FL_PLACE),HL JP AUTO_1451 AUTO_14CB: - LD (VAR_2_0),A + LD (ZX_VARS.VAR_2_0),A PUSH HL - LD HL,L_5D23 + LD HL,ZX_VARS.L_5D23 LD B,(HL) POP HL XOR A @@ -1809,7 +1809,7 @@ AUTO_14D8: PUSH HL PUSH DE CALL get_disk_type - LD A,(DOS_CH_ADR) + LD A,(ZX_VARS.DOS_CH_ADR) LD (HL),A POP DE POP HL @@ -1818,19 +1818,19 @@ AUTO_14E4: PUSH HL PUSH DE CALL get_disk_type - LD A,(DOS_CH_ADR+1) + LD A,(ZX_VARS.DOS_CH_ADR+1) LD (HL),A POP DE POP HL RET AUTO_14F0: XOR A - LD (COM_LN_COPY+1),A + LD (ZX_VARS.COM_LN_COPY+1),A CALL RD_HEAD_DSK CALL get_disk_type - LD (DOS_CH_ADR+1),A - LD A,(TYPE_DISK) - LD (FL_START+1),A + LD (ZX_VARS.DOS_CH_ADR+1),A + LD A,(ZX_VARS.TYPE_DISK) + LD (ZX_VARS.FL_START+1),A LD HL,AUTO_0280 CP 25 JR Z,AUTO_151F @@ -1844,8 +1844,8 @@ AUTO_14F0: JR Z,AUTO_151F JP CMD_ERROR AUTO_151F: - LD (FL_NAME),HL - LD BC,(FL_N_2) + LD (ZX_VARS.FL_NAME),HL + LD BC,(ZX_VARS.FL_N_2) SBC HL,BC JP C,AUTO_1C45 RET @@ -1862,11 +1862,11 @@ AUTO_153E: JR NZ,AUTO_153E CALL AUTO_1D9F LD A,255 - LD (COM_LN_COPY+1),A + LD (ZX_VARS.COM_LN_COPY+1),A CALL RD_HEAD_DSK CALL get_disk_type - LD (DOS_CH_ADR),A - LD A,(TYPE_DISK) + LD (ZX_VARS.DOS_CH_ADR),A + LD A,(ZX_VARS.TYPE_DISK) CP 25 LD HL,AUTO_0280 JR Z,AUTO_1575 @@ -1880,36 +1880,36 @@ AUTO_153E: JR Z,AUTO_1575 JP CMD_ERROR AUTO_1575: - LD BC,(FREE_SEC) + LD BC,(ZX_VARS.FREE_SEC) SBC HL,BC - LD (FL_TYPE),HL - LD (FL_N_2),HL + LD (ZX_VARS.FL_TYPE),HL + LD (ZX_VARS.FL_N_2),HL LD HL,0 - LD (FL_N_4),HL - LD (FL_N_6),HL + LD (ZX_VARS.FL_N_4),HL + LD (ZX_VARS.FL_N_6),HL CALL AUTO_15B8 CALL RD_HEAD_DSK - LD A,(FL_START+1) - LD (TYPE_DISK),A - LD HL,(FL_NAME) - LD BC,(FL_N_2) + LD A,(ZX_VARS.FL_START+1) + LD (ZX_VARS.TYPE_DISK),A + LD HL,(ZX_VARS.FL_NAME) + LD BC,(ZX_VARS.FL_N_2) SBC HL,BC - LD (FREE_SEC),HL + LD (ZX_VARS.FREE_SEC),HL CALL AUTO_14E4 LD DE,CONT_1 - LD (CONT_SEC),DE + LD (ZX_VARS.CONT_SEC),DE CALL AUTO_1E43 AUTO_15AF: JP AUTO_03E1 AUTO_15B2: - LD HL,(FL_TYPE) + LD HL,(ZX_VARS.FL_TYPE) LD A,H OR L RET AUTO_15B8: CALL AUTO_15B2 RET Z - LD A,(COM_LN_COPY+1) + LD A,(ZX_VARS.COM_LN_COPY+1) OR A JR NZ,AUTO_15DB CALL AUTO_1D97 @@ -1927,26 +1927,26 @@ AUTO_15DB: RET Z PUSH BC PUSH HL - LD HL,L_5D23 + LD HL,ZX_VARS.L_5D23 LD C,(HL) LD B,0 POP HL SBC HL,BC POP BC JP NC,AUTO_1644 - LD BC,(FL_TYPE) + LD BC,(ZX_VARS.FL_TYPE) LD HL,0 - LD (FL_TYPE),HL + LD (ZX_VARS.FL_TYPE),HL AUTO_15F8: PUSH BC - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) PUSH HL CALL AUTO_14D8 - LD DE,(FL_N_4) + LD DE,(ZX_VARS.FL_N_4) LD B,C CALL READ_DISK - LD HL,(CONT_SEC) - LD (FL_N_4),HL + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.FL_N_4),HL CALL AUTO_1D97 LD HL,AUTO_2779 CALL PRINT_L @@ -1957,30 +1957,30 @@ AUTO_161D: CP 'Y' JR NZ,AUTO_161D CALL AUTO_1D9F - LD A,(COM_LN_COPY+1) + LD A,(ZX_VARS.COM_LN_COPY+1) AUTO_162A: OR A CALL NZ,AUTO_14F0 POP HL POP BC - LD DE,(FL_N_6) + LD DE,(ZX_VARS.FL_N_6) LD B,C CALL AUTO_14E4 CALL WRITE_DISK - LD HL,(CONT_SEC) - LD (FL_N_6),HL + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.FL_N_6),HL JP AUTO_15B8 AUTO_1644: - LD (FL_TYPE),HL + LD (ZX_VARS.FL_TYPE),HL PUSH HL - LD HL,L_5D23 + LD HL,ZX_VARS.L_5D23 LD C,(HL) LD B,0 POP HL XOR A JP AUTO_15F8 CALL AUTO_165D - LD A,(FL_NAME) + LD A,(ZX_VARS.FL_NAME) CP 1 RET AUTO_165C: @@ -2002,10 +2002,10 @@ AUTO_166B: JR AUTO_165E AUTO_166F: LD A,255 - LD (BAS_DOS_FLG),A + LD (ZX_VARS.BAS_DOS_FLG),A CALL AUTO_1680 - LD HL,(WORK_SP) - LD (VAR_1),HL + LD HL,(ZX_VARS.WORK_SPACE) + LD (ZX_VARS.VAR_1),HL JP AUTO_1E23 AUTO_1680: RST_ROM ROUTINE.free_mem @@ -2017,18 +2017,18 @@ AUTO_1680: LD A,17 AUTO_168F: DEC A - LD (L_5D23),A + LD (ZX_VARS.L_5D23),A LD B,A LD C,0 RET ; - LD (MED_START),HL - LD (MED_LEN),HL - LD DE,(FL_SIZE) - LD HL,(DOS_CH_ADR) + LD (ZX_VARS.MED_START),HL + LD (ZX_VARS.MED_LEN),HL + LD DE,(ZX_VARS.FL_SIZE) + LD HL,(ZX_VARS.DOS_CH_ADR) LD D,0 ADD HL,DE - LD (DOS_CH_ADR),HL + LD (ZX_VARS.DOS_CH_ADR),HL RET ; ; @@ -2038,29 +2038,29 @@ CMD_MOVE: JP NZ,AUTO_1775 CALL SINTAX_RET CALL AUTO_166F - LD HL,(VAR_1) - LD (FL_N_4),HL + LD HL,(ZX_VARS.VAR_1) + LD (ZX_VARS.FL_N_4),HL LD DE,0900h ADD HL,DE - LD (VAR_1),HL - LD A,(L_5D23) + LD (ZX_VARS.VAR_1),HL + LD A,(ZX_VARS.L_5D23) SUB 9 - LD (L_5D23),A - LD HL,(FL_N_4) + LD (ZX_VARS.L_5D23),A + LD HL,(ZX_VARS.FL_N_4) LD DE,0 LD B,9 CALL READ_DISK - LD HL,(FL_N_4) - LD (FL_N_2),HL + LD HL,(ZX_VARS.FL_N_4) + LD (ZX_VARS.FL_N_2),HL LD HL,AUTO_0100 - LD (MED_START),HL - LD (FL_NAME),HL + LD (ZX_VARS.MED_START),HL + LD (ZX_VARS.FL_NAME),HL XOR A - LD (FL_N_6),HL - LD (FL_N_7),A + LD (ZX_VARS.FL_N_6),HL + LD (ZX_VARS.FL_N_7),A CALL MOVE_X00 - LD DE,(FL_N_4) - LD HL,(FL_N_2) + LD DE,(ZX_VARS.FL_N_4) + LD HL,(ZX_VARS.FL_N_2) EX DE,HL LD BC,WG93_EXE_ ADD HL,BC @@ -2075,13 +2075,13 @@ CMD_MOVE: INC DE LD (HL),0 LDIR - LD HL,(FL_N_4) + LD HL,(ZX_VARS.FL_N_4) LD DE,08E1h ADD HL,DE LD E,(HL) INC HL LD D,(HL) - LD BC,(MED_START) + LD BC,(ZX_VARS.MED_START) LD (HL),B DEC HL LD (HL),C @@ -2104,8 +2104,8 @@ CMD_MOVE: ADD A,L LD L,A ADD HL,BC - LD BC,(MED_START) - LD (MED_START),HL + LD BC,(ZX_VARS.MED_START) + LD (ZX_VARS.MED_START),HL LD L,B LD H,0 ADD HL,HL @@ -2117,7 +2117,7 @@ CMD_MOVE: ADD A,L LD C,A LD B,H - LD HL,(MED_START) + LD HL,(ZX_VARS.MED_START) AND A SBC HL,BC EX DE,HL @@ -2125,20 +2125,20 @@ CMD_MOVE: DEC HL LD (HL),E DEC HL - LD A,(FL_N_6) + LD A,(ZX_VARS.FL_N_6) LD (HL),A LD DE,RST10 ADD HL,DE LD (HL),0 - LD HL,(FL_N_4) + LD HL,(ZX_VARS.FL_N_4) LD DE,0 LD B,9 CALL WRITE_DISK - LD A,(L_5D23) + LD A,(ZX_VARS.L_5D23) ADD A,9 LD B,A LD C,0 - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) CALL AUTO_1E2E JP AUTO_03E1 AUTO_1775: @@ -2146,8 +2146,8 @@ AUTO_1775: CALL SINTAX_RET CALL AUTO_1C57 CALL AUTO_03FD - LD HL,FL_NAME - LD DE,DISK_NAME + LD HL,ZX_VARS.FL_NAME + LD DE,ZX_VARS.DISK_NAME LD BC,RST08 LDIR CALL AUTO_1E43 @@ -2172,44 +2172,44 @@ AUTO_1775: RST R38 RST R38 AUTO_17A5: - LD A,(AUTO_5CD3) + LD A,(ZX_VARS.AUTO_5CD3) OR A RET Z PUSH HL - LD HL,L_5D23 + LD HL,ZX_VARS.L_5D23 SUB (HL) POP HL JR NC,AUTO_17DD - LD A,(AUTO_5CD3) + LD A,(ZX_VARS.AUTO_5CD3) LD B,A XOR A - LD (AUTO_5CD3),A + LD (ZX_VARS.AUTO_5CD3),A AUTO_17BA: PUSH BC - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) PUSH HL - LD DE,(AUTO_5CD5) + LD DE,(ZX_VARS.AUTO_5CD5) CALL READ_DISK - LD HL,(CONT_SEC) - LD (AUTO_5CD5),HL + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.AUTO_5CD5),HL POP HL POP BC - LD DE,(MED_START) + LD DE,(ZX_VARS.MED_START) CALL WRITE_DISK - LD HL,(CONT_SEC) - LD (MED_START),HL + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.MED_START),HL JR AUTO_17A5 AUTO_17DD: - LD (AUTO_5CD3),A + LD (ZX_VARS.AUTO_5CD3),A PUSH HL - LD HL,L_5D23 + LD HL,ZX_VARS.L_5D23 LD B,(HL) POP HL XOR A JR AUTO_17BA AUTO_17E9: PUSH AF - LD HL,CAT_SEC + LD HL,ZX_VARS.CAT_SEC LD (HL),0 LD A,C AUTO_17F0: @@ -2225,7 +2225,7 @@ AUTO_17F7: POP BC POP AF CALL AUTO_1CA4 - LD DE,FL_NAME + LD DE,ZX_VARS.FL_NAME LD BC,RST10 OR A JR Z,AUTO_180D @@ -2239,7 +2239,7 @@ AUTO_180D: ; CMD_VERIFY: LD A,255 - LD (DISK_2_FLG),A + LD (ZX_VARS.DISK_2_FLG),A ; ; ; @@ -2249,11 +2249,11 @@ AUTO_1818: CALL AUTO_1836 CALL SINTAX_RET LD A,255 - LD (ERR_3D00),A - LD A,(DISK_2_FLG) + LD (ZX_VARS.ERR_3D00),A + LD A,(ZX_VARS.DISK_2_FLG) CP 255 JP Z,AUTO_03E1 - LD A,(FL_TYPE) + LD A,(ZX_VARS.FL_TYPE) CP 'B' JP Z,AUTO_012A JP AUTO_03E1 @@ -2263,34 +2263,34 @@ AUTO_1836: CALL AUTO_18AB JP AUTO_1921 AUTO_1842: - LD HL,(CH_ADR) + LD HL,(ZX_VARS.CH_ADR) INC HL LD A,(HL) CP 13 RET Z LD A,1 - LD (DOS_ERROR),A + LD (ZX_VARS.DOS_ERROR),A CALL AUTO_1DEB AUTO_1852: XOR A - LD (ERR_3D00),A + LD (ZX_VARS.ERR_3D00),A RET AUTO_1857: CALL AUTO_102E LD A,'B' CP B JR NZ,AUTO_1866 - LD HL,(CH_ADR) + LD HL,(ZX_VARS.CH_ADR) DEC HL - LD (CH_ADR),HL + LD (ZX_VARS.CH_ADR),HL AUTO_1866: CALL AUTO_1DEB - LD HL,(DOS_CH_ADR) - LD (MED_START),HL - LD HL,(MED_LEN) - LD (DOS_CH_ADR),HL + LD HL,(ZX_VARS.DOS_CH_ADR) + LD (ZX_VARS.MED_START),HL + LD HL,(ZX_VARS.MED_LEN) + LD (ZX_VARS.DOS_CH_ADR),HL XOR A - LD (DOS_ERROR),A + LD (ZX_VARS.DOS_ERROR),A RET AUTO_187A: CALL TEST_CR @@ -2316,21 +2316,21 @@ AUTO_18A4: AUTO_18AB: CALL TYPE_FL_X00 OR A - LD HL,(FL_START) + LD HL,(ZX_VARS.FL_START) JR Z,AUTO_18B7 - LD HL,(DOS_CH_ADR) + LD HL,(ZX_VARS.DOS_CH_ADR) AUTO_18B7: - LD DE,(FL_PLACE) + LD DE,(ZX_VARS.FL_PLACE) CP 3 - LD A,(FL_SIZE) + LD A,(ZX_VARS.FL_SIZE) PUSH DE - LD DE,(FL_LEN) + LD DE,(ZX_VARS.FL_LEN) JR NZ,AUTO_18CB - LD DE,(MED_LEN) + LD DE,(ZX_VARS.MED_LEN) AUTO_18CB: LD B,A - LD (MED_LEN),DE - LD A,(FL_TYPE) + LD (ZX_VARS.MED_LEN),DE + LD A,(ZX_VARS.FL_TYPE) CP 'C' LD A,B JR NZ,AUTO_18FD @@ -2341,15 +2341,15 @@ AUTO_18CB: CP D LD A,B JR Z,AUTO_18F6 - LD A,(DOS_ERROR) + LD A,(ZX_VARS.DOS_ERROR) CP 3 LD A,B JR Z,AUTO_18F6 XOR A - LD (DOS_ERROR),A + LD (ZX_VARS.DOS_ERROR),A LD D,B LD E,0 - LD (MED_LEN),DE + LD (ZX_VARS.MED_LEN),DE JR AUTO_18F9 AUTO_18F6: CALL AUTO_191B @@ -2358,7 +2358,7 @@ AUTO_18F9: CALL AUTO_1EAC AUTO_18FD: LD B,A - LD A,(FL_TYPE) + LD A,(ZX_VARS.FL_TYPE) CP 'C' POP DE RET Z @@ -2370,13 +2370,13 @@ AUTO_18FD: CP 'D' CALL Z,AUTO_1A4C CALL AUTO_191B - LD A,(MED_LEN+1) + LD A,(ZX_VARS.MED_LEN+1) LD B,A POP DE RET AUTO_191B: LD A,3 - LD (DOS_ERROR),A + LD (ZX_VARS.DOS_ERROR),A RET AUTO_1921: CALL AUTO_0572 @@ -2392,47 +2392,47 @@ AUTO_192D: JR Z,AUTO_1937 JP WRITE_DISK AUTO_1937: - LD A,(DOS_ERROR) + LD A,(ZX_VARS.DOS_ERROR) CP 3 CALL Z,AUTO_1946 - LD HL,(E_LINE) + LD HL,(ZX_VARS.E_LINE) DEC HL LD (HL),128 RET AUTO_1946: - LD A,(DISK_2_FLG) + LD A,(ZX_VARS.DISK_2_FLG) CP 255 JP NZ,AUTO_2FDE - LD A,(MED_LEN) + LD A,(ZX_VARS.MED_LEN) OR A RET Z LD C,A LD B,1 - LD DE,(CONT_SEC) + LD DE,(ZX_VARS.CONT_SEC) JR AUTO_196A AUTO_195C: - LD A,(DISK_2_FLG) + LD A,(ZX_VARS.DISK_2_FLG) CP 255 JP NZ,READ_DISK - LD (CONT_SEC),DE + LD (ZX_VARS.CONT_SEC),DE LD C,0 AUTO_196A: LD A,B OR A RET Z - LD (MED_START),HL - LD (DOS_CH_ADR),DE + LD (ZX_VARS.MED_START),HL + LD (ZX_VARS.DOS_CH_ADR),DE AUTO_1974: PUSH BC LD B,1 - LD DE,(DOS_CH_ADR) - LD HL,BUFER + LD DE,(ZX_VARS.DOS_CH_ADR) + LD HL,ZX_VARS.BUFFER CALL READ_DISK - LD HL,(CONT_SEC) - LD (DOS_CH_ADR),HL + LD HL,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.DOS_CH_ADR),HL POP BC - LD HL,(MED_START) - LD DE,BUFER + LD HL,(ZX_VARS.MED_START) + LD DE,ZX_VARS.BUFFER AUTO_198E: LD A,(DE) CP (HL) @@ -2441,7 +2441,7 @@ AUTO_198E: INC DE DEC C JR NZ,AUTO_198E - LD (MED_START),HL + LD (ZX_VARS.MED_START),HL DJNZ AUTO_1974 RET AUTO_199D: @@ -2460,21 +2460,21 @@ CMD_PEEK: CMD_POKE: LD A,238 AUTO_19AB: - LD (ERR_3D00),A + LD (ZX_VARS.ERR_3D00),A JP AUTO_1818 ; ; ; CMD_MERGE: LD A,255 - LD (FL_NUMBER+1),A + LD (ZX_VARS.FL_NUMBER+1),A CALL AUTO_187A CALL SINTAX_RET - LD A,(FL_TYPE) + LD A,(ZX_VARS.FL_TYPE) CP 'B' JP NZ,CMD_ERROR - LD BC,(FL_START) - LD (MED_LEN),BC + LD BC,(ZX_VARS.FL_START) + LD (ZX_VARS.MED_LEN),BC PUSH BC INC BC RST_ROM ROUTINE.bc_spaces @@ -2483,14 +2483,14 @@ AUTO_19D1: EX DE,HL POP DE PUSH HL - LD DE,(FL_PLACE) + LD DE,(ZX_VARS.FL_PLACE) CALL AUTO_191B - LD A,(MED_LEN+1) + LD A,(ZX_VARS.MED_LEN+1) LD B,A CALL AUTO_1852 CALL AUTO_1921 POP HL - LD DE,(BAS_PROG) + LD DE,(ZX_VARS.BAS_PROG) RST_ROM ROUTINE.me_new_lp JP AUTO_03E1 AUTO_19F2: @@ -2506,25 +2506,25 @@ AUTO_19FD: RST_ROM ROUTINE.test_room RET AUTO_1A01: - LD DE,(BAS_PROG) - LD HL,(E_LINE) + LD DE,(ZX_VARS.BAS_PROG) + LD HL,(ZX_VARS.E_LINE) DEC HL PUSH HL PUSH DE SBC HL,DE - LD DE,(FL_START) + LD DE,(ZX_VARS.FL_START) PUSH DE PUSH HL LD HL,0 - LD A,(DISK_2_FLG) + LD A,(ZX_VARS.DISK_2_FLG) CP 255 JR Z,AUTO_1A20 LD HL,5 AUTO_1A20: ADD HL,DE - LD (MED_LEN),HL + LD (ZX_VARS.MED_LEN),HL POP HL - LD A,(DISK_2_FLG) + LD A,(ZX_VARS.DISK_2_FLG) CP 255 JR NZ,AUTO_1A31 POP DE @@ -2541,46 +2541,46 @@ AUTO_1A31: POP BC CALL AUTO_1E32 INC HL - LD BC,(FL_LEN) + LD BC,(ZX_VARS.FL_LEN) ADD HL,BC - LD (BAS_VARS),HL + LD (ZX_VARS.BAS_VARS),HL AUTO_1A48: - LD HL,(BAS_PROG) + LD HL,(ZX_VARS.BAS_PROG) RET AUTO_1A4C: - LD DE,(FL_LEN) - LD (MED_LEN),DE - LD HL,(MED_START) - LD A,(DISK_2_FLG) + LD DE,(ZX_VARS.FL_LEN) + LD (ZX_VARS.MED_LEN),DE + LD HL,(ZX_VARS.MED_START) + LD A,(ZX_VARS.DISK_2_FLG) CP 255 RET Z - LD HL,(DOS_CH_ADR) + LD HL,(ZX_VARS.DOS_CH_ADR) PUSH HL CALL AUTO_19F2 POP HL LD A,H OR L JR Z,AUTO_1A79 - LD HL,(MED_START) + LD HL,(ZX_VARS.MED_START) DEC HL DEC HL DEC HL - LD BC,(DOS_CH_ADR) + LD BC,(ZX_VARS.DOS_CH_ADR) INC BC INC BC INC BC CALL AUTO_1E2E AUTO_1A79: - LD HL,(E_LINE) + LD HL,(ZX_VARS.E_LINE) DEC HL - LD BC,(FL_LEN) + LD BC,(ZX_VARS.FL_LEN) PUSH BC INC BC INC BC INC BC CALL AUTO_1E32 INC HL - LD A,(AUTO_5CD2) + LD A,(ZX_VARS.AUTO_5CD2) LD (HL),A INC HL POP DE @@ -2590,7 +2590,7 @@ AUTO_1A79: INC HL RET AUTO_1A94: - LD A,(DOS_CH_ADR) + LD A,(ZX_VARS.DOS_CH_ADR) LD C,B LD B,A LD A,C @@ -2612,7 +2612,7 @@ AUTO_1AAE: DJNZ AUTO_1AA7 AUTO_1AB0: LD B,1 - LD HL,(MED_START) + LD HL,(ZX_VARS.MED_START) RET AUTO_1AB6: LD HL,AUTO_29ED @@ -2623,7 +2623,7 @@ AUTO_1ABE: CALL Z,SET_7_TYPE AUTO_1AC4: CALL AUTO_03FD - LD A,(N_FILES) + LD A,(ZX_VARS.N_FILES) CP 128 JP Z,AUTO_2723 RET @@ -2633,7 +2633,7 @@ AUTO_1AC4: CMD_SAVE: CALL AUTO_1852 LD HL,0 - LD (AUTO_5CD1),HL + LD (ZX_VARS.AUTO_5CD1),HL CALL INPUT_TXT CALL AUTO_1D8C CP 175 @@ -2642,9 +2642,9 @@ CMD_SAVE: JR NZ,AUTO_1AF8 CALL AUTO_1E0B CALL SINTAX_RET - LD HL,(MED_LEN) - LD (AUTO_5CD1),HL - LD HL,FL_TYPE + LD HL,(ZX_VARS.MED_LEN) + LD (ZX_VARS.AUTO_5CD1),HL + LD HL,ZX_VARS.FL_TYPE JR AUTO_1B1F AUTO_1AF8: CP 170 @@ -2655,13 +2655,13 @@ AUTO_1B00: RST RST10 LD E,H LD HL,AUTO_1B00 - LD (DOS_CH_ADR),HL - LD (MED_LEN),HL + LD (ZX_VARS.DOS_CH_ADR),HL + LD (ZX_VARS.MED_LEN),HL JR AUTO_1B48 AUTO_1B0D: CALL SINTAX_RET CALL AUTO_1D8C - LD HL,FL_TYPE + LD HL,ZX_VARS.FL_TYPE CP 228 JR Z,AUTO_1B2C CP 13 @@ -2681,23 +2681,23 @@ AUTO_1B2C: JP C,CMD_ERROR AUTO_1B39: CALL AUTO_1DE5 - LD HL,(DOS_CH_ADR) - LD (MED_START),HL - LD HL,(MED_LEN) - LD (DOS_CH_ADR),HL + LD HL,(ZX_VARS.DOS_CH_ADR) + LD (ZX_VARS.MED_START),HL + LD HL,(ZX_VARS.MED_LEN) + LD (ZX_VARS.DOS_CH_ADR),HL AUTO_1B48: CALL SINTAX_RET LD A,'C' - LD (FL_TYPE),A + LD (ZX_VARS.FL_TYPE),A CALL AUTO_1ABE AUTO_1B53: CALL OWERWR_X01 JP AUTO_0569 AUTO_1B59: - LD HL,(MED_START) - LD (FL_START),HL + LD HL,(ZX_VARS.MED_START) + LD (ZX_VARS.FL_START),HL EX DE,HL - LD HL,(DOS_CH_ADR) + LD HL,(ZX_VARS.DOS_CH_ADR) LD A,L OR H JP Z,CMD_ERROR @@ -2707,7 +2707,7 @@ AUTO_1B59: INC H AUTO_1B6D: LD A,H - LD (FL_SIZE),A + LD (ZX_VARS.FL_SIZE),A LD E,A LD D,0 DB 42,10 @@ -2716,32 +2716,32 @@ AUTO_1B76: SBC HL,DE JP C,AUTO_1C45 PUSH HL - LD HL,(E_LINE) + LD HL,(ZX_VARS.E_LINE) LD (HL),170 INC HL - LD DE,(AUTO_5CD1) + LD DE,(ZX_VARS.AUTO_5CD1) LD (HL),E INC HL LD (HL),D - LD HL,(MED_LEN) - LD (FL_LEN),HL - LD HL,(CLEAR_SEC) - LD (FL_PLACE),HL + LD HL,(ZX_VARS.MED_LEN) + LD (ZX_VARS.FL_LEN),HL + LD HL,(ZX_VARS.CLEAR_SEC) + LD (ZX_VARS.FL_PLACE),HL EX DE,HL - LD HL,(FL_START) - LD A,(FL_SIZE) + LD HL,(ZX_VARS.FL_START) + LD A,(ZX_VARS.FL_SIZE) LD B,A CALL WRITE_DISK - LD HL,(CONT_SEC) + LD HL,(ZX_VARS.CONT_SEC) PUSH HL CALL AUTO_03FD POP HL - LD (CLEAR_SEC),HL + LD (ZX_VARS.CLEAR_SEC),HL POP HL - LD (FREE_SEC),HL - LD HL,N_FILES + LD (ZX_VARS.FREE_SEC),HL + LD HL,ZX_VARS.N_FILES LD A,(HL) - LD (FL_NUMBER),A + LD (ZX_VARS.FL_NUMBER),A INC (HL) PUSH HL CALL AUTO_1E43 @@ -2749,40 +2749,40 @@ AUTO_1B76: LD C,(HL) DEC C AUTO_1BBF: - LD A,(FL_TYPE) + LD A,(ZX_VARS.FL_TYPE) CP 'B' CALL Z,AUTO_1BC8 RET AUTO_1BC8: - LD HL,(E_LINE) - LD DE,(BAS_PROG) + LD HL,(ZX_VARS.E_LINE) + LD DE,(ZX_VARS.BAS_PROG) SCF SBC HL,DE - LD (FL_START),HL - LD HL,(BAS_VARS) + LD (ZX_VARS.FL_START),HL + LD HL,(ZX_VARS.BAS_VARS) SBC HL,DE - LD (FL_LEN),HL + LD (ZX_VARS.FL_LEN),HL RET AUTO_1BDE: - LD HL,(BAS_VARS) - LD DE,(BAS_PROG) + LD HL,(ZX_VARS.BAS_VARS) + LD DE,(ZX_VARS.BAS_PROG) SBC HL,DE - LD (MED_LEN),HL - LD HL,(BAS_PROG) - LD (MED_START),HL - LD HL,(E_LINE) + LD (ZX_VARS.MED_LEN),HL + LD HL,(ZX_VARS.BAS_PROG) + LD (ZX_VARS.MED_START),HL + LD HL,(ZX_VARS.E_LINE) INC HL INC HL INC HL SBC HL,DE - LD (DOS_CH_ADR),HL + LD (ZX_VARS.DOS_CH_ADR),HL RET AUTO_1BFC: CALL AUTO_1C1B RET NC LD HL,0 - LD (DOS_CH_ADR),HL - LD A,(DISK_2_FLG) + LD (ZX_VARS.DOS_CH_ADR),HL + LD A,(ZX_VARS.DISK_2_FLG) CP 255 RET NZ JP AUTO_1C13 @@ -2798,7 +2798,7 @@ AUTO_1C1B: CALL AUTO_1D9B SET 7,C LD A,C - LD (AUTO_5CD2),A + LD (ZX_VARS.AUTO_5CD2),A JR NC,AUTO_1C2B AUTO_1C29: SCF @@ -2810,9 +2810,9 @@ AUTO_1C2B: INC HL LD D,(HL) INC HL - LD (MED_START),HL - LD (MED_LEN),DE - LD (DOS_CH_ADR),DE + LD (ZX_VARS.MED_START),HL + LD (ZX_VARS.MED_LEN),DE + LD (ZX_VARS.DOS_CH_ADR),DE CALL BASIC_RST20 CP ')' JR NZ,AUTO_1C2B @@ -2828,7 +2828,7 @@ AUTO_1C50: LD A,2 JR AUTO_1C4A AUTO_1C57: - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME LD B,8 AUTO_1C5C: LD (HL),' ' @@ -2847,7 +2847,7 @@ AUTO_1C73: LD A,(HL) CP ' ' JP C,CMD_ERROR - LD DE,FL_NAME + LD DE,ZX_VARS.FL_NAME PUSH BC LDIR POP BC @@ -2874,7 +2874,7 @@ SET_DRIVE: RET AUTO_1C98: DEC HL - LD A,(CONT_DISK) + LD A,(ZX_VARS.CONT_DISK) PUSH BC PUSH HL @@ -2889,7 +2889,7 @@ AUTO_1CA4: ADD HL,HL ADD HL,HL ADD HL,HL - LD BC,BUFER + LD BC,ZX_VARS.BUFFER ADD HL,BC RET AUTO_1CB0: @@ -2911,8 +2911,8 @@ AUTO_1CBA: LD C,0 JR AUTO_1CBA AUTO_1CCD: - LD DE,FL_NAME - LD A,(S_NAME_NUM) + LD DE,ZX_VARS.FL_NAME + LD A,(ZX_VARS.S_NAME_NUM) LD B,A XOR A CP (HL) @@ -2932,12 +2932,12 @@ AUTO_1CE7: LD A,128 SUB B LD C,A - LD (FL_NUMBER),A + LD (ZX_VARS.FL_NUMBER),A XOR A RET Z AUTO_1CF0: CALL AUTO_1CB3 - LD HL,DOS_ERR_2 + LD HL,ZX_VARS.DOS_ERR_2 LD (HL),C RET Z LD (HL),255 @@ -2950,21 +2950,21 @@ CMD_RETURN: CALL AUTO_20E5 RES 3,(IY+1) CALL AUTO_0232 - LD SP,(DOS_SP) - LD HL,(ERR_SP) + LD SP,(ZX_VARS.DOS_SP) + LD HL,(ZX_VARS.ERR_SP) DEC HL LD A,18 CP (HL) JR NZ,AUTO_1D19 DEC HL - LD (ERR_SP),HL + LD (ZX_VARS.ERR_SP),HL AUTO_1D19: RET CMD_ERROR: BIT 7,(IY+0) JR Z,AUTO_1D25 LD A,11 - LD (ERR_NR),A + LD (ZX_VARS.ERR_NR),A AUTO_1D25: INC A LD HL,AUTO_29B2 @@ -2972,7 +2972,7 @@ ERR_EXIT: CALL AUTO_03C3 JP AUTO_01D3 AUTO_1D2F: - LD A,(ERR_NR) + LD A,(ZX_VARS.ERR_NR) LD HL,AUTO_27CA CP 20 JR Z,ERR_EXIT @@ -2992,14 +2992,14 @@ CMD_RUN: CALL AUTO_1852 CALL AUTO_1836 CALL SINTAX_RET - LD HL,(FL_START) - LD A,(FL_TYPE) + LD HL,(ZX_VARS.FL_START) + LD A,(ZX_VARS.FL_TYPE) CP 'B' JP Z,AUTO_012A PUSH HL RET AUTO_1D63: - LD HL,BAS_DOS_FLG + LD HL,ZX_VARS.BAS_DOS_FLG LD A,(HL) CP #FF LD (HL),0 @@ -3069,10 +3069,10 @@ AUTO_1DC1: RST_ROM ROUTINE.expt_1num RET AUTO_1DC5: - LD HL,(ADR_DOS_COM) + LD HL,(ZX_VARS.ADR_DOS_COM) AUTO_1DC8: INC HL - LD (CH_ADR),HL + LD (ZX_VARS.CH_ADR),HL RET AUTO_1DCD: CALL INPUT_TXT @@ -3094,8 +3094,8 @@ AUTO_1DEB: CALL AUTO_1D7B JR Z,AUTO_1DFB CALL AUTO_1DB9 - LD (DOS_CH_ADR),BC - LD (MED_LEN),BC + LD (ZX_VARS.DOS_CH_ADR),BC + LD (ZX_VARS.MED_LEN),BC AUTO_1DFB: CALL AUTO_1D8C CP ',' @@ -3108,16 +3108,16 @@ AUTO_1E0B: CALL AUTO_1D7B RET Z CALL AUTO_1DB9 - LD (MED_LEN),BC + LD (ZX_VARS.MED_LEN),BC LD A,3 - LD (DOS_ERROR),A + LD (ZX_VARS.DOS_ERROR),A RET AUTO_1E1C: - LD HL,(ADR_DOS_COM) + LD HL,(ZX_VARS.ADR_DOS_COM) RST_ROM ROUTINE.remove_fp RET AUTO_1E23: - LD HL,(WORK_SP) + LD HL,(ZX_VARS.WORK_SPACE) RST_ROM ROUTINE.bc_spaces AUTO_1E29: RET @@ -3134,7 +3134,7 @@ AUTO_1E32: READ_TRK_NUM: CALL READ_ADR_LABL LD A,H - OUT (WG_TRK),A + OUT (FDC_93.Track),A RET READ_DISK: XOR A @@ -3142,10 +3142,10 @@ READ_DISK: AUTO_1E40: CALL AUTO_166B AUTO_1E43: - LD DE,(CONT_SEC) + LD DE,(ZX_VARS.CONT_SEC) DEC DE LD B,1 - LD HL,BUFER + LD HL,ZX_VARS.BUFFER WRITE_DISK: PUSH HL PUSH DE @@ -3162,9 +3162,9 @@ AUTO_1E60: AUTO_1E62: LD A,255 AUTO_1E64: - LD (RD_WR_COM),A + LD (ZX_VARS.RD_WR_COM),A AUTO_1E67: - LD (CONT_SEC),DE + LD (ZX_VARS.CONT_SEC),DE JP R_W_REDIR ;LD (HL),30 ; НЕ исп. !!! @@ -3179,11 +3179,11 @@ AUTO_1E75: PUSH BC PUSH HL CALL save_bufer - LD A,(CONT_SEC) + LD A,(ZX_VARS.CONT_SEC) CALL save_sector - LD A,(CONT_TRK) + LD A,(ZX_VARS.CONT_TRK) CALL Global_trk - LD A,(RD_WR_COM) + LD A,(ZX_VARS.RD_WR_COM) OR A PUSH AF CALL Z,AUTO_3F0E @@ -3194,12 +3194,12 @@ AUTO_1E75: ADD HL,DE PUSH HL LD A,16 - LD HL,CONT_SEC + LD HL,ZX_VARS.CONT_SEC INC (HL) CP (HL) JR NZ,AUTO_1EA7 LD (HL),0 - LD HL,CONT_TRK + LD HL,ZX_VARS.CONT_TRK INC (HL) AUTO_1EA7: POP HL @@ -3221,7 +3221,7 @@ AUTO_1EAC: RET AUTO_1EBC: XOR A - LD (DOS_ERROR),A + LD (ZX_VARS.DOS_ERROR),A SCF RET ; @@ -3229,9 +3229,9 @@ AUTO_1EBC: ; CMD_FORMAT: LD HL,0 - LD (MED_START),HL - LD (DOS_CH_ADR),HL - LD (AUTO_5CD1),HL + LD (ZX_VARS.MED_START),HL + LD (ZX_VARS.DOS_CH_ADR),HL + LD (ZX_VARS.AUTO_5CD1),HL CALL TEST_CR JP Z,CMD_ERROR ; FORMATER ; !!!!! ( CMD_ERROR ) CALL FORM_STATE ; 1/2/3 INPUT_TXT @@ -3244,7 +3244,7 @@ AUTO_1EE0: JR Z,AUTO_1EE8 LD A,'P' AUTO_1EE8: - LD (MED_START),A + LD (ZX_VARS.MED_START),A CALL AUTO_3D98 CALL set_side_1 CALL pause_750ms @@ -3253,7 +3253,7 @@ AUTO_1EE8: CALL set_side_0 LD E,0 CALL AUTO_1FFD - LD A,(FL_NAME) + LD A,(ZX_VARS.FL_NAME) CP '$' JR Z,AUTO_1F1B CALL set_side_1 @@ -3263,16 +3263,16 @@ AUTO_1EE8: CP 1 JR NZ,AUTO_1F1B LD A,128 - LD (DOS_CH_ADR+1),A + LD (ZX_VARS.DOS_CH_ADR+1),A AUTO_1F1B: CALL FORM_X02 ; форматирование !!! - LD HL,BUFER + LD HL,ZX_VARS.BUFFER LD (HL),0 - LD DE,BUFER+1 + LD DE,ZX_VARS.BUFFER+1 LD BC,0FFh LDIR - LD BC,MED_START - LD DE,DOS_CH_ADR+1 + LD BC,ZX_VARS.MED_START + LD DE,ZX_VARS.DOS_CH_ADR+1 LD A,(BC) CP 'P' JR Z,AUTO_1F49 @@ -3295,37 +3295,37 @@ AUTO_1F49: LD A,22 LD HL,09F0h AUTO_1F55: - LD (TYPE_DISK),A - LD (FREE_SEC),HL + LD (ZX_VARS.TYPE_DISK),A + LD (ZX_VARS.FREE_SEC),HL LD A,1 - LD (CLEAR_TRK),A + LD (ZX_VARS.CLEAR_TRK),A LD A,16 - LD (CODE_10H),A - LD HL,DISK_MRK_1 - LD DE,DISK_ALT_NM + LD (ZX_VARS.CODE_10H),A + LD HL,ZX_VARS.DISK_MRK_1 + LD DE,ZX_VARS.DISK_ALT_NM LD BC,RST08 LD (HL),' ' LDIR - LD HL,FL_NAME - LD DE,DISK_NAME + LD HL,ZX_VARS.FL_NAME + LD DE,ZX_VARS.DISK_NAME LD BC,RST08 LDIR CALL set_side_0 LD B,1 LD DE,8 - LD HL,BUFER + LD HL,ZX_VARS.BUFFER CALL AUTO_1E62 - LD A,(DOS_ERROR) + LD A,(ZX_VARS.DOS_ERROR) PUSH AF XOR A - LD (FL_TYPE),A - LD HL,(FREE_SEC) - LD (MED_START),HL - LD HL,FL_NAME + LD (ZX_VARS.FL_TYPE),A + LD HL,(ZX_VARS.FREE_SEC) + LD (ZX_VARS.MED_START),HL + LD HL,ZX_VARS.FL_NAME RST PRINT_LN LD A,13 RST RST10 - LD HL,(MED_START) + LD HL,(ZX_VARS.MED_START) POP AF PUSH HL LD D,0 @@ -3350,31 +3350,31 @@ test_d_traks: LD A,2 CALL Goto_trk CALL pause_50ms - IN A,(WG_COM) + IN A,(FDC_93.Command) AND 4 LD A,'P' JR Z,AUTO_1FE7 LD A,'(' AUTO_1FE7: - LD (MED_START),A + LD (ZX_VARS.MED_START),A RET set_side_0: - LD A,(PDOS_COPY) - OR '<' ; 3C - сторона 0 3C..3F + LD A,(ZX_VARS.PDOS_COPY) + OR #3C ; сторона 0 3C..3F AUTO_1FF0: - LD (PDOS_COPY),A - OUT (P_DOS_FF),A + LD (ZX_VARS.PDOS_COPY),A + OUT (FDC_93.DrvCTRL),A RET set_side_1: - LD A,(PDOS_COPY) - AND 'o' ; 06Fh - сторона 1 2C..2F + LD A,(ZX_VARS.PDOS_COPY) + AND #6F ; сторона 1 2C..2F JR AUTO_1FF0 ; ld a,(pdos_copy) AUTO_1FFD: ; add a,0C0h DI ; ld d,0 LD A,244 ; rl d AUTO_2000: ; - OUT (WG_COM),A ; - LD HL,(FL_START) ; + OUT (FDC_93.Command),A ; + LD HL,(ZX_VARS.FL_START) ; LD C,127 @@ -3426,13 +3426,13 @@ FORM_TR_LOOP: INC HL CP 16 ; проверка на посл. сектор JR NZ,FORM_TR_LOOP ; если нет, то продолжать - IN A,(WG_COM) + IN A,(FDC_93.Command) AND '@' JP NZ,AUTO_3F39 LD A,216 - OUT (WG_COM),A + OUT (FDC_93.Command),A LD A,208 - OUT (WG_COM),A + OUT (FDC_93.Command),A ;////////////////////////////////////// @@ -3440,30 +3440,30 @@ FORM_TR_LOOP: NOP NOP AUTO_207D: - LD A,(MED_START+1) + LD A,(ZX_VARS.MED_START+1) OR A RET NZ LD C,127 LD A,E - OUT (WG_TRK),A + OUT (FDC_93.Track),A CALL SUB_HL_14 AUTO_208A: LD B,3 LD A,(HL) - OUT (WG_SEC),A + OUT (FDC_93.Sector),A PUSH HL AUTO_2090: DI LD A,128 - OUT (WG_COM),A + OUT (FDC_93.Command),A PUSH BC CALL AUTO_3FE5 - IN A,(WG_COM) + IN A,(FDC_93.Command) AND 127 POP BC JR Z,AUTO_20A6 DJNZ AUTO_2090 - LD HL,DOS_ERROR + LD HL,ZX_VARS.DOS_ERROR INC (HL) AUTO_20A6: POP HL @@ -3476,7 +3476,7 @@ AUTO_20A6: AUTO_20AF: LD B,1 AUTO_20B1: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR Z,AUTO_20B1 RET M @@ -3485,7 +3485,7 @@ AUTO_20B1: RET FORMAT_ALL: - LD HL,MED_START + LD HL,ZX_VARS.MED_START LD B,(HL) CALL FORM_F01 LD E,255 @@ -3497,7 +3497,7 @@ AUTO_20C6: CALL PRINT_TRK CALL set_side_0 ; SET SIDE 0 CALL PRINT_SIDE0 ; FORMATING ! - LD A,(DOS_CH_ADR+1) + LD A,(ZX_VARS.DOS_CH_ADR+1) CP 128 JR NZ,AUTO_20E1 CALL set_side_1 ; SET SIDE 1 @@ -3509,25 +3509,25 @@ AUTO_20E1: AUTO_20E5: PUSH AF - LD A,(DISK_1_FLG) + LD A,(ZX_VARS.DISK_1_FLG) CP 255 JR Z,AUTO_211C POP AF CALL BUFER_OFF xchg_intf1: PUSH AF - LD A,(BEG_ADRESS) + LD A,(ZX_VARS.BEG_ADRESS) CP 244 JR Z,AUTO_211C XOR A - LD HL,INT_1_VAR + LD HL,ZX_VARS.INT_1_VAR OR (HL) LD (HL),255 JR Z,AUTO_211C - LD A,(BUF_FLAG) + LD A,(ZX_VARS.BUF_FLAG) OR A - LD HL,AUTO_5CC3 - LD DE,AUTO_5D33 + LD HL,ZX_VARS.AUTO_5CC3 + LD DE,ZX_VARS.AUTO_5D33 JR NZ,AUTO_2111 LD DE,AUTO_5E34 AUTO_2111: @@ -3547,29 +3547,29 @@ AUTO_211C: RET AUTO_211E: - LD HL,(E_LINE) + LD HL,(ZX_VARS.E_LINE) LD (HL),13 - LD (K_CUR),HL + LD (ZX_VARS.K_CUR),HL INC HL LD (HL),128 RET AUTO_212A: - LD DE,(E_LINE) - LD HL,COM_LN_COPY + LD DE,(ZX_VARS.E_LINE) + LD HL,ZX_VARS.COM_LN_COPY CALL AUTO_02B0 RET INPUT_LINE: - LD A,(DOS_ERR_2) + LD A,(ZX_VARS.DOS_ERR_2) OR A PUSH AF CALL NZ,AUTO_212A POP AF CALL Z,AUTO_211E - LD HL,(E_LINE) + LD HL,(ZX_VARS.E_LINE) CALL PRINT_CR - LD A,(CONT_DISK) + LD A,(ZX_VARS.CONT_DISK) ADD A,'A' RST RST10 LD A,'>' @@ -3582,25 +3582,25 @@ AUTO_2158: CALL AUTO_1D8C CP ',' JP NZ,CMD_ERROR - LD HL,(MED_LEN) - LD (DOS_CH_ADR),HL + LD HL,(ZX_VARS.MED_LEN) + LD (ZX_VARS.DOS_CH_ADR),HL CALL AUTO_1E0B CALL SINTAX_RET - LD HL,(MED_LEN) + LD HL,(ZX_VARS.MED_LEN) LD A,H OR A JP NZ,CMD_ERROR INC HL - LD (MED_START),HL - LD HL,(DOS_CH_ADR) - LD (MED_LEN),HL + LD (ZX_VARS.MED_START),HL + LD HL,(ZX_VARS.DOS_CH_ADR) + LD (ZX_VARS.MED_LEN),HL RET ; ; ; CMD_OPEN: - LD HL,(ADR_DOS_COM) - LD (CH_ADR),HL + LD HL,(ZX_VARS.ADR_DOS_COM) + LD (ZX_VARS.CH_ADR),HL CALL AUTO_1E0B CALL AUTO_1DD0 AUTO_218E: @@ -3621,12 +3621,12 @@ AUTO_219A: CP 'W' JP NZ,CMD_ERROR AUTO_21AE: - LD (VAR_3),A + LD (ZX_VARS.VAR_3),A CALL SINTAX_RET LD A,'#' - LD (FL_TYPE),A + LD (ZX_VARS.FL_TYPE),A LD A,0 - LD (FL_START),A + LD (ZX_VARS.FL_START),A CALL AUTO_21DB PUSH AF CALL AUTO_220F @@ -3635,28 +3635,28 @@ AUTO_21AE: CALL NZ,AUTO_2288 POP AF CALL AUTO_2242 - LD HL,(ADR_DOS_COM) + LD HL,(ZX_VARS.ADR_DOS_COM) LD BC,AUTO_0124 ADD HL,BC - LD (ADR_DOS_COM),HL + LD (ZX_VARS.ADR_DOS_COM),HL JP AUTO_01D3 AUTO_21DB: LD A,10 - LD (S_NAME_NUM),A + LD (ZX_VARS.S_NAME_NUM),A CALL AUTO_1CB0 PUSH AF CALL RD_HEAD_DSK POP AF JR NZ,AUTO_2206 - LD A,(VAR_3) + LD A,(ZX_VARS.VAR_3) CP 'R' JR Z,AUTO_2201 AUTO_21F1: - LD HL,FL_START + LD HL,ZX_VARS.FL_START INC (HL) CALL AUTO_1CB3 JR Z,AUTO_21F1 - LD HL,FL_START + LD HL,ZX_VARS.FL_START DEC (HL) CALL AUTO_1CB3 AUTO_2201: @@ -3664,12 +3664,12 @@ AUTO_2201: XOR A RET AUTO_2206: - LD A,(VAR_3) + LD A,(ZX_VARS.VAR_3) CP 'R' RET NZ JP AUTO_03D9 AUTO_220F: - LD A,(MED_LEN) + LD A,(ZX_VARS.MED_LEN) RST_ROM ROUTINE.str_data1 LD A,B OR C @@ -3677,7 +3677,7 @@ AUTO_220F: RET AUTO_221B: LD A,25 - LD (ERR_NR),A + LD (ZX_VARS.ERR_NR),A LD HL,AUTO_2804 LD A,10 AUTO_2225: @@ -3690,7 +3690,7 @@ AUTO_222F: PUSH HL LD C,' ' RST RST28 - LD A,(MED_START) + LD A,(ZX_VARS.MED_START) LD (HL),A INC HL XOR A @@ -3706,19 +3706,19 @@ AUTO_2242: PUSH AF CALL AUTO_220F EX DE,HL - LD HL,(BAS_PROG) - LD BC,(CHANS) + LD HL,(ZX_VARS.BAS_PROG) + LD BC,(ZX_VARS.CHANS) SBC HL,BC EX DE,HL LD (HL),E INC HL LD (HL),D CALL AUTO_22B2 - LD A,(VAR_3) + LD A,(ZX_VARS.VAR_3) CP 165 CALL Z,AUTO_222F JR Z,AUTO_226B - LD A,(VAR_3) + LD A,(ZX_VARS.VAR_3) CP 'R' LD A,255 JR NZ,AUTO_226B @@ -3744,27 +3744,27 @@ AUTO_2270: CALL Z,READ_DISK RET AUTO_2288: - LD HL,(MED_START) + LD HL,(ZX_VARS.MED_START) PUSH HL LD HL,AUTO_2000 - LD (MED_START),HL + LD (ZX_VARS.MED_START),HL CALL AUTO_229A POP HL - LD (MED_START),HL + LD (ZX_VARS.MED_START),HL RET AUTO_229A: LD HL,AUTO_1000 - LD (DOS_CH_ADR),HL + LD (ZX_VARS.DOS_CH_ADR),HL CALL AUTO_1AC4 CALL AUTO_1B59 LD HL,0 - LD (FL_LEN),HL + LD (ZX_VARS.FL_LEN),HL CALL AUTO_166B JP AUTO_1E43 AUTO_22B2: - LD HL,(BAS_PROG) + LD HL,(ZX_VARS.BAS_PROG) DEC HL - LD (CUR_CHL),HL + LD (ZX_VARS.CUR_CHL),HL PUSH HL LD BC,AUTO_0124 CALL AUTO_1E32 @@ -3796,23 +3796,23 @@ AUTO_22C4: INC HL LD (HL),1 INC HL - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) LD (HL),A INC HL - LD A,(FL_NUMBER) + LD A,(ZX_VARS.FL_NUMBER) LD (HL),A INC HL - LD A,(VAR_3) + LD A,(ZX_VARS.VAR_3) CP 'R' LD (HL),0 JR Z,AUTO_22FC - LD A,(FL_LEN) + LD A,(ZX_VARS.FL_LEN) LD (HL),A AUTO_22FC: INC HL LD (HL),B JR Z,AUTO_2304 - LD A,(FL_LEN+1) + LD A,(ZX_VARS.FL_LEN+1) LD (HL),A AUTO_2304: INC HL @@ -3822,7 +3822,7 @@ AUTO_2304: LD DE,RST10 ADD HL,DE EX DE,HL - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME LD BC,RST10 LDIR POP HL @@ -3839,7 +3839,7 @@ AUTO_2321: LD C,'$' RST28_EXE: LD B,0 - LD HL,(CUR_CHL) + LD HL,(ZX_VARS.CUR_CHL) ADD HL,BC RET AUTO_232A: @@ -3866,7 +3866,7 @@ AUTO_232A: CP 127 POP HL JR Z,AUTO_2358 - LD HL,(CUR_CHL) + LD HL,(ZX_VARS.CUR_CHL) CALL AUTO_26E1 LD C,14 RST RST28 @@ -3889,24 +3889,24 @@ AUTO_2367: RET AUTO_2370: CALL AUTO_2367 - LD (MED_START),DE + LD (ZX_VARS.MED_START),DE JR AUTO_2381 AUTO_2379: CALL AUTO_2367 INC E - LD (MED_START),DE + LD (ZX_VARS.MED_START),DE AUTO_2381: CALL AUTO_229A CALL BUFER_OFF LD C,16 RST RST28 EX DE,HL - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME LD BC,RST10 LDIR LD C,12 RST RST28 - LD A,(FL_NUMBER) + LD A,(ZX_VARS.FL_NUMBER) LD (HL),A RET AUTO_239B: @@ -3951,7 +3951,7 @@ AUTO_23CF: INC (HL) LD C,16 RST RST28 - LD DE,FL_NAME + LD DE,ZX_VARS.FL_NAME LD BC,RST10 LDIR CALL AUTO_1CB3 @@ -3961,12 +3961,12 @@ AUTO_23E4: LD C,16 RST RST28 EX DE,HL - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME LD BC,RST10 LDIR LD C,12 RST RST28 - LD A,(FL_NUMBER) + LD A,(ZX_VARS.FL_NUMBER) LD (HL),A XOR A RET @@ -3994,7 +3994,7 @@ AUTO_2418: LD B,1 JP READ_DISK AUTO_2423: - LD HL,(CUR_CHL) + LD HL,(ZX_VARS.CUR_CHL) LD BC,AUTO_001E ADD HL,BC LD E,(HL) @@ -4025,14 +4025,14 @@ AUTO_2443: LD A,(HL) JP SET_DISK AUTO_244A: - LD HL,RET_INS + LD HL,ZX_VARS.RET_INS PUSH HL LD HL,xchg_intf1 PUSH HL PUSH AF CALL xchg_intf1 LD A,10 - LD (S_NAME_NUM),A + LD (ZX_VARS.S_NAME_NUM),A POP AF CALL AUTO_24A2 PUSH AF @@ -4057,7 +4057,7 @@ AUTO_246E: ADD HL,BC CP (HL) RET NZ - LD HL,BEG_ADRESS + LD HL,ZX_VARS.BEG_ADRESS LD A,(HL) CP 244 JR Z,AUTO_2492 @@ -4069,7 +4069,7 @@ AUTO_246E: AUTO_2492: LD A,7 AUTO_2494: - LD (ERR_NR),A + LD (ZX_VARS.ERR_NR),A CALL AUTO_20E5 RST_ROM ROUTINE.error_4 RET @@ -4105,7 +4105,7 @@ AUTO_24C2: LD C,(HL) LD A,D EX DE,HL - LD HL,(VAR_1) + LD HL,(ZX_VARS.VAR_1) ADD HL,BC CP 6 LD (HL),A @@ -4148,23 +4148,23 @@ AUTO_24F2: LD A,D RET AUTO_24F8: - LD HL,(WORK_SP) - LD (VAR_1),HL + LD HL,(ZX_VARS.WORK_SPACE) + LD (ZX_VARS.VAR_1),HL LD BC,RST10 JP AUTO_1E23 AUTO_2504: LD (HL),13 - LD HL,(CH_ADR) - LD (MED_START),HL - LD HL,(VAR_1) - LD (CH_ADR),HL - LD HL,FLAGS + LD HL,(ZX_VARS.CH_ADR) + LD (ZX_VARS.MED_START),HL + LD HL,(ZX_VARS.VAR_1) + LD (ZX_VARS.CH_ADR),HL + LD HL,ZX_VARS.FLAGS RES 7,(HL) CALL AUTO_1DC1 - LD HL,FLAGS + LD HL,ZX_VARS.FLAGS SET 7,(HL) - LD HL,(VAR_1) - LD (CH_ADR),HL + LD HL,(ZX_VARS.VAR_1) + LD (ZX_VARS.CH_ADR),HL CALL AUTO_1DC1 CALL AUTO_1DB9 PUSH BC @@ -4174,25 +4174,25 @@ AUTO_2504: LD B,(HL) XOR A LD HL,0 - LD (MED_LEN),HL + LD (ZX_VARS.MED_LEN),HL AUTO_2538: ADD HL,DE JR NC,AUTO_2544 PUSH HL - LD HL,(MED_LEN) + LD HL,(ZX_VARS.MED_LEN) INC HL - LD (MED_LEN),HL + LD (ZX_VARS.MED_LEN),HL POP HL AUTO_2544: DJNZ AUTO_2538 - LD (DOS_CH_ADR),HL - LD A,(MED_LEN) - LD HL,DOS_CH_ADR+1 + LD (ZX_VARS.DOS_CH_ADR),HL + LD A,(ZX_VARS.MED_LEN) + LD HL,ZX_VARS.DOS_CH_ADR+1 RRD AND 15 - LD (MED_LEN),A - LD HL,(MED_START) - LD (CH_ADR),HL + LD (ZX_VARS.MED_LEN),A + LD HL,(ZX_VARS.MED_START) + LD (ZX_VARS.CH_ADR),HL CALL AUTO_2568 LD C,'!' RST RST28 @@ -4204,30 +4204,30 @@ AUTO_2544: AUTO_2568: LD C,25 RST RST28 - LD A,(DOS_CH_ADR+1) + LD A,(ZX_VARS.DOS_CH_ADR+1) CP (HL) JP NZ,AUTO_2584 LD C,14 RST RST28 - LD A,(MED_LEN) + LD A,(ZX_VARS.MED_LEN) CP (HL) JP NZ,AUTO_25A7 AUTO_257C: LD C,13 RST RST28 - LD A,(DOS_CH_ADR) + LD A,(ZX_VARS.DOS_CH_ADR) LD (HL),A RET AUTO_2584: CALL AUTO_25CA CALL NZ,AUTO_25C3 - LD A,(DOS_CH_ADR+1) + LD A,(ZX_VARS.DOS_CH_ADR+1) LD C,25 RST RST28 LD (HL),A LD C,16 RST RST28 - LD DE,FL_NAME + LD DE,ZX_VARS.FL_NAME LD BC,RST10 LDIR CALL AUTO_1CB3 @@ -4238,7 +4238,7 @@ AUTO_25A7: CALL AUTO_25CA CALL NZ,AUTO_25C3 AUTO_25AD: - LD A,(MED_LEN) + LD A,(ZX_VARS.MED_LEN) LD C,14 RST RST28 LD (HL),A @@ -4247,7 +4247,7 @@ AUTO_25AD: CALL AUTO_2418 POP HL DEC HL - LD A,(DOS_CH_ADR) + LD A,(ZX_VARS.DOS_CH_ADR) LD (HL),A JR AUTO_257C AUTO_25C3: @@ -4262,24 +4262,24 @@ AUTO_25CA: LD (HL),0 RET AUTO_25D2: - LD HL,(DOS_CH_ADR+1) + LD HL,(ZX_VARS.DOS_CH_ADR+1) LD H,' ' - LD (MED_START),HL - LD HL,(DOS_CH_ADR) + LD (ZX_VARS.MED_START),HL + LD HL,(ZX_VARS.DOS_CH_ADR) PUSH HL - LD HL,(MED_LEN) + LD HL,(ZX_VARS.MED_LEN) PUSH HL CALL AUTO_2381 POP HL - LD (MED_LEN),HL + LD (ZX_VARS.MED_LEN),HL POP HL - LD (DOS_CH_ADR),HL + LD (ZX_VARS.DOS_CH_ADR),HL JR AUTO_25AD AUTO_25EF: CALL xchg_intf1 - LD HL,TV_FLAG + LD HL,ZX_VARS.TV_FLAG RES 3,(HL) - LD HL,(ERR_SP) + LD HL,(ZX_VARS.ERR_SP) LD E,(HL) INC HL LD D,(HL) @@ -4287,15 +4287,15 @@ AUTO_25EF: LD HL,AUTO_107F SBC HL,DE JR NZ,AUTO_2626 - LD SP,(ERR_SP) + LD SP,(ZX_VARS.ERR_SP) POP DE POP DE - LD (ERR_SP),DE + LD (ZX_VARS.ERR_SP),DE AUTO_260F: CALL AUTO_262B JR C,AUTO_261D AUTO_2614: - LD HL,RET_INS + LD HL,ZX_VARS.RET_INS PUSH HL LD HL,AUTO_20E5 PUSH HL @@ -4310,7 +4310,7 @@ AUTO_2626: JR AUTO_2614 AUTO_262B: LD A,10 - LD (S_NAME_NUM),A + LD (ZX_VARS.S_NAME_NUM),A CALL AUTO_2650 JR Z,AUTO_2642 CP 127 @@ -4339,17 +4339,17 @@ AUTO_2650: ; ; CMD_CLOSE: - LD HL,(ADR_DOS_COM) - LD (CH_ADR),HL + LD HL,(ZX_VARS.ADR_DOS_COM) + LD (ZX_VARS.CH_ADR),HL CALL AUTO_1E0B CALL SINTAX_RET - LD A,(MED_LEN) + LD A,(ZX_VARS.MED_LEN) RST_ROM ROUTINE.str_data1 LD A,B OR C JP Z,AUTO_01D3 PUSH HL - LD HL,(CHANS) + LD HL,(ZX_VARS.CHANS) ADD HL,BC LD A,(HL) LD HL,AUTO_3D0E @@ -4359,20 +4359,20 @@ CMD_CLOSE: LD (HL),0 INC HL LD (HL),0 - LD (DOS_CH_ADR),BC - LD HL,(CHANS) + LD (ZX_VARS.DOS_CH_ADR),BC + LD HL,(ZX_VARS.CHANS) ADD HL,BC DEC HL - LD (MED_START),HL + LD (ZX_VARS.MED_START),HL CALL AUTO_26CE - LD HL,(MED_START) + LD HL,(ZX_VARS.MED_START) LD BC,AUTO_0124 CALL AUTO_1E2E - LD HL,REP_K_TYME + LD HL,ZX_VARS.REP_K_TYME LD B,16 AUTO_269D: PUSH BC - LD BC,(DOS_CH_ADR) + LD BC,(ZX_VARS.DOS_CH_ADR) LD E,(HL) INC HL LD D,(HL) @@ -4398,10 +4398,10 @@ AUTO_26BC: INC HL POP BC DJNZ AUTO_269D - LD HL,(ADR_DOS_COM) + LD HL,(ZX_VARS.ADR_DOS_COM) LD BC,AUTO_0124 SBC HL,BC - LD (ADR_DOS_COM),HL + LD (ZX_VARS.ADR_DOS_COM),HL JP AUTO_01D3 AUTO_26CE: LD BC,CONT_1+6 @@ -4409,8 +4409,8 @@ AUTO_26CE: LD A,(HL) OR A RET Z - LD HL,(MED_START) - LD (CUR_CHL),HL + LD HL,(ZX_VARS.MED_START) + LD (ZX_VARS.CUR_CHL),HL CALL AUTO_26E1 JP AUTO_23FC AUTO_26E1: @@ -4426,7 +4426,7 @@ AUTO_26E1: LD (HL),D LD C,16 RST RST28 - LD DE,FL_NAME + LD DE,ZX_VARS.FL_NAME LD BC,RST10 LDIR CALL AUTO_2443 @@ -4467,32 +4467,32 @@ set_error_26: JR AUTO_2731 LD A,18 AUTO_2731: - LD (ERR_NR),A + LD (ZX_VARS.ERR_NR),A RET LD A,3 JR AUTO_2731 AUTO_2739: XOR A - LD (MED_START+1),A - LD (DOS_ERROR),A - IN A,(WG_COM) - LD (DRV_READY),A + LD (ZX_VARS.MED_START+1),A + LD (ZX_VARS.DOS_ERROR),A + IN A,(FDC_93.Command) + LD (ZX_VARS.DRV_READY),A LD E,D PUSH DE LD A,E - OUT (WG_DATA),A + OUT (FDC_93.Data),A LD A,24 CALL WG93_EXE - LD A,(DRV_READY) + LD A,(ZX_VARS.DRV_READY) AND 128 CALL NZ,pause_750ms POP DE CALL AUTO_207D - LD A,(DOS_ERROR) + LD A,(ZX_VARS.DOS_ERROR) OR A RET Z LD A,7 - LD (DOS_ERR_2),A + LD (ZX_VARS.DOS_ERR_2),A RET AUTO_2766: DB "O.K.",0 @@ -4528,19 +4528,19 @@ AUTO_2820: AUTO_283C: PUSH AF PUSH BC - LD (WORK_4),DE - LD (WORK_2),HL + LD (ZX_VARS.WORK_4),DE + LD (ZX_VARS.WORK_2),HL CALL xchg_intf1 LD A,255 - LD (MSG_FLAG),A - LD (FL_NUMBER+1),A + LD (ZX_VARS.MSG_FLAG),A + LD (ZX_VARS.FL_NUMBER+1),A POP BC POP AF LD HL,AUTO_0201 - LD (ADR_RET),HL + LD (ZX_VARS.ADR_RET),HL LD HL,0 ADD HL,SP - LD (DOS_SP),HL + LD (ZX_VARS.DOS_SP),HL DEC HL DEC HL LD SP,HL @@ -4559,8 +4559,8 @@ AUTO_2869: LD HL,AUTO_01D3 PUSH HL PUSH DE - LD HL,(WORK_2) - LD DE,(WORK_4) + LD HL,(ZX_VARS.WORK_2) + LD DE,(ZX_VARS.WORK_4) RET AUTO_287F: CP 255 @@ -4635,7 +4635,7 @@ AUTO_28E0: AUTO_28E3: LD A,255 AUTO_28E5: - LD DE,FL_NAME + LD DE,ZX_VARS.FL_NAME LD BC,RST10 OR A JR Z,AUTO_28EF @@ -4648,18 +4648,18 @@ AUTO_28F2: CALL AUTO_1AC4 JP AUTO_1B27 AUTO_28FB: - LD (MED_START),HL - LD (DOS_CH_ADR),DE - LD (MED_LEN),DE + LD (ZX_VARS.MED_START),HL + LD (ZX_VARS.DOS_CH_ADR),DE + LD (ZX_VARS.MED_LEN),DE JP TYPE_FL_X02 CALL AUTO_1AC4 ; ??? JP FORM_X04 ; ??? AUTO_290F: OR A - LD (DOS_ERROR),A - LD (DOS_CH_ADR),HL - LD (MED_LEN),DE + LD (ZX_VARS.DOS_ERROR),A + LD (ZX_VARS.DOS_CH_ADR),HL + LD (ZX_VARS.MED_LEN),DE CALL AUTO_1CB3 CALL AUTO_18A4 CALL AUTO_18AB @@ -4693,7 +4693,7 @@ BUFER_ON: PUSH DE PUSH BC PUSH AF - LD HL,BUF_FLAG + LD HL,ZX_VARS.BUF_FLAG LD A,(HL) OR A JR Z,AUTO_2992 @@ -4704,9 +4704,9 @@ BUFER_ON: POP BC POP HL LD (HL),0 - LD HL,BUFER + LD HL,ZX_VARS.BUFFER CALL AUTO_1E32 - LD HL,(ADR_DOS_COM) + LD HL,(ZX_VARS.ADR_DOS_COM) LD BC,AUTO_0100+1 ADD HL,BC JR AUTO_298F @@ -4715,20 +4715,20 @@ BUFER_OFF: PUSH DE PUSH BC PUSH AF - LD HL,BUF_FLAG + LD HL,ZX_VARS.BUF_FLAG LD A,(HL) OR A JR NZ,AUTO_2992 LD (HL),255 - LD HL,BUFER + LD HL,ZX_VARS.BUFFER LD BC,AUTO_0100+1 CALL AUTO_1E2E OR A LD BC,AUTO_0100+1 - LD HL,(ADR_DOS_COM) + LD HL,(ZX_VARS.ADR_DOS_COM) SBC HL,BC AUTO_298F: - LD (ADR_DOS_COM),HL + LD (ZX_VARS.ADR_DOS_COM),HL AUTO_2992: POP AF POP BC @@ -4743,12 +4743,12 @@ CMD_40: XOR A ; ;Ошибка!!! Во-первых, почему дисковод односторонний? ; во-вторых, надо проверять возможность использования дисковода в требуемом режиме. AUTO_2998: - LD (MED_START),A ;сохранение типа дисковода + LD (ZX_VARS.MED_START),A ;сохранение типа дисковода CALL SINTAX_RET ;если идет проверка на синтакси CALL TEST_CR ;проверка второго символа строк JP Z,CMD_ERROR ;если это ENTER, то *ERROR* CALL get_disk_type ;берем адрес ячейки с типом дис - LD A,(MED_START) ;установка типа дисковода + LD A,(ZX_VARS.MED_START) ;установка типа дисковода LD (HL),A JP AUTO_03E1 ;сообщение O.K. ; Выполнение команды "80". Установите #5D11 и #5C3B. @@ -4790,7 +4790,7 @@ AUTO_2A41: JR Z,AUTO_2A4B XOR A AUTO_2A4B: - LD (K_STATE+1),A + LD (ZX_VARS.K_STATE+1),A LD BC,PORT_128 LD A,16 OUT (C),A @@ -4817,15 +4817,15 @@ AUTO_2A56: ADD HL,SP PUSH HL LD A,3Ch - OUT (P_DOS_FF),A + OUT (FDC_93.DrvCTRL),A LD A,'?' LD I,A - IN A,(WG_COM) + IN A,(FDC_93.Command) AND 128 RRCA RRCA RRCA - LD (K_STATE+1),A + LD (ZX_VARS.K_STATE+1),A CALL AUTO_2F65 CALL pause_750ms CALL pause_750ms @@ -4842,7 +4842,7 @@ AUTO_2A56: CALL AUTO_2F1B LD HL,AUTO_40E3 LD A,(HL) - LD (K_STATE),A + LD (ZX_VARS.K_STATE),A INC HL LD A,(HL) INC (HL) @@ -4867,7 +4867,7 @@ AUTO_2A56: CALL AUTO_2D4C PUSH DE LD A,3Ch - OUT (P_DOS_FF),A + OUT (FDC_93.DrvCTRL),A CALL AUTO_2F65 LD HL,AUTO_4000 LD DE,RST08 @@ -4908,7 +4908,7 @@ AUTO_2B09: LD (HL),D LD HL,AUTO_4000 LD DE,0 - IN A,(WG_SEC) + IN A,(FDC_93.Sector) DEC A LD E,A LD B,1 @@ -4943,7 +4943,7 @@ AUTO_2B58: LD A,170 LD (AUTO_4130),A LD D,5 - LD A,(K_STATE+1) + LD A,(ZX_VARS.K_STATE+1) OR D LD D,A OUT (C),D @@ -5022,7 +5022,7 @@ AUTO_2B95: LD BC,RST10 EX DE,HL LDIR - IN A,(WG_SEC) + IN A,(FDC_93.Sector) DEC A LD E,A LD D,0 @@ -5127,7 +5127,7 @@ AUTO_2C7E: LD BC,RST10 EX DE,HL LDIR - IN A,(WG_SEC) + IN A,(FDC_93.Sector) DEC A LD E,A LD D,0 @@ -5224,7 +5224,7 @@ AUTO_2D6F: AUTO_2D73: LD A,E INC A - OUT (WG_SEC),A + OUT (FDC_93.Sector),A PUSH HL LD D,20 PUSH DE @@ -5232,11 +5232,11 @@ AUTO_2D7B: DI LD C,127 LD A,160 - OUT (WG_COM),A + OUT (FDC_93.Command),A CALL AUTO_3FCA POP DE POP HL - IN A,(WG_COM) + IN A,(FDC_93.Command) AND 127 RET Z DEC D @@ -5245,9 +5245,9 @@ AUTO_2D7B: JR NZ,AUTO_2D7B HALT AUTO_2D92: - LD HL,(FL_START) - LD DE,(FL_PLACE) - LD A,(FL_SIZE) + LD HL,(ZX_VARS.FL_START) + LD DE,(ZX_VARS.FL_PLACE) + LD A,(ZX_VARS.FL_SIZE) LD B,A CALL READ_DISK RET @@ -5266,7 +5266,7 @@ CMD_GOTO: CALL RD_HEAD_DSK CALL AUTO_1CB3 JP NZ,AUTO_03D9 - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME LD BC,(AUTO_4020) ADD HL,BC LD (HL),'8' @@ -5293,7 +5293,7 @@ AUTO_2DE3: OUT (C),A POP AF ADD A,'0' - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME LD BC,(AUTO_4020) ADD HL,BC LD (HL),A @@ -5305,7 +5305,7 @@ AUTO_2E05: POP BC DJNZ AUTO_2DE3 LD A,' ' - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME LD BC,(AUTO_4020) ADD HL,BC LD (HL),A @@ -5327,7 +5327,7 @@ AUTO_2E33: JP NZ,AUTO_03D9 CALL AUTO_165D AUTO_2E39: - LD A,(FL_NAME) + LD A,(ZX_VARS.FL_NAME) CP '$' DI JR NZ,AUTO_2E43 @@ -5336,11 +5336,11 @@ AUTO_2E43: LD SP,AUTO_40F0 CALL get_disk_type LD (AUTO_4010),A - LD A,(PDOS_COPY) + LD A,(ZX_VARS.PDOS_COPY) LD (AUTO_4011),A - LD HL,(FL_START) + LD HL,(ZX_VARS.FL_START) PUSH HL - LD DE,(FL_PLACE) + LD DE,(ZX_VARS.FL_PLACE) PUSH DE INC E LD A,E @@ -5407,7 +5407,7 @@ AUTO_2EBC: JP PO,AUTO_2ECC LD A,0 AUTO_2ECC: - LD (K_STATE),A + LD (ZX_VARS.K_STATE),A POP AF POP HL POP DE @@ -5419,35 +5419,35 @@ AUTO_2ECC: POP HL POP DE POP BC - LD A,(BORDER) + LD A,(ZX_VARS.BORDER) AND '8' RRCA RRCA RRCA OUT (0FEH),A - LD A,(AUTO_5B08) + LD A,(ZX_VARS.AUTO_5B08) CP 238 JR NZ,AUTO_2EF7 PUSH BC LD BC,PORT_128 - LD A,(AUTO_5B5C) + LD A,(ZX_VARS.AUTO_5B5C) OUT (C),A POP BC AUTO_2EF7: - LD A,(K_STATE) + LD A,(ZX_VARS.K_STATE) OR A LD A,201 - LD (K_STATE),A + LD (ZX_VARS.K_STATE),A JR NZ,AUTO_2F03 EI AUTO_2F03: POP AF - JP K_STATE + JP ZX_VARS.K_STATE AUTO_2F07: LD A,(AUTO_4011) OR 3Ch AUTO_2F0C: - OUT (P_DOS_FF),A + OUT (FDC_93.DrvCTRL),A RET AUTO_2F0F: LD A,C @@ -5461,7 +5461,7 @@ AUTO_2F0F: AUTO_2F1B: LD A,E INC A - OUT (WG_SEC),A + OUT (FDC_93.Sector),A PUSH HL LD D,20 PUSH DE @@ -5469,11 +5469,11 @@ AUTO_2F23: DI LD C,127 LD A,128 - OUT (WG_COM),A + OUT (FDC_93.Command),A CALL AUTO_3FE5 POP DE POP HL - IN A,(WG_COM) + IN A,(FDC_93.Command) AND 127 RET Z DEC D @@ -5483,8 +5483,8 @@ AUTO_2F23: HALT AUTO_2F3A: LD A,3Ch - OUT (P_DOS_FF),A - LD A,(K_STATE) + OUT (FDC_93.DrvCTRL),A + LD A,(ZX_VARS.K_STATE) AND 8 JR NZ,AUTO_2F4F LD A,C @@ -5493,17 +5493,17 @@ AUTO_2F3A: LD C,A JR NC,AUTO_2F4F LD A,2Ch - OUT (P_DOS_FF),A + OUT (FDC_93.DrvCTRL),A AUTO_2F4F: LD A,C AUTO_2F50: - OUT (WG_DATA),A + OUT (FDC_93.Data),A CALL pause_50ms LD A,24 AUTO_2F57: - OUT (WG_COM),A + OUT (FDC_93.Command),A AUTO_2F59: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 128 JR Z,AUTO_2F59 PUSH BC @@ -5514,7 +5514,7 @@ AUTO_2F65: LD A,8 JR AUTO_2F57 AUTO_2F69: - LD HL,(DOS_SP) + LD HL,(ZX_VARS.DOS_SP) DEC HL DEC HL LD SP,HL @@ -5523,8 +5523,8 @@ AUTO_2F69: ; RST20 procedure ; RST20_EXE: - LD (WORK_2),HL - LD (WORK_4),DE + LD (ZX_VARS.WORK_2),HL + LD (ZX_VARS.WORK_4),DE POP HL LD E,(HL) INC HL @@ -5534,36 +5534,36 @@ RST20_EXE: LD HL,AUTO_3D2F PUSH HL PUSH DE - LD HL,RET_INS + LD HL,ZX_VARS.RET_INS PUSH HL - LD HL,(WORK_2) - LD DE,(WORK_4) + LD HL,(ZX_VARS.WORK_2) + LD DE,(ZX_VARS.WORK_4) RET ; ; INIT DOS VARS ; AUTO_2F90: ; INIT DATA DOS LD HL,0FFFFh - LD (TIME_A),HL - LD (TIME_C),HL - LD (DISK_C),HL + LD (ZX_VARS.TIME_A),HL + LD (ZX_VARS.TIME_C),HL + LD (ZX_VARS.DISK_C),HL CALL INIT_2X80_1 ; *** !!! *** -; LD (DISK_A),HL +; LD (ZX_VARS.DISK_A),HL XOR A - LD (FLAG_BOOT),A - LD (CONT_DISK),A - LD (INT_1_VAR),A - LD (DOS_ERR_2),A - LD (FL_NUMBER+1),A + LD (ZX_VARS.FLAG_BOOT),A + LD (ZX_VARS.CONT_DISK),A + LD (ZX_VARS.INT_1_VAR),A + LD (ZX_VARS.DOS_ERR_2),A + LD (ZX_VARS.FL_NUMBER+1),A LD A,255 - OUT (P_DOS_FF),A - LD (ERR_NR),A - LD (PDOS_COPY),A - LD (BUF_FLAG),A + OUT (FDC_93.DrvCTRL),A + LD (ZX_VARS.ERR_NR),A + LD (ZX_VARS.PDOS_COPY),A + LD (ZX_VARS.BUF_FLAG),A LD A,201 - LD (RET_INS),A + LD (ZX_VARS.RET_INS),A LD A,0D0h - OUT (WG_COM),A + OUT (FDC_93.Command),A RET ; ; @@ -5582,18 +5582,18 @@ AUTO_2FC6: ; AUTO_2FD6: LD B,1 - LD HL,BUFER + LD HL,ZX_VARS.BUFFER JP AUTO_1E67 AUTO_2FDE: PUSH HL - LD DE,(CONT_SEC) + LD DE,(ZX_VARS.CONT_SEC) CALL AUTO_2FD6 - LD A,(MED_LEN) + LD A,(ZX_VARS.MED_LEN) POP DE OR A RET Z LD C,A - LD HL,BUFER + LD HL,ZX_VARS.BUFFER LDIR RET @@ -5663,27 +5663,27 @@ TRDOS_CMD: ; ; AUTO_3032: - LD HL,(E_LINE) - LD (ADR_DOS_COM),HL - LD (DOS_CH_ADR),HL + LD HL,(ZX_VARS.E_LINE) + LD (ZX_VARS.ADR_DOS_COM),HL + LD (ZX_VARS.DOS_CH_ADR),HL LD A,255 - LD (DOS_ERROR),A - LD HL,MED_LEN + LD (ZX_VARS.DOS_ERROR),A + LD HL,ZX_VARS.MED_LEN JR AUTO_3054 -; LD (MED_START),HL ; 3 байта заняты списком команд +; LD (ZX_VARS.MED_START),HL ; 3 байта заняты списком команд ; nop ; nop ; nop AUTO_3048: - LD (ADR_DOS_COM),HL - LD (DOS_CH_ADR),HL + LD (ZX_VARS.ADR_DOS_COM),HL + LD (ZX_VARS.DOS_CH_ADR),HL CALL AUTO_30E1 RET NZ INC HL INC HL AUTO_3054: JP REDIR_LINE_CODING -; LD (MED_START),HL +; LD (ZX_VARS.MED_START),HL AUTO_3057: ; преобразование командной строки !!! CALL AUTO_30A9 ; поиск слова JR NZ,AUTO_3087 ; если нет, выход @@ -5693,7 +5693,7 @@ AUTO_3057: ; LD HL,AUTO_31C8 ADD HL,BC LD A,(HL) - LD HL,(DOS_CH_ADR) + LD HL,(ZX_VARS.DOS_CH_ADR) LD (HL),A INC HL EX DE,HL @@ -5701,10 +5701,10 @@ AUTO_3057: ; PUSH BC RST_ROM ROUTINE.reclaim_2 POP BC - LD A,(DOS_ERROR) + LD A,(ZX_VARS.DOS_ERROR) OR A JR NZ,AUTO_3087 - LD HL,(MED_START) + LD HL,(ZX_VARS.MED_START) LD E,(HL) INC HL LD D,(HL) @@ -5716,12 +5716,12 @@ AUTO_3057: ; DEC HL LD (HL),E AUTO_3087: - LD HL,(DOS_CH_ADR) + LD HL,(ZX_VARS.DOS_CH_ADR) LD A,(HL) CP 13 RET Z INC HL ; следующее слово - LD (DOS_CH_ADR),HL + LD (ZX_VARS.DOS_CH_ADR),HL LD A,(HL) CP 13 RET Z @@ -5735,10 +5735,10 @@ AUTO_309A: CP '"' JR NZ,AUTO_309A INC HL - LD (DOS_CH_ADR),HL + LD (ZX_VARS.DOS_CH_ADR),HL JR AUTO_3057 AUTO_30A9: - LD HL,(DOS_CH_ADR) + LD HL,(ZX_VARS.DOS_CH_ADR) LD DE,AUTO_30FD LD C,0 AUTO_30B1: @@ -5766,7 +5766,7 @@ AUTO_30C8: RET Z AUTO_30CD: INC C - LD HL,(DOS_CH_ADR) + LD HL,(ZX_VARS.DOS_CH_ADR) INC DE LD A,(DE) CP 255 @@ -5780,22 +5780,22 @@ AUTO_30D9: JR Z,AUTO_30D9 JR AUTO_30CD AUTO_30E1: - LD HL,(PPC) + LD HL,(ZX_VARS.PPC) INC HL INC HL LD A,H OR L JR Z,AUTO_30F4 XOR A - LD (DOS_ERROR),A + LD (ZX_VARS.DOS_ERROR),A DEC HL DEC HL RST_ROM ROUTINE.line_addr RET AUTO_30F4: LD A,255 - LD (DOS_ERROR),A - LD HL,(E_LINE) + LD (ZX_VARS.DOS_ERROR),A + LD HL,(ZX_VARS.E_LINE) RET ; ; @@ -5860,37 +5860,34 @@ AUTO_31C8: ; ; ; -AUTO_31F3: BLOCK #31F3 - $,255 - LD HL,(CHANS) +AUTO_31F3: + LD HL,(ZX_VARS.CHANS) OR A - LD BC,BUFER + LD BC,ZX_VARS.BUFFER SBC HL,BC RET - RST R38 - RST R38 - RST R38 -; -; -; + + + BLOCK #3200-$,#FF INIT_2X80: JP AUTO_106E INIT_2X80_1: XOR A - LD (OPER_DISK),A - LD A,3Ch - LD (PDOS_COPY),A - OUT (P_DOS_FF),A - LD HL,8383h - LD (DISK_A),HL - LD (DISK_B),HL - LD (DISK_C),HL - LD (DISK_D),HL - LD HL,303H - LD (TIME_A),HL - LD (TIME_B),HL - LD (TIME_C),HL - LD (TIME_D),HL + LD (ZX_VARS.OPER_DISK),A + LD A,#3C + LD (ZX_VARS.PDOS_COPY),A + OUT (FDC_93.DrvCTRL),A + LD HL,#8383 + LD (ZX_VARS.DISK_A),HL + LD (ZX_VARS.DISK_B),HL + LD (ZX_VARS.DISK_C),HL + LD (ZX_VARS.DISK_D),HL + LD HL,#0303 + LD (ZX_VARS.TIME_A),HL + LD (ZX_VARS.TIME_B),HL + LD (ZX_VARS.TIME_C),HL + LD (ZX_VARS.TIME_D),HL ; CALL INIT_SYS_PAGE RET ; @@ -5898,7 +5895,7 @@ INIT_2X80_1: ; LOAD_CR: LD A,13 - LD (COM_LN_COPY),A + LD (ZX_VARS.COM_LN_COPY),A JP AUTO_021D ; ; @@ -5909,9 +5906,9 @@ PRINT_TRK: PUSH AF PUSH DE LD A,207 - LD (SCR_PL_L),A + LD (ZX_VARS.SCR_PL_L),A LD A,15 - LD (SCR_POS_L),A + LD (ZX_VARS.SCR_POS_L),A LD A,E JR CONV1 ; @@ -5969,7 +5966,7 @@ MSG_AT00: FORM_STATE: CALL INPUT_TXT CALL SINTAX_RET - LD HL,(CH_ADR) + LD HL,(ZX_VARS.CH_ADR) LD A,(HL) CP '"' JR NZ,FORM_NO_NEXT @@ -5984,13 +5981,13 @@ FORM_NO_NEXT: CP ' ' JP C,CMD_ERROR AND #DF - LD (MED_START+1),A + LD (ZX_VARS.MED_START+1),A RET ; ; FORM_F01: INC HL - LD A,(FL_LEN) + LD A,(ZX_VARS.FL_LEN) LD (HL),A XOR A RET @@ -6006,9 +6003,9 @@ PRINT_SIDE0: PR_SIDE_X: PUSH AF LD A,219 - LD (SCR_PL_L),A + LD (ZX_VARS.SCR_PL_L),A LD A,27 - LD (SCR_POS_L),A + LD (ZX_VARS.SCR_POS_L),A POP AF RST RST10 POP AF @@ -6035,12 +6032,12 @@ PAUSE_X01: PRINT_NAME: - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) ADD A,'A' RST RST10 LD A,':' RST RST10 - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME JP AUTO_2938 @@ -6057,7 +6054,7 @@ REWR_CONT1: SET_7_TYPE: CALL AUTO_165D - LD HL,FL_TYPE + LD HL,ZX_VARS.FL_TYPE SET 7,(HL) RET @@ -6072,7 +6069,7 @@ FORM_X02: RET FORM_X03: - LD A,(MED_START+1) + LD A,(ZX_VARS.MED_START+1) CP 15H CALL AUTO_1C57 CALL AUTO_1D97 @@ -6083,7 +6080,7 @@ FORM_X03: FORM_X04: CALL AUTO_106E - LD A,(MED_START+1) + LD A,(ZX_VARS.MED_START+1) AND A JR NZ,FORM_NO_Q CALL DISK_REDIR @@ -6098,7 +6095,7 @@ FORM_X05: AND A JP Z,AUTO_01D3 FORM_NO_Q: - LD (MED_START+1),A + LD (ZX_VARS.MED_START+1),A SUB 11H JR Z,F_ORIGINAL JR C,FORM_X05 @@ -6115,8 +6112,8 @@ F_ORIGINAL: ; Original FORMAT FORM_X07: XOR A FORM_X08: - LD (FL_LEN),A - LD (FL_START),HL + LD (ZX_VARS.FL_LEN),A + LD (ZX_VARS.FL_START),HL CALL LOW_CLS_AT00 RET @@ -6147,7 +6144,7 @@ LOW_CLS_AT00: JP PRINT_LINE TYPE_FL_X00: - LD A,(FL_TYPE) + LD A,(ZX_VARS.FL_TYPE) CP 'B' JR Z,TYPE_FL_X01 CP 'D' @@ -6155,9 +6152,9 @@ TYPE_FL_X00: CP '#' JR Z,TYPE_FL_X01 LD A,'C' - LD (FL_TYPE),A + LD (ZX_VARS.FL_TYPE),A TYPE_FL_X01: - LD A,(DOS_ERROR) + LD A,(ZX_VARS.DOS_ERROR) RET @@ -6170,7 +6167,7 @@ TYPE_FL_X03: JP AUTO_1B53 OWERWR_X01: - LD HL,FL_TYPE + LD HL,ZX_VARS.FL_TYPE BIT 7,(HL) JR NZ,OWERWR_X02 JP AUTO_1B59 @@ -6178,34 +6175,34 @@ OWERWR_X02: RES 7,(HL) CALL OWERWR_1 JP NZ,AUTO_01D3 - LD DE,(DOS_CH_ADR) + LD DE,(ZX_VARS.DOS_CH_ADR) LD A,E OR A JR Z,OWERWR_X03 INC D OWERWR_X03: - LD A,(FL_SIZE) + LD A,(ZX_VARS.FL_SIZE) CP D JR NC,OWERWR_X04 CALL AUTO_2926 JR TYPE_FL_X03 OWERWR_X04: LD B,D - LD HL,(E_LINE) + LD HL,(ZX_VARS.E_LINE) LD (HL),170 INC HL - LD DE,(AUTO_5CD1) + LD DE,(ZX_VARS.AUTO_5CD1) LD (HL),E INC HL LD (HL),D LD C,6 - LD HL,(MED_LEN) - LD (FL_LEN),HL - LD HL,(MED_START) - LD (FL_START),HL - LD DE,(FL_PLACE) + LD HL,(ZX_VARS.MED_LEN) + LD (ZX_VARS.FL_LEN),HL + LD HL,(ZX_VARS.MED_START) + LD (ZX_VARS.FL_START),HL + LD DE,(ZX_VARS.FL_PLACE) CALL WRITE_DISK - LD BC,(FL_NUMBER) + LD BC,(ZX_VARS.FL_NUMBER) CALL AUTO_1BBF CALL AUTO_1665 RET @@ -6218,12 +6215,12 @@ LABEL_X00: ;/////////////////////////////////// SIDE_FORMAT: ; Для форматирования с номером стороны !!! - LD A,(PDOS_COPY) + LD A,(ZX_VARS.PDOS_COPY) BIT 5,A JR Z,SIDE_OUTS INC D SIDE_OUTS: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR Z,SIDE_OUTS RET M @@ -6239,7 +6236,7 @@ SIDE_OUTS: ;************************************** MOVE_X00: - LD HL,(FL_N_4) + LD HL,(ZX_VARS.FL_N_4) MOVE_X01: LD A,(HL) CP 0 @@ -6260,31 +6257,31 @@ MOVE_X03: LD E,(HL) INC HL LD D,(HL) - LD HL,(MED_START) + LD HL,(ZX_VARS.MED_START) AND A SBC HL,DE ADD HL,DE JR Z,MOVE_X05 - LD (AUTO_5CD5),DE + LD (ZX_VARS.AUTO_5CD5),DE LD A,C - LD (AUTO_5CD3),A + LD (ZX_VARS.AUTO_5CD3),A CALL AUTO_17A5 MOVE_X04: POP HL PUSH HL - LD DE,(FL_N_2) + LD DE,(ZX_VARS.FL_N_2) LD BC,RST10 LDIR - LD (FL_N_2),DE + LD (ZX_VARS.FL_N_2),DE EX DE,HL - LD DE,(FL_NAME) + LD DE,(ZX_VARS.FL_NAME) DEC HL LD (HL),D DEC HL LD (HL),E - LD HL,(MED_START) - LD (FL_NAME),HL - LD HL,FL_N_6 + LD HL,(ZX_VARS.MED_START) + LD (ZX_VARS.FL_NAME),HL + LD HL,ZX_VARS.FL_N_6 INC (HL) POP HL RET @@ -6306,12 +6303,12 @@ MOVE_X06: AND 15 ADD A,D LD D,A - LD (MED_START),DE + LD (ZX_VARS.MED_START),DE JR MOVE_X04 ;************************************* EDIT_RET: - LD HL,(E_LINE) + LD HL,(ZX_VARS.E_LINE) LD (HL),254 INC HL LD (HL),13 @@ -6329,12 +6326,12 @@ EDIT_X00: JR NZ,EDIT_X02 CALL BEEP_1 CALL AUTO_212A ; восстановление ком. строки - LD HL,(E_LINE) + LD HL,(ZX_VARS.E_LINE) LD A,13 LD BC,0 CPIR DEC HL - LD (K_CUR),HL + LD (ZX_VARS.K_CUR),HL INC HL INC HL LD (HL),128 @@ -6391,8 +6388,8 @@ RUS_PRINT: LD BC,RST08 LDIR LD A,201 - LD (AUTO_5C9A),A - JP AUTO_5C9A + LD (ZX_VARS.AUTO_5C9A),A + JP ZX_VARS.AUTO_5C9A ;************************************** @@ -6422,43 +6419,43 @@ AUTO_3C09: ;!FIXIT not used BLOCK #3C10 - $,255 ;KBD_EXP: - LD A,D_ROM16OFF - OUT (CNF_PORT),A + LD A,CNF_PORT.ZX_BIOS + OUT (CNF_PORT.ON),A RET ; ;************************************ ;!FIXIT not used BLOCK #3C18 - $,255 ;KBD_OFF: - LD A,D_ROM16OFF - OUT (CNF_PORT),A + LD A,CNF_PORT.ZX_BIOS + OUT (CNF_PORT.ON),A RET ;************************************ ;!FIXIT not used BLOCK #3C20 - $,255 READR_X: - CALL get_disk_time: + CALL get_disk_time LD B,A JP set_side_0 ;************************************ ;!FIXIT not used BLOCK #3C30 - $,255 - IN A,(WG_COM) + IN A,(FDC_93.Command) RET ;***************************** NEW_NAME: - DB 22,1,3,"* Sprinter TR-DOS v.7.01 *" - DB 22,3,6, "(c) 2001 PETERS PLUS" - DB 22,5,12, "* R.F.*" + DB 22,1,3, "* Sprinter TR-DOS v.7.02 *" + DB 22,3,6, "(c) 2023 Sprinter Team" + DB 22,5,14, "*R.F.*" DB 22,7,9, "BETA 4Mb",0 ;***************************** ;FORMATER: -; LD DE,(E_LINE) +; LD DE,(ZX_VARS.E_LINE) ; LD HL,TX_FORMAT ; LD BC,LEN_TX_F ; LDIR @@ -6499,8 +6496,9 @@ EXP_FNS_PREPARE: CALL EXP_FNS_PREPARE_EXIT EX (SP),HL PUSH AF - LD A,L - AND 4 + BIT 2,L + ; LD A,L + ; AND 4 JR Z,.no_EI EI .no_EI: POP AF @@ -6528,16 +6526,16 @@ CMD_COPY.FIXED: BLOCK #3CC0 - $,255 MAGIC_1: PUSH AF - LD A,D_ROM16OFF - OUT (CNF_PORT),A + LD A,CNF_PORT.ZX_BIOS + OUT (CNF_PORT.ON),A POP AF JP MAGIC_2 ;******************************* BLOCK #3CC9 - $,255 MAGIC_3: PUSH AF - LD A,D_ROM16OFF - OUT (CNF_PORT),A + LD A,CNF_PORT.ZX_BIOS + OUT (CNF_PORT.ON),A POP AF RETN @@ -6617,7 +6615,7 @@ AUTO_3D21: NOP NOP CALL C,AUTO_3D4C ; если нет, то вызвать программу иниц. - LD HL,RET_INS + LD HL,ZX_VARS.RET_INS RET NOP NOP @@ -6641,22 +6639,22 @@ AUTO_3D44: RST RST08 DB 49 ;!HARDCODE LD A,1 - LD (INTERF_I),A + LD (ZX_VARS.INTERF_I),A RET .Size EQU $-AUTO_3D44 AUTO_3D4C: XOR A - OUT (P_DOS_FF),A + OUT (FDC_93.DrvCTRL),A IN A,(#F6) LD HL,AUTO_3D38 - LD DE,MEM_BOT + LD DE,ZX_VARS.MEM_BOT LD BC,AUTO_3D38.Size + AUTO_3D44.Size LDIR LD HL,AUTO_3D67 PUSH HL LD HL,AUTO_3D2F PUSH HL - JP MEM_BOT + JP ZX_VARS.MEM_BOT AUTO_3D67: ; получить память для DOS LD HL,AUTO_2F90 ; и вернуться в программу иниц. VARS @@ -6665,10 +6663,10 @@ AUTO_3D67: ; PUSH HL LD HL,1655h ;!HARDCODE PUSH HL - LD HL,AUTO_5BFF + LD HL,ZX_VARS.AUTO_5BFF PUSH HL LD (HL),#C9 ; RET code - LD HL,P_RAMTOP+1 + LD HL,ZX_VARS.P_RAMTOP+1 LD BC,CONT_8+7 RET PRINT_CR: @@ -6694,7 +6692,7 @@ AUTO_3D94: AUTO_3D98: LD A,8 WG93_EXE: - OUT (WG_COM),A + OUT (FDC_93.Command),A AUTO_3D9C: PUSH HL RST_ROM ROUTINE.break_key @@ -6703,7 +6701,7 @@ AUTO_3D9C: RST_ROM ROUTINE.report_l AUTO_3DA5: POP HL - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 128 JR Z,AUTO_3D9C RET @@ -6711,11 +6709,11 @@ RESET_WG: LD A,8 CALL WG93_EXE LD DE,0 - IN A,(WG_COM) + IN A,(FDC_93.Command) AND 2 LD B,A AUTO_3DBA: - IN A,(WG_COM) + IN A,(FDC_93.Command) AND 2 CP B RET NZ @@ -6725,15 +6723,15 @@ AUTO_3DBA: JR NZ,AUTO_3DBA JP AUTO_3EE7 AUTO_3DC8: - LD A,(CONT_DISK) + LD A,(ZX_VARS.CONT_DISK) SET_DISK: JP RAMD_X12 AUTO_3DCE: - LD HL,PDOS_COPY + LD HL,ZX_VARS.PDOS_COPY LD C,A LD A,3Ch OR C - OUT (P_DOS_FF),A + OUT (FDC_93.DrvCTRL),A LD (HL),A CALL get_disk_time AND 128 @@ -6765,14 +6763,14 @@ AUTO_3E01: JR NZ,pause_1ms RET get_disk_time: - LD DE,TIME_A + LD DE,ZX_VARS.TIME_A AUTO_3E0B: - LD HL,(OPER_DISK) + LD HL,(ZX_VARS.OPER_DISK) ADD HL,DE LD A,(HL) RET get_disk_type: - LD DE,DISK_A + LD DE,ZX_VARS.DISK_A JR AUTO_3E0B test_disk: CALL get_disk_time @@ -6788,12 +6786,12 @@ AUTO_3E1D: LD B,(HL) LD A,1 CALL Goto_trk - IN A,(WG_COM) + IN A,(FDC_93.Command) AND 4 JR NZ,AUTO_3E3F XOR A CALL Goto_trk - IN A,(WG_COM) + IN A,(FDC_93.Command) AND 4 RET NZ AUTO_3E3F: @@ -6802,15 +6800,15 @@ AUTO_3E3F: RET Z JR AUTO_3E1D Goto_trk: - OUT (WG_DATA),A + OUT (FDC_93.Data),A LD A,B OR 24 JP WG93_EXE_ Goto_trkx: - OUT (WG_DATA),A + OUT (FDC_93.Data),A PUSH BC LD B,A - IN A,(WG_TRK) + IN A,(FDC_93.Track) CP B POP BC PUSH AF @@ -6834,11 +6832,11 @@ Global_trk: JR Z,AUTO_3E83 BIT 0,(HL) JR NZ,AUTO_3E83 - IN A,(WG_TRK) + IN A,(FDC_93.Track) CP C JR Z,AUTO_3E82 RLCA - OUT (WG_TRK),A + OUT (FDC_93.Track),A LD A,C RLCA AUTO_3E82: @@ -6846,7 +6844,7 @@ AUTO_3E82: AUTO_3E83: CALL get_disk_time LD B,A - IN A,(WG_TRK) + IN A,(FDC_93.Track) CP C PUSH BC CALL NZ,pause_50ms @@ -6855,12 +6853,12 @@ AUTO_3E83: CALL Goto_trkx POP BC LD A,C - OUT (WG_TRK),A - LD A,(DRV_READY) + OUT (FDC_93.Track),A + LD A,(ZX_VARS.DRV_READY) OR A RET Z XOR A - LD (DRV_READY),A + LD (ZX_VARS.DRV_READY),A pause_750ms: LD B,3 AUTO_3EA2: @@ -6878,10 +6876,10 @@ made_trk_side2: READ_ADR_LABL: CALL set_side_0 ; SET SIDE 0 READ_ADR_LABL2: - IN A,(WG_COM) + IN A,(FDC_93.Command) AND 128 - LD (DRV_READY),A - IN A,(WG_TRK) + LD (ZX_VARS.DRV_READY),A + IN A,(FDC_93.Track) LD H,A ; на текущую дорожку CALL Goto_trk ; позиционирование ; CALL READR_X @@ -6889,11 +6887,11 @@ READ_ADR_LABL2: LD D,1 DI LD A,0C0h ; чтение адресной метки - OUT (WG_COM),A + OUT (FDC_93.Command),A PUSH BC LD B,6 AUTO_3ECE: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR NZ,AUTO_3EF2 INC DE @@ -6904,32 +6902,32 @@ AUTO_3ECE: POP BC EI LD A,208 ; прервать выполнение - OUT (WG_COM),A - LD A,(AUTO_5CD1) + OUT (FDC_93.Command),A + LD A,(ZX_VARS.AUTO_5CD1) CP 255 RET Z AUTO_3EE7: CALL set_error_26 LD A,255 - LD (FLAG_BOOT),A + LD (ZX_VARS.FLAG_BOOT),A JP exit_No_disk AUTO_3EF2: POP BC IN H,(C) AUTO_3EF5: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR Z,AUTO_3EF5 EI RET M DI - IN A,(WG_DATA) + IN A,(FDC_93.Data) JR AUTO_3EF5 save_sector: - LD (SEC_NUM),A + LD (ZX_VARS.SEC_NUM),A RET save_bufer: - LD (CONT_BUF_ADR),HL + LD (ZX_VARS.CONT_BUF_ADR),HL RET AUTO_3F0A: LD A,160 @@ -6937,19 +6935,19 @@ AUTO_3F0A: AUTO_3F0E: LD A,128 AUTO_3F10: - LD (COMAND_WG),A + LD (ZX_VARS.COMAND_WG),A AUTO_3F13: LD D,10 AUTO_3F15: PUSH DE DI - LD A,(SEC_NUM) + LD A,(ZX_VARS.SEC_NUM) INC A - OUT (WG_SEC),A - LD HL,(CONT_BUF_ADR) + OUT (FDC_93.Sector),A + LD HL,(ZX_VARS.CONT_BUF_ADR) LD C,127 - LD A,(COMAND_WG) - OUT (WG_COM),A + LD A,(ZX_VARS.COMAND_WG) + OUT (FDC_93.Command),A CP 160 PUSH AF CALL Z,AUTO_3FBA @@ -6957,7 +6955,7 @@ AUTO_3F15: CALL NZ,AUTO_3FD5 POP DE EI - IN A,(WG_COM) + IN A,(FDC_93.Command) LD B,A AND 127 RET Z @@ -6974,14 +6972,14 @@ AUTO_3F48: LD HL,DISK_ERROR_MSG AUTO_3F4B: LD A,208 - OUT (WG_COM),A + OUT (FDC_93.Command),A LD A,B AND 1 JP NZ,AUTO_3EE7 - IN A,(WG_TRK) + IN A,(FDC_93.Track) OR A JR NZ,AUTO_3F5F - IN A,(WG_SEC) + IN A,(FDC_93.Sector) CP 10 RET Z AUTO_3F5F: @@ -6991,11 +6989,11 @@ AUTO_3F5F: RST PRINT_LN LD HL,AUTO_2A13 RST PRINT_LN - IN A,(WG_TRK) + IN A,(FDC_93.Track) CALL AUTO_1DA3 LD HL,AUTO_2A18 RST PRINT_LN - IN A,(WG_SEC) + IN A,(FDC_93.Sector) CALL AUTO_1DA3 LD HL,AUTO_29FE RST PRINT_LN @@ -7009,10 +7007,10 @@ AUTO_3F7B: JR NZ,AUTO_3F7B CALL set_error_26 LD A,7 - LD (DOS_ERR_2),A + LD (ZX_VARS.DOS_ERR_2),A JP AUTO_01D3 AUTO_3F94: - LD A,(CONT_TRK) + LD A,(ZX_VARS.CONT_TRK) CALL Global_trk CALL pause_750ms JP AUTO_3F13 @@ -7026,7 +7024,7 @@ AUTO_3FA0: INC (HL) AUTO_3FAD: CALL AUTO_3D98 - LD A,(CONT_TRK) + LD A,(ZX_VARS.CONT_TRK) CALL Global_trk POP DE JP AUTO_3F15 @@ -7036,7 +7034,7 @@ AUTO_3FAD: AUTO_3FBA: LD B,4 AUTO_3FBC: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR NZ,AUTO_3FD1 INC DE @@ -7046,7 +7044,7 @@ AUTO_3FBC: DJNZ AUTO_3FBC RET AUTO_3FCA: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR Z,AUTO_3FCA RET M @@ -7059,7 +7057,7 @@ AUTO_3FD1: AUTO_3FD5: LD B,4 AUTO_3FD7: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR NZ,AUTO_3FEC INC DE @@ -7069,7 +7067,7 @@ AUTO_3FD7: DJNZ AUTO_3FD7 RET AUTO_3FE5: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR Z,AUTO_3FE5 RET M @@ -7086,7 +7084,7 @@ HD_CMD: PUSH AF DI ;LD A,SYS_PORT.EXTENSION LD A,1 - OUT (SYS_PORT_ON),A + OUT (SYS_PORT.ROM),A POP AF RET ;--------------------------------------- @@ -7101,7 +7099,7 @@ EXP_FNS:;!TEST 06/01/2024 JP EXP_FNS_PREPARE EXP_FNS_PREPARE_RET: ; - OUT (SYS_PORT_ON),A + OUT (SYS_PORT.ROM),A POP AF RET ;--------------------------------------- diff --git a/Shared_Includes b/Shared_Includes index d3cdfc6..84d47b2 160000 --- a/Shared_Includes +++ b/Shared_Includes @@ -1 +1 @@ -Subproject commit d3cdfc6e7644fab96ebe2c6e87959359cda6319c +Subproject commit 84d47b2818758fdceda21ecf2953324c1f339858 diff --git a/TRDOS/TR_MSD_2.ASZ b/TRDOS/TR_MSD_2.ASZ index 87dbeac..f68ecc2 100644 --- a/TRDOS/TR_MSD_2.ASZ +++ b/TRDOS/TR_MSD_2.ASZ @@ -28,13 +28,13 @@ MSDOS_1ST_FL: MSDOS_TEST_FL: PUSH DE DI - IN A,(PAGE3) + IN A,(SLOT3) LD E,A LD A,SYS_PAGE - OUT (PAGE3),A + OUT (SLOT3),A LD A,E LD E,(HL) - OUT (PAGE3),A + OUT (SLOT3),A EI LD A,E POP DE @@ -53,16 +53,16 @@ MSDOS_NEXT_FL: LD DE,20H ADD HL,DE DI - IN A,(PAGE3) + IN A,(SLOT3) LD D,A LD A,SYS_PAGE - OUT (PAGE3),A - LD A,(COUNT_FL) + OUT (SLOT3),A + LD A,(SYS_PAGE.COUNT_FL) DEC A - LD (COUNT_FL),A + LD (SYS_PAGE.COUNT_FL),A LD E,A LD A,D - OUT (PAGE3),A + OUT (SLOT3),A ; RET_PAGE3 EI LD A,E @@ -71,16 +71,16 @@ MSDOS_NEXT_FL: JR NZ,MSDOS_TEST_FL PUSH DE DI - IN A,(PAGE3) + IN A,(SLOT3) LD D,A LD A,SYS_PAGE - OUT (PAGE3),A - LD A,(COUNT_SEC) + OUT (SLOT3),A + LD A,(SYS_PAGE.COUNT_SEC) DEC A - LD (COUNT_SEC),A + LD (SYS_PAGE.COUNT_SEC),A LD E,A LD A,D - OUT (PAGE3),A + OUT (SLOT3),A ; RET_PAGE3 EI LD A,E @@ -91,7 +91,7 @@ MSDOS_NEXT_FL: PUSH DE CALL READ_NEXT_DIR POP DE - LD HL,MS_DIR + LD HL,SYS_PAGE.MS_DIR JR MSDOS_TEST_FL ;********************************** @@ -140,7 +140,7 @@ CAT_END: PRINT_MSD_NAME: PUSH HL PUSH DE - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME LD A,' ' RST 10H LD A,' ' @@ -169,7 +169,7 @@ PRINT_MSD_L2: PRINT_MSD_DATS: PUSH HL PUSH DE - LD HL,FL_PLACE+1 + LD HL,ZX_VARS.FL_PLACE+1 LD A,(HL) DEC HL CALL PRINT_HEX_A @@ -199,12 +199,12 @@ COPY_NAME_MSD: PUSH HL PUSH DE DI - IN A,(PAGE3) + IN A,(SLOT3) LD C,A LD A,SYS_PAGE - OUT (PAGE3),A + OUT (SLOT3),A LD A,C - LD DE,FL_NAME + LD DE,ZX_VARS.FL_NAME LD BC,11 LDIR @@ -214,7 +214,7 @@ COPY_NAME_MSD: LDIR LD L,(HL) - OUT (PAGE3),A + OUT (SLOT3),A ; RET_PAGE3 EI LD A,L @@ -230,7 +230,7 @@ CMD_MSDOS: ; MS-DOS CALL SINTAX_RET LD HL,WORDS LOOP_FIND2: - LD DE,(ADR_DOS_COM) + LD DE,(ZX_VARS.ADR_DOS_COM) INC DE ; Пропустить / LD A,(HL) @@ -283,19 +283,19 @@ END_TAB: JR C,END_TAB3 CP 4 JR NC,END_TAB2 - LD (OPER_DISK),A - LD (CONT_DISK),A + LD (ZX_VARS.OPER_DISK),A + LD (ZX_VARS.CONT_DISK),A LD B,A - LD A,(PDOS_COPY) + LD A,(ZX_VARS.PDOS_COPY) AND 7CH OR B - LD (PDOS_COPY),A - OUT (P_DOS_FF),A + LD (ZX_VARS.PDOS_COPY),A + OUT (FDC_93.DrvCTRL),A JP AUTO_03E1 END_TAB2: SUB 4 - CP RAMD_KEY_NUM + CP SYS_PAGE.RAMD_KEYS.NUM JR NC,END_TAB3 CALL RAMD_SET1 JP AUTO_03E1 @@ -314,12 +314,12 @@ LOAD_RMD: CALL RAMD_SYM ; получить номер RAM-Disk из (DE) JP C,MSD_ERR LOAD_RMD_XX: - LD (MED_START+1),A ; сохранить + LD (ZX_VARS.MED_START+1),A ; сохранить CALL MSDOS_FIND_FILE JP C,MSD_ERR CALL RMD_BLKS_FL ; B - число блоков , DE - абсолютный сектор - LD A,(MED_START+1) + LD A,(ZX_VARS.MED_START+1) PUSH AF CALL CLEAR_RMD_A ; освободить RAM-Disk A POP AF @@ -332,13 +332,13 @@ LOAD_RMD_XX: SAVE_RMD: CALL RAMD_SYM ; получить номер RAM-Disk из (DE) JP C,MSD_ERR - LD (MED_START+1),A + LD (ZX_VARS.MED_START+1),A CALL MSDOS_FIND_FILE JP C,MSD_ERR CALL RMD_BLKS_FL - LD A,(MED_START+1) + LD A,(ZX_VARS.MED_START+1) CALL TEST_RAMD ; проверить наличие RAM-Disk A размером B JP C,MSD_ERR ; A - номер первого блока JP Z,MSD_ERR @@ -348,9 +348,9 @@ SAVE_RMD: JP AUTO_03E1 RMD_BLKS_FL: - LD A,(FL_SIZE+2) + LD A,(ZX_VARS.FL_SIZE+2) PUSH HL - LD HL,(FL_SIZE) + LD HL,(ZX_VARS.FL_SIZE) LD B,A AND A RL L @@ -372,7 +372,7 @@ RMD_BLKS_L2: MSDOS_KOMP_FL: ; DE - ИМЯ ФАЙЛА СО *,? ; HL - ИМЯ В КАТАЛОГЕ CALL COPY_NAME_MSD ; ПЕРЕМЕСТИТЬ ИМЯ В ОБЛАСТЬ TR-DOS - LD A,(FL_NAME) + LD A,(ZX_VARS.FL_NAME) AND A JR NZ,KOMP_CONT1 LD A,2 ; КОНЕЦ КАТАЛОГА @@ -389,7 +389,7 @@ KOMP_CONT1: KOMP_CONT2: PUSH DE PUSH HL - LD HL,FL_NAME + LD HL,ZX_VARS.FL_NAME CALL MSDOS_KOMP_ALL POP HL POP DE @@ -485,11 +485,11 @@ CALC_CLAST: ; HL - DEC HL DEC HL DI - IN A,(PAGE3) + IN A,(SLOT3) EX AF,AF' LD A,SYS_PAGE - OUT (PAGE3),A - LD A,(MS_BPB+CLAST_SIZE) + OUT (SLOT3),A + LD A,(SYS_PAGE.MS_BPB+CLAST_SIZE) EX DE,HL LD BC,0 @@ -504,14 +504,14 @@ CALC_CL_LP: DEC A JR NZ,CALC_CL_LP - LD DE,(MSD_DAT_SEC) - LD BC,(MSD_DAT_SEC2) + LD DE,(SYS_PAGE.MSD_DAT_SEC) + LD BC,(SYS_PAGE.MSD_DAT_SEC2) ADD IX,DE ADC HL,BC ; HL,IX - СМЕЩЕНИЕ КЛАСТЕРА ОТ НАЧАЛА ДАННЫХ EX AF,AF' - OUT (PAGE3),A + OUT (SLOT3),A PUSH IX EX (SP),HL diff --git a/TRDOS/TR_MSD_3.ASZ b/TRDOS/TR_MSD_3.ASZ index d9ec5d5..6f8675a 100644 --- a/TRDOS/TR_MSD_3.ASZ +++ b/TRDOS/TR_MSD_3.ASZ @@ -31,16 +31,16 @@ INIT_RMD: RAMD_FAT_PROG: CALL AUTO_1D97 ; CLS CALL OPEN_CH2 - LD HL,RAMD_FAT + LD HL,SYS_PAGE.RAMD_FAT RAMD_F_L1: DI - IN A,(PAGE3) + IN A,(SLOT3) LD C,A LD A,SYS_PAGE - OUT (PAGE3),A + OUT (SLOT3),A LD A,C LD C,(HL) - OUT (PAGE3),A + OUT (SLOT3),A EI PUSH HL LD A,C @@ -85,19 +85,19 @@ TB_ONOFF: ; загрузки ;*************************************************************************** MSDOS_WRITE_FILE: - LD (CONT_BUF_ADR),HL ; адрес загрузки - LD (MED_START),A ; страница загрузки + LD (ZX_VARS.CONT_BUF_ADR),HL ; адрес загрузки + LD (ZX_VARS.MED_START),A ; страница загрузки LD A,TRDOS_ROM_CMD.WRITE JR MSDOS_R_W_FILE ; MSDOS_READ_FILE: - LD (CONT_BUF_ADR),HL ; адрес загрузки - LD (MED_START),A ; страница загрузки + LD (ZX_VARS.CONT_BUF_ADR),HL ; адрес загрузки + LD (ZX_VARS.MED_START),A ; страница загрузки LD A,TRDOS_ROM_CMD.READ MSDOS_R_W_FILE: - LD (MED_LEN),A + LD (ZX_VARS.MED_LEN),A ; beg=start_claster. Получить начальный кластер - LD IX,(START_CLASTER) ; стартовый кластер + LD IX,(ZX_VARS.START_CLUSTER) ; стартовый кластер ; next=beg ; max=file_len. длина в кластерах CALL GET_FILE_CLASTERS_BC @@ -109,14 +109,14 @@ msd_rf_cont2: ; max2=blk_len ; длина блока в кластерах ; DI ; GET_BLK_CLASTERS_L -; IN A,(PAGE3) +; IN A,(SLOT3) ; EX AF,AF' ; LD A,SYS_PAGE -; OUT (PAGE3),A +; OUT (SLOT3),A ; LD A,(C_P_B) ; LD L,A ; EX AF,AF' -; OUT (PAGE3),A +; OUT (SLOT3),A ; EI LD L,128 @@ -218,7 +218,7 @@ READ_num_clasters_from_beg: CALL CLAST_TO_SEC PUSH AF - LD A,(MED_LEN) + LD A,(ZX_VARS.MED_LEN) LD C,A SUB TRDOS_ROM_CMD.READ JR Z,CONT_XX1 @@ -236,13 +236,13 @@ LOOP_128: PUSH IX PUSH BC - LD HL,(CONT_BUF_ADR) - LD A,(MED_START) + LD HL,(ZX_VARS.CONT_BUF_ADR) + LD A,(ZX_VARS.MED_START) CALL MSD_R_W_UT - LD (CONT_BUF_ADR),HL - LD (MED_START),A + LD (ZX_VARS.CONT_BUF_ADR),HL + LD (ZX_VARS.MED_START),A POP BC POP IX @@ -289,14 +289,14 @@ CLAST_TO_SEC: CALL CALC_CLAST DI - IN A,(PAGE3) + IN A,(SLOT3) LD B,A LD A,SYS_PAGE - OUT (PAGE3),A - LD A,(MS_BPB+CLAST_SIZE) + OUT (SLOT3),A + LD A,(SYS_PAGE.MS_BPB+CLAST_SIZE) LD C,A LD A,B - OUT (PAGE3),A + OUT (SLOT3),A EI POP AF @@ -332,14 +332,14 @@ FAT_DE_to_HL: PUSH BC PUSH IX DI - IN A,(PAGE3) + IN A,(SLOT3) LD C,A LD A,SYS_PAGE - OUT (PAGE3),A + OUT (SLOT3),A LD A,C - LD HL,(FAT_FLAG) - LD BC,(MS_BPB+SEC_SIZE) ; размер сектора - OUT (PAGE3),A + LD HL,(SYS_PAGE.FAT_FLAG) + LD BC,(SYS_PAGE.MS_BPB+SEC_SIZE) ; размер сектора + OUT (SLOT3),A EI PUSH HL @@ -394,20 +394,20 @@ CALL_ALL: AND B LD H,A - LD BC,MS_FAT + LD BC,SYS_PAGE.MS_FAT ADD HL,BC DI - IN A,(PAGE3) + IN A,(SLOT3) LD C,A LD A,SYS_PAGE - OUT (PAGE3),A + OUT (SLOT3),A LD A,C - LD (FAT_FLAG),DE + LD (SYS_PAGE.FAT_FLAG),DE LD C,(HL) ; считать кластер INC HL LD B,(HL) INC HL - OUT (PAGE3),A + OUT (SLOT3),A ; RET_PAGE3 EI POP AF @@ -477,14 +477,14 @@ READ_FAT_SEC: LD D,0 DI - IN A,(PAGE3) + IN A,(SLOT3) LD L,A LD A,SYS_PAGE - OUT (PAGE3),A + OUT (SLOT3),A LD A,L - LD IX,(MSD_FAT_SEC) - LD HL,(MSD_FAT_SEC2) - OUT (PAGE3),A + LD IX,(SYS_PAGE.MSD_FAT_SEC) + LD HL,(SYS_PAGE.MSD_FAT_SEC2) + OUT (SLOT3),A EI LD BC,0 @@ -496,20 +496,20 @@ READ_FAT_SEC: PUSH HL POP IX - LD HL,(CONT_BUF_ADR) - LD A,(MED_START) + LD HL,(ZX_VARS.CONT_BUF_ADR) + LD A,(ZX_VARS.MED_START) PUSH AF PUSH HL - LD HL,MS_FAT + LD HL,SYS_PAGE.MS_FAT LD A,SYS_PAGE LD BC,256*2 + TRDOS_ROM_CMD.READ CALL MSD_R_W_UT POP HL POP AF - LD (CONT_BUF_ADR),HL - LD (MED_START),A + LD (ZX_VARS.CONT_BUF_ADR),HL + LD (ZX_VARS.MED_START),A POP DE POP BC @@ -524,17 +524,17 @@ READ_FAT_SEC: GET_FILE_CLASTERS_BC: DI - IN A,(PAGE3) + IN A,(SLOT3) LD L,A LD A,SYS_PAGE - OUT (PAGE3),A + OUT (SLOT3),A LD A,L - LD HL,(CLASTER_LEN) - OUT (PAGE3),A + LD HL,(SYS_PAGE.CLASTER_LEN) + OUT (SLOT3),A ; RET_PAGE3 EI - LD BC,(FL_SIZE) - LD A,(FL_SIZE+2) + LD BC,(ZX_VARS.FL_SIZE) + LD A,(ZX_VARS.FL_SIZE+2) LD DE,0 SCF GET_FL_CL_2: ; вычисление количества кластеров в файле @@ -562,14 +562,14 @@ HDD_PROG: CALL EXP_FNS ; JP C,HDD_PROG_E - LD HL,HD_IDF_ADR+54 + LD HL,SYS_PAGE.HD_IDF_ADR+54 LD B,32 HDD_PROG_L: DI - IN A,(PAGE3) + IN A,(SLOT3) LD D,A LD A,SYS_PAGE - OUT (PAGE3),A + OUT (SLOT3),A LD A,L XOR 1 LD L,A @@ -579,7 +579,7 @@ HDD_PROG_L: LD L,A INC HL LD A,D - OUT (PAGE3),A + OUT (SLOT3),A ; RET_PAGE3 EI LD A,C diff --git a/TRDOS/TR_MSD_S.ASZ b/TRDOS/TR_MSD_S.ASZ index 4bccc88..6819648 100644 --- a/TRDOS/TR_MSD_S.ASZ +++ b/TRDOS/TR_MSD_S.ASZ @@ -53,7 +53,7 @@ MSD_R_W_UT: ; EX (SP),HL ; POP IX ; LD C,12H -; LD A,(OPER_DISK) +; LD A,(ZX_VARS.OPER_DISK) ; DI ; PUSH IY ; CALL HD_CMD @@ -74,7 +74,7 @@ MSD_R_W_UT: ; EX (SP),HL ; POP IX ; LD C,13H -; LD A,(OPER_DISK) +; LD A,(ZX_VARS.OPER_DISK) ; DI ; PUSH IY ; CALL HD_CMD @@ -102,37 +102,37 @@ MSD_cmd4: LD DE,0 MSD_cmd5: LD A,0 - LD (RD_WR_COM),A + LD (ZX_VARS.RD_WR_COM),A EX AF,AF' JR MSD_RWU1 MSD_cmd6: LD A,255 - LD (RD_WR_COM),A + LD (ZX_VARS.RD_WR_COM),A EX AF,AF' JR MSD_RWU1 PREPARE1: - LD (MED_START),A - LD (CONT_BUF_ADR),HL + LD (ZX_VARS.MED_START),A + LD (ZX_VARS.CONT_BUF_ADR),HL DI - IN A,(PAGE2) + IN A,(SLOT2) LD C,A LD A,SYS_PAGE - OUT (PAGE2),A + OUT (SLOT2),A - LD A,(DS_1440-4000H) + LD A,(SYS_PAGE.DS_1440-4000H) AND BIT_MASK_1440 SET 0,A - LD (DS_1440-4000H),A + LD (SYS_PAGE.DS_1440-4000H),A LD A,C - OUT (PAGE2),A + OUT (SLOT2),A EI CALL Z,RES_1440 CALL NZ,SET_1440 CALL CALC_SECTOR - LD (CONT_SEC),DE - LD A,(RD_WR_COM) + LD (ZX_VARS.CONT_SEC),DE + LD A,(ZX_VARS.RD_WR_COM) RET MSD_RWU1: @@ -144,34 +144,34 @@ MSD_RWU1: MSD_R_W_LOOP: POP HL POP BC - LD A,(MED_START) + LD A,(ZX_VARS.MED_START) INC B DEC B - LD DE,(CONT_SEC) + LD DE,(ZX_VARS.CONT_SEC) RET Z DEC B PUSH BC PUSH HL - LD (CONT_BUF_ADR),HL - LD A,(CONT_SEC) - LD (SEC_NUM),A - LD A,(CONT_TRK) + LD (ZX_VARS.CONT_BUF_ADR),HL + LD A,(ZX_VARS.CONT_SEC) + LD (ZX_VARS.SEC_NUM),A + LD A,(ZX_VARS.CONT_TRK) CALL Global_trk - LD A,(RD_WR_COM) + LD A,(ZX_VARS.RD_WR_COM) OR A PUSH AF CALL Z,MSD_3F0E POP AF CALL NZ,MSD_3F0A DI - IN A,(PAGE2) + IN A,(SLOT2) LD C,A LD A,SYS_PAGE - OUT (PAGE2),A - LD DE,(MS_BPB+SEC_SIZE-#4000) + OUT (SLOT2),A + LD DE,(SYS_PAGE.MS_BPB+SEC_SIZE-#4000) LD A,C - OUT (PAGE2),A + OUT (SLOT2),A EI POP HL ADD HL,DE @@ -179,44 +179,44 @@ MSD_R_W_LOOP: OR L JR NZ,MSD_NO_PAGE DI - IN A,(PAGE2) + IN A,(SLOT2) LD C,A LD A,SYS_PAGE - OUT (PAGE2),A - LD A,(MED_START) - LD HL,RAMD_FAT-#4000 + OUT (SLOT2),A + LD A,(ZX_VARS.MED_START) + LD HL,SYS_PAGE.RAMD_FAT-#4000 LD L,A LD L,(HL) LD A,C - OUT (PAGE2),A + OUT (SLOT2),A EI LD A,L LD HL,#C000 - LD (MED_START),A + LD (ZX_VARS.MED_START),A MSD_NO_PAGE: - LD (CONT_BUF_ADR),HL + LD (ZX_VARS.CONT_BUF_ADR),HL PUSH HL DI - IN A,(PAGE2) + IN A,(SLOT2) LD C,A LD A,SYS_PAGE - OUT (PAGE2),A - LD A,(DS_1440-#4000) + OUT (SLOT2),A + LD A,(SYS_PAGE.DS_1440-#4000) AND %1111'1110 - LD (DS_1440-#4000),A - LD A,(MSD_SECS-#4000) + LD (SYS_PAGE.DS_1440-#4000),A + LD A,(SYS_PAGE.MSD_SECS-#4000) LD L,A LD A,C - OUT (PAGE2),A + OUT (SLOT2),A EI LD A,L - LD HL,CONT_SEC + LD HL,ZX_VARS.CONT_SEC INC (HL) CP (HL) JP NZ,MSD_R_W_LOOP LD (HL),0 - LD HL,CONT_TRK + LD HL,ZX_VARS.CONT_TRK INC (HL) JP MSD_R_W_LOOP ;***************************************** @@ -228,30 +228,30 @@ MSD_3F0A: MSD_3F0E: LD A,128 MSD_3F10: - LD (COMAND_WG),A + LD (ZX_VARS.COMAND_WG),A MSD_3F13: LD D,5 ; ЧИСЛО ПОВТОРЕНИЙ MSD_3F15: PUSH DE PUSH IX DI - IN A,(PAGE3) + IN A,(SLOT3) EX AF,AF' - LD A,(MED_START) - OUT (PAGE3),A + LD A,(ZX_VARS.MED_START) + OUT (SLOT3),A AND A JR Z,NO_OFF_SCR LD A,0C0H OUT (RGADR),A NO_OFF_SCR: LD IX,MSD_RET_ADR - LD A,(SEC_NUM) + LD A,(ZX_VARS.SEC_NUM) INC A - OUT (WG_SEC),A - LD HL,(CONT_BUF_ADR) + OUT (FDC_93.Sector),A + LD HL,(ZX_VARS.CONT_BUF_ADR) LD C,127 - LD A,(COMAND_WG) - OUT (WG_COM),A + LD A,(ZX_VARS.COMAND_WG) + OUT (FDC_93.Command),A CP 160 JP Z,MSD_3FBA ; ЗАПИСЬ СЕКТОРА JP MSD_3FD5 ; ЧТЕНИЕ СЕКТОРА @@ -259,11 +259,11 @@ MSD_RET_ADR: LD A,0 OUT (RGADR),A EX AF,AF' - OUT (PAGE3),A + OUT (SLOT3),A POP IX POP DE EI - IN A,(WG_COM) + IN A,(FDC_93.Command) LD B,A AND 127 RET Z @@ -283,7 +283,7 @@ MSD_3F48: LD HL,DISK_ERROR_MSG MSD_3F4B: LD A,208 - OUT (WG_COM),A + OUT (FDC_93.Command),A LD A,B AND 1 JP NZ,AUTO_3EE7 @@ -294,11 +294,11 @@ MSD_3F4B: RST PRINT_LN LD HL,AUTO_2A13 RST PRINT_LN - IN A,(WG_TRK) + IN A,(FDC_93.Track) CALL AUTO_1DA3 LD HL,AUTO_2A18 RST PRINT_LN - IN A,(WG_SEC) + IN A,(FDC_93.Sector) CALL AUTO_1DA3 LD HL,AUTO_29FE RST PRINT_LN @@ -312,10 +312,10 @@ MSD_3F7B: JR NZ,MSD_3F7B CALL exit_No_disk LD A,7 - LD (DOS_ERR_2),A + LD (ZX_VARS.DOS_ERR_2),A JP AUTO_01D3 MSD_3F94: - LD A,(CONT_TRK) + LD A,(ZX_VARS.CONT_TRK) CALL Global_trk CALL pause_750ms JP MSD_3F13 @@ -325,7 +325,7 @@ MSD_3FA0: CALL SWITCH_DT PUSH DE CALL AUTO_3D98 ; RESET_WG - LD A,(CONT_TRK) + LD A,(ZX_VARS.CONT_TRK) CALL Global_trk ; ПОЗИЦИОНИРОВАНИЕ POP DE JP MSD_3F15 @@ -333,25 +333,25 @@ MSD_3FA0: SWITCH_DT: DI - IN A,(PAGE2) + IN A,(SLOT2) LD C,A LD A,SYS_PAGE - OUT (PAGE2),A - LD A,(DS_1440-4000H) + OUT (SLOT2),A + LD A,(SYS_PAGE.DS_1440-4000H) BIT 0,A JR Z,NO_SW_DT XOR BIT_MASK_1440 - LD (DS_1440-4000H),A + LD (SYS_PAGE.DS_1440-4000H),A AND BIT_MASK_1440 LD A,C - OUT (PAGE2),A + OUT (SLOT2),A EI CALL Z,RES_1440 CALL NZ,SET_1440 RET NO_SW_DT: LD A,C - OUT (PAGE2),A + OUT (SLOT2),A EI RET @@ -361,7 +361,7 @@ NO_SW_DT: MSD_3FBA: LD B,4 MSD_3FBC: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR NZ,MSD_3FD1 INC DE @@ -372,7 +372,7 @@ MSD_3FBC: MSD_RET_IX: JP (IX) MSD_3FCA: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR Z,MSD_3FCA JP M,MSD_RET_IX @@ -385,7 +385,7 @@ MSD_3FD1: MSD_3FD5: LD B,4 MSD_3FD7: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR NZ,MSD_3FEC INC DE @@ -396,7 +396,7 @@ MSD_3FD7: MSD_RET_IX2: JP (IX) MSD_3FE5: - IN A,(P_DOS_FF) + IN A,(FDC_93.DrvCTRL) AND 192 JR Z,MSD_3FE5 JP M,MSD_RET_IX2 @@ -436,7 +436,7 @@ READ_BPB: LD IX,0 LD DE,63 ;!HARDCODE LD A,SYS_PAGE - LD HL,MS_BPB + LD HL,SYS_PAGE.MS_BPB ; LD BC,256*1 + TRDOS_ROM_CMD.READ CALL MSD_R_W_UT @@ -445,7 +445,7 @@ READ_BPB: RET NC JP .ERROR_MSDOS .MAIN: LD A,SYS_PAGE - LD HL,MS_BPB + LD HL,SYS_PAGE.MS_BPB LD C,TRDOS_ROM_CMD.READ_BPB CALL MSD_R_W_UT @@ -454,38 +454,38 @@ READ_BPB: ;RET ; LD C,18H - ; LD A,(OPER_DISK) + ; LD A,(ZX_VARS.OPER_DISK) ; CALL HD_CMD ; ; ; DI - ; IN A,(PAGE3) + ; IN A,(SLOT3) ; EX AF,AF' ; LD A,SYS_PAGE - ; OUT (PAGE3),A + ; OUT (SLOT3),A ; ; - ; LD A,(MS_BPB+S_P_T) ; Количество секторов на трек + ; LD A,(SYS_PAGE.MS_BPB+S_P_T) ; Количество секторов на трек ; LD L,A ; ; ; EX AF,AF' - ; OUT (PAGE3),A + ; OUT (SLOT3),A ; EI ; ; - ; LD A,(OPER_DISK) + ; LD A,(ZX_VARS.OPER_DISK) ; LD C,19H ; CALL HD_CMD .PARAMS: DI - IN A,(PAGE3) + IN A,(SLOT3) EX AF,AF' LD A,SYS_PAGE - OUT (PAGE3),A + OUT (SLOT3),A - LD A,(MS_BPB+FORM_CODE) + LD A,(SYS_PAGE.MS_BPB+FORM_CODE) CP #F0 JP C,.ERROR_BPB - LD HL,MS_BPB+FAT_ID + LD HL,SYS_PAGE.MS_BPB+FAT_ID LD DE,.FAT1_MSG LD B,4 .L1: LD A,(DE) @@ -508,10 +508,10 @@ READ_BPB: .PC_DOS: LD HL,#01FF ; FAT12 флаг -.FAT: LD (FAT_FLAG),HL +.FAT: LD (SYS_PAGE.FAT_FLAG),HL - LD A,(MS_BPB+S_P_T) ; Количество секторов на трек - LD (MSD_SECS),A + LD A,(SYS_PAGE.MS_BPB+S_P_T) ; Количество секторов на трек + LD (SYS_PAGE.MSD_SECS),A BIT 7,H @@ -519,32 +519,32 @@ READ_BPB: LD HL,0 ; вычислить начальный сектор FAT JR Z,.NO_LD_SPECIAL - LD IX,(MS_BPB+SPECIAL_SECS) - LD HL,(MS_BPB+SPECIAL_SECS+2) + LD IX,(SYS_PAGE.MS_BPB+SPECIAL_SECS) + LD HL,(SYS_PAGE.MS_BPB+SPECIAL_SECS+2) .NO_LD_SPECIAL: LD BC,0 - LD DE,(MS_BPB+RESERV_SECS) + LD DE,(SYS_PAGE.MS_BPB+RESERV_SECS) ADD IX,DE ADC HL,BC - LD (MSD_FAT_SEC),IX ; начальный сектор FAT - LD (MSD_FAT_SEC2),HL ; начальный сектор FAT + LD (SYS_PAGE.MSD_FAT_SEC),IX ; начальный сектор FAT + LD (SYS_PAGE.MSD_FAT_SEC2),HL ; начальный сектор FAT - LD DE,(MS_BPB+S_P_F) ; число секторов в FAT + LD DE,(SYS_PAGE.MS_BPB+S_P_F) ; число секторов в FAT LD BC,0 - LD A,(MS_BPB+FATS_NUM) ; количество FATs + LD A,(SYS_PAGE.MS_BPB+FATS_NUM) ; количество FATs .NEXT_ADD: ADD IX,DE ADC HL,BC DEC A JR NZ,.NEXT_ADD - LD (MSD_CAT_SEC),IX ; начальный сектор DIR - LD (MSD_CAT_SEC2),HL ; начальный сектор DIR + LD (SYS_PAGE.MSD_CAT_SEC),IX ; начальный сектор DIR + LD (SYS_PAGE.MSD_CAT_SEC2),HL ; начальный сектор DIR - LD BC,(MS_BPB+SEC_SIZE) ; Размер сектора + LD BC,(SYS_PAGE.MS_BPB+SEC_SIZE) ; Размер сектора RL C RL B RL C @@ -554,9 +554,9 @@ READ_BPB: LD C,B LD B,0 ; BC - число файловых записей в секторе LD A,C - LD (F_P_S),A + LD (SYS_PAGE.F_P_S),A - LD DE,(MS_BPB+FLS_NUM) ; Число файловых записей + LD DE,(SYS_PAGE.MS_BPB+FLS_NUM) ; Число файловых записей EX DE,HL DEC HL @@ -571,17 +571,17 @@ READ_BPB: LD E,A ; A - число секторов в DIR LD D,0 LD BC,0 - LD (S_P_C),A + LD (SYS_PAGE.S_P_C),A ADD IX,DE ; Начало DATA area ADC HL,BC - LD (MSD_DAT_SEC),IX - LD (MSD_DAT_SEC2),HL + LD (SYS_PAGE.MSD_DAT_SEC),IX + LD (SYS_PAGE.MSD_DAT_SEC2),HL - LD BC,(MS_BPB+SEC_SIZE) ; Размер сектора + LD BC,(SYS_PAGE.MS_BPB+SEC_SIZE) ; Размер сектора LD HL,0 - LD A,(MS_BPB+CLAST_SIZE) + LD A,(SYS_PAGE.MS_BPB+CLAST_SIZE) LD D,A LD A,0 .NEXT_ADD3: @@ -590,28 +590,28 @@ READ_BPB: DEC D JR NZ,.NEXT_ADD3 - LD (CLASTER_LEN),HL + LD (SYS_PAGE.CLASTER_LEN),HL LD B,0 LD C,A - LD (CLASTER_LEN2),BC + LD (SYS_PAGE.CLASTER_LEN2),BC LD HL,0 - LD BC,(MS_BPB+S_P_T) - LD A,(MS_BPB+H_P_S) + LD BC,(SYS_PAGE.MS_BPB+S_P_T) + LD A,(SYS_PAGE.MS_BPB+H_P_S) .BPB_L1:; ВЫЧИСЛИТЬ КОЛИЧЕСТВО СЕКТОРОВ НА ЦИЛИНДР ADD HL,BC DEC A JR NZ,.BPB_L1 - LD (S_X_H),HL + LD (SYS_PAGE.S_X_H),HL ; EX AF,AF' - OUT (PAGE3),A + OUT (SLOT3),A EI AND A RET .ERROR_BPB: EX AF,AF' - OUT (PAGE3),A + OUT (SLOT3),A SCF EI RET @@ -623,59 +623,59 @@ READ_BPB: ;******************************************** READ_NEXT_DIR: DI - IN A,(PAGE3) + IN A,(SLOT3) EX AF,AF' LD A,SYS_PAGE - OUT (PAGE3),A - LD DE,(MSD_CONT_SEC) - LD IX,(MSD_CONT_SEC2) + OUT (SLOT3),A + LD DE,(SYS_PAGE.MSD_CONT_SEC) + LD IX,(SYS_PAGE.MSD_CONT_SEC2) JR READ_NEXT2 ;******************************************** READ_1ST_DIR: DI - IN A,(PAGE3) + IN A,(SLOT3) EX AF,AF' LD A,SYS_PAGE - OUT (PAGE3),A - LD IX,(MSD_CAT_SEC2) ; - LD DE,(MSD_CAT_SEC) ; НАЧАЛЬНЫЙ СЕКТОР КАТАЛОГА - LD (MSD_CONT_SEC),DE - LD (MSD_CONT_SEC2),IX - LD A,(S_P_C) ; СЕКТОРОВ В КАТАЛОГЕ - LD (COUNT_SEC),A + OUT (SLOT3),A + LD IX,(SYS_PAGE.MSD_CAT_SEC2) ; + LD DE,(SYS_PAGE.MSD_CAT_SEC) ; НАЧАЛЬНЫЙ СЕКТОР КАТАЛОГА + LD (SYS_PAGE.MSD_CONT_SEC),DE + LD (SYS_PAGE.MSD_CONT_SEC2),IX + LD A,(SYS_PAGE.S_P_C) ; СЕКТОРОВ В КАТАЛОГЕ + LD (SYS_PAGE.COUNT_SEC),A READ_NEXT2: EX AF,AF' - OUT (PAGE3),A + OUT (SLOT3),A ; RET_PAGE3 EI - LD HL,MS_DIR + LD HL,SYS_PAGE.MS_DIR LD A,SYS_PAGE LD BC,256*1 + TRDOS_ROM_CMD.READ CALL MSD_R_W_UT DI - IN A,(PAGE3) + IN A,(SLOT3) EX AF,AF' LD A,SYS_PAGE - OUT (PAGE3),A + OUT (SLOT3),A - LD DE,(MSD_CONT_SEC) + LD DE,(SYS_PAGE.MSD_CONT_SEC) INC DE - LD (MSD_CONT_SEC),DE + LD (SYS_PAGE.MSD_CONT_SEC),DE LD A,D OR E JR NZ,READ_NEXT3 - LD IX,(MSD_CONT_SEC2) + LD IX,(SYS_PAGE.MSD_CONT_SEC2) INC IX - LD (MSD_CONT_SEC2),IX + LD (SYS_PAGE.MSD_CONT_SEC2),IX READ_NEXT3: - LD A,(F_P_S) ; ФАЙЛОВ В СЕКТОРЕ - LD (COUNT_FL),A + LD A,(SYS_PAGE.F_P_S) ; ФАЙЛОВ В СЕКТОРЕ + LD (SYS_PAGE.COUNT_FL),A EX AF,AF' - OUT (PAGE3),A + OUT (SLOT3),A ; RET_PAGE3 EI - LD HL,MS_DIR + LD HL,SYS_PAGE.MS_DIR AND A RET @@ -692,11 +692,11 @@ CALC_SECT_L1: PUSH BC EX DE,HL DI - IN A,(PAGE3) + IN A,(SLOT3) EX AF,AF' LD A,SYS_PAGE - OUT (PAGE3),A - LD BC,(MS_BPB+S_P_T) + OUT (SLOT3),A + LD BC,(SYS_PAGE.MS_BPB+S_P_T) XOR A LOOP_TRK: SBC HL,BC @@ -711,7 +711,7 @@ SEC_ENDER: LD H,A ; ТРЕК ; LD L,L ; СЕКТОР EX AF,AF' - OUT (PAGE3),A + OUT (SLOT3),A EI EX DE,HL POP BC @@ -720,8 +720,8 @@ SEC_ENDER: ;************************************************ REDIR_LINE_CODING: - LD (MED_START),HL - LD HL,(DOS_CH_ADR) + LD (ZX_VARS.MED_START),HL + LD HL,(ZX_VARS.DOS_CH_ADR) LD A,(HL) CP '/' RET Z diff --git a/TRDOS/TR_RMD_S.ASZ b/TRDOS/TR_RMD_S.ASZ index 8597159..469e611 100644 --- a/TRDOS/TR_RMD_S.ASZ +++ b/TRDOS/TR_RMD_S.ASZ @@ -2,7 +2,7 @@ DISK_REDIR: PUSH HL PUSH BC - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) AND 3 LD C,BIOS.GET_DRV_ST CALL EXP_FNS @@ -24,7 +24,7 @@ ERROR_DISK: RECALL_1E70: CALL RES_1440 - LD A,(RD_WR_COM) + LD A,(ZX_VARS.RD_WR_COM) PUSH BC PUSH HL CALL READ_TRK_NUM @@ -52,8 +52,8 @@ TEST_RAMD: RET ; ╔═══════════════════════════════════╗ -; ║ RD/WR SECTOR HL - BUFER ║\ -; ║ CONT_SEC - SEC/TRK FOR READ/WRITE ║\ +; ║ RD/WR SECTOR HL - ZX_VARS.BUFFER ║\ +; ║ ZX_VARS.CONT_SEC - SEC/TRK FOR READ/WRITE ║\ ; ║ COM_RD_WR - команда чтение/запись ║\ ; ║ 0 - чтение, 255 - запись ║\ ; ╚═══════════════════════════════════╝\ @@ -73,14 +73,14 @@ READ_WRITE_RAMD: ; LD HL,RAMD_KEYS ; ADD A,L ; LD L,A -; IN A,(PAGE3) +; IN A,(SLOT3) ; LD C,A ; LD A,SYS_PAGE ; DI -; OUT (PAGE3),A +; OUT (SLOT3),A ; LD L,(HL) ; LD A,C -; OUT (PAGE3),A +; OUT (SLOT3),A ; EI ; LD A,L ; 1-st block ; POP HL @@ -97,7 +97,7 @@ READ_WRITE_RAMD: ; PUSH DE ; PUSH BC ; -; LD DE,(CONT_SEC) +; LD DE,(ZX_VARS.CONT_SEC) ; LD A,D ; ФИЗИЧЕСКИЕ -> ЛОГИЧЕСКИЕ !!! ; RRCA ; RRCA @@ -111,7 +111,7 @@ READ_WRITE_RAMD: ; AND 0FH ; LD D,A ; -; LD A,(RD_WR_COM) +; LD A,(ZX_VARS.RD_WR_COM) ; AND A ; JR Z,RAMD_READ ; PUSH AF @@ -132,7 +132,7 @@ READ_WRITE_RAMD: ; POP HL ; POP AF ; OUT (RGADR),A -; LD DE,(CONT_SEC) +; LD DE,(ZX_VARS.CONT_SEC) ; ; LD A,B ; @@ -158,7 +158,7 @@ READ_WRITE_RAMD: ; ; LD B,0 ; -; LD (CONT_SEC),DE +; LD (ZX_VARS.CONT_SEC),DE ; AND A ; RET ; @@ -180,7 +180,7 @@ WD_WR_RAMD_LOOP: RAMD_NEXT_SEC: PUSH HL - LD HL,CONT_SEC + LD HL,ZX_VARS.CONT_SEC LD A,16 INC (HL) CP (HL) @@ -195,15 +195,15 @@ RAMD_NEXT_1: RET RD_WR_1SEC: - LD DE,(CONT_SEC) + LD DE,(ZX_VARS.CONT_SEC) CALL PAGE_CALC2 DI - LD A,(RD_WR_COM) + LD A,(ZX_VARS.RD_WR_COM) AND 0C0H OUT (RGADR),A LD A,H CP 0A0H - LD A,(RD_WR_COM) + LD A,(ZX_VARS.RD_WR_COM) LD E,0 LD D,C SET 6,D @@ -211,7 +211,7 @@ RD_WR_1SEC: RD_WR_4000: RES 7,D ; DE - адрес данных RAMD - LD C,PAGE1 + LD C,SLOT1 EX AF,AF' IN A,(C) EX AF,AF' @@ -229,7 +229,7 @@ MOVE_NOT_EX3: MOVE_NOT_EX4: ;******************************* EX AF,AF' - OUT (PAGE1),A + OUT (SLOT1),A EX AF,AF' ; RET_PAGE1 MOVE_RET: @@ -240,7 +240,7 @@ MOVE_RET: RD_WR_C000: SET 7,D - LD C,PAGE3 + LD C,SLOT3 EX AF,AF' IN A,(C) EX AF,AF' @@ -258,7 +258,7 @@ MOVE_NOT_EX1: MOVE_NOT_EX2: ;******************************* EX AF,AF' - OUT (PAGE3),A + OUT (SLOT3),A EX AF,AF' ; RET_PAGE3 JR MOVE_RET @@ -296,7 +296,7 @@ PAGE_CALC2: ;********************************************* RAMD_X12: ; проверка диска - LD (OPER_DISK),A + LD (ZX_VARS.OPER_DISK),A CALL DISK_REDIR CP 4 JR C,X_AUTO_3DCE @@ -308,7 +308,7 @@ NO_DISK2: X_AUTO_3DCE: CALL RES_1440 - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) JP AUTO_3DCE ;************************************* @@ -325,7 +325,7 @@ RAMD_X14: ; FORMATING JP READ_ONLY DISK_FORM: - LD A,(MED_START+1) + LD A,(ZX_VARS.MED_START+1) CP 14H JR Z,QVICK_FORMAT POP HL @@ -356,15 +356,15 @@ RAMD_FORMAT: CALL GET_RAM_BLK ; ВЫДЕЛЕНИЕ ПАМЯТИ ; LD C,A ; КЛЮЧ RAM-Disk Q_FORM_1: - LD HL,BUFER ; CLEAR DISK BUFER - LD DE,BUFER+1 + LD HL,ZX_VARS.BUFFER ; CLEAR DISK ZX_VARS.BUFFER + LD DE,ZX_VARS.BUFFER+1 LD BC,0FFh LD (HL),0 LDIR LD DE,0 RAMD_F_LOOP: - LD HL,BUFER + LD HL,ZX_VARS.BUFFER LD B,1 PUSH DE CALL WRITE_DISK @@ -391,7 +391,7 @@ CLEAR_RAMD: CLEAR_NEXT: SUB 4 RET C - CP RAMD_KEY_NUM + CP SYS_PAGE.RAMD_KEYS.NUM CCF RET C @@ -429,7 +429,7 @@ READ_ONLY: JP ERR_EXIT FDD_SET: - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) LD B,A LD C,BIOS.FDD_TO_DRV ;!TEST 06/01/2024 сохраняем состояние прерываний зачем-то @@ -447,7 +447,7 @@ HDD_SET:;!TEST 06/01/2024 убирае ; JP C,HDD_PROG_E - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) LD B,A XOR A LD C,BIOS.HDD_TO_DRV @@ -463,7 +463,7 @@ RAMD_SET: RET C RAMD_SET1: PUSH AF - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) LD B,A POP AF LD C,BIOS.RAMD_TO_DRV @@ -505,7 +505,7 @@ RAMD_SYM_OK: ;[ ] 07/01/2024 CHOOSE_HDD: PUSH DE - LD A,(OPER_DISK) + LD A,(ZX_VARS.OPER_DISK) LD C,BIOS.GET_DRV_ST CALL EXP_FNS POP DE