10 REM Code for new star command 20 REM Command : *PRINTER 30 REM Operation : Resets Printer 40 : 50 Name$="PRINTER" 60 OSBYTE=&FFF4:OSWRCH=&FFEE:OSNEWL=&FFE7 70 ZPage=&F2:CLIV=&208 80 Start=&1900-&200 90 PROCAssemble 100 @%=&90A 110 PRINT" *SAVE "Name$;" "~Start;" "~P%;" FF"~ExAddr;" FF"~Start 120 END 130 : 140 DEFPROCAssemble 150 Cmd=Start 160 $Cmd=Name$ 170 FORPass%=0TO3STEP3 180 P%=Start+LEN(Name$) 190 [OPT Pass% 200 .NewCLI STX ZPage:STY ZPage+1 210 LDX#0:LDY#0 220 JSR FetchChar 230 CMP#&2A:BNE CompCmd 240 INY:JSR FetchChar"* 250 .CompCmd LDA(ZPage),Y:AND#95 260 CMP Cmd,X:BNE NotThisCmd 270 INY:INX:CPX#LEN(Name$) 280 BCC CompCmd 290 LDA(ZPage),Y:CMP#13:BEQ ThisCmd 300 INY:CMP#32:BEQ ThisCmd 310 .NotThisCmd LDX ZPage:LDY ZPage+1 320 JMP(OldCLIV) 330 .FetchChar LDA(ZPage),Y:CMP#32 340 BNE ExitFetchChar 350 INY:BNE FetchChar 360 .ExitFetchChar RTS 370 .OldCLIV NOP:NOP 380 .ExAddr LDA CLIV:STA OldCLIV 390 LDA CLIV+1:STA OldCLIV+1 400 LDA#NewCLIMOD256:STA CLIV 410 LDA#NewCLIDIV256:STA CLIV+1 420 TYA:PHA 430 LDA#180:LDX#0:LDY#255:JSR OSBYTE 440 CPX#(ExAddrDIV256)+1:BCS OSHWMSet 450 LDX#(ExAddrDIV256)+1:LDY#0:JSR OSBYTE 460 .OSHWMSet PLA:TAY 470 : 480 .ThisCmd 490 LDA#6 500 JSR&FFF4 510 LDA#1 520 JSR&FFEE 530 LDA#27 540 JSR&FFEE 550 LDA#1 560 JSR&FFEE 570 LDA#72 580 JSR&FFEE 590 LDA#1 600 JSR&FFEE 610 LDA#70 620 JSR&FFEE 630 LDA#1 640 JSR&FFEE 650 LDA#18 660 JSR&FFEE 670 LDA#1 680 JSR&FFEE 690 LDA#20 700 JSR&FFEE 710 LDA#1 720 JSR&FFEE 730 LDA#50 740 JSR&FFEE 750 LDA#1 760 JSR&FFEE 770 LDA#84 780 JSR&FFEE 790 LDA#10 800 JSR&FFEE 810 LDA#13 820 JSR&FFEE 830 LDA#80 840 JSR&FFEE 850 LDA#114 860 JSR&FFEE 870 LDA#105 880 JSR&FFEE 890 LDA#110 900 JSR&FFEE 910 LDA#116 920 JSR&FFEE 930 LDA#101 940 JSR&FFEE 950 LDA#114 960 JSR&FFEE 970 LDA#32 980 JSR&FFEE 990 LDA#83 1000 JSR&FFEE 1010 LDA#101 1020 JSR&FFEE 1030 LDA#116 1040 JSR&FFEE 1050 LDA#117 1060 JSR&FFEE 1070 LDA#112 1080 JSR&FFEE 1090 LDA#10 1100 JSR&FFEE 1110 LDA#13 1120 JSR&FFEE 1130 RTS 1140 ] 1150 NEXT 1160 ENDPROC