mirror of
https://github.com/photogrammer/PrintShopCompanion-Apple-II.git
synced 2024-09-27 09:55:09 +00:00
328 lines
5.7 KiB
Plaintext
328 lines
5.7 KiB
Plaintext
|
NLS
|
||
|
; S:COMMON
|
||
|
;
|
||
|
; Common equates for Calendar
|
||
|
; source files.
|
||
|
;
|
||
|
GOOFBALL = *
|
||
|
;-----------
|
||
|
;
|
||
|
; Monthly data margins
|
||
|
;
|
||
|
DTCXMAX = 126
|
||
|
DTCYMAX = 90
|
||
|
DTCXMARG = 6
|
||
|
DTCYMARG = 24
|
||
|
;-----------
|
||
|
;
|
||
|
; Common zero page
|
||
|
;
|
||
|
CLZ EPZ $D0
|
||
|
;
|
||
|
XOFFLO EPZ CLZ
|
||
|
XOFFHI EPZ CLZ+1
|
||
|
YOFF EPZ CLZ+2
|
||
|
TMP0 EPZ CLZ+3
|
||
|
TMP1 EPZ CLZ+4
|
||
|
TMP2 EPZ CLZ+5
|
||
|
TMP3 EPZ CLZ+6
|
||
|
TMP4 EPZ CLZ+7
|
||
|
TMP5 EPZ CLZ+8
|
||
|
;
|
||
|
DATE EPZ CLZ+9
|
||
|
;
|
||
|
CRLINE EPZ CLZ+10
|
||
|
;
|
||
|
;-----------
|
||
|
UFONT = $8500
|
||
|
UFONTW = UFONT
|
||
|
CLFONT = $6000
|
||
|
CFONTH = CLFONT+$3B
|
||
|
;-----------
|
||
|
;
|
||
|
; Constants:
|
||
|
;
|
||
|
GRBUFF = $7800
|
||
|
FONTBUFF = $5FF4
|
||
|
ESC = 27
|
||
|
;------
|
||
|
;
|
||
|
; Temporary buffer for text
|
||
|
;
|
||
|
TEMPTEXT = $7A40
|
||
|
;
|
||
|
MONTHTXT = TEMPTEXT
|
||
|
; worst:SEPTEMBER (9+1)
|
||
|
WEEKTEXT = MONTHTXT+10
|
||
|
; worst:WEDNESDAY (9+1)
|
||
|
DATETEXT = WEEKTEXT+10
|
||
|
; worst:31 (2+1)
|
||
|
;-----------
|
||
|
;
|
||
|
; Common buffer
|
||
|
;
|
||
|
COBUFF = $D000
|
||
|
;
|
||
|
ORG COBUFF
|
||
|
;--
|
||
|
CLTYPE DFS 1 ; Calendar type
|
||
|
;--
|
||
|
GRSEL DFS 1 ; Graphic selection
|
||
|
NOGR = 3
|
||
|
GRNUM DFS 1 ; # from PSD
|
||
|
GROPTION DFS 1 ; Position option
|
||
|
;--
|
||
|
YEARTEXT DFS 5
|
||
|
;--
|
||
|
MONTH DFS 1 ; 0-11
|
||
|
MNDATE DFS 1 ; mini-calen default
|
||
|
MNWDATE DFS 1 ; mini-week default
|
||
|
MNFDAY DFS 1 ; day of week 0-6
|
||
|
MNLAST DFS 1 ; # days in month
|
||
|
;--
|
||
|
FONTSEL DFS 1 ; Font selection
|
||
|
NOFONT = 3
|
||
|
FONTPSD DFS 1 ; # from PSD
|
||
|
FONTCD DFS 1 ; # from CD
|
||
|
;--
|
||
|
PRSEL DFS 1 ; printer item
|
||
|
PRCOPIES DFS 1 ; # copies to print
|
||
|
;--
|
||
|
;
|
||
|
; 0-30:monthly data (DATE-1)
|
||
|
; 0-27:weekly date in groups of 4
|
||
|
; 31 :top line
|
||
|
; 32 :second line
|
||
|
; 33 :credit line
|
||
|
;
|
||
|
DBUFCONT = 34 ; # strings
|
||
|
;
|
||
|
DBUFENDL DFS 1 ; EOF pointer
|
||
|
DBUFENDH DFS 1
|
||
|
;
|
||
|
DBUFPNTL DFS DBUFCONT ; pointers
|
||
|
DBUFPNTH DFS DBUFCONT ; to the text
|
||
|
;
|
||
|
; If COLORFLG=$FF then next 4
|
||
|
; are colors for:
|
||
|
; 0:Font
|
||
|
; 1:Graphics
|
||
|
; 2:Lines
|
||
|
; 3:Highlites
|
||
|
;
|
||
|
COLORFLG DFS 1 ; $FF=color follows
|
||
|
DCOLOR0 DFS 1
|
||
|
DCOLOR1 DFS 1
|
||
|
DCOLOR2 DFS 1
|
||
|
DCOLOR3 DFS 1
|
||
|
;
|
||
|
DBUFFER DFS 1 ; first byte of buffer
|
||
|
;-----------
|
||
|
;
|
||
|
; Z-page
|
||
|
;
|
||
|
FLASHLO EPZ $4E
|
||
|
FLASHHI EPZ $4F
|
||
|
;-----------
|
||
|
;
|
||
|
; MAIN MENU routines
|
||
|
;
|
||
|
MM = $0800
|
||
|
;
|
||
|
MAINMENU = MM
|
||
|
FGETMAIN = MM+3
|
||
|
FGETPSD = MM+6
|
||
|
FGETCD = MM+9
|
||
|
;
|
||
|
HAS128K = $27F
|
||
|
CONFIG = $95F0
|
||
|
COLORPR = CONFIG+8
|
||
|
;-----------
|
||
|
;
|
||
|
; Subroutine package
|
||
|
;
|
||
|
SP = $E000
|
||
|
;
|
||
|
PRINT = SP
|
||
|
CLSCREEN = SP+3
|
||
|
WITEBORD = SP+6
|
||
|
ESCBACK = SP+9
|
||
|
PICDRAW = SP+12
|
||
|
;
|
||
|
DEVICENW = SP+15
|
||
|
DEVICEON = SP+18
|
||
|
DEVICEOF = SP+21
|
||
|
DEVICERD = SP+24
|
||
|
DEVICEST = SP+27
|
||
|
SCALING = SP+30
|
||
|
;
|
||
|
POLEBTN = SP+31
|
||
|
POLEKEY = SP+34
|
||
|
GETKEY = SP+37
|
||
|
SELECT = SP+40
|
||
|
;
|
||
|
SETTYPE = SP+43
|
||
|
GETFILE = SP+46
|
||
|
SAVEFILE = SP+49
|
||
|
TYPELEN = SP+52
|
||
|
FLSTART = SP+53
|
||
|
FLLENGTH = SP+55
|
||
|
BLOAD = SP+57
|
||
|
BSAVE = SP+60
|
||
|
DOSCR = SP+63
|
||
|
ERROR = SP+66
|
||
|
;
|
||
|
MUSIC = SP+69
|
||
|
FLSHINIT = SP+72
|
||
|
JMPVECTS = SP+75
|
||
|
LINES = SP+78
|
||
|
PARSE = SP+81
|
||
|
SHOWAROW = SP+84
|
||
|
NUMBER = SP+87
|
||
|
WAITPSD = SP+90
|
||
|
WAITCD = SP+93
|
||
|
ANYKEY = SP+96
|
||
|
CHKPRINT = SP+99
|
||
|
BOOP = SP+102
|
||
|
GETINIT = SP+105
|
||
|
GETBYTE = SP+108
|
||
|
INPUT = SP+111
|
||
|
CLS1 = SP+114
|
||
|
PRINTGRP = SP+117
|
||
|
RTOS = SP+120
|
||
|
SPACEBAR = SP+123
|
||
|
GETPDISK = SP+126
|
||
|
ESCMAIN = SP+129
|
||
|
TESTPAPR = SP+132
|
||
|
GETANUMB = SP+135
|
||
|
ANYKEY2 = SP+138
|
||
|
;
|
||
|
WITE = $FF
|
||
|
GRAY = $AA
|
||
|
GRAY2 = $55
|
||
|
BLAK = $00
|
||
|
;
|
||
|
PRNORM = 1
|
||
|
PRINVR = 2
|
||
|
PRLEFT = 3
|
||
|
PRRITE = 4
|
||
|
PRCNTR = 5
|
||
|
PRLOC = 6
|
||
|
PRSMAL = 7
|
||
|
PRBIG = 8
|
||
|
PRSTR = 9
|
||
|
PRSPC = 10
|
||
|
PRHTAB = 11
|
||
|
PRVTAB = 12
|
||
|
CR = 13
|
||
|
NOCR = 14
|
||
|
RTOSBLAK = 15
|
||
|
RTOSWITE = 16
|
||
|
RTOSANY = 17
|
||
|
PRCSPACE = 18
|
||
|
PRPIC = 19
|
||
|
PRRTAB = 20
|
||
|
PRRTAB2 = 21
|
||
|
PRKERN = 22
|
||
|
RTOSINV = 23
|
||
|
;-----------
|
||
|
;
|
||
|
; Monitor routines
|
||
|
;
|
||
|
WAIT = $FCA8
|
||
|
RTS = $FF58
|
||
|
;-----------
|
||
|
;
|
||
|
; PRCOMS locations
|
||
|
;
|
||
|
COUT1 = $1800
|
||
|
CRLF = $1803
|
||
|
SENDGC = $1806
|
||
|
GCOUT = $1809
|
||
|
MTHINK = $180C
|
||
|
MPRINT = $180F
|
||
|
MPAUSE = $1812
|
||
|
COPYCONT = $1815
|
||
|
UPLRK = $1816
|
||
|
COLORCHG = $181D
|
||
|
;-----------
|
||
|
;
|
||
|
; Buffer handler routines
|
||
|
;
|
||
|
TEXTBUFF = $9600
|
||
|
EDITBUFF = $9700
|
||
|
;
|
||
|
BF = $7B00
|
||
|
;
|
||
|
; Credit line info
|
||
|
;
|
||
|
CRXB = 4
|
||
|
CRXMAXB = 32
|
||
|
CRX = CRXB*7
|
||
|
CRXMAX = CRXMAXB*7
|
||
|
;
|
||
|
CRY1 = 78
|
||
|
;
|
||
|
.IF BF-ORG
|
||
|
CLRCOBUF = BF
|
||
|
GETTEXT = BF+3
|
||
|
PUTTEXT = BF+6
|
||
|
GETEDIT = BF+9
|
||
|
PUTEDIT = BF+12
|
||
|
MAKEDTXT = BF+15
|
||
|
MAKEWTXT = BF+18
|
||
|
;
|
||
|
TOPTEXT = BF+21
|
||
|
GTMTEXT = BF+24
|
||
|
GTWTEXT = BF+27
|
||
|
CREDIT = BF+30
|
||
|
;
|
||
|
DRAWBOX = BF+33
|
||
|
.FI
|
||
|
;-----------
|
||
|
;
|
||
|
; Print routines
|
||
|
;
|
||
|
PR = $F00
|
||
|
;
|
||
|
.IF PR-ORG
|
||
|
DOCALEN = PR
|
||
|
EDITDRAW = PR+3
|
||
|
EDITYOFF = PR+6
|
||
|
STRCROP = PR+9
|
||
|
.FI
|
||
|
;-----------
|
||
|
;
|
||
|
; MAIN code vectors
|
||
|
;
|
||
|
MN = $4000
|
||
|
;
|
||
|
.IF MN-ORG
|
||
|
CRBLAK = MN+6
|
||
|
CRDRAW = MN+9
|
||
|
.FI
|
||
|
;-----------
|
||
|
;
|
||
|
; Print buffer constants
|
||
|
;
|
||
|
BUFWIDTH = 1024
|
||
|
LMARGIN = 10
|
||
|
CLBUFFER = $2000
|
||
|
;-----------
|
||
|
;
|
||
|
; STROUT variables
|
||
|
;
|
||
|
STROUT = $8A00
|
||
|
SPARM = STROUT+3
|
||
|
CSIZE = STROUT+$0B
|
||
|
;
|
||
|
; STROUT mod routines
|
||
|
;
|
||
|
STINSTAL = STROUT+$0F
|
||
|
STSCREEN = STROUT+$12
|
||
|
FINSTALL = STROUT+$15
|
||
|
;
|
||
|
;-----------
|
||
|
PHS GOOFBALL
|
||
|
END
|