mirror of
https://github.com/photogrammer/PrintShopCompanion-Apple-II.git
synced 2024-11-19 06:31:09 +00:00
253 lines
3.9 KiB
Plaintext
253 lines
3.9 KiB
Plaintext
TTL "S:UCAL"
|
|
; S:UCAL1
|
|
NOG
|
|
ORG = $4000
|
|
;
|
|
; 09/13/85
|
|
; 12/05/85
|
|
;
|
|
; Print Shop Companion Calendar
|
|
; by Roland Gustafsson
|
|
; Copyright 1985
|
|
;
|
|
; User interface module, menus,
|
|
; screens, etc...
|
|
;
|
|
;-----------
|
|
ORG ORG
|
|
OBJ $800
|
|
;-----------
|
|
JMP START
|
|
JMP START
|
|
;
|
|
JMP CRBLAK
|
|
JMP CRDRAW
|
|
;-----------
|
|
;
|
|
ASC "COPYRIGHT 1985 "
|
|
BYT "ROLAND GUSTAFSSON"
|
|
;
|
|
; Initialize external routines
|
|
;
|
|
START BIT $C083
|
|
BIT $C083
|
|
JSR INITCAL
|
|
;-----------
|
|
;-----------
|
|
;
|
|
; Clear variables START FRESH
|
|
;
|
|
START1 JSR CLRCOBUF
|
|
;-----------
|
|
;
|
|
; Enter here to leave data intact
|
|
;
|
|
START2 JSR TPTITLE2
|
|
;
|
|
; If no printer setup, then quit.
|
|
;
|
|
JSR PRINT
|
|
.DA #PRLOC,140,#70
|
|
BRK
|
|
LDA #CR
|
|
JSR CHKPRINT
|
|
BCC MENUSCT0
|
|
JMP MAINMENU
|
|
;-----------
|
|
;
|
|
; Select calendar type
|
|
;
|
|
MENUSCT0 JSR SELTYPE
|
|
BCC MENUSGR0
|
|
JSR ESCMAIN
|
|
BCS MENUSCT0
|
|
;-----------
|
|
;
|
|
; Select graphic
|
|
;
|
|
MENUSGR0 JSR SELGR
|
|
BCS MENUSCT0
|
|
;
|
|
; Graphic position
|
|
;
|
|
MENUSGR1 JSR SELGRPOS
|
|
BCS MENUSGR0
|
|
;-----------
|
|
;
|
|
; Select YEAR
|
|
;
|
|
MENUSYR0 JSR SELYEAR
|
|
BCS MENUSGR1
|
|
;-----------
|
|
;
|
|
; Select MONTH
|
|
;
|
|
MENUSMN0 JSR SELMONTH
|
|
BCS MENUSYR0
|
|
;-----------
|
|
;
|
|
; Select FONT
|
|
;
|
|
MENUSFN0 JSR SELFONT
|
|
BCS MENUSMN0
|
|
;
|
|
; Enter text for top of page
|
|
;
|
|
MENUSFN1 JSR TPTITLE
|
|
JSR TOPTEXT
|
|
BCS MENUSFN0
|
|
;-----------
|
|
;
|
|
; Enter data for CENTER of calendar
|
|
;
|
|
MENUCTR0 JSR CRTITLE
|
|
JSR CENTER
|
|
BCS MENUSFN1
|
|
;-----------
|
|
;
|
|
; Credit line for bottom of page
|
|
;
|
|
MENUCRL0 JSR BMTITLE
|
|
JSR CREDIT2
|
|
BCS MENUCTR0
|
|
;-----------
|
|
;
|
|
; Select colors
|
|
;
|
|
MENUCOLR JSR SELCOLOR
|
|
BCS MENUCRL0
|
|
;-----------
|
|
;
|
|
; PRINT MENU
|
|
;
|
|
; SEC=<esc> pressed
|
|
; CLC=start fresh
|
|
;
|
|
JSR PRINMENU
|
|
BCS MENUCOLR
|
|
BCC START1
|
|
;-----------
|
|
;
|
|
; TOP
|
|
;
|
|
TPTITLE BCC >0
|
|
TPTITLE2 PHP
|
|
JSR TITLE
|
|
JSR PRINT
|
|
BYT PRBIG,PRINVR
|
|
BYT 'TOP',CR,0
|
|
PLP
|
|
^0 RTS
|
|
;
|
|
; CENTER
|
|
;
|
|
CRTITLE PHP
|
|
JSR TITLE
|
|
JSR PRINT
|
|
BYT PRBIG,PRINVR
|
|
BYT 'CENTER',CR,0
|
|
PLP
|
|
RTS
|
|
;
|
|
; BOTTOM
|
|
;
|
|
BMTITLE JSR TITLE
|
|
JSR PRINT
|
|
BYT PRBIG,PRINVR
|
|
BYT 'BOTTOM',CR,0
|
|
RTS
|
|
;---
|
|
;
|
|
; Print menu
|
|
;
|
|
PRTITLE BCS >0
|
|
PRTITLE2 PHP
|
|
JSR TITLE
|
|
JSR PRINT
|
|
BYT PRBIG,PRINVR
|
|
BYT 'PRINT',CR
|
|
BRK
|
|
PLP
|
|
^0 RTS
|
|
;---
|
|
;
|
|
; TITLE
|
|
;
|
|
TITLE JSR WITEBORD
|
|
JSR ESCBACK
|
|
JSR PRINT
|
|
.DA #PRLOC,136,#4
|
|
BYT PRRITE,PRINVR
|
|
.DA #PRSTR,TXTCAL
|
|
BYT ':',CR
|
|
.DA #PRLOC,146,#1,#0
|
|
RTS
|
|
;-----------
|
|
;
|
|
; Center of calendar handler
|
|
;
|
|
CENTER LDA CLTYPE
|
|
BNE GTWEEKLY
|
|
;-----------
|
|
;
|
|
; Menus for monthly calendar.
|
|
;
|
|
GTMONTH JSR SELDATE
|
|
BCS >9
|
|
; DONE?
|
|
CPX MNLAST
|
|
BEQ >0
|
|
BGE >8
|
|
;
|
|
; Type in text for date
|
|
;
|
|
^0 JSR GTMTEXT
|
|
BCC GTMONTH
|
|
;
|
|
; Out of memory!
|
|
;
|
|
JSR CLS1
|
|
JSR MUSIC
|
|
JSR PRINT
|
|
BYT PRCNTR
|
|
.DA #PRLOC,140,#66
|
|
BYT 'SORRY, OUT OF MEMORY',CR
|
|
BYT CR
|
|
BYT 'UNABLE TO STORE...',CR
|
|
BRK
|
|
JSR ANYKEY
|
|
JMP GTMONTH
|
|
;
|
|
^8 CLC
|
|
^9 RTS
|
|
;-----------
|
|
;
|
|
; Menus for weekly calendar.
|
|
;
|
|
; First, select starting date
|
|
;
|
|
GTWEEKLY BCS >1
|
|
^0 JSR SELDATE
|
|
BCS <9
|
|
;
|
|
; Calculate day of week!
|
|
;
|
|
LDY MNDATE
|
|
JSR CALCDAY
|
|
;
|
|
; Now select which day to edit
|
|
;
|
|
^1 JSR SELWDATE
|
|
BCS <0
|
|
; DONE?
|
|
CPX #7
|
|
BEQ <8
|
|
;
|
|
JSR GTWTEXT
|
|
JMP <1
|
|
;-----------
|
|
;
|
|
;
|
|
;
|
|
ICL "S:UCAL2"
|