Source file: /~heha/hs/kcemu/kcswberg.zip/DISK/DRIVE.ASM

DRIVEASM;
	ORG	0BD00H
OS	EQU	0F003H
 
	DB 7FH,7FH,'USER',1
	;
	LD	A,(0B781H)
	CP	3
	JR	Z,JPLD
	DEC	A
	JR	NZ,CPMEM
	JP	(HL)
JPLD
	LDIR
	RET
CPMEM
	PUSH	HL
	OR	A
	SBC	HL,DE
	POP	HL
	RET	Z	;Gleiche Adr.
	LD	A,(DE)
	CP	M
	JR	Z,CPME1
	CALL	OS
	DB	1BH	;HLDE
	LD	A,M
	CALL	OS
	DB	1CH
	CALL	OS
	DB	2BH
	LD	A,(DE)
	CALL	OS
	DB	1CH
	CALL	OS
	DB	2CH
	CALL	OS
	DB	2AH
	RET	C
CPME1
	INC	HL
	INC	DE
	JR	CPMEM
 
	DB 7FH,7FH,'SEEK',1
	;
	LD	A,(0B781H)
	CP	3
	RET	C
	EX	DE,HL
	SBC	HL,DE
	LD	B,H
	LD	C,L
	EX	DE,HL
SCHL	LD	DE,0B786H
	LD	A,(DE)
	CPIR
	JR	NZ,CRLF
	PUSH	BC
	PUSH	HL
	LD	A,(0B781H)
	SUB	3
	LD	B,A
	JR	Z,GEF
NBYT	INC	DE
	INC	DE
	LD	A,(DE)
	CP	M
	INC	HL
	JR	NZ,NGEF
	DJNZ	NBYT
GEF	POP	HL
	POP	BC
	DEC	HL
	CALL	OS
	DEFB	1AH
	INC	HL
	CALL	OS
	DEFB	2AH
	JR	C,CRLF
	DEFB	11H	;LD DE,
NGEF	POP	HL
	POP	BC
	LD	A,B
	OR	C
	JR	NZ,SCHL
CRLF
	CALL	OS
	DEFB	2CH
	RET
 
	DB 7FH,7FH,'DRIVE',1
	JR DRV1
	DB 0DDH,0DDH,'DRIVE',1
	;
DRV1
	LD A,(0B781H)
	OR A
	JR Z,ANZ
	LD A,L
	SUB 0AH
	RET C
	RET Z
	CP 8
	RET NC
	LD BC,081F1H
	OUT (C),A
	LD BC,080F1H
	LD A,1
	OUT (C),A
	RET
ANZ	LD A,2
	LD BC,080F1H
	OUT (C),A
	LD HL,0
SCHL1	IN A,(C)
	OR A
	JR Z,SCHL2
	DEC HL
	LD A,L
	OR H
	RET Z
	JR SCHL1
SCHL2	LD BC,081F1H
	IN A,(C)
	ADD 41H
	CALL OS
	DEFB 24H
	CALL OS
	DEFB 2CH
	RET
Ƚ
SCHL2:
SCHL1:
ANZ:
DRV1:

SCHL2	LD BC,081F1H
	IN A,(C)
	ADD 41H
	CALL OS
	DEFB 24H
	CALL OS
	DEFB 2CH
	RET
Ƚ
SCHL2:
SCHL1:
ANZ:
DRV1:
Detected encoding: UTF-80