This commit is contained in:
Tolik 2024-10-06 02:09:30 +10:00
parent 46d3d4f99c
commit 9f78d202ae
2 changed files with 102 additions and 244 deletions

@ -1 +1 @@
Subproject commit 722db55c24ee5172d610e832f3933c90914fcb8c Subproject commit 7e00c2aa909241367878004ad104b56abb907f80

View File

@ -164,13 +164,14 @@ BEGIN: LD (LINE_X),IX
CALL PARSE_PARAMETERS CALL PARSE_PARAMETERS
CALL COUNT_vROM_PAGES CALL COUNT_vROM_PAGES
PUSH AF PUSH AF
;!FIXIT ¯à®¢¥à¨âì ä« £ ZX, ¥á«¨ CF ; [ ] free zx pages ??ERROR_ZX_FLAG??
; Žç¨é ¥¬ ¯ ¬ïâì, ¥á«¨ ROM_BIN > 0 ; Žç¨é ¥¬ ¯ ¬ïâì, ¥á«¨ ROM_BIN > 0
LD BC,BIOS.ZX_MEMORY_MANAGER.FreeZXvPages LD BC,BIOS.ZX_MEMORY_MANAGER.FreeZXvPages.vROM
CALL NC,ToBIOS CALL NC,ToBIOS
; ‚뤥«ï¥¬ áâà ­¨æë ¯®¤ vRAM ; ‚뤥«ï¥¬ áâà ­¨æë ¯®¤ vRAM
CALL GET_vRAM_PAGES LD A,(PARAMS.No_run + 2)
;JR C, ; no mem for vRAM ;!FIXIT ;[ ] free zx pages AND A
CALL NZ,GET_vRAM_PAGES
JR C,Error_NoMemForSPpages
POP AF POP AF
; ‚뤥«ï¥¬ áâà ­¨æë ¯®¤ vROM, ¥á«¨ ROM_BIN > 0 ; ‚뤥«ï¥¬ áâà ­¨æë ¯®¤ vROM, ¥á«¨ ROM_BIN > 0
JR C,.skip_vROM JR C,.skip_vROM
@ -178,20 +179,23 @@ BEGIN: LD (LINE_X),IX
LD B,A LD B,A
LD C,BIOS.GetMem LD C,BIOS.GetMem
RST ToBIOS RST ToBIOS
;JR C, ; no mem for vROM ;!FIXIT ;[ ] free zx pages JR C,Error_NoMemForSPpages
LD (ZX_vROM_BLK),A LD (ZX_vROM_BLK),A
; Œ ¯¯¨¬ áâà ­¨æë vROM, ¥á«¨ ROM_BIN > 0 ; Œ ¯¯¨¬ áâà ­¨æë vROM, ¥á«¨ ROM_BIN > 0
LD HL,BUFFER_RAM_PAGES LD HL,BUFFER_RAM_PAGES
LD C,BIOS.GetMemBlkPages LD C,BIOS.GetMemBlkPages
RST ToBIOS RST ToBIOS
CALL LOAD_vROM_BIN CALL LOAD_vROM_BIN
.skip_vROM: ; ¥á«¨ norun, â® ¤ «ìè¥ ­¥ ­ ¤®
.skip_vROM: CALL LOADING_PALETTE LD A,(PARAMS.No_run + 2)
;CALL INIT_vROM_PAGES AND A
LD HL,MSG_EXIT1
JP Z,EXIT_ALL
; ;
;JP NC,PREPARE_TO_ZXMODE ; £à㧨¬ ¯ «¨âàã ¨ ®¡à § ¤¨áª , ¥á«¨ ­ ¤®
CALL LOAD_IMAGE_FILE
CALL LOADING_PALETTE
JP PREPARE_TO_ZXMODE JP PREPARE_TO_ZXMODE
;JP EXIT_ALL
;ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ; ;ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ;
@ -213,14 +217,16 @@ ERROR_FILE: LD HL,ERROR_FILE_MSG_X
RST ToDSS RST ToDSS
; ;
LD HL,ERROR_FILE_MSG LD HL,ERROR_FILE_MSG
JP EXIT_ALL JR EXIT_ALL
ERROR_ZX_FLAG: LD HL,MSG_NO_ZX_FLAG ERROR_ZX_FLAG: LD HL,MSG_NO_ZX_FLAG
JP EXIT_ALL JR EXIT_ALL
END_CNF_ERROR: END_CNF_ERROR:
LD HL,ERROR_CNF LD HL,ERROR_CNF
EXIT_ALL: LD C,Dss.PChars EXIT_ALL: LD C,Dss.PChars
RST ToDSS RST ToDSS
; ;
LD BC,BIOS.ZX_MEMORY_MANAGER.FreeZXvPages.vRAM
RST ToBIOS
.loop: LD BC,Dss.Exit .loop: LD BC,Dss.Exit
RST ToDSS RST ToDSS
JR .loop JR .loop
@ -634,30 +640,30 @@ SAVETXT: LD (BACKTXT.VMODE),A
.EXIT: ; .EXIT: ;
;!TEST; [ ] 04/11/2023 Žâ¤¥«ì­ë¥ à ¬¤¨áª¨ ¤«ï ०¨¬  ᯥªâà㬠 ¨ DSS. BLK_TO_RAMD ;!TEST; [ ] 04/11/2023 Žâ¤¥«ì­ë¥ à ¬¤¨áª¨ ¤«ï ०¨¬  ᯥªâà㬠 ¨ DSS. BLK_TO_RAMD
; SETUP_RAM_DRIVES: SETUP_RAM_DRIVES:
; LD BC,BIOS.SWAP_RAM_DRIVES.ZX LD BC,BIOS.SWAP_RAM_DRIVES.ZX
; RST ToBIOS RST ToBIOS
; ; § ¯ã᪠á ä ©«®¬ ¤«ï à ¬¤¨áª ? ; § ¯ã᪠á ä ©«®¬ ¤«ï à ¬¤¨áª ?
; LD A,(Load_IMAGE_File.MEM_BLK) LD A,(Load_IMAGE_File.MEM_BLK)
; OR A OR A
; JR Z,.skip JR Z,.skip
; ; ¯à®¢¥à塞 ¤à ©¢ ¯¥à¥¤ ¯¥à¥­ §­ ç¥­¨¥¬ ; ¯à®¢¥à塞 ¤à ©¢ ¯¥à¥¤ ¯¥à¥­ §­ ç¥­¨¥¬
; XOR A XOR A
; LD C,BIOS.GET_RAMD_ST LD C,BIOS.GET_RAMD_ST
; RST ToBIOS RST ToBIOS
; OR A OR A
; JR Z,.set_block JR Z,.set_block
; ; ®á¢®¡®¤¨âì à ¬¤¨áª ; ®á¢®¡®¤¨âì à ¬¤¨áª
; XOR A XOR A
; LD C,BIOS.FreeMemRMD LD C,BIOS.FreeMemRMD
; RST ToBIOS RST ToBIOS
; ; set disk e: ; set disk e:
; .set_block: LD A,(Load_IMAGE_File.MEM_BLK) .set_block: LD A,(Load_IMAGE_File.MEM_BLK)
; LD B,A LD B,A
; XOR A XOR A
; LD C,BIOS.BLK_TO_RAMD LD C,BIOS.BLK_TO_RAMD
; RST ToBIOS RST ToBIOS
; .skip: ; .skip: ;
; ; ; ;
;!FIXIT ¯¥à¥¤¥« âì ­  äã­ªæ¨î ¡¨®á  ;!FIXIT ¯¥à¥¤¥« âì ­  äã­ªæ¨î ¡¨®á 
SET_RELOAD_PROG: SET_RELOAD_PROG:
@ -722,38 +728,13 @@ RESET_TO_ZX: DI
LD A,#FF LD A,#FF
LD (SYS_PAGE.CURRENT_DIR_DRIVE),A LD (SYS_PAGE.CURRENT_DIR_DRIVE),A
LD (SYS_PAGE.CURRENT_DIR_DRIVE_COPY),A LD (SYS_PAGE.CURRENT_DIR_DRIVE_COPY),A
;;;;;;;; ;!TODO ¢ BIOS?
; LD A,CNF_PORT.CNF_3
; OUT (SYS_PORT.ROM),A ; System-page on & CNF = 3
; XOR A
; OUT (BorderColor),A ; border-0
; OUT (RGADR),A ; Screen-page = 0
; OUT (RGMOD),A ; Screen-mode-page = 0
; LD BC,#1FFD
; OUT (C),A ; Scorpion-port = 0
; LD BC,#7FFD
; OUT (C),A ; pentagon-port = 0
; LD A,(PARAMS.Int_or+2)
; AND A
; LD A,#FA ; original waits on
; JR NZ,.ORIG1
; LD A,#FE
; .ORIG1: LD BC,Port_All_Mode
; OUT (C),A ; ACC-Off
LD BC,CBL.SYS_PORT LD BC,CBL.SYS_PORT
XOR A XOR A
OUT (C),A ; CBL-off OUT (C),A ; CBL-off
;
;[ ] 1/02/2024 ०¨¬ ᯥªâà㬠 à ¡®â ¥â á «î¡ë¬¨ ª ­ « ¬¨ ¨ ®á­®¢­ë¬¨ à §¤¥« ¬¨ ;[ ] 1/02/2024 ०¨¬ ᯥªâà㬠 à ¡®â ¥â á «î¡ë¬¨ ª ­ « ¬¨ ¨ ®á­®¢­ë¬¨ à §¤¥« ¬¨
CALL SET_CURRENT_HDD CALL SET_CURRENT_HDD
; LD A,BIOS.FN_TURBO.VG.OFF ; FDD-720
; LD C,BIOS.FN_TURBO
; RST ToBIOS_18
;
; ;
XOR A ; reg A' for GOTO_SPECTRUM XOR A ; reg A' for GOTO_SPECTRUM
EX AF,AF' EX AF,AF'
@ -814,162 +795,14 @@ Set_Next_Par: ; SYS_PORT/CNF_PORT
; vROM & vRAM ; vROM & vRAM
LD HL,(ZX_vROM_BLK) LD HL,(ZX_vROM_BLK)
; RESERVED ; RESERVED
XOR A EX AF,AF'
; ;
LD C,BIOS.GOTO_SPECTRUM LD C,BIOS.GOTO_SPECTRUM
RST ToBIOS RST ToBIOS
; ;!FIXIT ᤥ« âì ®¡à ¡®â稪
.di_halt: DI .di_halt: DI
HALT HALT
JR .di_halt JR .di_halt
; [ ] free zx pages!
; ‚室: D: 0 - BASIC 128, 1 - BASIC 48, 2 - TR-DOS 128,
; 3 - EXPANSION. C § ªàëâ묨 128-¬¨ ¯®àâ ¬¨:
; 4 - TR-DOS, 5 - BASIC 48
; E: §­ ç¥­¨¥ ¤«ï SYS_PORT/CNF_PORT
; L: Block_ID.vROM
; H: Block_ID.vRAM
; B: Port All Mode
; A: RESERVED (TASK Number = 0)
;A'[1..0]: 1 - int scorp, 2 - int pent, 3 - int ZX
; A'[2]: 0 - set default palette, 1 - don't change palette
; A'[7]: 0 - 320, 1 - 312 áâப
; XOR A
; LD BC,2*256+BIOS.SET_PAL_INIT ; Set ZX-Palette
; RST ToBIOS_18
;.skip:
; LD A,(PARAMS.Int_or+2)
; AND A ; 3
; JR NZ,Original
; LD A,(PARAMS.Int_sc+2) ; 1/2
; Original: LD C,BIOS.FN_SYNC ; -> INT for Pentagon or Scorpion
; RST ToBIOS_18
; LD HL,#4000 ; clear ZX-Spectrum screen
; LD DE,#4001
; LD BC,#1AFF
; LD (HL),L
; LDIR
; LD HL,#4104 ; Screen-1
; LD E,0
; LD BC,4*256+BIOS.LP_OPEN_S
; RST ToBIOS_18
; LD HL,#5104 ; Screen-2
; LD E,0
; LD BC,4*256+BIOS.LP_OPEN_S
; RST ToBIOS_18
; XOR A
; OUT (RGADR),A
; OUT (RGMOD),A
; ˆ­¨æ¨ «¨§ æ¨ï áâà ­¨æ
;!FIXIT ç¥à¥§ äã­ªæ¨î ¡¨®á ¯®¯à®¡®¢ âì
; DI
; LD A,5 ; [ ] free zx pages!
; OUT (SLOT1),A
; ; #1FFD
; LD BC,#1FFD
; XOR A
; OUT (SLOT0),A ; [ ] free zx pages!
; OUT (C),A
; ; #7FFD
; LD B,#7F
; LD A,8
; LOOP_P1: DEC A
; OUT (C),A
; OUT (SLOT3),A
; JR NZ,LOOP_P1
; ; #1FFD
; LD B,#1F
; LD A,#10
; OUT (C),A
; ; #7FFD
; LD B,#7F
; LD A,8
; LOOP_P2: OUT (C),A
; OUT (SLOT3),A
; INC A
; CP 16
; JR NZ,LOOP_P2
; ;
; XOR A
; OUT (C),A
; ; #1FFD
; LD B,#1F
; OUT (C),A
; ;
; ; ‚ᥠRAM, ªà®¬¥ BANK2 - ¢ ­¥© ¯à®£à ¬¬ !
; ;
; LD HL,PROG_STARTS
; LD DE,PROG_STARTS.Launch ;!HARDCODE
; LD BC,0*256 + PROG_STARTS.Length
; LDIR
; LD A,(PARAMS.Lines312+2)
; OUT (Port_VSYNC),A
; LD A,(PARAMS.P_7FFD+2) ; - Pentagon off
; LD BC,#7FFD
; OUT (C),A
; LD A,(PARAMS.Turbo+2) ; 3 - turbo
; LD HL,(PARAMS.Sprinter+2) ; +04h - Sprinter-ZX
; ADD A,L ; +0Ch - Scorpion/Pentagon
; LD HL,(PARAMS.P_1FFD+2) ; +40h - Scorpion port off
; ADD A,L
; LD HL,(PARAMS.Mem512+2) ; +80h - Pentagon-512 on
; ADD A,L
; LD E,A
; LD A,(PARAMS.To_trd+2)
; LD D,A
; ;!TEST
; IN A,(SLOT3)
; LD C,A
; LD A,SYS_PAGE
; OUT (SLOT3),A
; LD A,E
; LD (SYS_PAGE.CONFIG_DE),A
; XOR A
; LD (SYS_PAGE.CONFIG_DE+1),A
; LD A,C
; OUT (SLOT3),A
; ;
; JP PROG_STARTS.Launch
; ; ; ;
; PROG_STARTS:
; .Launch: EQU #FF00
; DISP .Launch
; LD A,2 ; [ ] free zx pages!
; OUT (SLOT2),A
; LD A,E
; OUT (SYS_PORT.RAM),A
; LD A,D
; AND A
; JP Z,0
; LD A,#10
; LD BC,#7FFD
; OUT (C),A
; LD HL,0
; PUSH HL
; JP #3D29 ; RESET to TR-DOS
; ENT
; ;
; .Length EQU $-PROG_STARTS
; ASSERT PROG_STARTS.Length<#100,'PROG_STARTS too big!!!'
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°; ;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
@ -1159,14 +992,13 @@ READ_CNF_FILE: LD HL,#C000
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°; ;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
MACRO vROM_LOAD romLine;,pageNumber MACRO vROM_LOAD romLine;,pageNumber
.romLine = (romLine-1)*2 .RomLine = (romLine-1)*2
LD DE,(ADDRESS_LINES+.romLine) LD DE,(ADDRESS_LINES+.RomLine)
CALL vROM_LOAD_BIN CALL vROM_LOAD_BIN
ENDM ENDM
; ;
LOAD_vROM_BIN: CALL CHECK_ZX_FLAG LOAD_vROM_BIN: EXX
EXX LD HL,BUFFER_vROM_PAGES.Pages
LD HL,BUFFER_vROM_PAGES
EXX EXX
LD HL,BUFFER_RAM_PAGES LD HL,BUFFER_RAM_PAGES
vROM_LOAD CFG_FILE_LINES.BASIC128 ;, #42 2-ï áâப  - ¨¬ï ä ©«  BASIC128 vROM_LOAD CFG_FILE_LINES.BASIC128 ;, #42 2-ï áâப  - ¨¬ï ä ©«  BASIC128
@ -1179,6 +1011,12 @@ LOAD_vROM_BIN: CALL CHECK_ZX_FLAG
vROM_LOAD CFG_FILE_LINES.BASIC_48_2 ;, ??? 9-ï áâப  - ¨¬ï ä ©«  vROM_LOAD CFG_FILE_LINES.BASIC_48_2 ;, ??? 9-ï áâப  - ¨¬ï ä ©« 
vROM_LOAD CFG_FILE_LINES.TRDOS_2 ;, ??? 10-ï áâப  - ¨¬ï ä ©«  vROM_LOAD CFG_FILE_LINES.TRDOS_2 ;, ??? 10-ï áâப  - ¨¬ï ä ©« 
vROM_LOAD CFG_FILE_LINES.ZXEXP_2 ;, ??? 11-ï áâப  - ¨¬ï ä ©«  vROM_LOAD CFG_FILE_LINES.ZXEXP_2 ;, ??? 11-ï áâப  - ¨¬ï ä ©« 
LD HL,BUFFER_vROM_PAGES
LD A,(ZX_vROM_BLK)
LD (HL),A
LD BC,BIOS.ZX_MEMORY_MANAGER.SetCustomVroms
RST ToBIOS
RET RET
; ;
vROM_LOAD_BIN: EX DE,HL vROM_LOAD_BIN: EX DE,HL
@ -1190,19 +1028,19 @@ vROM_LOAD_BIN: EX DE,HL
.go_load: LD A,(HL) ;BUFFER_RAM_PAGES.ROM .go_load: LD A,(HL) ;BUFFER_RAM_PAGES.ROM
EXX EXX
LD (HL),A LD (HL),A
INC HL ;INC HL
PUSH HL PUSH HL
EXX EXX
PUSH HL PUSH HL
EX DE,HL EX DE,HL
CALL READ_FILE_1 ; A - RAM page CALL READ_FILE_1 ; A - RAM page
POP HL POP HL
LD A,(HL) ; LD A,(HL)
INC HL INC HL
; ;
EXX EXX
POP HL POP HL
LD (HL),A ; LD (HL),A
EXX EXX
; ;
LD A,SHARED_PAGE LD A,SHARED_PAGE
@ -1214,23 +1052,9 @@ vROM_LOAD_BIN: EX DE,HL
EXX EXX
RET RET
; ;
;!FIXIT ¢à¥¬¥­­ ï § ¯« âª 
CHECK_ZX_FLAG: LD BC,SLOT3
IN B,(C) ;NO_ZX_FLAG: DB 0
LD A,Spec_Page
OUT (C),A
LD HL,(Spec_Page.flag_Z)
LD DE,'Z'+'X'*256
;
XOR A
SBC HL,DE
OUT (C),B
RET Z
;
INC A
LD (NO_ZX_FLAG),A
RET
NO_ZX_FLAG: DB 0
; ;
; MACRO vROM_LOAD romLine;,pageNumber ; MACRO vROM_LOAD romLine;,pageNumber
; .romLine = (romLine-1)*2 ; .romLine = (romLine-1)*2
@ -1266,6 +1090,26 @@ NO_ZX_FLAG: DB 0
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°; ;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
LOAD_IMAGE_FILE:
LD HL,(IMAGE_NAME)
LD A,H
OR L
RET Z
;
LD C,SLOT3
IN B,(C)
PUSH BC
;
CALL READ_IMAGE
;
POP BC
OUT (C),B
RET NC
JP ERROR_FILE
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°; ;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
;!TEST palette load ;!TEST palette load
LOADING_PALETTE: LOADING_PALETTE:
@ -1415,7 +1259,6 @@ PARSE_PARAMETERS:; parameters parsing
;¥á«¨ áâíª ­ å®¤¨âáï ¢ âà¥â쥬 á«®â¥, â® ¢ë§®¢ á ¢ëª«î祭­ë¬¨ ¯à¥à뢠­¨ï¬¨ ;¥á«¨ áâíª ­ å®¤¨âáï ¢ âà¥â쥬 á«®â¥, â® ¢ë§®¢ á ¢ëª«î祭­ë¬¨ ¯à¥à뢠­¨ï¬¨
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°; ;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
GET_vRAM_PAGES: CALL .check_params GET_vRAM_PAGES: CALL .check_params
XOR A
LD C,BIOS.ZX_MEMORY_MANAGER LD C,BIOS.ZX_MEMORY_MANAGER
RST ToBIOS RST ToBIOS
RET C RET C
@ -1468,7 +1311,21 @@ COUNT_vROM_PAGES:
LD A,C LD A,C
LD (ZX_vROM_COUNT),A LD (ZX_vROM_COUNT),A
SUB 1 ; ¥á«¨ 0 - â® ­¥ ¬¥­ï¥¬ ­ ¡®à SUB 1 ; ¥á«¨ 0 - â® ­¥ ¬¥­ï¥¬ ­ ¡®à
RET RET NC
; CHECK_ZX_FLAG
LD BC,SLOT3
IN B,(C)
LD A,Spec_Page
OUT (C),A
LD HL,(Spec_Page.flag_Z)
LD DE,'Z'+'X'*256
;
XOR A
SBC HL,DE
OUT (C),B
SCF ; ROM ä ©«®¢ 0, ¬¥âª  ZX ¥áâì
RET Z
JP ERROR_ZX_FLAG
;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°; ;°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°;
@ -1554,7 +1411,8 @@ BUFFER_RAM_PAGES:
BLOCK 10,#FF ; !HARDCODE ª®«¨ç¥á⢮ ¯®à⮢ í¬ã«ïâ®à  <20>‡“ BLOCK 10,#FF ; !HARDCODE ª®«¨ç¥á⢮ ¯®à⮢ í¬ã«ïâ®à  <20>‡“
.Size EQU $-BUFFER_RAM_PAGES .Size EQU $-BUFFER_RAM_PAGES
BUFFER_vROM_PAGES: BUFFER_vROM_PAGES:
BLOCK 10,#FF ; !HARDCODE ª®«¨ç¥á⢮ ¯®à⮢ í¬ã«ïâ®à  <20>‡“ .BlockID: BYTE 0
.Pages: BLOCK 10,#FF ; !HARDCODE ª®«¨ç¥á⢮ ¯®à⮢ í¬ã«ïâ®à  <20>‡“
.Size EQU $-BUFFER_RAM_PAGES .Size EQU $-BUFFER_RAM_PAGES
ELSE ELSE
BUFFER_RAM_PAGES: BUFFER_RAM_PAGES:
@ -1586,8 +1444,8 @@ ERROR_FILE_MSG: DB 13,10, "Unable to work.",0
;ERROR_FILE2_MSG: DB 13,10, "<22> ¡®â  ­¥¢®§¬®¦­ .",0 ;ERROR_FILE2_MSG: DB 13,10, "<22> ¡®â  ­¥¢®§¬®¦­ .",0
ERROR_CNF: DB 13,10, "Unexpected CNF file end.",0 ERROR_CNF: DB 13,10, "Unexpected CNF file end.",0
;ERROR_CNF2: DB 13,10, "<22>¥®¦¨¤ ­­ë© ª®­¥æ CNF ä ©« .",0 ;ERROR_CNF2: DB 13,10, "<22>¥®¦¨¤ ­­ë© ª®­¥æ CNF ä ©« .",0
NO_MEM_MSG: DB 13,10, "The spesial pages are already used." NO_MEM_MSG: DB 13,10, "Not enough free memory pages for ZX mode."
DB 13,10, "Clear memory and restart spectrum.exe again.",0 DB 13,10, "Clear the memory and restart spectrum.exe again.",0
;NO_MEM_MSG2: DB 13,10, "‘¯¥æ¨ «ì­ë¥ áâà ­¨æë 㦥 § ­ïâë." ;NO_MEM_MSG2: DB 13,10, "‘¯¥æ¨ «ì­ë¥ áâà ­¨æë 㦥 § ­ïâë."
; DB 13,10, "Žç¨áâ¨â¥ ¯ ¬ïâì ¨ ¯¥à¥§ ¯ãáâ¨â¥ spectrum.exe á­®¢ .",0 ; DB 13,10, "Žç¨áâ¨â¥ ¯ ¬ïâì ¨ ¯¥à¥§ ¯ãáâ¨â¥ spectrum.exe á­®¢ .",0
MSG_NORMAL: DB 13,10, "All files has been read successfully.",13,10 MSG_NORMAL: DB 13,10, "All files has been read successfully.",13,10