первая бетка восьмой бетки

This commit is contained in:
Tolik 2024-10-01 05:00:13 +10:00
parent ea26e1f584
commit 934353b970
7 changed files with 160 additions and 136 deletions

Binary file not shown.

View File

@ -1176,7 +1176,6 @@ DOS_ON: NOP ;!TODO ࠡ
;***************************************
; BLOCK #3D02-$,FF
; !TODO ¬®¦­® ®¯à¨å®¤®¢ âì âãâ 17 ¡ ©â®¢
;
;***************************************
;***************************************
@ -1234,17 +1233,13 @@ PROG_NO_ROM:
DISP Spec_Page.no_zx_rom
DI
;
LD A,CNF_PORT.CNF_0
OUT (SYS_PORT.RAM),A
;
LD A,SHARED_PAGE
OUT (SLOT3),A
OUT (SLOT2),A
OUT (SLOT1),A
;
LD HL,MESSAGE_NR
LD DE,#A000
LD BC,MESSAGE_NR.size
LD A,C
LDIR
;
LD SP,#BF00
;
LD E,0
@ -1259,6 +1254,12 @@ PROG_NO_ROM:
LD A,1
OUT (SCREEN_SWITCH),A
;
LD HL,MESSAGE_NR
LD DE,#A000
LD BC,MESSAGE_NR.size
LD A,C
LDIR
;
LD HL,#A000
LD D,0 ; delimiter
LD E,COLORS.CGA.FLASH + COLORS.CGA.INK.RED
@ -1277,7 +1278,7 @@ PROG_NO_ROM.size EQU $-PROG_NO_ROM
;-------------------[]
;-----------------------------------------------------------------------;
;>$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$< >$<;
; ENDIF
;-------------------------------[ #FFE0 ]-------------------------------;
; ¯à®£à ¬¬ , ª®â®à ï ¡ã¤ãç¨ à §¬¥é¥­­®© ¢ #40 áâà ­¨æ¥,
; á  ¤à¥á  RESTARTS, ¯¥à¥å¢ â뢠¥â RESET
@ -1290,8 +1291,8 @@ RESTARTS_PROG: ; !TODO LDConf
NOP
NOP
.Size EQU $-RESTARTS_PROG
; LD A,1
; OUT (SLOT3),A
; LD A,1
; OUT (SLOT3),A
;-----------------------------------------------------------------------;
;----------------------------[Setup Starter]----------------------------;
@ -1485,8 +1486,6 @@ kbd_loop2:
;#######################################################################;
;#######################################################################;
;-----------------------------------------------------------------------;
@ -1504,6 +1503,11 @@ ROM_DISK.Pages: ;
;#######################################################################;
;
;---------[Return to EXTENSION]---------
_mInfoBLOCK #3FD0-$,#FF ; ToBIOS_FromEXT
; #3FD0

View File

@ -300,13 +300,16 @@ INIT_CONFIG_ALL:
LD DE,CNF_PORT.CNF_0 + ROM.BIOS
LD (SYS_PAGE.CONFIG_DE - #4000),DE
; LD HL,SYS_PAGE.ZX_TASK.CURRENT - #4000 ; 㡨âì ¢á¥ § ¤ ç¨
; LD DE,SYS_PAGE.ZX_TASK.CURRENT+1 - #4000
; LD BC,_ZX_TASK - 1
; LD (HL),0
; LDIR
LD A,Spec_Page
OUT (SLOT2),A
LD (Spec_Page.flag_Z - #4000),A
EX AF,AF'
OUT (SLOT2),A

View File

@ -437,35 +437,19 @@ EXIT_SETUP: CALL INT_OFF
; error
XOR A
OUT (SYS_PORT.ROM),A
LD D,CMOS_CELL.QuickStartSetUp
LD D,CMOS_CELL.QuickStartSetUp ; ®¡­ã«ï¥¬ ¯ à ¬¥âà ­  ¢á直© á«ãç ©
CALL CMOS_WR
LD A,SYS_PAGE
OUT (SLOT3),A
RET
;
CALL ScreenPOS.CRLF
LD A,msgStrings.errorZXmode
LD E,COLORS.CGA.INK.RED
CALL POSTMSC
.loop_di: DI
HALT
JR .loop_di
; ELSE
;LD BC,#020E
;CALL GET_CMOS_VALUE
;OR A
;LD A,#EC ;SPRINTER
;JR Z,XFLEX
;LD A,#EA ;SPECTRUM
;XFLEX:
; XOR A ;LD A,ROM.BIOS
; OUT (SYS_PORT.ROM),A
; POP HL ; ¯¨å ¥âáï ¢ EXP.ASM ¢ ¯à®æ¥¤ãà¥
; JP (HL)
;LD (JMPHL),HL
;LD C,#F3
;RST_to_BIOS
;JMPHL EQU $+1
;JP #0000
; ENDIF
SetUp_ZX_HDD: LD D,CMOS_CELL.TRDOSmount
CALL CMOS_RD
AND %1010'1010 ; ¬ áª  ¤«ï 4-å HDD
@ -1827,6 +1811,71 @@ init_zx_roms: DI
OUT (SYS_PORT.ROM),A
LD A,Spec_Page
OUT (SLOT3),A
.init_41h: ; § ¡¨âì FF- ¬¨
LD HL,#C000
LD DE,#C001
LD BC,#3FFF - 2
LD (HL),#FF
LDIR
; ‡ £«ã誠 ¤«ï áâà ­¨æë #41
LD HL,PROG_NO_ROM
LD DE,#C000 + Spec_Page.no_zx_rom
LD BC,PROG_NO_ROM.size
LDIR
;
LD HL,RAM_BIOS_PROG
LD DE,#C000 + Spec_Page.to_bios
LD BC,RAM_BIOS_PROG.Length
LDIR
RET
;---------------------------------------------------------------------[]
;---------------------------------------
INCLUDE 'src/bios/ROM/SETUP/messages.z80'
;---------------------------------------
;
STRUCT MAIN_BUFFERS
ID BLOCK #100
Messages BLOCK MSG_ENG.size
Shared BLOCK 1024
End BYTE
ENDS
memBUFFER MAIN_BUFFERS = $
STACK EQU #C000
.Size EQU 128
IF memBUFFER.End-1 > #C000-STACK.Size
DISPLAY 'memBUFFER.Shared overlaps STACK by: ',/A,(memBUFFER.End-1)-(#C000-STACK.size)
ASSERT memBUFFER.End-1 < #C000-STACK.size
ENDIF
IFDEF PREBUILD
OUTEND
DISPLAY '-----[Set_Pictures Prebuild start]-----'
MMU 1 e, 0 ; áâà ­¨æ  0 ¢ ¡ ­ªã 0 ¨ ¯à®¢¥àª  ­  £à ­¨æë.
ORG ROM_MAP.LOGO
INCLUDE 'src/bios/logo/Set_Pictures.asm'
DISPLAY '-----[Set_Pictures Prebuild done ]-----'
ELSE
DISPLAY '------------------[Main.asm]------------------'
DISPLAY 'End code address: ',/A,$-1
DISPLAY 'Code size: ',/A,$-COMPILE_ADDR.MAIN
DISPLAY 'End buffers address: ',/A,memBUFFER.End-1
DISPLAY 'Free memory: ',/A,#C000-(memBUFFER.End-1)-STACK.Size
DISPLAY 'Unused bytes before INT_POINTER: ',/A,INT_POINTER-before_intPointer
ENDIF
;
;=======================================================================================================================
; ;;;;;;;;
; ELSE
; ;;;;;;;;
@ -1892,65 +1941,4 @@ init_zx_roms: DI
; ; ¬®¦­® § ¤¥©á⢮¢ âì ¥éñ 4 áâà ­¨æë ­  ¯®àâë #E4..#E7
; ;;;;;;;;
; ENDIF
; ;;;;;;;;
.init_41h: ; § ¡¨âì FF- ¬¨
LD HL,#C000
LD DE,#C001
LD BC,#3FFF - 2
LD (HL),C
LDIR
; ‡ £«ã誠 ¤«ï áâà ­¨æë #41
LD HL,PROG_NO_ROM
LD DE,#C000 + Spec_Page.no_zx_rom
LD BC,PROG_NO_ROM.size
LDIR
;
LD HL,RAM_BIOS_PROG
LD DE,#C000 + Spec_Page.to_bios
LD BC,RAM_BIOS_PROG.Length
LDIR
RET
;---------------------------------------------------------------------[]
;---------------------------------------
INCLUDE 'src/bios/ROM/SETUP/messages.z80'
;---------------------------------------
;
STRUCT MAIN_BUFFERS
ID BLOCK #100
Messages BLOCK MSG_ENG.size
Shared BLOCK 1024
End BYTE
ENDS
memBUFFER MAIN_BUFFERS = $
STACK EQU #C000
.Size EQU 128
IF memBUFFER.End-1 > #C000-STACK.Size
DISPLAY 'memBUFFER.Shared overlaps STACK by: ',/A,(memBUFFER.End-1)-(#C000-STACK.size)
ASSERT memBUFFER.End-1 < #C000-STACK.size
ENDIF
IFDEF PREBUILD
OUTEND
DISPLAY '-----[Set_Pictures Prebuild start]-----'
MMU 1 e, 0 ; áâà ­¨æ  0 ¢ ¡ ­ªã 0 ¨ ¯à®¢¥àª  ­  £à ­¨æë.
ORG ROM_MAP.LOGO
INCLUDE 'src/bios/logo/Set_Pictures.asm'
DISPLAY '-----[Set_Pictures Prebuild done ]-----'
ELSE
DISPLAY '------------------[Main.asm]------------------'
DISPLAY 'End code address: ',/A,$-1
DISPLAY 'Code size: ',/A,$-COMPILE_ADDR.MAIN
DISPLAY 'End buffers address: ',/A,memBUFFER.End-1
DISPLAY 'Free memory: ',/A,#C000-(memBUFFER.End-1)-STACK.Size
DISPLAY 'Unused bytes before INT_POINTER: ',/A,INT_POINTER-before_intPointer
ENDIF
;
; ;;;;;;;;

View File

@ -602,7 +602,7 @@ msgStrings:
_mSetStr bootFail, tmp_Counter : DZ ' fail' ; !FIXIT strFail
_mSetStr bootOk, tmp_Counter : DZ ' OK'
_mSetStr afterBootFail, tmp_Counter : DZ 'PRESS <ENTER> TO REBOOT, <DEL> TO ENTER SETUP OR <ESC> TO ZX-MODE . . .'
; _mSetStr noMemZX, tmp_Counter : DZ 'Error! No free memory to start ZX mode. Press CTRL+ALT+DEL or RESET.'
_mSetStr errorZXmode, tmp_Counter : DZ 'Error! Spectrum mode launch failed. Press CTRL+ALT+DEL or RESET.'
;
_mSetStr parLang, tmp_Counter : DZ 'Language (ï§ëª) : '
_mSetStr valLangEng, tmp_Counter : DZ 'English '
@ -709,7 +709,7 @@ msgStrings:
_mSetStr valQS_SetUpTrDos, tmp_Counter : DZ 'TR-DOS '
_mSetStr valQS_SetUpExp, tmp_Counter : DZ 'Expansion '
_mSetStr valQS_SetUpTrDos48, tmp_Counter : DZ 'TR-DOS 48 '
_mSetStr valQS_SetUpBasic48, tmp_Counter : DZ 'Basic 48+ '
_mSetStr valQS_SetUpBasic48, tmp_Counter : DZ 'Basic 48 '
; _mSetStrRus valLoadZXromsAuto, tmp_Counter : DZ 'On call '
IF NEW_FEATURE
_mSetStr parSetTime, tmp_Counter : DZ 'Date and time setup : '
@ -778,7 +778,7 @@ msgRusStrings:
_mSetStrRus bootFail, tmp_Counter : DZ ' ­¥¢®§¬®¦¥­'
_mSetStrRus bootOk, tmp_Counter : DZ ' OK'
_mSetStrRus afterBootFail, tmp_Counter : DZ '<EFBFBD>Œˆ <ENTER> Ÿ <EFBFBD><EFBFBD>ƒ<EFBFBD>Šˆ, <DEL> Ÿ <EFBFBD><EFBFBD>ŽŠ ˆˆ <ESC> Ÿ ZX-MODE . . .'
; _mSetStrRus noMemZX, tmp_Counter : DZ 'Žè¨¡ª ! <20>¥¤®áâ â®ç­® ¯ ¬ï⨠¤«ï áâ àâ  ZX Mode. <20> ¦¬¨â¥ CTRL+ALT+DEL ¨«¨ RESET.'
_mSetStrRus errorZXmode, tmp_Counter : DZ 'Žè¨¡ª !  ¯ã᪠०¨¬  Spectrum ­¥ 㤠«áï. <EFBFBD> ¦¬¨â¥ CTRL+ALT+DEL ¨«¨ RESET.'
;
_mSetStrRus parLang, tmp_Counter : DZ 'Ÿ§ëª (language) : '
_mSetStrRus valLangEng, tmp_Counter : DZ 'English '
@ -885,7 +885,7 @@ msgRusStrings:
_mSetStrRus valQS_SetUpTrDos, tmp_Counter : DZ 'TR-DOS '
_mSetStrRus valQS_SetUpExp, tmp_Counter : DZ 'Expansion '
_mSetStrRus valQS_SetUpTrDos48, tmp_Counter : DZ 'TR-DOS 48 '
_mSetStrRus valQS_SetUpBasic48, tmp_Counter : DZ 'Basic 48+ '
_mSetStrRus valQS_SetUpBasic48, tmp_Counter : DZ 'Basic 48 '
; _mSetStrRus valLoadZXromsAuto, tmp_Counter : DZ '<27>ਠ¢ë§®¢¥ '
IF NEW_FEATURE
_mSetStrRus parSetTime, tmp_Counter : DZ ' â  ¨ ¢à¥¬ï : '

View File

@ -390,7 +390,7 @@ INIT_vROM: LD A,(HL)
POP DE
POP BC
DJNZ .loop
; ãáâ ­®¢ª  ¬¥âª¨ ZX ¥á«¨ à ¬¡«®ª ­¥ #FF
; ãáâ ­®¢ª  ¬¥âª¨ ZX ¥á«¨ à ¬¡«®ª ­¥ 0
LD A,(SYS_PAGE.Block_ID.vROM)
OR A
RET Z
@ -726,7 +726,6 @@ GOTO_SPECTRUM: LD A,BIOS.Error.NotSupported
OUT (RGMOD),A ; ॣ¨áâà ¬®¤ë
;
LD IY,.BASIC_128
;!TODO ¥á«¨ 48ª â® ­¥ ­ã¦­®? ; [ ] free zx pages!
JR INIT_PAGES ; ¨­¨æ¨ «¨§ æ¨ï ­®¬¥à®¢ áâà ­¨æ ०¨¬  ᯥªâà㬠
;start_basic:
.BASIC_128: LD SP,#C000
@ -734,7 +733,6 @@ GOTO_SPECTRUM: LD A,BIOS.Error.NotSupported
LD DE,ZX_VARS.PRINTER_BUFFER ; § ¯ã᪠¯à®£à ¬¬ë ­  BASIC-¥.
LD BC,RES128_PROG.Size
LDIR
DI
JP ZX_VARS.PRINTER_BUFFER
;-----------------------------------------------------------------------;
@ -779,9 +777,14 @@ INIT_PAGES: LD A,SYS_PAGE
JR Z,.set_pent
;!FIXIT ®¡à ¡®âª  ®è¨¡ª¨
DI
HALT
.error_loop: LD A,R
AND 7
OUT (BorderColor),A
JR .error_loop
;
.set_48k: LD A,(HL) ; SLOT0, SLOT3 page
.set_48k: LD A,5 ; !HARDCODE CONFIG_DE.ZX_START ‚•Ž„ BASIC 48 á § ªàëâ묨 128-¬¨ ¯®àâ ¬¨
LD (SYS_PAGE.CONFIG_DE.ZX_START - #8000),A
LD A,(HL) ; SLOT0, SLOT3 page
INC HL
LD E,(HL) ; SLOT1 page
INC HL
@ -860,7 +863,7 @@ RES128_PROG:
; 3 ‚•Ž„ EXPANSION
;!TODO ¯®ª  ­¥ à ¡®â ¥â. Page #45, BIOS (ZX_EXP) #E0
XOR A
OUT (C),A
OUT (C),A ; 7FFD
LD A,#02
LD B,#1F
OUT (C),A

View File

@ -368,7 +368,7 @@ SERVICE:
CALL EXEC_PNT
JR SERVICE
SR_TAB: DW UTILIT
SR_TAB: DW RUN_DISK_TRD
DW GOTO_TRDOS.m128
DW GOTO_TRDOS.m48
DW TURBO_OFF
@ -481,22 +481,24 @@ Hardware_Menu_TAB:
; DW TR_DOS
; DW SP_DOS
DW SPRINTER_ZX
DW ZX_SPECTRUM_128
DW PENTAGON_128
DW SCORPION_256
DW Pentagon_48
DW PENTAGON_128
DW PENTAGON_512
DW ZX_SPECTRUM_128
DW SPRINTER_reset ;SPRINTER_2X
DW RET_FROM_M
; DC - every last character of a string will have bit 7 set
Hardware_Menu_STR:
BYTE 8 ; ª®«¨ç¥á⢮ ¯ã­ªâ®¢
BYTE 9 ; ª®«¨ç¥á⢮ ¯ã­ªâ®¢
BYTE 'Hardware',#FF ; § £®«®¢®ª ¬¥­î
DC 'Sprinter ZX '
DC 'ZX Spectrum'
DC 'Pentagon 128'
DC 'Scorpion 256'
DC 'Pentagon 48 '
DC 'Pentagon 128'
DC 'Pentagon 512'
DC 'Spectrum 128'
DC 'Restart '
DC 'RETURN'
DC " " ; ¬ àª¥à ª®­æ 
@ -522,21 +524,20 @@ Hardware_Menu_STR:
;**************************************************
SPRINTER_ZX: LD L,0 ; â®çª  ¢å®¤  ¢ <20>‡“
.custom_ROM: LD H,BIOS.RST_CONF.SP97_1
LD DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_0 ; !HARDCODE 4 - ¢ë¤¥«¥­¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ­¨æë
LD BC,#FE*256 + %0000'0010 ; !HARDCODE Port All Mode data. int pent, set default palette, 320 áâப
LD DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_0 ; !HARDCODE 4 - ¢ë¤¥«¥­¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ­¨æë
JR PREPARE_TO_START_ZX
;
ZX_SPECTRUM_128:
LD L,0 ; â®çª  ¢å®¤  ¢ <20>‡“
.custom_ROM: LD H,BIOS.RST_CONF.AY8910
LD DE,2*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.SCORP_RESET ; !HARDCODE 2 - ¢ë¤¥«¥­¨¥ ¯ ¬ï⨠Pentagon 128
LD BC,#FA*256 + %1000'0011
JR PREPARE_TO_START_ZX
JR PENTAGON_128.zx
;
SCORPION_256: LD L,0 ; â®çª  ¢å®¤  ¢ <20>‡“
.custom_ROM: LD H,BIOS.RST_CONF.AY8910
LD DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_1 ; !HARDCODE 4 - ¢ë¤¥«¥­¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ­¨æë
LD BC,#FE*256 + %1000'0001
LD DE,4*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_1 ; !HARDCODE 4 - ¢ë¤¥«¥­¨¥ ¯ ¬ï⨠Scorpion 256k. 2+6+8 áâà ­¨æë
PREPARE_TO_START_ZX:
DI
LD A,CNF_PORT.CNF_0 + CNF_PORT.TURBO.ON
@ -576,15 +577,26 @@ PREPARE_TO_START_ZX:
;
PENTAGON_128: LD L,0 ; â®çª  ¢å®¤  ¢ <20>‡“
.custom_ROM: LD H,BIOS.RST_CONF.AY8910
LD DE,2*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.SCORP_RESET ; !HARDCODE 2 - ¢ë¤¥«¥­¨¥ ¯ ¬ï⨠Pentagon 128
LD BC,#FE*256 + %0000'0010
.zx: LD DE,2*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.SCORP_RESET ; !HARDCODE 2 - ¢ë¤¥«¥­¨¥ ¯ ¬ï⨠Pentagon 128
JR PREPARE_TO_START_ZX
;
PENTAGON_512: LD L,0 ; â®çª  ¢å®¤  ¢ <20>‡“
.custom_ROM: LD H,BIOS.RST_CONF.AY8910
LD DE,3*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_512 + CNF_PORT.SCORP_RESET ; !HARDCODE 3 - ¢ë¤¥«¥­¨¥ ¯ ¬ï⨠Pentagon 512
LD BC,#FE*256 + %0000'0010
JR PREPARE_TO_START_ZX
LD DE,3*256 + CNF_PORT.CNF_1 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_512 + CNF_PORT.SCORP_RESET ; !HARDCODE 3 - ¢ë¤¥«¥­¨¥ ¯ ¬ï⨠Pentagon 512
JR PREPARE_TO_START_ZX
;
Pentagon_48: LD L,0 ; â®çª  ¢å®¤  ¢ <20>‡“
.custom_ROM: LD H,BIOS.RST_CONF.AY8910
LD BC,#FE*256 + %0000'0010
.zx: LD DE,1*256 + CNF_PORT.TURBO.ON + CNF_PORT.CNF_1 ; !HARDCODE 1 - ¢ë¤¥«¥­¨¥ ¯ ¬ï⨠48 ª¡
JR PREPARE_TO_START_ZX
;
ZX_Spectrum_48: LD L,0 ; â®çª  ¢å®¤  ¢ <20>‡“
.custom_ROM: LD H,BIOS.RST_CONF.AY8910
LD BC,#FA*256 + %1000'0011
JR Pentagon_48.zx
; CONFIG_SET:
; PUSH DE
@ -663,10 +675,13 @@ SPRINTER_reset:
; *** MENU UTILITES ***
;*****************************
;!FIXIT íâ® § ¯ã᪠c:\disk.trd - ­¥ ¤ã¬ î, çâ® íâ® ­ã¦­®, ¬®¦­® § ¬¥­¨âì
UTILIT:
RUN_DISK_TRD:
LD HL,C_DISK_C
CALL CALL_DOS1
LD A,SYS_PORT.CNF_0 + SYS_PORT.EXTENSION
OUT (SYS_PORT.ROM),A
;CALL DOS_ON
;LD A,0 ; DETECT_HDD
;CALL EXP_HDD
@ -675,12 +690,12 @@ UTILIT:
;CALL DOS_OFF
JR C,DISK_UTILIT
JR C,.DISK_UTILIT
LD HL,C_DISK_C3
CALL CALL_DOS1
UTIL_DISK:
.UTIL_DISK:
XOR A
LD C,BIOS.FreeMemRMD
CALL ToBIOS_FromEXT
@ -692,33 +707,44 @@ UTIL_DISK:
LD C,BIOS.GET_RAMD_ST
CALL ToBIOS_FromEXT
JR C,UTIL_DISK_L1
JR Z,UTIL_DISK_L1
JR C,.UTIL_DISK_L1
JR Z,.UTIL_DISK_L1
LD HL,C_DISK_C1
CALL CALL_DOS1
; [ ] ¨á¯à ¢«¥­ ¡ £ á § ¯ã᪮¬ disk.trd á CNF != 0
IN A,(SLOT3)
EX AF,AF'
LD A,SYS_PAGE
OUT (SLOT3),A
LD A,(SYS_PAGE.CONFIG_DE.CNF_PORT)
EX AF,AF'
OUT (SLOT3),A
EX AF,AF'
OUT (SYS_PORT.ROM),A
;
LD HL,C_DISK_C2
CALL CALL_DOS1
RET
UTIL_DISK_L1:
.UTIL_DISK_L1:
LD A,(ZX_VARS.OPER_DISK)
INC A
CP 2
JR Z,DISK_UTIL_RET
JR Z,.DISK_UTIL_RET
LD HL,C_DISK_C5
CALL CALL_DOS1
JR UTIL_DISK
JR .UTIL_DISK
DISK_UTIL_RET:
.DISK_UTIL_RET:
LD HL,C_DISK_C6
CALL CALL_DOS1
RET
DISK_UTILIT:
.DISK_UTILIT:
LD HL,C_DISK_C4
CALL CALL_DOS1
JR UTIL_DISK
JR .UTIL_DISK
C_DEMO6: DB .Size, ZX_Token.rem, ':/disk.trd', 13,80
.Size EQU $-C_DEMO6-1