10 *TV255 20 *FX18 30 *FX21 40 *KEY10"OLD|MPROCfinish|M" 50 *FX4,1 60 *FX229,1 70 *FX225,200 80 *FX226,210 90 *FX227,220 100 MODE7 110 VDU23;10,&60;0;0;0 120 ONERROR:VDU7 130 epson%=0 140 PROCstart 150 PROCinit 160 : 170 REPEAT 180 REPEAT 190 H%=0 200 $W%="Page"+STR$(P%) 210 PROCload 220 PROCgettop 230 VDU30,157,129 240 PRINT"elp ndex

rint <['> [ ] " 250 REPEAT 260 Q%=GET 270 UNTILINSTR("HIPhip",CHR$(Q%))ORQ%=13ORQ%=27ORQ%>135 280 IFQ%>127:T%=0 290 IFQ%=72ORQ%=104:PROChelp1 300 IFQ%=73ORQ%=105:PROCindex 310 IFQ%=80ORQ%=112:PROCvprint 320 IFQ%=27:RUN 330 IFQ%=136:L%=L%-1 340 IFQ%=137:L%=L%+1 350 IFQ%=138:P%=P%-1 360 IFQ%=139:P%=P%+1 370 IFP%<1:P%=M%:L%=L%-1 380 IFP%>M%:P%=1:L%=L%+1 390 IFL%<0:L%=25 400 IFL%>25:L%=0 410 UNTILQ%=13 AND H%=0 420 VDU30:PRINT$&A00:VDU30,9,9 430 E%=E%EOR1:VDU23,1,E%;0;0;0; 440 REPEAT 450 a%=GET 460 IFA%<>27:PROCkeys 470 UNTILA%=27 480 PROCsave 490 E%=E%EOR1:VDU23,1,E%;0;0;0; 500 UNTILFALSE 510 : 520 DEFPROCgettop 530 $&A00="" 540 FORI%=0TO39 550 $&A00=$&A00+CHR$(?(&7C00+I%)) 560 NEXT 570 ENDPROC 580 : 590 DEFPROCvprint 600 VDU30:PRINT$&A00:VDU30,9,9 610 PROCprint 620 ENDPROC 630 : 640 DEFPROCkeys 650 A%=a% 660 IFA%=16:PROCprint:ENDPROC 670 IFA%=3:PROCnewpage:PROCgettop:ENDPROC 680 IFA%=13ANDVPOS=24:VDU7:ENDPROC 690 IFA%=13:VDU10,13,8:PROCright:ENDPROC 700 IFINSTR("QWASZXqwaszx",CHR$(a%))<>0ANDt%:PROCpixel:ENDPROC 710 IFA%=136:PROCleft:ENDPROC 720 IFA%=137:PROCright:ENDPROC 730 IFA%=138:PROCdown:ENDPROC 740 IFA%=139:PROCup:ENDPROC 750 IFa%>=200ANDa%<=229:PROCfkeys 760 IFA%=127:PROCdelete:ENDPROC 770 IFA%=226:PROCinspc:ENDPROC 780 IFA%=227:PROCinsline:ENDPROC 790 IFA%=228:PROCdelline:ENDPROC 800 IFA%=209ORA%=219ORA%=229:PROCptog:ENDPROC 810 IFE%=0:VDU7:ENDPROC 820 IFVPOS=24ANDPOS=39ANDt%=0:?(&7C27+40*24)=A%:VDU7:ENDPROC 830 IFt%=0:VDUA%,8:PROCright 840 ENDPROC 850 : 860 DEFPROCfkeys 870 IFa%>=200ANDa%<=208:A%=a%-71 880 IFa%>=210ANDa%<=216:A%=a%-65 890 IFa%>=217ANDa%<=218:A%=a%-61 900 IFa%>=220ANDa%<=221:A%=a%-67 910 IFa%>=222ANDa%<=223:A%=a%-64 920 IFa%>=224ANDa%<=225:A%=365-a% 930 ENDPROC 940 : 950 DEFPROCpixel 960 LOCALW% 970 W%=2^((INSTR("QWASZ X",CHR$(A%AND223)))-1) 980 K%=&7C00+40*VPOS+POS 990 IF(?K%AND160)<>160:?K%=?K%OR160 1000 IF?(K%ANDW%)=W%:?K%=?K%AND(255-W%)ELSE?K%=?K%EORW% 1010 ENDPROC 1020 : 1030 DEFPROCptog 1040 t%=t%EOR1 1050 IFt%:VDU23;10,&70;0;0;0 ELSE VDU23;10,&60;0;0;0 1060 ENDPROC 1070 : 1080 DEFPROCleft 1090 IFPOS>2:VDU8:ENDPROC 1100 IFVPOS>0:VDU31,39,VPOS-1ELSEVDU7 1110 ENDPROC 1120 : 1130 DEFPROCright 1140 IFPOS<39:VDU9:ENDPROC 1150 IFVPOS<24:VDU9,9,9ELSEVDU7 1160 ENDPROC 1170 : 1180 DEFPROCdown 1190 IFVPOS<24:VDU10ELSEVDU7 1200 ENDPROC 1210 : 1220 DEFPROCup 1230 IFVPOS>0:VDU11ELSEVDU7 1240 ENDPROC 1250 : 1260 DEFPROCdelete 1270 IFPOS=2ANDVPOS=0:VDU7:ENDPROC 1280 org%=&7C00+40*VPOS 1290 IFPOS=2:PROCleft ELSE FORI%=POS TO 39:?(org%+I%-1)=?(org%+I%):NEXT:VDU8 1300 ?(&7C27+VPOS*40)=32 1310 ENDPROC 1320 : 1330 DEFPROCinspc 1340 dest%=&7C27+40*VPOS 1350 org%=&7C00+40*VPOS+POS 1360 diff%=dest%-org% 1370 FORI%=0TOdiff% 1380 ?(dest%-I%)=?(dest%-I%-1) 1390 NEXT 1400 ?org%=32 1410 ENDPROC 1420 : 1430 DEFPROCinsline 1440 LOCALP% 1450 org%=&70:dest%=&74:end%=&78:stop%=&7C 1460 !org%=&7C27+40*23 1470 !dest%=&7C27+40*24 1480 !end%=&7C02+40*VPOS 1490 !stop%=&7C27+40*VPOS 1500 FORI%=0TO2STEP2 1510 P%=&980 1520 [OPTI% 1530 LDY#0 1540 .loop 1550 LDA(org%),Y:STA(dest%),Y 1560 LDAorg%::BNEd1 1570 DECorg%+1 1580 .d1 1590 DECorg% 1600 LDAdest%:BNEd2 1610 DECdest%+1 1620 .d2 1630 DECdest% 1640 LDAorg%+1:CMPend%+1:BNEloop 1650 LDAorg%:CMPend%:BCSloop 1660 RTS 1670 ]NEXT 1680 CALL&980 1690 REPEAT 1700 ?!end%=32 1710 !end%=!end%+1 1720 UNTIL!end%=!stop%+1 1730 ENDPROC 1740 : 1750 DEFPROCdelline 1760 LOCALP% 1770 org%=&70:dest%=&74:end%=&78:stop%=&7C 1780 !org%=&7C02+40*(VPOS+1) 1790 !dest%=&7C02+40*VPOS 1800 !end%=&7C27+40*24 1810 !stop%=&7C02+40*24 1820 FORI%=0TO2STEP2 1830 P%=&980 1840 [OPTI% 1850 LDY#0 1860 .loop 1870 LDA(org%),Y:STA(dest%),Y 1880 INCorg%::BNEd1:INCorg%+1 1890 .d1 1900 INCdest%:BNEd2:INCdest%+1 1910 .d2 1920 LDAend%+1:CMPorg%+1:BNEloop 1930 LDAend%:CMPorg%:BCSloop 1940 RTS 1950 ]NEXT 1960 CALL&980 1970 REPEAT 1980 ?!end%=32 1990 !end%=!end%-1 2000 UNTIL!end%=!stop%-1 2010 ENDPROC 2020 : 2030 DEFPROCprint 2040 O%=&7C00:o%=0:graphic%=0:sep%=0 2050 VDU2 2060 IFepson%:VDU1,27,1,48 2070 FORl%=1TO25 2080 FORc%=1TO40 2090 d%=?(O%+o%) 2100 IFd%<32:d%=32 2110 IFepson%=0 AND (d%<32ORd%>126):d%=32 2120 IFd%>127ANDepson%:PROCeprint 2130 IFd%=91ANDepson%:d%=0:VDU1,27,1,75,1,8,1,0,1,0,1,&10,1,&38,1,&54,1,&10,1,&10,1,&10,1,&10 2140 IFd%=93ANDepson%:d%=0:VDU1,27,1,75,1,8,1,0,1,0,1,&10,1,&10,1,&10,1,&10,1,&54,1,&38,1,&10 2150 VDU1,d% 2160 o%=o%+1 2170 NEXT 2180 IFepson%:VDU1,10 2190 VDU1,13:graphic%=0:sep%=0 2200 NEXT 2210 IFepson%:VDU1,27,1,50 2220 VDU1,13,3 2230 ENDPROC 2240 : 2250 DEFPROCeprint 2260 IFd%=&80:d%=32:ENDPROC 2270 IFd%>&80 AND d%<&88:graphic%=0:d%=32:ENDPROC 2280 IFd%>&87 AND d%<&91:d%=32:ENDPROC 2290 IFd%>&90 AND d%<&98:graphic%=1:d%=32:ENDPROC 2300 IFd%=&99:sep%=0 2310 IFd%=&9A:sep%=1 2320 IFd%>&97 AND d%<&A0:d%=32:ENDPROC 2330 IFd%>&BF AND d%<&E0:d%=32:ENDPROC 2340 IFgraphic%=0:d%=32:ENDPROC 2350 PROCpixprint:d%=0 2360 ENDPROC 2370 : 2380 DEFPROCpixprint 2390 flag%=0 2400 FORn%=0TO6 2410 flag%=flag%+(d%AND2^n%) 2420 NEXT 2430 : 2440 VDU1,27,1,ASC"^",1,0,1,6,1,0 2450 pr%=0 2460 IFflag%AND1:pr%=pr%+&E0-(sep%*&20) 2470 IFflag%AND4:pr%=pr%+&1C-(sep%*&04) 2480 IFflag%AND16:pr%=pr%+&8003-(sep%*&8000) 2490 IFsep%:VDU1,0,1,0 2500 FORn%=sep%TO2 2510 VDU1,pr%AND&FF 2520 VDU1,(pr%AND&FF00)DIV&100 2530 NEXT 2540 pr%=0 2550 IFflag%AND2:pr%=pr%+&E0-(sep%*&20) 2560 IFflag%AND8:pr%=pr%+&1C-(sep%*&04) 2570 IFflag%AND64:pr%=pr%+&8003-(sep%*&8000) 2580 IFsep%:VDU1,0,1,0 2590 FORn%=sep%TO2 2600 VDU1,pr%AND&FF 2610 VDU1,(pr%AND&FF00)DIV&100 2620 NEXT 2630 ENDPROC 2640 : 2650 DEFPROCnewpage 2660 VDU30 2670 FORD%=1TO24 2680 PRINTCHR$(157)CHR$(132)STRING$(38," "); 2690 NEXT 2700 PRINTCHR$(157)CHR$(132)STRING$(37," "); 2710 ?(&7C27+40*24)=32 2720 VDU30 2730 PRINTCHR$(157)CHR$(132)"Page "CHR$(65+L%)STR$(P%)" "; 2740 PRINTTAB(2,0); 2750 ENDPROC 2760 : 2770 DEFPROCindex 2780 oldL%=L%:oldP%=P% 2790 FORL%=0TO25 2800 VDU30 2810 FORP%=1TOM% 2820 $W%="Page"+STR$(P%) 2830 T%=0:PROCload 2840 Q%=INKEY(100) 2850 IFQ%=27:P%=M%:L%=25 2860 IFQ%=135:oldL%=L%:oldP%=P%:P%=M%:L%=25 2870 IFQ%=136:P%=0:IFL%>0:L%=L%-1 2880 IFQ%=137:P%=0:IFL%<25:L%=L%+1 2890 IFQ%=138:IFP%>1:P%=P%-2 2900 NEXT:NEXT 2910 L%=oldL%:P%=oldP% 2920 T%=0:Q%=0 2930 ENDPROC 2940 : 2950 DEFPROCload 2960 X%=W%MOD256 2970 Y%=W%DIV256 2980 A%=&C0 2990 F%=(USR&FFCE)AND&FF 3000 PROCdisc(4,&3E8) 3010 PRINTTAB(2,1); 3020 VDU23,1,E%;0;0;0; 3030 CLOSE#F% 3040 ENDPROC 3050 : 3060 DEFPROCsave 3070 X%=W%MOD256 3080 Y%=W%DIV256 3090 A%=&C0 3100 F%=(USR&FFCE)AND&FF 3110 T%=0 3120 IFE%:PROCdisc(2,&3E8) 3130 CLOSE#F% 3140 ENDPROC 3150 : 3160 DEFPROCdisc(A%,S%) 3170 PTR#F%=L%*&3E8 3180 B%?0=F% 3190 B%!1=&7C00 3200 B%!5=S% 3210 X%=B%MOD256 3220 Y%=B%DIV256 3230 CALL&FFD1 3240 ENDPROC 3250 : 3260 DEFPROCstart 3270 REM "𓇣𙹁𠪟6 3280 REM "‹솬456 3290 E%=0:VDU23,1,0;0;0;0; 3300 REPEAT 3310 VDU30 3320 PRINT"儩 "; 3330 PRINT"儩 暆 儩"; 3340 PRINT"儩両nstructions 暆 儩"; 3350 PRINT"儩慲``````````` 暆 儩"; 3360 PRINT"儩両nstall your 暆 儩"; 3370 PRINT"儩乸reprepared disc暆 0h7k4'+j7`! 儩"; 3380 PRINT"儩乥efore running 暆 uj5j5 jup 儩"; 3390 PRINT"儩乼he program or 暆 kj5j5 j5 儩"; 3400 PRINT"儩乮nstall a blank 暆 *uz% jup0 儩"; 3410 PRINT"儩乫ormatted disc 暆 儩"; 3420 PRINT"儩乤nd indicate its暆 }璺氪} 儩"; 3430 PRINT"儩乻ize to prepare 暆 甑甑 儩"; 3440 PRINT"儩乤 new disc 暆 !攴氲 儩"; 3450 PRINT"儩 暆 甑甑鹂 儩"; 3460 PRINT"儩丱ptions 暆 儩"; 3470 PRINT"儩慲`````` 暆 儩"; 3480 PRINT"儩丷un NotePad 暆 儩"; 3490 PRINT"儩丒pson 9pin NO 暆 儩"; 3500 PRINT"儩* Command 暆 儩"; 3510 PRINT"儩丳repare DFS 40T暆 儩"; 3520 PRINT"儩丳repare DFS 80T暆 儩"; 3530 PRINT"儩丳repare ADFS S 暆 儩"; 3540 PRINT"儩丳repare ADFS M 暆 儩"; 3550 PRINT"儩丳repare ADFS L 暆 儩"; 3560 PRINT"儩 "; 3570 IFepson%:PRINTTAB(16,17)"YES"; 3580 O%=&7C00+40*16:S%=-1 3590 REPEAT 3600 S%=S%+1:IFS%=8:S%=0 3610 ?(O%+S%*40)=32 3620 Q%=GET 3630 ?(O%+S%*40)=131 3640 UNTILQ%=13 3650 IFS%=0:ENDPROC 3660 IFS%=1:epson%=epson%EOR1:GOTO 3840 3670 IFS%=2:PROCoscli 3680 IFS%=3:M%=3 3690 IFS%=4:M%=7 3700 IFS%=5:M%=6 3710 IFS%=6:M%=12 3720 IFS%=7:M%=24 3730 CLS 3740 B%=&900:W%=&9F0 3750 FORP%=1TOM% 3760 file$="Page"+STR$(P%) 3770 F%=OPENOUTfile$ 3780 FORL%=0TO25 3790 PROCnewpage 3800 PROCdisc(2,&3E8) 3810 NEXT 3820 CLOSE#F% 3830 NEXT 3840 UNTILFALSE 3850 ENDPROC 3860 : 3870 REM "𓇣𙹁𠪟6 3880 REM "‹솬456 3890 DEFPROChelp1 3900 VDU30,23,1,0;0;0;0; 3910 PRINT"潄 "; 3920 PRINT"潄 "; 3930 PRINT"潟 0h7k4'+j7`! }璺氪} "; 3940 PRINT"潟 uj5j5 jup 甑甑 "; 3950 PRINT"潟 kj5j5 j5 !攴氲 "; 3960 PRINT"潟 *uz% jup0 甑甑鹂 "; 3970 PRINT"潄 "; 3980 PRINT"潄 INDEX "; 3990 PRINT"潄慲```` "; 4000 PRINT"潄Cycles through the whole NotePad A1-Zn"; 4010 PRINT"潄use the cursor keys to jump :- "; 4020 PRINT"潄 "; 4030 PRINT"潄 Left...back to previous letter page 1"; 4040 PRINT"潄 "; 4050 PRINT"潄Right...forward to next letter page 1 "; 4060 PRINT"潄 "; 4070 PRINT"潄 Down...back one page "; 4080 PRINT"潟 "; 4090 PRINT"潄You may exit this routine by hitting "; 4100 PRINT"潄 "; 4110 PRINT"潄 to pass the page number whose "; 4120 PRINT"潄 title is currently shown "; 4130 PRINT"潄 "; 4140 PRINT"潄 to return to the page at "; 4150 PRINT"潄 which you started from "; 4160 ?(&7C27+40*24)=32 4170 Q%=GET 4180 IFQ%<>27:PROChelp2 4190 H%=1:Q%=13 4200 ENDPROC 4210 : 4220 REM "𓇣𙹁𠪟6 4230 REM "‹솬456 4240 DEFPROChelp2 4250 PRINTTAB(0,7); 4260 PRINT"潄 NOTE PAD HELP 2 "; 4270 PRINT"潄慲`````````````` "; 4280 PRINT"潄 View Mode Cursor OFF "; 4290 PRINT"潄慲```````` "; 4300 PRINT"潄 H.....This help "; 4310 PRINT"潄 I.....Index see previous page "; 4320 PRINT"潄 P.....Print Page "; 4330 PRINT"潄 <['>.....Enter edit mode "; 4340 PRINT"潄.....Close the NotePad "; 4350 PRINT"潄 "; 4360 PRINT"潄 Edit Mode Cursor ON "; 4370 PRINT"潄慲```````` "; 4380 PRINT"潄Once here any changes you make will "; 4390 PRINT"潄be saved on leaving i.e. after you "; 4400 PRINT"潄hit , no prompt is asked for "; 4410 PRINT"潄before saving, so should you not wish "; 4420 PRINT"潄to save the changes you have made hit "; 4430 PRINT"潄the key. "; 4440 Q%=GET 4450 IFQ%<>27:PROChelp3 4460 H%=1:Q%=13 4470 ENDPROC 4480 : 4490 REM "𓇣𙹁𠪟6 4500 REM "‹솬456 4510 DEFPROChelp3 4520 PRINTTAB(0,7); 4530 PRINT"潄 NOTE PAD HELP 3 "; 4540 PRINT"潄慲`````````````` "; 4550 PRINT"潄 Ctrl+C....Clear screen "; 4560 PRINT"潄 Ctrl+P....Print page "; 4570 PRINT"潄 "; 4580 PRINT"潄 f0...Red text "; 4590 PRINT"潄 f1...Green text "; 4600 PRINT"潄 f2...Yellow text "; 4610 PRINT"潄 f3...Blue text "; 4620 PRINT"潄 f4...Magenta text "; 4630 PRINT"潄 f5...Cyan text "; 4640 PRINT"潄 f6...White text "; 4650 PRINT"潄 f7...Flashing "; 4660 PRINT"潄 f8...Steady "; 4670 PRINT"潄 f9...Pixel editor "; 4680 PRINT"潄 "; 4690 PRINT"潄 ...Save, Return to View Mode "; 4700 PRINT"潄 "; 4710 Q%=GET 4720 IFQ%<>27:PROChelp4 4730 H%=1:Q%=13 4740 ENDPROC 4750 : 4760 REM "𓇣𙹁𠪟6 4770 REM "‹솬456 4780 DEFPROChelp4 4790 PRINTTAB(0,7); 4800 PRINT"潄 NOTE PAD HELP 4 "; 4810 PRINT"潄慲`````````````` "; 4820 PRINT"潄 Ctrl+C....Clear screen "; 4830 PRINT"潄 Ctrl+P....Print page "; 4840 PRINT"潄 "; 4850 PRINT"潄 Shift+f0...Red graphics "; 4860 PRINT"潄 Shift+f1...Green graphics "; 4870 PRINT"潄 Shift+f2...Yellow graphics "; 4880 PRINT"潄 Shift+f3...Blue graphics "; 4890 PRINT"潄 Shift+f4...Magenta graphics "; 4900 PRINT"潄 Shift+f5...Cyan graphics "; 4910 PRINT"潄 Shift+f6...White graphics "; 4920 PRINT"潄 Shift+f7...Black background "; 4930 PRINT"潄 Shift+f8...Colour background "; 4940 PRINT"潄 Shift+f9...Pixel editor "; 4950 PRINT"潄 "; 4960 PRINT"潄 ...Save, Return to View Mode "; 4970 PRINT"潄 "; 4980 Q%=GET 4990 IFQ%<>27:PROChelp5 5000 H%=1:Q%=13 5010 ENDPROC 5020 : 5030 REM "𓇣𙹁𠪟6 5040 REM "‹솬456 5050 DEFPROChelp5 5060 PRINTTAB(0,7); 5070 PRINT"潄 NOTE PAD HELP 5 "; 5080 PRINT"潄慲`````````````` "; 5090 PRINT"潄 Ctrl+C....Clear screen "; 5100 PRINT"潄 Ctrl+P....Print page "; 5110 PRINT"潄 "; 5120 PRINT"潄 Ctrl+f0...Contiguous graphics "; 5130 PRINT"潄 Ctrl+f1...Seperated graphics "; 5140 PRINT"潄 Ctrl+f2...Hold graphics "; 5150 PRINT"潄 Ctrl+f3...Release graphics "; 5160 PRINT"潄 Ctrl+f4...Double height "; 5170 PRINT"潄 Ctrl+f5...Single height "; 5180 PRINT"潄 Ctrl+f6...Insert space "; 5190 PRINT"潄 Ctrl+f7...Insert line "; 5200 PRINT"潄 Ctrl+f8...Delete line "; 5210 PRINT"潄 Ctrl+f9...Pixel editor "; 5220 PRINT"潄 "; 5230 PRINT"潄 ...Save, Return to View Mode "; 5240 PRINT"潄 "; 5250 Q%=GET 5260 ENDPROC 5270 : 5280 DEFPROCoscli 5290 CLS:PRINT"*";:INPUT""L$:OSCLIL$ 5300 PRINT'"Hit Any Key":Q%=GET:RUN 5310 ENDPROC 5320 : 5330 DEFPROCinit 5340 t%=0 5350 B%=&900:W%=&9F0 5360 P%=1:L%=0:T%=0:M%=0 5370 REPEAT 5380 M%=M%+1 5390 $W%="Page"+STR$(M%) 5400 X%=W%MOD256 5410 Y%=W%DIV256 5420 A%=&C0:F%=(USR&FFCE)AND&FF 5430 A%=0:Y%=0:CALL&FFCE 5440 UNTILF%=0 5450 M%=M%-1 5460 ENDPROC 5470 : 5480 DEFPROCfinish 5490 A%=0:Y%=0:CALL&FFCE 5500 *FX4,0 5510 *FX229,0 5520 VDU23;10,&70;0;0;0 5530 END 5540 ENDPROC