100 REM SAVE"@0:PLACE.PAL" 110 OPEN 8,8,8,"0:PLACE.OBJ,P,W 120 [158] 700 130 .OPT O8 140 ;[173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173] 150 ;[173][173] [173][173] 160 ;[173][173] MACHINE CODE PLACEHOLDER [173][173] 170 ;[173][173] [129] COMMOD[176]E 64 [173][173] 180 ;[173][173] [173][173] 190 ;[173][173] ROUTINE [164] HOLD SCREEN [173][173] 200 ;[173][173] PLACE, [153] MESSAGE [145] [173][173] 210 ;[173][173] LAST LINE, [167] [142] [173][173] 220 ;[173][173] WHENCE THEE CAME [173][173] 230 ;[173][173] [173][173] 240 ;[173][173] MAY 85 PAUL BLAIR [173][173] 250 ;[173][173] [173][173] 260 ;[173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173][173] 270 ; 280 ;[173][173] C64 BASIC 2.0 ROUTINES [173][173] 290 ; 300 B[176]DER [178] $D020 ;EXTERI[176] COLOUR 310 CLEAN [178] $E9FF ;ERASE LINE IN .X 320 CHROUT [178] $FFD2 ;[153] A CHAR 330 [161]IN [178] $FFE4 ;[161] A KEY 340 PLOT [178] $FFF0 ;SCREEN ROUTINE 350 ; 360 ;[173][173] MAIN PROGRAM [173][173] 370 ; 380 [172][178]$C000 ;[158]49152 CALLS 390 ; 400 ;[173][173] ERR[176] MESSAGE FLIP B[176]DER [173][173] 410 ; 420 OHDEAR LDA #$02 ;VISUAL ERR[176] 430 STA B[176]DER 440 SEC ;[161] OUR PLACE 450 JSR PLOT ;BY [135]ING SCREEN 460 TXA ;[129] X, Y [197]UES 470 PHA ;PUSH THEM AWAY 480 TYA ;[129] LATER USE 490 PHA 500 CLC ;SET [162] LOCATI[145] 510 LDY #$0C ;12 OVER 520 LDX #$18 ;24 DOWN 530 JSR PLOT ;PUT CURS[176] THERE 540 LDY #[177]CERMSG ;[153] MESSAGE 550 LDA #[179]CERMSG ;MAYBE ADD A 560 JSR PRIMMS ;"TONE HERE TOO? 570 KEYPLS JSR GETIN ;WAIT A KEY 580 BEQ KEYPLS ;LOOP IF NO KEY 590 LDX #$18 ;ERASE MESSAGE 600 JSR CLEAN ;ON BOTTOM LINE 610 LDA #$0F ;RESET BORDER COLOUR 620 STA BORDER ;TO NORMAL 630 PLA 640 TAY ;RECALL WHERE YOU 650 PLA ;WERE BEFORE 660 TAX 670 CLC ;AND (null) THERE 680 JMP PLOT ;(RTS) 690 ; 700 ;// PRINT MESSAGES // 710 ; 720 PRIMMS STY $5D ;POINT TO MESSAGE 730 STA $5C 740 LDY #$00 ;COUNTER 750 PRIMM2 LDA ($5C),Y ;GET CHAR 760 BEQ PRIMM3 ;IF ZERO, END 770 JSR CHROUT ;PRINT IT 780 INY ;INC INDEX 790 BNE PRIMM2 ;LOOP BACK 800 PRIMM3 RTS ;ALL DONE 810 ; 820 ;// MESSAGE // 830 ; 840 CERMSG .BYT $12: .ASC" PRESS ANY KEY " 850 .BYT $92,$00 860 .END