- для тестирования Audio-CD и BIOS добавлены команды READTOC и CLOSETOC.
This commit is contained in:
parent
194e7a1fca
commit
80161c02af
BIN
bin/CDX.EXE
BIN
bin/CDX.EXE
Binary file not shown.
10
bin/CDX.TXT
10
bin/CDX.TXT
@ -1,5 +1,5 @@
|
||||
|
||||
CDROM Extension utility v1.03
|
||||
CDROM Extension utility v1.04
|
||||
|
||||
(c) Sprinter Team, 2025
|
||||
|
||||
@ -20,6 +20,10 @@ LIST [\cd\path\] [pattern] --
|
||||
COPY \source \destination -- ª®¯¨à®¢ âì ä ©«ë
|
||||
DUMP sector [offset] -- ¯®ª § âì ¤ ¬¯ ᥪâ®à ¤¨áª
|
||||
SEND hexline ["." separator] -- ®â¯à ¢ª ATAPI ¯ ª¥â
|
||||
READTOC -- ç⥨¥ TOC Audio-CD ¨ ¯®ª § áâ âãá çâ¥¨ï ¨ ª®«¨ç¥áâ¢
|
||||
¤®à®¦¥ª ¤¨áª¥.
|
||||
CLOSETOC -- «®£¨ç® READTOC, ® ¯¥à¥¤ ç⥨¥¬ ¯à¨ã¤¨â¥«ì®
|
||||
¯®¤ ¥âáï ª®¬ ¤ § ªàëâ¨ï âà¥ï.
|
||||
|
||||
Š«îç¨:
|
||||
|
||||
@ -55,6 +59,10 @@ LIST [\cd\path\] [pattern] -- show file(s)
|
||||
COPY \source \destination -- copy file(s) from CD-ROM to another disk
|
||||
DUMP sector [offset] -- show sector dump from CD-ROM
|
||||
SEND hexline ["." separator] -- send ATAPI packet
|
||||
READTOC -- reading the TOC Audio CD and showing the reading status and quantity
|
||||
tracks on the disc.
|
||||
CLOSETOC -- similar to READTOC, but forced before reading
|
||||
the command to close the tray is given.
|
||||
|
||||
Switches:
|
||||
-h,? -- help page
|
||||
|
||||
@ -1,5 +1,9 @@
|
||||
|
||||
‚¥àá¨ï 1.04
|
||||
- ¤«ï â¥áâ¨à®¢ ¨ï Audio-CD ¨ BIOS ¤®¡ ¢«¥ë ª®¬ ¤ë
|
||||
READTOC ¨ CLOSETOC.
|
||||
|
||||
<EFBFBD>ЅрсЈя 1.03
|
||||
- ¯®¯à ¢«¥ cdx.txt
|
||||
- ¯®¯à ¢«¥ cdx.txt.
|
||||
- ЄЎЁ ЋЅ ЂЎЇЌЎІЎсть ЏЎсЋ ть ATAPI Џ ЊЅт.
|
||||
- ¥á«¨ ¥â ¤¨áª ¢ ¯à¨¢®¤¥, â® ¥ ¯¨è¥â ®è¨¡ªã, çâ® ¥â ¯à¨¢®¤
|
||||
- ¥á«¨ ¥â ¤¨áª ¢ ¯à¨¢®¤¥, â® ¥ ¯¨è¥â ®è¨¡ªã, çâ® ¥â ¯à¨¢®¤ .
|
||||
|
||||
47
cdx.a80
47
cdx.a80
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 07.07.2025 savelij
|
||||
; LAST UPDATE: 13.07.2025 savelij
|
||||
|
||||
include macros.a80
|
||||
include bios_sp.a80
|
||||
@ -389,23 +389,25 @@ MSG0 DB 0
|
||||
DZ "Closing tray..."
|
||||
; 01234567890123456789012345678901234567890123456789012345678901234567890123456789
|
||||
_SETVAR .MSG_USAGE
|
||||
DB " Usage: CDX.EXE [-switches] [command] [param1] [param2]\r\n\r\n"
|
||||
DB "Commands:\r\n"
|
||||
DB " CDX OPEN - Open tray\r\n"
|
||||
DB " CDX CLOSE - Close tray\r\n"
|
||||
DB " CDX LIST [\\cd_path\\][pattern] - Show CDROM filelist\r\n"
|
||||
DB " CDX COPY \\source d:\\destination\\ - Copy file(s) from CDROM to another disk\r\n"
|
||||
DB " CDX DUMP sector [offset] - Show sector dump from CDROM\r\n"
|
||||
DB " CDX SEND hexline [\".\" separator] - Send ATAPI command\r\n"
|
||||
DB " example:\r\n"
|
||||
DB " CDX SEND 4B.000000.0000000000000000.00000000\r\n"
|
||||
DB "\r\n"
|
||||
DB "Switches:\r\n"
|
||||
DB " -1 CDROM installed as Primary IDE Master device\r\n"
|
||||
DB " -2 CDROM installed as Primary IDE Slave device\r\n"
|
||||
DB " -3 CDROM installed as Secondary IDE Master device\r\n"
|
||||
DB " -4 CDROM installed as Secondary IDE Slave device\r\n"
|
||||
DZ " -h,? Help page\r\n"
|
||||
DB " Usage: CDX.EXE [-switches] [command] [param1] [param2]\r\n\r\n"
|
||||
DB "Commands:\r\n"
|
||||
DB " CDX OPEN - Open tray\r\n"
|
||||
DB " CDX CLOSE - Close tray\r\n"
|
||||
DB " CDX LIST [\\cd_path\\][pattern] - Show CDROM filelist\r\n"
|
||||
DB " CDX COPY \\source d:\\destination\\ - Copy file(s) from CDROM to another disk\r\n"
|
||||
DB " CDX DUMP sector [offset] - Show sector dump from CDROM\r\n"
|
||||
DB " CDX SEND hexline [\".\" separator] - Send ATAPI command\r\n"
|
||||
DB " example:\r\n"
|
||||
DB " CDX SEND 4B.000000.0000000000000000.00000000\r\n"
|
||||
DB "\r\n"
|
||||
DB " CDX READTOC - Read TOC Audio-CD\r\n"
|
||||
DB " CDX CLOSETOC - Close tray and read TOC Audio-CD\r\n"
|
||||
DB "Switches:\r\n"
|
||||
DB " -1 CDROM installed as Primary IDE Master device\r\n"
|
||||
DB " -2 CDROM installed as Primary IDE Slave device\r\n"
|
||||
DB " -3 CDROM installed as Secondary IDE Master device\r\n"
|
||||
DB " -4 CDROM installed as Secondary IDE Slave device\r\n"
|
||||
DZ " -h,? Help page\r\n"
|
||||
_SETVAR .MSG_UNK_DEVICE_NUMBER
|
||||
DZ " Error: Unknown device number %1\r\n"
|
||||
_SETVAR .MSG_UNK_COMMAND
|
||||
@ -443,6 +445,15 @@ MSG0 DB 0
|
||||
DZ "Error: packet size incorrect\r\n"
|
||||
_SETVAR .MSG_SEND_ATAPI
|
||||
DZ "Send ATAPI packet..."
|
||||
_SETVAR .MSG_READTOC
|
||||
DZ "Read audio CD-ROM TOC..."
|
||||
_SETVAR .MSG_RESULT_READTOC
|
||||
DB "RESULT: 0x00\r\n"
|
||||
.MRR1 EQU $-4
|
||||
DZ "Found in TOC: 0x00\r\n"
|
||||
.MRR2 EQU $-5
|
||||
_SETVAR .MSG_CLOSETRAY_READTOC
|
||||
DZ "Close tray and read TOC Audio-CD..."
|
||||
|
||||
.crlf: DZ "\r\n"
|
||||
|
||||
|
||||
110
command.a80
110
command.a80
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 05.07.2025 savelij
|
||||
; LAST UPDATE: 13.07.2025 savelij
|
||||
|
||||
COMMAND LD HL,BUF1
|
||||
LD A,(HL)
|
||||
@ -24,9 +24,9 @@ COMP01 LD D,H
|
||||
COMP004 PUSH BC
|
||||
PUSH DE
|
||||
COMP000 LD A,(DE)
|
||||
CP 0x61
|
||||
CP 'a' ;0x61
|
||||
JP C,COMP001
|
||||
CP 0x7B
|
||||
CP 'z'+1 ;0x7B
|
||||
JP NC,COMP001
|
||||
SUB 0x20
|
||||
COMP001 CP (HL)
|
||||
@ -69,28 +69,94 @@ COMP002 XOR A
|
||||
SCF
|
||||
RET
|
||||
|
||||
CMDLIST DB "CLOSE",0
|
||||
DW CCLOSE
|
||||
DB "COPY",0
|
||||
DW CCOPY
|
||||
DB "DUMP",0
|
||||
DW CDUMP
|
||||
DB "EJECT",0
|
||||
DW COPEN
|
||||
DB "HELP",0
|
||||
DW CHELP
|
||||
DB "LIST",0
|
||||
DW CDIR
|
||||
DB "OPEN",0
|
||||
DW COPEN
|
||||
DB "SECTORDUMP",0
|
||||
DW CDUMP
|
||||
CMDLIST DZ "CLOSE"
|
||||
DW CCLOSE
|
||||
DZ "COPY"
|
||||
DW CCOPY
|
||||
DZ "DUMP"
|
||||
DW CDUMP
|
||||
DZ "EJECT"
|
||||
DW COPEN
|
||||
DZ "HELP"
|
||||
DW CHELP
|
||||
DZ "LIST"
|
||||
DW CDIR
|
||||
DZ "OPEN"
|
||||
DW COPEN
|
||||
DZ "SECTORDUMP"
|
||||
DW CDUMP
|
||||
DZ "SEND"
|
||||
DW SENDPACKET
|
||||
DB 0
|
||||
DZ "READTOC"
|
||||
DW READTOC
|
||||
DZ "CLOSETOC"
|
||||
DW CLOSETOC
|
||||
DB 0
|
||||
|
||||
SENDPACKET LD A,MSG0.MSG_SEND_ATAPI
|
||||
CALL MESSAGE
|
||||
RESULT EQU DUMPBUF + 3000
|
||||
|
||||
CLOSETOC LD A,MSG0.MSG_CLOSETRAY_READTOC
|
||||
CALL MESSAGE
|
||||
LD HL,APCMD.CLOSETRAY
|
||||
CALL SENDPAKET
|
||||
JR READTOC.L2
|
||||
|
||||
READTOC LD A,MSG0.MSG_READTOC
|
||||
CALL MESSAGE
|
||||
.L2 LD A,0xAA
|
||||
LD (RESULT + 6),A
|
||||
LD HL,APCMD.READTOC
|
||||
CALL SENDPAKET
|
||||
LD HL,RESULT-2
|
||||
LD B,0xFF
|
||||
LD DE,8
|
||||
.L1 INC B
|
||||
ADD HL,DE
|
||||
LD A,(HL)
|
||||
CP 0xAA
|
||||
JR NZ,.L1
|
||||
LD A,B
|
||||
CALL A2HEX
|
||||
LD HL,MSG0.MRR2
|
||||
LD (HL),B
|
||||
INC HL
|
||||
LD (HL),A
|
||||
LD A,(RESULT)
|
||||
CALL A2HEX
|
||||
LD HL,MSG0.MRR1
|
||||
LD (HL),B
|
||||
INC HL
|
||||
LD (HL),A
|
||||
LD A,MSG0.MSG_RESULT_READTOC
|
||||
JP MESSAGE
|
||||
|
||||
SENDPAKET LD DE,RESULT
|
||||
LD A,(CDDRIVE)
|
||||
SPBIOS BIOSF.DRV_EXTENDED,DRV_EXTENDED.ATAPI_Custom_PCMD
|
||||
RET
|
||||
|
||||
A2HEX PUSH AF
|
||||
AND %11110000
|
||||
RRCA
|
||||
RRCA
|
||||
RRCA
|
||||
RRCA
|
||||
CALL .L2
|
||||
LD B,A
|
||||
POP AF
|
||||
AND %00001111
|
||||
.L2 ADD A,'0'
|
||||
CP '9'+1
|
||||
RET C
|
||||
ADD A,7
|
||||
RET
|
||||
|
||||
APCMD
|
||||
.READTOC DB 0x43,0x02,0x00,0x00,0x00,0x00,0x01,0x03,0x24,0x00,0x00,0x00
|
||||
.CLOSETRAY DB 0x1B,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00
|
||||
|
||||
SENDPACKET LD A,MSG0.MSG_SEND_ATAPI
|
||||
CALL MESSAGE
|
||||
CALL CONV_HEX
|
||||
JR NC,.L1
|
||||
LD A,MSG0.MSG_ERR_PACKET
|
||||
|
||||
Loading…
Reference in New Issue
Block a user