PrintShopCompanion-Apple-II/PSC Source Disk 1 - System .../S_SUBPAK1.txt

213 lines
3.4 KiB
Plaintext

TTL "S:SUBPAK"
; S:SUBPAK1
NOG
ORG = $E000
OBJ = $800
;
; 03/11/85
; 08/23/85 last mod
;
; The Print Shop Companion Disk
; Subroutine Package
;
; by Roland Gustafsson
;
;------------
;
; Temp z-page
;
FLASHLO EPZ $4E
FLASHHI EPZ $4F
;
TMP EPZ $F0
TMP0 EPZ TMP
TMP1 EPZ TMP+1
TMP2 EPZ TMP+2
TMP3 EPZ TMP+3
TMP4 EPZ TMP+4
TMP5 EPZ TMP+5
;
TMPLO EPZ TMP+6
TMPHI EPZ TMP+7
HIRES EPZ TMP+8
;
; For input device only!
;
DTMP0 EPZ TMP+10
DTMP1 EPZ TMP+11
DTMPLO EPZ TMP+12
DTMPHI EPZ TMP+13
;-----------
;
; Absolute references:
;
; Printer routines
;
PT = $1800
;
PTCOUT = PT
PTCRLF = PT+3
PTSENDGC = PT+6
PTGCOUT = PT+9
;
PRINBUFF = $BB00
SECTBUFF = $8400
;
MAINMENU = $0800
;
DATADRIV = $95F4
MENULAST = $95F5
CALENDAR = 5
CHEKPROT = $BCE0
;
; SYSLIB routines
;
STROUT = $8A00
SPARM = STROUT+3
STRGET = $8E03
;
; SYSLIB tables
;
YBASELO = $91C0
YBASEHI = $9100
XBYTEOFF = $9398
XBITS = $94B0
SYSFONT = $8500
FLIPPER = $9080
;
; Monitor routines
;
WAIT = $FCA8
CROUT = $FD8E
RTS = $FF58
SAVEREGS = $FF4A
RESTREGS = $FF3F
;
; Variables
;
MAXFLEN = 15
ESC = $1B
;-----------
ORG ORG
OBJ OBJ
;-----------
; Screen output routines:
;
JMP PRINT
JMP CLSCREEN
JMP WITEBORD
JMP ESCBACK
JMP PICDRAW
;
; Device input routines:
;
JMP DEVICENW
DEVMODS:
DEVICEON JMP DEVICEON
DEVICEOF JMP DEVICEOF
DEVICERD JMP DEVICERD
DEVICEST JMP DEVICEST
SCALING HEX 00
;
; Keyboard routines:
;
JMP POLEBTN
JMP POLEKEY
JMP GETKEY
JMP SELECT
;
; Load/Save routines:
;
JMP SETTYPE
JMP GETFILE
JMP SAVEFILE
TYPELEN HEX 00
FLSTART ADR 0
FLLENGTH ADR 0
;
JMP BLOAD
JMP BSAVE
JMP DOSCR
JMP ERROR
;
; Miscellaneous routines:
;
JMP MUSIC
JMP FLSHINIT
JMP JMPVECTS
JMP LINES
JMP PARSE
JMP SHOWAROW
JMP NUMBER
JMP WAITPSD
JMP WAITCD
JMP ANYKEY
JMP CHKPRINT
JMP BOOP
JMP GETINIT
JMP GETBYTE
JMP INPUT
JMP CLS1
JMP PRINTGRP
JMP RTOS
JMP SPACEBAR
JMP GETPDISK
JMP ESCMAIN
JMP TESTPAPR
JMP GETANUMB
JMP ANYKEY2
JMP DEVICECH
;-----------
;
; Make sure that the following
; routines don't cross page
; boundaries.
;
;-----------
;
; Single tone error bell
;
BOOP PHP
SEI
LDY #$20
^0 BIT $C030
LDA #$18
JSR WAIT
DEY
BNE <0
PLP
RTS
;
; Error Music
;
MUSIC PHP
SEI
LDY #4
^0 STY TMP0
LDA MUSICFRQ,Y
STA >1+1
LDA MUSICDUR,Y
^1 LDX #00
^2 INY
BNE >3
SBC #1
BMI >4
^3 DEX
BNE <2
LDX $C030
JMP <1
^4 LDY TMP0
DEY
BPL <0
PLP
RTS
;
MUSICDUR HEX 6030301818
MUSICFRQ HEX 5E4C807280
;
;-----------
;
;
;
ICL "S:SUBPAK2"