mirror of
https://github.com/Tolik-Trek/Sprinter-BIOS.git
synced 2026-06-15 17:31:46 +03:00
LP_PR_LINE_DIR - добавлен параметр для отключения скролла при печати
TRAY_FN - исправлен баг с извлечением носителя
This commit is contained in:
parent
6eda6215d8
commit
0188b1dfce
@ -343,64 +343,8 @@ ATAPI_5x_LONG_WRITE:
|
|||||||
SCF ;write
|
SCF ;write
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
JR ATAPI_BEGIN_RW
|
JR ATAPI_BEGIN_RW
|
||||||
;
|
;[]================================================================[#53]
|
||||||
; SAFE_PORTY_2
|
|
||||||
; PUSH BC
|
|
||||||
; PUSH IX
|
|
||||||
; PUSH HL
|
|
||||||
; ;
|
|
||||||
; CALL RW_ATAPI_SECTORs
|
|
||||||
; ;
|
|
||||||
; JP ATA_5x_LONG_READ.shared
|
|
||||||
|
|
||||||
;[]================================================================[#57]
|
|
||||||
;Function: Detect Disk
|
|
||||||
; A - Disk
|
|
||||||
;Return: CF=0 - A=Drive type
|
|
||||||
; B=MediaParameters byte ; [ ] media change
|
|
||||||
; CF=1 - drive not present, A=#02
|
|
||||||
; ATAPI_5x_DETECT: LD C,IDE.Device.ATAPI
|
|
||||||
; AND %1011'1111
|
|
||||||
; .shared: LD D,A
|
|
||||||
; LD E,C
|
|
||||||
; PUSH DE
|
|
||||||
; CALL DRV_DETECT
|
|
||||||
; POP DE
|
|
||||||
; RET C
|
|
||||||
; ;
|
|
||||||
; PUSH AF
|
|
||||||
; LD C,SLOT3
|
|
||||||
; IN B,(C)
|
|
||||||
; LD A,SYS_PAGE
|
|
||||||
; OUT (C),A
|
|
||||||
; INC HL ;!HARDCODE HDD_INIT_TABLE
|
|
||||||
; INC HL
|
|
||||||
; INC HL
|
|
||||||
; LD A,(HL)
|
|
||||||
; OUT (C),B
|
|
||||||
; LD B,A
|
|
||||||
; AND %0000'0011 ;[ ] media change ¯¥à¥¤¥« âì «®£¨ªã âãâ ¨ ¢ „‘‘? ; !FIXIT
|
|
||||||
; JR NZ,.error
|
|
||||||
; ;
|
|
||||||
; .exit: POP AF
|
|
||||||
; RET
|
|
||||||
; ;
|
|
||||||
; .error: AND %0000'0010
|
|
||||||
; JR NZ,.UnitAttention
|
|
||||||
; ;
|
|
||||||
; LD A,D
|
|
||||||
; LD C,E
|
|
||||||
; CALL SELECT_DRIVE
|
|
||||||
; CALL ATAPI_CHECK_MEDIA_CHANGED
|
|
||||||
; JR NC,.exit
|
|
||||||
; POP BC
|
|
||||||
; RET
|
|
||||||
; ;
|
|
||||||
; .UnitAttention: POP AF
|
|
||||||
; LD A,BIOS.Error.ATAPI.UnitAttention
|
|
||||||
; SCF
|
|
||||||
; RET
|
|
||||||
;[]================================================================[#57]
|
|
||||||
;[]================================================================[#57]
|
;[]================================================================[#57]
|
||||||
;Function: Detect Disk
|
;Function: Detect Disk
|
||||||
; A - Disk
|
; A - Disk
|
||||||
@ -469,20 +413,6 @@ ATAPI_CHECK_MEDIA_CHANGED:
|
|||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
|
|
||||||
|
|
||||||
;----------------------------------------------------------------------;
|
|
||||||
; ATAPI_CHECK_ERROR:
|
|
||||||
; CALL ATAPI_GET_ERROR_REG
|
|
||||||
; ;CP BIOS.Error.ATAPI.NoSence
|
|
||||||
; ;JP Z,ATAPI_MEDIA_ERROR
|
|
||||||
; CP BIOS.Error.ATAPI.NotReady
|
|
||||||
; JP Z,ATAPI_MEDIA_ERROR
|
|
||||||
; CP BIOS.Error.ATAPI.UnitAttention
|
|
||||||
; JP Z,ATAPI_MEDIA_ERROR
|
|
||||||
; ;
|
|
||||||
; SCF
|
|
||||||
; RET
|
|
||||||
;----------------------------------------------------------------------;
|
|
||||||
|
|
||||||
|
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
; HL - 㪠§ â¥«ì ¯ ª¥âãî ª®¬ ¤ã (¯¥à¢ë© ¨«¨ ¢â®à®© á«®â)
|
; HL - 㪠§ â¥«ì ¯ ª¥âãî ª®¬ ¤ã (¯¥à¢ë© ¨«¨ ¢â®à®© á«®â)
|
||||||
@ -501,14 +431,14 @@ TRAY_FN: LD HL,ATAPI_CMD_PACKET.CLOSE
|
|||||||
DEC A
|
DEC A
|
||||||
JR Z,EXEC_PACKET_COMMAND.start
|
JR Z,EXEC_PACKET_COMMAND.start
|
||||||
LD HL,ATAPI_CMD_PACKET.OPEN
|
LD HL,ATAPI_CMD_PACKET.OPEN
|
||||||
;JR EXEC_PACKET_COMMAND
|
JR EXEC_PACKET_COMMAND.start
|
||||||
|
|
||||||
; INPUT: HL - AP packet (12bytes)
|
; INPUT: HL - AP packet (12bytes)
|
||||||
; DE - address for/with data if needed
|
; DE - address for/with data if needed
|
||||||
; A' - ç «ì ï áâà ¨æ ¤«ï R/W Long
|
; A' - ç «ì ï áâà ¨æ ¤«ï R/W Long
|
||||||
;
|
;
|
||||||
; RETURN: CF - ERROR
|
; RETURN: CF - ERROR
|
||||||
; ;!FIXIT ®¬¥à ¥¯à ¢¨«ìë¥
|
; !FIXIT ®¬¥à ¥¯à ¢¨«ìë¥
|
||||||
; !TODO CD ERRORS to INCLUDES
|
; !TODO CD ERRORS to INCLUDES
|
||||||
; #01 - RECOVERED ERROR
|
; #01 - RECOVERED ERROR
|
||||||
; #02 - NOT READY
|
; #02 - NOT READY
|
||||||
@ -520,10 +450,6 @@ TRAY_FN: LD HL,ATAPI_CMD_PACKET.CLOSE
|
|||||||
; #0B - ABORTED COMMAND
|
; #0B - ABORTED COMMAND
|
||||||
; #80 - TIME OUT
|
; #80 - TIME OUT
|
||||||
EXEC_PACKET_COMMAND:
|
EXEC_PACKET_COMMAND:
|
||||||
; .error_APLOOP: LD A,BIOS.Error.ATAPI.UnitAttention
|
|
||||||
; RET
|
|
||||||
;CALL ATAPI_GET_ERROR_REG
|
|
||||||
|
|
||||||
.error_ex: EX DE,HL
|
.error_ex: EX DE,HL
|
||||||
.error: CP #FF
|
.error: CP #FF
|
||||||
.error_fail: SCF
|
.error_fail: SCF
|
||||||
@ -685,7 +611,6 @@ EXEC_PACKET_COMMAND:
|
|||||||
;
|
;
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
ATAPI_IdlePasses:
|
ATAPI_IdlePasses:
|
||||||
;CALL ATAPI_WAITPRT.wait_NZ
|
|
||||||
LD B,_ZIP_WAITS_
|
LD B,_ZIP_WAITS_
|
||||||
DJNZ $
|
DJNZ $
|
||||||
CALL ATAPI_CHECK_DRV
|
CALL ATAPI_CHECK_DRV
|
||||||
@ -757,18 +682,6 @@ ATAPI_CHECK_DRV:
|
|||||||
SCF
|
SCF
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
; .zeroWait: ;LD B,2
|
|
||||||
; LD HL,#800
|
|
||||||
; .loop: LD A,high IDE.Read.Status
|
|
||||||
; IN A,(low IDE.Read.Status)
|
|
||||||
; AND A
|
|
||||||
; RET NZ
|
|
||||||
; DEC HL
|
|
||||||
; LD A,H
|
|
||||||
; OR L
|
|
||||||
; JR NZ,.loop
|
|
||||||
; ;DJNZ .loop
|
|
||||||
; RET
|
|
||||||
|
|
||||||
ATAPI_PREPARE_RW:
|
ATAPI_PREPARE_RW:
|
||||||
LD BC,IDE.Read.ByteCountLow
|
LD BC,IDE.Read.ByteCountLow
|
||||||
@ -790,30 +703,6 @@ ATAPI_PREPARE_RW:
|
|||||||
LD BC,IDE.Read.Data
|
LD BC,IDE.Read.Data
|
||||||
SCF
|
SCF
|
||||||
RET
|
RET
|
||||||
|
|
||||||
|
|
||||||
; .AddrOverflow: EX DE,HL
|
|
||||||
; AND A
|
|
||||||
; SBC HL,DE
|
|
||||||
; EX DE,HL
|
|
||||||
; RET
|
|
||||||
|
|
||||||
;
|
|
||||||
; !TODO 宫®á⮥ ç⥨¥
|
|
||||||
; .error_buffer: AND A
|
|
||||||
; SBC HL,DE
|
|
||||||
;.NULL:
|
|
||||||
;.RD_N_CD: IN A,(C)
|
|
||||||
; DEC B
|
|
||||||
; IN A,(C)
|
|
||||||
; DEC B
|
|
||||||
; DEC DE
|
|
||||||
; DEC DE
|
|
||||||
; LD A,D
|
|
||||||
; OR E
|
|
||||||
; JR NZ,.RD_N_CD
|
|
||||||
; ; DE = 0
|
|
||||||
; JR .AP_LOOP
|
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
|
|
||||||
|
|
||||||
@ -855,145 +744,14 @@ ATAPI_WAITPRT: LD DE,256*IDE.CtrlByte.Busy + 0
|
|||||||
LD A,H
|
LD A,H
|
||||||
OR L
|
OR L
|
||||||
JR NZ,.LOOP
|
JR NZ,.LOOP
|
||||||
;
|
|
||||||
; LD A,high IDE.Read.Status
|
|
||||||
; IN A,(low IDE.Read.Status)
|
|
||||||
; CP #FF
|
|
||||||
; SCF
|
|
||||||
; RET Z
|
|
||||||
;
|
|
||||||
; 1ÿ392ÿ512ÿ256
|
|
||||||
DJNZ .LOOP
|
DJNZ .LOOP
|
||||||
;
|
;
|
||||||
; LD A,high IDE.Read.Status
|
|
||||||
; IN A,(low IDE.Read.Status)
|
|
||||||
; INC A ;CP #FF
|
|
||||||
; SCF
|
|
||||||
; RET Z
|
|
||||||
;
|
|
||||||
LD A,BIOS.Error.Busy
|
LD A,BIOS.Error.Busy
|
||||||
SCF
|
SCF
|
||||||
RET
|
RET
|
||||||
;
|
|
||||||
; .wait_NZ: LD B,2 ; 50 - § ¤¥à¦ª ®¯à¥¤¥«ñ ï â¥áâ ¬¨ IOMEGA ZIP Drive
|
|
||||||
; .NZ_loop: LD A,high IDE.Read.Status
|
|
||||||
; IN A,(low IDE.Read.Status)
|
|
||||||
; LD C,A
|
|
||||||
; AND A
|
|
||||||
; CALL NZ,PutHexNumb
|
|
||||||
; ;INC A
|
|
||||||
; ;RET NZ
|
|
||||||
; ;AND IDE.CtrlByte.Busy + IDE.CtrlByte.DataRequest + IDE.CtrlByte.CheckCondition
|
|
||||||
; ;INC A
|
|
||||||
; ;AND A
|
|
||||||
; ;RET NZ
|
|
||||||
; DJNZ .NZ_loop
|
|
||||||
; RET
|
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
|
|
||||||
|
|
||||||
;----------------------------------------------------------------------;
|
|
||||||
;<3B>à®æ¥¤ãà ¯à¥®¡à §®¢ ¨ï 8¡¨â®¢ëå ç¨á¥« ¢ è¥áâ ¤æ. ⥪áâ
|
|
||||||
;<3B> ¢å®¤:
|
|
||||||
; HL - ¤à¥á ¡ãä¥à
|
|
||||||
; € - ¡ ©â
|
|
||||||
;<3B> ¢ë室:
|
|
||||||
; DE - ¤¢ ¡ ©â è¥áâ ¤æ â¥à¨ç®£® ⥪áâ
|
|
||||||
; PutHexNumb: PUSH IX
|
|
||||||
; PUSH IY
|
|
||||||
; PUSH AF
|
|
||||||
; EX AF,AF'
|
|
||||||
; PUSH AF
|
|
||||||
; EX AF,AF'
|
|
||||||
; PUSH DE
|
|
||||||
; PUSH HL
|
|
||||||
; PUSH BC
|
|
||||||
; LD A,C
|
|
||||||
; EXX
|
|
||||||
; PUSH DE
|
|
||||||
; PUSH HL
|
|
||||||
; PUSH BC
|
|
||||||
; ;
|
|
||||||
; PUSH AF
|
|
||||||
; RRCA
|
|
||||||
; RRCA
|
|
||||||
; RRCA
|
|
||||||
; RRCA
|
|
||||||
; AND #0F
|
|
||||||
; ADD A,#90
|
|
||||||
; DAA
|
|
||||||
; ADC A,#40
|
|
||||||
; DAA
|
|
||||||
; LD E,A
|
|
||||||
; POP AF
|
|
||||||
; AND #0F
|
|
||||||
; ADD A,#90
|
|
||||||
; DAA
|
|
||||||
; ADC A,#40
|
|
||||||
; DAA
|
|
||||||
; LD D,A
|
|
||||||
; ;
|
|
||||||
; LD HL," "
|
|
||||||
; PUSH HL
|
|
||||||
; PUSH DE
|
|
||||||
; LD L,0
|
|
||||||
; ADD HL,SP
|
|
||||||
; ;
|
|
||||||
; SCF
|
|
||||||
; LD B,COLORS.CGA.INK.LGRAY + COLORS.CGA.PAPER.BLACK
|
|
||||||
; EX AF,AF'
|
|
||||||
; AND A
|
|
||||||
; LD A,B
|
|
||||||
; CALL LP_PR_LINE_DIR.START
|
|
||||||
; POP HL
|
|
||||||
; POP HL
|
|
||||||
; ;
|
|
||||||
; POP BC
|
|
||||||
; POP HL
|
|
||||||
; POP DE
|
|
||||||
; EXX
|
|
||||||
; POP BC
|
|
||||||
; POP HL
|
|
||||||
; POP DE
|
|
||||||
; POP AF
|
|
||||||
; EX AF,AF'
|
|
||||||
; POP AF
|
|
||||||
; POP IY
|
|
||||||
; POP IX
|
|
||||||
; RET
|
|
||||||
;
|
|
||||||
;----------------------------------------------------------------------;
|
|
||||||
|
|
||||||
|
|
||||||
;----------------------------------------------------------------------;
|
|
||||||
; D - MASK, E - PATTERN
|
|
||||||
; !!! ¥ª®â®àë¥ äãªæ¨¨ ¤¥îâáï, çâ® ¢ë室¥ ¢á¥£¤ ZF
|
|
||||||
; ¥ ¤®«¦ âண âì ॣ. C
|
|
||||||
; ATAPI_WAITPRT: LD DE,256*IDE.CtrlByte.Busy + 0
|
|
||||||
; .Custom:
|
|
||||||
; .LOOP: LD A,high IDE.Read.Status
|
|
||||||
; IN A,(low IDE.Read.Status)
|
|
||||||
; CP #FF
|
|
||||||
; JR Z,.error
|
|
||||||
; ;
|
|
||||||
; AND D
|
|
||||||
; CP E
|
|
||||||
; RET Z
|
|
||||||
; JR .LOOP
|
|
||||||
; ;
|
|
||||||
; ; LD A,high IDE.Read.Status
|
|
||||||
; ; IN A,(low IDE.Read.Status)
|
|
||||||
; ; INC A ;CP #FF
|
|
||||||
; ; SCF
|
|
||||||
; ; RET Z
|
|
||||||
; ; ;
|
|
||||||
; ; LD A,BIOS.Error.Busy
|
|
||||||
; ; RET
|
|
||||||
; ;
|
|
||||||
; .error: SCF
|
|
||||||
; RET
|
|
||||||
;----------------------------------------------------------------------;
|
|
||||||
|
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
; DE - buffer
|
; DE - buffer
|
||||||
ATAPI_READ_CAPACITY_DATA:
|
ATAPI_READ_CAPACITY_DATA:
|
||||||
@ -1036,13 +794,6 @@ ATAPI_READ_CAPACITY_DATA:
|
|||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
|
|
||||||
|
|
||||||
;----------------------------------------------------------------------;
|
|
||||||
; ATAPI_TEST: LD HL,ATAPI_CMD_PACKET.TEST_UNIT_READY
|
|
||||||
; LD DE,0 ; ¬ થà ⮣®, çâ® ¥ 㦮 ç¨â âì á ãáâனá⢠¢ އ“
|
|
||||||
; JP EXEC_PACKET_COMMAND
|
|
||||||
;----------------------------------------------------------------------;
|
|
||||||
|
|
||||||
|
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
ATAPI_MEDIA_ERROR:
|
ATAPI_MEDIA_ERROR:
|
||||||
PUSH IX
|
PUSH IX
|
||||||
@ -1078,27 +829,6 @@ ATAPI_MEDIA_ERROR:
|
|||||||
LD (IY + IDE.HDD_INIT_TABLE.MediaParameters),A
|
LD (IY + IDE.HDD_INIT_TABLE.MediaParameters),A
|
||||||
;
|
;
|
||||||
CALL GET_ATAPI_CAPACITY
|
CALL GET_ATAPI_CAPACITY
|
||||||
; LD DE,SYS_PAGE.TMP_BUFFER
|
|
||||||
; CALL ATAPI_READ_CAPACITY_DATA
|
|
||||||
; ;
|
|
||||||
; LD HL,#FFFF
|
|
||||||
; LD C,BIOS.Error.ATAPI.MediumError
|
|
||||||
; JR C,.No_Media
|
|
||||||
; ;
|
|
||||||
; LD HL,(SYS_PAGE.TMP_BUFFER) ; media size high
|
|
||||||
; LD (IY+IDE.HDD_INIT_TABLE.MediaSizeHigh),H
|
|
||||||
; LD (IY+IDE.HDD_INIT_TABLE.MediaSizeHigh+1),L
|
|
||||||
; LD HL,(SYS_PAGE.TMP_BUFFER + 2) ; media size low
|
|
||||||
; LD (IY+IDE.HDD_INIT_TABLE.MediaSizeLow),H
|
|
||||||
; LD (IY+IDE.HDD_INIT_TABLE.MediaSizeLow+1),L
|
|
||||||
; LD HL,(SYS_PAGE.TMP_BUFFER + 6) ; sector size
|
|
||||||
; ;
|
|
||||||
; LD C,BIOS.Error.ATAPI.UnitAttention
|
|
||||||
; .No_Media: LD (IY+IDE.HDD_INIT_TABLE.SectorSize),H ;[ ] sector size
|
|
||||||
; LD (IY+IDE.HDD_INIT_TABLE.SectorSize + 1),L
|
|
||||||
; JR NC,.exit
|
|
||||||
; SET 2,(IY + IDE.HDD_INIT_TABLE.MediaParameters)
|
|
||||||
;
|
|
||||||
.exit: POP AF
|
.exit: POP AF
|
||||||
POP HL
|
POP HL
|
||||||
POP IX
|
POP IX
|
||||||
@ -1184,7 +914,6 @@ ATAPI_CMD_PACKET:
|
|||||||
DB #00
|
DB #00
|
||||||
;
|
;
|
||||||
.WRITE: DB #2E,#00 ; write and verify
|
.WRITE: DB #2E,#00 ; write and verify
|
||||||
;DB #2A,#00 ; write
|
|
||||||
DB #00,#00,#00,#00 ; sector dword
|
DB #00,#00,#00,#00 ; sector dword
|
||||||
DB #00
|
DB #00
|
||||||
DB #00,#01,#00,#00 ; counter dword
|
DB #00,#01,#00,#00 ; counter dword
|
||||||
@ -1198,24 +927,12 @@ ATAPI_CMD_PACKET:
|
|||||||
DB MAX_DATA_PACKET_FOR_REQUEST_SENSE
|
DB MAX_DATA_PACKET_FOR_REQUEST_SENSE
|
||||||
DB #00,#00,#00,#00,#00,#00,#00
|
DB #00,#00,#00,#00,#00,#00,#00
|
||||||
;
|
;
|
||||||
|
|
||||||
ATAPI_PACKET:
|
ATAPI_PACKET:
|
||||||
.SECTOR EQU 2
|
.SECTOR EQU 2
|
||||||
.COUNTER EQU 7
|
.COUNTER EQU 7
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
;
|
|
||||||
; E - Second * 10
|
|
||||||
; PAUSE LD HL,#0000
|
; …᫨ «®¢¨âáï ®è¨¡ª media changed, â® ¡¨®á ¤®«¦¥ ¢ëáâ ¢«ïâì ¢ HDD_INIT_TABLE.MediaParameters = 3
|
||||||
; PAUSE1 DEC L
|
; ¨ § â¨à âì FF SectorSize.
|
||||||
; JR NZ,PAUSE1
|
; „®á ¯®á«¥ ¯®«ã票ï â ª®© ®è¨¡ª¨ ¤®«¦¥ ¢ë§ë¢ âì BIOS.DRV_DETECT ¨ ¥á«¨ ¢áñ ŽŠ, â® ReScanDRV
|
||||||
; DEC H
|
|
||||||
; JR NZ,PAUSE1
|
|
||||||
; DEC E
|
|
||||||
; JR NZ,PAUSE1
|
|
||||||
; RET
|
|
||||||
;
|
|
||||||
/*
|
|
||||||
…᫨ «®¢¨âáï ®è¨¡ª media changed, â® ¡¨®á ¤®«¦¥ ¢ëáâ ¢«ïâì ¢ HDD_INIT_TABLE.MediaParameters = 3
|
|
||||||
¨ § â¨à âì FF SectorSize.
|
|
||||||
„®á ¯®á«¥ ¯®«ã票ï â ª®© ®è¨¡ª¨ ¤®«¦¥ ¢ë§ë¢ âì BIOS.DRV_DETECT ¨ ¥á«¨ ¢áñ ŽŠ, â® ReScanDRV
|
|
||||||
*/
|
|
||||||
@ -33,7 +33,6 @@ DRV_LIST:
|
|||||||
OUT (SLOT3),A ; !TODO ᤥ« âì áâàãªâãன
|
OUT (SLOT3),A ; !TODO ᤥ« âì áâàãªâãன
|
||||||
XOR A
|
XOR A
|
||||||
LD (IX+0),#04 ; DB 0 ;LEN ;!HARDCODE
|
LD (IX+0),#04 ; DB 0 ;LEN ;!HARDCODE
|
||||||
;LD (IX+1),A ; DB 0 ;FDD COUNT
|
|
||||||
LD (IX+1),#02 ; DB 0 ;FDD COUNT
|
LD (IX+1),#02 ; DB 0 ;FDD COUNT
|
||||||
LD (IX+2),A ; DB 0 ;HDD COUNT
|
LD (IX+2),A ; DB 0 ;HDD COUNT
|
||||||
LD (IX+3),A ; DB 0 ;CDROM COUNT
|
LD (IX+3),A ; DB 0 ;CDROM COUNT
|
||||||
|
|||||||
@ -1656,6 +1656,7 @@ LP_PR_LINE_DIR:
|
|||||||
JP LP_END_P
|
JP LP_END_P
|
||||||
;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;
|
||||||
; A - âਡãâë ¢ë¢®¤¨¬®£® ᨬ¢®« ¥á«¨ CF'
|
; A - âਡãâë ¢ë¢®¤¨¬®£® ᨬ¢®« ¥á«¨ CF'
|
||||||
|
; A' - ¥á«¨ !=0 â® ¡¥§ áªà®««
|
||||||
; CF - XY-mode
|
; CF - XY-mode
|
||||||
; DE - ¬¥á⮠ᨬ¢®« ¢ ®ª¥, ¥á«¨ CF=1
|
; DE - ¬¥á⮠ᨬ¢®« ¢ ®ª¥, ¥á«¨ CF=1
|
||||||
; HL - ¤à¥á á ¢ë¢®¤¨¬®© áâப®©
|
; HL - ¤à¥á á ¢ë¢®¤¨¬®© áâப®©
|
||||||
@ -1674,10 +1675,11 @@ LP_PR_LINE_DIR:
|
|||||||
LD C,A
|
LD C,A
|
||||||
CALL LP_BEG_P
|
CALL LP_BEG_P
|
||||||
CALL C,LP_SET_CUR ; mode for DE
|
CALL C,LP_SET_CUR ; mode for DE
|
||||||
POP AF ; attr-mode
|
|
||||||
LD A,B
|
LD A,B
|
||||||
; ¤ «¥¥ ॣ B ᢮¡®¤¥, ¬®¦® § ¤¥©á⢮¢ âì
|
; ¤ «¥¥ ॣ B ᢮¡®¤¥, ¬®¦® § ¤¥©á⢮¢ âì
|
||||||
LD (SYS_PAGE.SYS_WORK2),A ; 梥⠪®á®«¨
|
LD (SYS_PAGE.SYS_WORK2),A ; 梥⠪®á®«¨
|
||||||
|
POP AF ; attr-mode, scroll on/off
|
||||||
|
LD B,A ; scroll on/off
|
||||||
EXX
|
EXX
|
||||||
RL C ; C' - attr-mode. ¢ë¢®¤¨âì âਡãâ
|
RL C ; C' - attr-mode. ¢ë¢®¤¨âì âਡãâ
|
||||||
.loop: LD A,D
|
.loop: LD A,D
|
||||||
@ -1840,6 +1842,13 @@ LP_NEXT_HL_DIR: LD A,SYS_PAGE
|
|||||||
.end_line: LD A,L
|
.end_line: LD A,L
|
||||||
SUB 4 ;!HARDCODE ¤«¨ ®¤®£® ®¯¨á â¥«ï ª¢ ¤à ⨪
|
SUB 4 ;!HARDCODE ¤«¨ ®¤®£® ®¯¨á â¥«ï ª¢ ¤à ⨪
|
||||||
LD L,A
|
LD L,A
|
||||||
|
; ¨£®à¨¬ áªà஫« ¨«¨ ¥â?
|
||||||
|
EXX
|
||||||
|
LD A,B
|
||||||
|
EXX
|
||||||
|
AND A
|
||||||
|
RET NZ ; ZF=0 ¨£®à áªà®««
|
||||||
|
;
|
||||||
PUSH HL
|
PUSH HL
|
||||||
DEC L
|
DEC L
|
||||||
PUSH BC
|
PUSH BC
|
||||||
|
|||||||
Binary file not shown.
@ -1,8 +1,7 @@
|
|||||||
TODO:
|
TODO:
|
||||||
- ¯ãªâ ¢ á¥â ¯¥ "á®åà ïâì áâà ¨æë ᯥªâà㬠¯à¨ ¯¥à¥§ £à㧪¥"
|
-? ¯ãªâ ¢ á¥â ¯¥ "á®åà ïâì áâà ¨æë ᯥªâà㬠¯à¨ ¯¥à¥§ £à㧪¥"
|
||||||
- ¯¥à¥¤ ¨¨æ¨ «¨§ 樥© áâà ¨æ ᯥªâà㬠¨ áâà ¨æë 41 ¯à®¢¥àïâì, ¥ § ïâë «¨ ®¨ à ¬¤¨áª®¬
|
|
||||||
- η¨αβ¨βμ ‘γδ₯ΰ ͺ« ’λ ₯ ’βγ―γξ, ͺ ͺ¨¬¨-¨‘γ€μ ͺ<>¬ € ¬¨ €«ο νβ¨ε ’αοͺ¨ε SIO/PIO, ₯᫨ ₯αβμ
|
- η¨αβ¨βμ ‘γδ₯ΰ ͺ« ’λ ₯ ’βγ―γξ, ͺ ͺ¨¬¨-¨‘γ€μ ͺ<>¬ € ¬¨ €«ο νβ¨ε ’αοͺ¨ε SIO/PIO, ₯᫨ ₯αβμ
|
||||||
-+ ! ¢ Setup ¤®¡ ¢¨âì ¯ãªâ áâனª¨ ¢à¥¬¥¨ ¨ ¤ âë
|
|
||||||
|
|
||||||
Done:
|
Done:
|
||||||
+ ₯¬<C2AC>£<EFBFBD> €<>ΰ ‘<C2A0>β α¨αβ₯¬ ―₯ΰ₯ε’ β ΰ₯α₯β €«ο γαβΰ ₯¨ο ₯ͺ<E282AF>β<EFBFBD>ΰλε £«ξͺ<CEBE>’ ¨ ‘γ€γι₯₯
|
+ ₯¬<C2AC>£<EFBFBD> €<>ΰ ‘<C2A0>β α¨αβ₯¬ ―₯ΰ₯ε’ β ΰ₯α₯β €«ο γαβΰ ₯¨ο ₯ͺ<E282AF>β<EFBFBD>ΰλε £«ξͺ<CEBE>’ ¨ ‘γ€γι₯₯
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user