diff --git a/constants/SP2000.inc b/constants/SP2000.inc index fb9610f..5c2f7b3 100644 --- a/constants/SP2000.inc +++ b/constants/SP2000.inc @@ -125,7 +125,7 @@ SYS_PORT: .ROM EQU .ON .PAGE0 EQU 1 .PAGE8 EQU 0 -.EXPANSION EQU .PAGE0 +.EXTENSION EQU .PAGE0 .BIOS EQU .PAGE8 .TURBO.ON EQU CNF_PORT.TURBO.ON .TURBO.OFF EQU CNF_PORT.TURBO.OFF @@ -156,19 +156,19 @@ bit7 - CNF_PN[7..6]_RESET by 0 - Переключение страниц vROM: ; Port #24 = 0 - #E0 - EXPANSION ; #1FFD bit2=1 + #E0 - BIOS (EXP) ; #1FFD bit2=1 #E1 - TR-DOS ; PC = #3D00..#3DFF and #1FFD bit2=0 #E2 - BASIC-128 ; #7FFD bit4=0 and #1FFD bit1=0 #E3 - BASIC-48 ; #7FFD bit4=1 and #1FFD bit1=0 -; Port #24 = 1 +; Port #24 = 1 ; not used yet #E4 - EXPANSION 2 ; #1FFD bit2=1 #E5 - TR-DOS 2 ; PC = #3D00..#3DFF and #1FFD bit2=0 #E6 - BASIC-128 2 ; #7FFD bit4=0 and #1FFD bit1=0 #E7 - BASIC-48 2 ; #7FFD bit4=1 and #1FFD bit1=0 ; Port #74 = 0 - #EB - BIOS-1 ; + #EB - BIOS-1 (EXP yet) ; ; Port #74 = 1 - #EF - BIOS-2 ; + #EF - BIOS-2 (not used yet) ; ;;;;;;;; SYS_PORT: @@ -193,6 +193,13 @@ bit7..bit3 страницы ПЗУ 0-7 будут нумероваться как 8-15 страницы ПЗУ 8-15 будут нумероваться как 0-7 ---------------------------------------------------- +Стандартные страницы для образов ПЗУ спектрума: +#42 BASIC 128 +#43 BASIC 48 +#44 TR-DOS +#45 BIOS +#46 BIOS (ZX_EXP) +#47 BIOS (ZX_EXP2) */ ;======================================= @@ -207,7 +214,7 @@ FastRAM: ROM: .SLOT0 EQU #5C ; Прибито гвоздями в конфе .BIOS EQU SYS_PORT.BIOS ; для sys_port.on D_ROM16OFF -.EXPANSION EQU SYS_PORT.EXPANSION ; для sys_port.on D_ROM16ON +.EXTENSION EQU SYS_PORT.EXTENSION ; для sys_port.on D_ROM16ON ; Значения: ; номер страницы bit3..0 ; разрешение записи bit4 (0 - no Write; 1 - Write) @@ -843,161 +850,162 @@ WIN_GRAF_Y EQU 26 ; ;!FIXIT ----------------------------------------------------------------; ;Переменные спектрума -ZX_VARS EQU #5C00 +ZX_VARS EQU #5C00 ; -.PR_BUFER EQU #5B00 -.AUTO_5B08 EQU #5B08 -.AUTO_5B5C EQU #5B5C -.COPY_P128 EQU #5B5C -.AUTO_5BFF EQU #5BFF +.SWAP_ROM EQU #5B00 +.PRINTER_BUFFER EQU #5B00 +.AUTO_5B08 EQU #5B08 +.AUTO_5B5C EQU #5B5C +.COPY_P128 EQU #5B5C +.AUTO_5BFF EQU #5BFF ; -.K_STATE EQU #5C00 -.KEY_TIME EQU #5C09 -.REP_K_TYME EQU #5C10 -.ZG EQU #5C36 -.ERR_BEEP EQU #5C38 -.KEY_BEEP EQU #5C39 -.ERR_NR EQU #5C3A -.FLAGS EQU #5C3B -.TV_FLAG EQU #5C3C -.ERR_SP EQU #5C3D -.LIST_SP EQU #5C3F -.MODE EQU #5C41 -.NEW_PPC EQU #5C42 -.NEW_S_PPC EQU #5C44 -.PPC EQU #5C45 -.SUB_PPC EQU #5C47 -.BORDER EQU #5C48 -.EDIT_PPC EQU #5C49 -.BAS_VARS EQU #5C4B -.WORK_VAR EQU #5C4D -.CHANS EQU #5C4F -.CUR_CHL EQU #5C51 -.BAS_PROG EQU #5C53 -.NEXT_LINE EQU #5C55 -.DATA_ADR EQU #5C57 -.E_LINE EQU #5C59 -.K_CUR EQU #5C5B -.CH_ADR EQU #5C5D -.SINT_ER_AD EQU #5C5F -.WORK_SP EQU #5C61 -.STK_BOT EQU #5C63 -.STK_END EQU #5C65 -.B_REG EQU #5C67 -.MEM_CALC EQU #5C68 -.FLAGS_2 EQU #5C6A -.L_SCR_SIZE EQU #5C6B -.AUTO_LST_L EQU #5C6C -.OLD_PPC EQU #5C6E -.OLD_S_PPC EQU #5C70 -.FLG_INPUT EQU #5C71 -.S_VAR_LEN EQU #5C72 -.SINT_TB_ADR EQU #5C74 -.RAND_SEED EQU #5C76 -.FRAMES EQU #5C78 -.UDG EQU #5C7B -.X_Y_COORD EQU #5C7D -.PRN_POS EQU #5C7F -.ADR_PR_BUF EQU #5C80 -.ECHO_E EQU #5C82 -.SCR_PL_M EQU #5C84 -.SCR_PL_L EQU #5C86 -.SCR_POS_M EQU #5C88 -.SCR_POS_L EQU #5C8A -.SCROLL_ST EQU #5C8C -.ATTR_P EQU #5C8D -.MASK_P EQU #5C8E -.ATTR_T EQU #5C8F -.MASK_E EQU #5C90 -.FLAGS_ATR EQU #5C91 -.MEM_BOT EQU #5C92 -.AUTO_5C9A EQU #5C9A -.NMI_ADR EQU #5CB0 -.TOP_CLEAR EQU #5CB2 -.P_RAMTOP EQU #5CB4 -.BEG_ADRESS EQU #5CB6 -.RET_INS EQU #5CC2 -.AUTO_5CC3 EQU #5CC3 -.DISK_A EQU #5CC8 -.DISK_B EQU #5CC9 -.DISK_C EQU #5CCA -.DISK_D EQU #5CCB -.CAT_SEC EQU #5CCC -.DRV_READY EQU #5CCD -.RD_WR_COM EQU #5CCE -.VAR_1 EQU #5CCF -.AUTO_5CD1 EQU #5CD1 -.AUTO_5CD2 EQU #5CD2 -.AUTO_5CD3 EQU #5CD3 -.AUTO_5CD5 EQU #5CD5 -.DOS_ERROR EQU #5CD6 -.MED_START EQU #5CD7 -.DOS_CH_ADR EQU #5CD9 -.MED_LEN EQU #5CDB -.FL_NAME EQU #5CDD -.FL_N_2 EQU #5CDF -.FL_N_4 EQU #5CE1 -.FL_N_6 EQU #5CE3 -.FL_N_7 EQU #5CE4 -.FL_TYPE EQU #5CE5 -.FL_START EQU #5CE6 -.FL_LEN EQU #5CE8 -.START_CLASTER EQU .FL_LEN -.FL_SIZE EQU #5CEA -.FL_PLACE EQU #5CEB -.VAR_2 EQU #5CED -.INTERF_I EQU #5CEF -.VAR_2_0 EQU #5CF1 -.VAR_2_1 EQU #5CF2 -.CONT_SEC EQU #5CF4 -.CONT_TRK EQU #5CF5 -.OPER_DISK EQU #5CF6 -.DOS_FLAG EQU #5CF7 -.DISK_1_FLG EQU #5CF8 -.DISK_2_FLG EQU #5CF9 -.TIME_A EQU #5CFA -.TIME_B EQU #5CFB -.TIME_C EQU #5CFC -.TIME_D EQU #5CFD -.COMAND_WG EQU #5CFE -.SEC_NUM EQU #5CFF -.CONT_BUF_ADR EQU #5D00 -.WORK_2 EQU #5D02 -.WORK_4 EQU #5D04 -.S_NAME_NUM EQU #5D06 -.N_DEL_FLS EQU #5D07 -.FST_SYM_NAME EQU #5D08 -.VAR_3 EQU #5D09 -.BUF_FLAG EQU #5D0C -.BAS_DOS_FLG EQU #5D0E -.DOS_ERR_2 EQU #5D0F -.ERR_3D00 EQU #5D10 -.ADR_DOS_COM EQU #5D11 -.ERR_SP_COPY EQU #5D13 -.MSG_FLAG EQU #5D15 -.PDOS_COPY EQU #5D16 -.FLAG_BOOT EQU #5D17 -.INT_1_VAR EQU #5D18 -.CONT_DISK EQU #5D19 -.ADR_RET EQU #5D1A -.DOS_SP EQU #5D1C -.FL_NUMBER EQU #5D1E -.COM_LN_COPY EQU #5D20 -.L_5D23 EQU #5D23 -.BUFER EQU #5D25 -.AUTO_5D33 EQU #5D33 -.CLEAR_SEC EQU #5E06 -.CLEAR_TRK EQU #5E07 -.TYPE_DISK EQU #5E08 -.N_FILES EQU #5E09 -.FREE_SEC EQU #5E0A -.CODE_10H EQU #5E0C -.DISK_MRK_1 EQU #5E0F -.DISK_ALT_NM EQU #5E10 -.N_DEL_FL EQU #5E19 -.DISK_NAME EQU #5E1A +.K_STATE EQU #5C00 +.KEY_TIME EQU #5C09 +.REP_K_TYME EQU #5C10 +.ZG EQU #5C36 +.ERR_BEEP EQU #5C38 +.KEY_BEEP EQU #5C39 +.ERR_NR EQU #5C3A +.FLAGS EQU #5C3B +.TV_FLAG EQU #5C3C +.ERR_SP EQU #5C3D +.LIST_SP EQU #5C3F +.MODE EQU #5C41 +.NEW_PPC EQU #5C42 +.NEW_S_PPC EQU #5C44 +.PPC EQU #5C45 +.SUB_PPC EQU #5C47 +.BORDER EQU #5C48 +.EDIT_PPC EQU #5C49 +.BAS_VARS EQU #5C4B +.WORK_VAR EQU #5C4D +.CHANS EQU #5C4F +.CUR_CHL EQU #5C51 +.BAS_PROG EQU #5C53 +.NEXT_LINE EQU #5C55 +.DATA_ADR EQU #5C57 +.E_LINE EQU #5C59 +.K_CUR EQU #5C5B +.CH_ADR EQU #5C5D +.SINT_ER_AD EQU #5C5F +.WORK_SP EQU #5C61 +.STK_BOT EQU #5C63 +.STK_END EQU #5C65 +.B_REG EQU #5C67 +.MEM_CALC EQU #5C68 +.FLAGS_2 EQU #5C6A +.L_SCR_SIZE EQU #5C6B +.AUTO_LST_L EQU #5C6C +.OLD_PPC EQU #5C6E +.OLD_S_PPC EQU #5C70 +.FLG_INPUT EQU #5C71 +.S_VAR_LEN EQU #5C72 +.SINT_TB_ADR EQU #5C74 +.RAND_SEED EQU #5C76 +.FRAMES EQU #5C78 +.UDG EQU #5C7B +.X_Y_COORD EQU #5C7D +.PRN_POS EQU #5C7F +.ADR_PR_BUF EQU #5C80 +.ECHO_E EQU #5C82 +.SCR_PL_M EQU #5C84 +.SCR_PL_L EQU #5C86 +.SCR_POS_M EQU #5C88 +.SCR_POS_L EQU #5C8A +.SCROLL_ST EQU #5C8C +.ATTR_P EQU #5C8D +.MASK_P EQU #5C8E +.ATTR_T EQU #5C8F +.MASK_E EQU #5C90 +.FLAGS_ATR EQU #5C91 +.MEM_BOT EQU #5C92 +.AUTO_5C9A EQU #5C9A +.NMI_ADR EQU #5CB0 +.TOP_CLEAR EQU #5CB2 +.P_RAMTOP EQU #5CB4 +.BEG_ADRESS EQU #5CB6 +.RET_INS EQU #5CC2 +.AUTO_5CC3 EQU #5CC3 +.DISK_A EQU #5CC8 +.DISK_B EQU #5CC9 +.DISK_C EQU #5CCA +.DISK_D EQU #5CCB +.CAT_SEC EQU #5CCC +.DRV_READY EQU #5CCD +.RD_WR_COM EQU #5CCE +.VAR_1 EQU #5CCF +.AUTO_5CD1 EQU #5CD1 +.AUTO_5CD2 EQU #5CD2 +.AUTO_5CD3 EQU #5CD3 +.AUTO_5CD5 EQU #5CD5 +.DOS_ERROR EQU #5CD6 +.MED_START EQU #5CD7 +.DOS_CH_ADR EQU #5CD9 +.MED_LEN EQU #5CDB +.FL_NAME EQU #5CDD +.FL_N_2 EQU #5CDF +.FL_N_4 EQU #5CE1 +.FL_N_6 EQU #5CE3 +.FL_N_7 EQU #5CE4 +.FL_TYPE EQU #5CE5 +.FL_START EQU #5CE6 +.FL_LEN EQU #5CE8 +.START_CLASTER EQU .FL_LEN +.FL_SIZE EQU #5CEA +.FL_PLACE EQU #5CEB +.VAR_2 EQU #5CED +.INTERF_I EQU #5CEF +.VAR_2_0 EQU #5CF1 +.VAR_2_1 EQU #5CF2 +.CONT_SEC EQU #5CF4 +.CONT_TRK EQU #5CF5 +.OPER_DISK EQU #5CF6 +.DOS_FLAG EQU #5CF7 +.DISK_1_FLG EQU #5CF8 +.DISK_2_FLG EQU #5CF9 +.TIME_A EQU #5CFA +.TIME_B EQU #5CFB +.TIME_C EQU #5CFC +.TIME_D EQU #5CFD +.COMAND_WG EQU #5CFE +.SEC_NUM EQU #5CFF +.CONT_BUF_ADR EQU #5D00 +.WORK_2 EQU #5D02 +.WORK_4 EQU #5D04 +.S_NAME_NUM EQU #5D06 +.N_DEL_FLS EQU #5D07 +.FST_SYM_NAME EQU #5D08 +.VAR_3 EQU #5D09 +.BUF_FLAG EQU #5D0C +.BAS_DOS_FLG EQU #5D0E +.DOS_ERR_2 EQU #5D0F +.ERR_3D00 EQU #5D10 +.ADR_DOS_COM EQU #5D11 +.ERR_SP_COPY EQU #5D13 +.MSG_FLAG EQU #5D15 +.PDOS_COPY EQU #5D16 +.FLAG_BOOT EQU #5D17 +.INT_1_VAR EQU #5D18 +.CONT_DISK EQU #5D19 +.ADR_RET EQU #5D1A +.DOS_SP EQU #5D1C +.FL_NUMBER EQU #5D1E +.COM_LN_COPY EQU #5D20 +.L_5D23 EQU #5D23 +.BUFER EQU #5D25 +.AUTO_5D33 EQU #5D33 +.CLEAR_SEC EQU #5E06 +.CLEAR_TRK EQU #5E07 +.TYPE_DISK EQU #5E08 +.N_FILES EQU #5E09 +.FREE_SEC EQU #5E0A +.CODE_10H EQU #5E0C +.DISK_MRK_1 EQU #5E0F +.DISK_ALT_NM EQU #5E10 +.N_DEL_FL EQU #5E19 +.DISK_NAME EQU #5E1A ; -.BUFER_RD EQU #5D25 ; tr-dos buffer +.BUFER_RD EQU #5D25 ; tr-dos buffer ;-----------------------------------------------------------------------;