mirror of
https://github.com/erkyrath/infocom-zcode-terps.git
synced 2026-02-19 13:55:43 +00:00
120 lines
1.8 KiB
NASM
120 lines
1.8 KiB
NASM
STTL "--- MACROS ---"
|
||
PAGE
|
||
|
||
;
|
||
; MACROS for Apple ][ Yzip
|
||
;
|
||
DLINE: .MACRO STRING,SLEN
|
||
ldx #<STRING ; get part of STRING
|
||
lda #>STRING ; get other part of string
|
||
IFMA 2 ; check to see if length passed in
|
||
ldy SLEN ; then just fetch it
|
||
ELSE
|
||
ldy #STRING|L ; get length of string
|
||
ENDIF
|
||
jsr DLINE ; print the string
|
||
.MACEND
|
||
;
|
||
; ProDOS macros
|
||
;
|
||
PRODOS: .MACRO CODE, PADDR
|
||
jsr $BF00 ; ProDOS handler
|
||
DB CODE ; ProDOS function code
|
||
DW PADDR ; Function Parameter Block address
|
||
.MACEND
|
||
|
||
QUIT: .MACRO PBLOCK
|
||
PRODOS $65, PBLOCK
|
||
.MACEND
|
||
|
||
READ_BLOCK: .MACRO PBLOCK
|
||
PRODOS $80, PBLOCK
|
||
.MACEND
|
||
|
||
WRITE_BLOCK: .MACRO PBLOCK
|
||
PRODOS $81, PBLOCK
|
||
.MACEND
|
||
|
||
GET_TIME: .MACRO PBLOCK
|
||
PRODOS $82, PBLOCK
|
||
.MACEND
|
||
|
||
CREATE: .MACRO PBLOCK
|
||
PRODOS $C0, PBLOCK
|
||
.MACEND
|
||
|
||
DESTROY: .MACRO PBLOCK
|
||
PRODOS $C1, PBLOCK
|
||
.MACEND
|
||
|
||
RENAME: .MACRO PBLOCK
|
||
PRODOS $C2, PBLOCK
|
||
.MACEND
|
||
|
||
SET_FILE_INFO: .MACRO PBLOCK
|
||
PRODOS $C3, PBLOCK
|
||
.MACEND
|
||
|
||
GET_FILE_INFO: .MACRO PBLOCK
|
||
PRODOS $C4, PBLOCK
|
||
.MACEND
|
||
|
||
ONLINE: .MACRO PBLOCK
|
||
PRODOS $C5, PBLOCK
|
||
.MACEND
|
||
|
||
SET_PREFIX: .MACRO PBLOCK
|
||
PRODOS $C6, PBLOCK
|
||
.MACEND
|
||
|
||
GET_PREFIX: .MACRO PBLOCK
|
||
PRODOS $C7, PBLOCK
|
||
.MACEND
|
||
|
||
OPEN: .MACRO PBLOCK
|
||
PRODOS $C8, PBLOCK
|
||
.MACEND
|
||
|
||
NEWLINE: .MACRO PBLOCK
|
||
PRODOS $C9, PBLOCK
|
||
.MACEND
|
||
|
||
READ: .MACRO PBLOCK
|
||
PRODOS $CA, PBLOCK
|
||
.MACEND
|
||
|
||
WRITE: .MACRO PBLOCK
|
||
PRODOS $CB, PBLOCK
|
||
.MACEND
|
||
|
||
CLOSE: .MACRO PBLOCK
|
||
PRODOS $CC, PBLOCK
|
||
.MACEND
|
||
|
||
FLUSH: .MACRO PBLOCK
|
||
PRODOS $CD, PBLOCK
|
||
.MACEND
|
||
|
||
SET_MARK: .MACRO PBLOCK
|
||
PRODOS $CE, PBLOCK
|
||
.MACEND
|
||
|
||
GET_MARK: .MACRO PBLOCK
|
||
PRODOS $CF, PBLOCK
|
||
.MACEND
|
||
|
||
SET_EOF: .MACRO PBLOCK
|
||
PRODOS $D0, PBLOCK
|
||
.MACEND
|
||
|
||
SET_BUF: .MACRO PBLOCK
|
||
PRODOS $D1, PBLOCK
|
||
.MACEND
|
||
|
||
GET_BUF: .MACRO PBLOCK
|
||
PRODOS $D2, PBLOCK
|
||
.MACEND
|
||
|
||
END
|
||
|
||
|