DataMuseum.dk

Presents historical artifacts from the history of:

Jet Computer Jet80

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Jet Computer Jet80

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦17eeba887⟧ TextFile

    Length: 1280 (0x500)
    Types: TextFile
    Names: »DSKFIL.SRC«

Derivation

└─⟦c9df7130d⟧ Bits:30005915 Pascal MT+ Release 5.2 (Jet-80)
    └─ ⟦this⟧ »DSKFIL.SRC« 

TextFile

;SUBROUTINES TO SELECT A DEVICE AND DELETE A FILE
;
	NAME DSKFIL
	ENTRY SELDSK,DELETE,POPHDB,PUSHBD
	INCLUDE DEFLT.SRC
;
;
;SELECT DISK TELLS CP/M TO USE THE DEVICE SPECIFIED BY THE DEVICE NAME
;ENTRY IN THE FILE DESCRIPTOR POINTED TO BY HL.  REGISTERS A AND F ARE TRASHED.
SELDSK	CALL	PUSHBD		;SAVE ALL REGISTERS EXCEPT A
;SET DMA ADDRESS TO 80H FOR CP/M'S INTERNAL OPERATIONS.
	PUSH	H
	LXI	D,80H		; SYSTEM'S DMA AREA.
	MVI	C,26		; CP/M CODE TO SET DMA ADDRESS.
	CALL	CPM
	POP	H
	LXI	D,DEVNUM
	DAD	D		; ADDRESS OF DEVICE NUMBER NOW IN HL
	MOV	E,M
	MVI	C,14		; CP/M CODE FOR SELECT DISK.
	CALL	CPM
	JMPR	POPHDB

;DELETE REMOVES THE FILE (FROM THE DIRECTORY) WHICH IS SPECIFIED BY THE
;FILE DESCRIPTOR POINTED TO BY HL.
DELETE	CALL	PUSHBD		;SAVE ALL REGISTERS EXCEPT A
	PUSH	PSW
	CALL	SELDSK		; SELECT THE PROPER DRIVE.
	XCHG
	MVI	C,19		; CP/M CODE FOR DELETE FILE ENTRY
	CALL	CPM
	POP	PSW

POPHDB	POP	H
	POP	D
	POP	B
	EXX
	EXAF
	POP	PSW
	EXAF
	POP	Y
	POP	X
	POP	H
	POP	D
	POP	B
	RET
;
PUSHBD	EXX
	POP	D		;SAVE RETURN ADDRESS
	EXX
	PUSH	B		;SAVE ALL REGISTERS EXCEPT A
	PUSH	D
	PUSH	H
	PUSH	X
	PUSH	Y
	EXAF
	PUSH	PSW
	EXAF
	EXX
	PUSH	B
	PUSH	D
	PUSH	H
	PUSH	D		;RETURN ADDRESS
	EXX
	RET
«eof»