1 REM Ins{nd av Bertil Sj|stedt <4735> 1986-07-04 10.24.59 100 ! 110 ! 120 ! 130 ! 140 ! 150 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 160 ! $$$ $$$ 170 ! $$$ PROJEKTARBETE I DATA UNDER HT-85 INL[MNAT 85-12-19 $$$ 180 ! $$$ $$$ 190 ! $$$ PROGRAMNAMN: ART806 $$$ 200 ! $$$ $$$ 210 ! $$$ PROGRAMTYP : RITPROGRAM $$$ 220 ! $$$ $$$ 230 ! $$$ GJORT AV : Erik Sj|stedt T2B $$$ 240 ! $$$ Johan Eriksson T2B $$$ 250 ! $$$ Tommy Soporek T2B $$$ 260 ! $$$ FILBORNASKOLAN HELSINGBORG $$$ 270 ! $$$ $$$ 280 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ 290 ! 300 ! 310 ! 320 ! 330 ! 340 ! 350 ! 360 ! 370 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ART806 380 ! 390 ! 391 EXTEND : FLOAT 400 Slask%=FNInitiera% 410 Slask%=FNMeny% 420 Slask%=FNAvslutning% 430 ! 440 ! 450 ! 460 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ AVSLUTNING 470 ! 480 ! 490 DEF FNAvslutning% 500 OUT 34%,8% : ! SL[CKER CAPS LOCK 510 PRINT CHR$(12%) 520 Slask%=FNNamnutskrift% 530 CHAIN 'NUL:' 540 RETURN 0% 550 FNEND 560 ! 570 ! 580 ! 590 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ MENY 600 ! 610 ! 620 DEF FNMeny% 630 WHILE Avsluta%<>1% 640 Slask%=FNMenysk{rmst|mmning% 650 Slask%=FNMenyutskrift% 660 Slask%=FNMenyval% 670 Slask%=FNMenyhopp% 680 WEND 690 RETURN 0% 700 FNEND 710 ! 720 ! 730 ! 740 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ MENYUTSKRIFT 750 ! 760 ! 770 DEF FNMenyutskrift% 780 PRINT CHR$(12%) 790 Slask%=FNNamnutskrift% 800 PRINT CUR(2%,28%) DBLE ULN 'ART806 ' NULN 810 PRINT CUR(8%,28%) '1. INSTRUKTIONER' 820 PRINT CUR(10%,28%) '2. RITA' 830 PRINT CUR(12%,28%) '3. AVSLUTA' 840 RETURN 0% 850 FNEND 860 ! 870 ! 880 ! 890 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ MENYVAL 900 ! 910 ! 920 DEF FNMenyval% 930 PRINT CUR(20%,10%) 'F|r menyval anv{nd:PF5 (upp), PF7 (ner), RETN (menyval klart)' 940 Tangent%=0% 950 Pekare%=8% 960 Pekare1%=8% 970 WHILE Tangent%<>13% 980 A$='' 990 IF SYS(5%) GET A$ 1000 Tangent%=ASCII(A$) 1010 Pekare1%=Pekare% 1020 Pekare%=Pekare%-2%*(Tangent%=198% AND Pekare%<12%)+2%*(Tangent%=196% AND Pekare%>8%) 1030 IF Pekare%<>Pekare1% PRINT CUR(Pekare1%,25%) ' ' 1040 PRINT CUR(Pekare%,25%) '->' 1050 WEND 1060 Pekare%=((Pekare%-8%)/2%)+1% 1070 RETURN Pekare% 1080 FNEND 1090 ! 1100 ! 1110 ! 1120 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ MENYHOPP 1130 ! 1140 ! 1150 DEF FNMenyhopp% 1160 IF Pekare%=1% Slask%=FNInstruktioner% 1170 IF Pekare%=2% Slask%=FNRita% 1180 IF Pekare%=3% Slask%=FNAvsluta% 1190 RETURN 0% 1200 FNEND 1210 ! 1220 ! 1230 ! 1240 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ MENYSK[RMS T\MMNING 1250 ! 1260 ! 1270 DEF FNMenysk{rmst|mmning% 1280 IF Uppl|sning%=1% THEN FGCTL 0% 1290 IF Uppl|sning%=2% THEN FGCTL BLK 1300 RETURN 0% 1310 FNEND 1320 ! 1330 ! 1340 ! 1350 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ INSTRUKTIONER 1360 ! 1370 ! 1380 DEF FNInstruktioner% 1390 PRINT CHR$(12%) 1400 Slask%=FNNamnutskrift% 1410 PRINT CUR(1%,10%) DBLE 'INSTRUKTIONER TILL ART806' 1420 PRINT : PRINT 1430 PRINT TAB(3%) 'Detta program {r gjort som ett projektarbete under h|sten 1985.' 1440 PRINT 1450 PRINT TAB(3%) 'Detta program {r ett ritprogram som man kan konstruera bilder med.' 1460 PRINT 1470 PRINT TAB(3%) 'Detta program har m|jlighet att spara bilder p} disk.' 1480 PRINT 1490 PRINT TAB(3%) 'Detta program har m|jlighet att skriva ut bilder p} printer (facit 4512).' 1500 PRINT CUR(22%,10%) 'TRYCK P] "RETN"'; 1510 Tangentavsluta$='' 1520 WHILE Tangentavsluta$<>CHR$(13%) 1530 GET Tangentavsluta$ 1540 WEND 1550 RETURN 0% 1560 FNEND 1570 ! 1580 ! 1590 ! 1600 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ RITA 1610 ! 1620 ! 1630 DEF FNRita% 1640 Slask%=FNKommandolistclear% 1650 Slask%=FNKommandolistning% 1660 Slask%=FNKommandolistv{nta% 1670 Slask%=FNMonitor% 1680 Slask%=FNSluttest% 1690 RETURN 0% 1700 FNEND 1710 ! 1720 ! 1730 ! 1740 ! 1750 ! 1760 ! 1770 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ MONITOR 1780 ! 1790 ! 1800 DEF FNMonitor% 1810 Slask%=FNSk{rmklar% 1820 Slask%=FNBorderutrit% 1830 Slask%=FNKordinatutg}ng% 1840 Slask%=FNStatusutskrift% 1850 Slask%=FNCursorutritning% 1860 Aktiv%=2% 1870 Slask%=FNCursorutritning% 1880 Aktiv%=1% 1890 RETURN 0% 1900 FNEND 1910 ! 1920 ! 1930 ! 1940 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ KORDINATUTG]NG 1950 ! 1960 ! 1970 DEF FNKordinatutg}ng% 1980 IF Uppl|sning%=1% THEN Slask%=FNLrkordinatutg}ng% 1990 IF Uppl|sning%=2% THEN Slask%=FNHrkordinatutg}ng% 2000 RETURN 0% 2010 FNEND 2020 ! 2030 ! 2040 ! 2050 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ LRKORDINATUTG]NG 2060 ! 2070 ! 2080 DEF FNLrkordinatutg}ng% 2090 Xpos1%=60% 2100 Xpos2%=180% 2110 Ypos1%=120% 2120 Ypos2%=120% 2130 Oldxpos1%=60% 2140 Oldxpos2%=180% 2150 Oldypos1%=120% 2160 Oldypos2%=120% 2170 RETURN 0% 2180 FNEND 2190 ! 2200 ! 2210 ! 2220 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HR KORDINTAUTG]NG 2230 ! 2240 ! 2250 DEF FNHrkordinatutg}ng% 2260 Xpos1%=120% 2270 Xpos2%=360% 2280 Ypos1%=120% 2290 Ypos2%=120% 2300 Oldxpos1%=120% 2310 Oldxpos2%=120% 2320 Oldypos1%=120% 2330 Oldypos2%=120% 2340 RETURN 0% 2350 FNEND 2360 ! 2370 ! 2380 ! 2390 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ AVSLUTA 2400 ! 2410 ! 2420 DEF FNAvsluta% 2430 Avsluta%=1% 2440 RETURN 0% 2450 FNEND 2460 ! 2470 ! 2480 ! 2490 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ SK[RM KLAR 2500 ! 2510 ! 2520 DEF FNSk{rmklar% 2530 IF Uppl|sning%=1% THEN Slask%=FNLrsk{rm% 2540 IF Uppl|sning%=2% THEN Slask%=FNHrsk{rm% 2550 RETURN 0% 2560 FNEND 2570 ! 2580 ! 2590 ! 2600 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ LR SK[RM 2610 ! 2620 ! 2630 DEF FNLrsk{rm% 2640 PRINT CHR$(12%) 2650 Slask%=FNNamnutskrift% 2660 FGCTL 1% 2670 FGPOINT 0%,0%,0% 2680 FGFILL 239%,20% 2690 RETURN 0% 2700 FNEND 2710 ! 2720 ! 2730 ! 2740 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HR SK[RM 2750 ! 2760 ! 2770 DEF FNHrsk{rm% 2780 PRINT CHR$(12%) 2790 Slask%=FNNamnutskrift% 2800 FGCTL BLK+GWHT 2810 FGPOINT 0%,0%,0% 2820 FGFILL 511%,20% 2830 RETURN 0% 2840 FNEND 2850 ! 2860 ! 2870 ! 2880 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ BORDER UTRIT 2890 ! 2900 ! 2910 DEF FNBorderutrit% 2920 IF Border%=1% THEN Slask%=FNBorder% 2930 IF Border%=0% THEN Slask%=FNEjborder% 2940 RETURN 0% 2950 FNEND 2960 ! 2970 ! 2980 ! 2990 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ BORDER 3000 ! 3010 ! 3020 DEF FNBorder% 3030 IF Uppl|sning%=1% THEN Slask%=FNLrborder% 3040 IF Uppl|sning%=2% THEN Slask%=FNHrborder% 3050 RETURN 0% 3060 FNEND 3070 ! 3080 ! 3090 ! 3100 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ LRBORDER 3110 ! 3120 ! 3130 DEF FNLrborder% 3140 FGPOINT 0%,21%,1% 3150 FGLINE 0%,239% 3160 FGLINE 239%,239% 3170 FGLINE 239%,21% 3180 FGLINE 0%,21% 3190 RETURN 0% 3200 FNEND 3210 ! 3220 ! 3230 ! 3240 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HR BORDER 3250 ! 3260 ! 3270 DEF FNHrborder% 3280 FGPOINT 0%,21%,1% 3290 FGLINE 0%,239% 3300 FGLINE 511%,239% 3310 FGLINE 511%,21% 3320 FGLINE 0%,21% 3330 RETURN 0% 3340 FNEND 3350 ! 3360 ! 3370 ! 3380 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ EJ BORDER 3390 ! 3400 ! 3410 DEF FNEjborder% 3420 IF Uppl|sning%=1% THEN Slask%=FNLrejborder% 3430 IF Uppl|sning%=2% THEN Slask%=FNHrejborder% 3440 RETURN 0% 3450 FNEND 3460 ! 3470 ! 3480 ! 3490 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ LR EJ BORDER 3500 ! 3510 ! 3520 DEF FNLrejborder% 3530 FGPOINT 0%,21%,0% 3540 FGLINE 0%,239% 3550 FGLINE 239%,239% 3560 FGLINE 239%,21% 3570 FGLINE 0%,21% 3580 RETURN 0% 3590 FNEND 3600 ! 3610 ! 3620 ! 3630 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HR EJ BORDER 3640 ! 3650 ! 3660 DEF FNHrejborder% 3670 FGPOINT 0%,21%,0% 3680 FGLINE 0%,239% 3690 FGLINE 511%,239% 3700 FGLINE 511%,21% 3710 FGLINE 0%,21% 3720 RETURN 0% 3730 FNEND 3740 ! 3750 ! 3760 ! 3770 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ STATUSUTSKRIFT 3780 ! 3790 ! 3800 DEF FNStatusutskrift% 3810 Slask%=FNStatusborder% 3820 PRINT CUR(22%,1%) SPACE$(78%) 3830 PRINT CUR(22%,1%) 'POS X:' Xpos1% CUR(22%,13%) ' Y:' Ypos1%;CUR(22%,23%) "X':" Xpos2%;CUR(22%,31%) "Y':" Ypos2% 3840 PRINT CUR(22%,42%) 'UPPL\S: '; 3850 IF Uppl|sning%=1% THEN PRINT '240*240' ELSE PRINT '512*240' 3860 PRINT CUR(22%,65%) 'RITMODE: '; 3870 IF Ritmode%=1% THEN PRINT 'RITA'; 3880 IF Ritmode%=2% THEN PRINT 'SUDDA'; 3890 IF Ritmode%=3% THEN PRINT '\VER'; 3900 RETURN 0% 3910 FNEND 3920 ! 3930 ! 3940 ! 3950 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ STATUSBORDER 3960 ! 3970 ! 3980 DEF FNStatusborder% 3990 IF Uppl|sning%=1% THEN Slask%=FNLrstatusborder% 4000 IF Uppl|sning%=2% THEN Slask%=FNHrstatusborder% 4010 RETURN 0% 4020 FNEND 4030 ! 4040 ! 4050 ! 4060 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ LR STATUSBORDER 4070 ! 4080 ! 4090 DEF FNLrstatusborder% 4100 FGPOINT 0%,0%,1% 4110 FGLINE 0%,20% 4120 FGLINE 239%,20% 4130 FGLINE 239%,0% 4140 FGLINE 0%,0% 4150 RETURN 0% 4160 FNEND 4170 ! 4180 ! 4190 ! 4200 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HR STATUSBORDER 4210 ! 4220 ! 4230 DEF FNHrstatusborder% 4240 FGPOINT 0%,0%,1% 4250 FGLINE 0%,20% 4260 FGLINE 511%,20% 4270 FGLINE 511%,0% 4280 FGLINE 0%,0% 4290 RETURN 0% 4300 FNEND 4310 ! 4320 ! 4330 ! 4340 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSOR UTRITNING 4350 ! 4360 ! 4370 DEF FNCursorutritning% 4380 IF Ritmode%=1% AND Aktiv%=1% THEN Slask%=FNCursorrita1% 4390 IF Ritmode%=1% AND Aktiv%=2% THEN Slask%=FNCursorrita2% 4400 IF Ritmode%=2% AND Aktiv%=1% THEN Slask%=FNCursorsudda1% 4410 IF Ritmode%=2% AND Aktiv%=2% THEN Slask%=FNCursorsudda2% 4420 IF Ritmode%=3% AND Aktiv%=1% THEN Slask%=FNCursorover1% 4430 IF Ritmode%=3% AND Aktiv%=2% THEN Slask%=FNCursorover2% 4440 RETURN 0% 4450 FNEND 4460 ! 4470 ! 4480 ! 4490 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSORRITA 1 4500 ! 4510 ! 4520 DEF FNCursorrita1% 4530 FGPOINT Oldxpos1%,Oldypos1%,1% 4540 Before1%=FGPOINT(Xpos1%,Ypos1%) 4550 FGPOINT Xpos1%,Ypos1% 4560 Oldxpos1%=Xpos1% 4570 Oldypos1%=Ypos1% 4580 RETURN 0% 4590 FNEND 4600 ! 4610 ! 4620 ! 4630 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSORRITA 2 4640 ! 4650 ! 4660 DEF FNCursorrita2% 4670 FGPOINT Oldxpos2%,Oldypos2%,1% 4680 Before2%=FGPOINT(Xpos2%,Ypos2%) 4690 FGPOINT Xpos2%,Ypos2% 4700 Oldxpos2%=Xpos2% 4710 Oldypos2%=Ypos2% 4720 RETURN 0% 4730 FNEND 4740 ! 4750 ! 4760 ! 4770 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSOROVER 1 4780 ! 4790 ! 4800 DEF FNCursorover1% 4810 IF Before1%=1% THEN FGPOINT Oldxpos1%,Oldypos1%,1% 4820 IF Before1%=0% THEN FGPOINT Oldxpos1%,Oldypos1%,0% 4830 Before1%=FGPOINT(Xpos1%,Ypos1%) 4840 FGPOINT Xpos1%,Ypos1%,1% 4850 Oldxpos1%=Xpos1% 4860 Oldypos1%=Ypos1% 4870 RETURN 0% 4880 FNEND 4890 ! 4900 ! 4910 ! 4920 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSOROVER 2 4930 ! 4940 ! 4950 DEF FNCursorover2% 4960 IF Before2%=1% THEN FGPOINT Oldxpos2%,Oldypos2%,1% 4970 IF Before2%=0% THEN FGPOINT Oldxpos2%,Oldypos2%,0% 4980 Before2%=FGPOINT(Xpos2%,Ypos2%) 4990 FGPOINT Xpos2%,Ypos2%,1% 5000 Oldxpos2%=Xpos2% 5010 Oldypos2%=Ypos2% 5020 RETURN 0% 5030 FNEND 5040 ! 5050 ! 5060 ! 5070 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSORSUDDA 1 5080 ! 5090 ! 5100 DEF FNCursorsudda1% 5110 FGPOINT Oldxpos1%,Oldypos1%,0% 5120 Before1%=FGPOINT(Xpos1%,Ypos1%) 5130 FGPOINT Xpos1%,Ypos1%,1% 5140 Oldxpos1%=Xpos1% 5150 Oldypos1%=Ypos1% 5160 RETURN 0% 5170 FNEND 5180 ! 5190 ! 5200 ! 5210 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSORSUDDA 2 5220 ! 5230 ! 5240 DEF FNCursorsudda2% 5250 FGPOINT Oldxpos2%,Oldypos2%,0% 5260 Before2%=FGPOINT(Xpos2%,Ypos2%) 5270 FGPOINT Xpos2%,Ypos2%,1% 5280 Oldxpos2%=Xpos2% 5290 Oldypos2%=Ypos2% 5300 RETURN 0% 5310 FNEND 5320 ! 5330 ! 5340 ! 5350 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ SLUTTEST 5360 ! 5370 ! 5380 DEF FNSluttest% 5390 WHILE Tangent%<>Slut% 5400 IF SYS(5%) GET Tangent$ 5410 Tangent%=ASCII(Tangent$) 5420 Slask%=FNCursormovetest% 5430 Oldtangent%=Tangent% 5440 Tangent$='' 5450 IF R{knare%=10% THEN Slask%=FNFlash% 5460 R{knare%=R{knare%+1% 5470 WEND 5480 RETURN 0% 5490 FNEND 5500 ! 5510 ! 5520 ! 5530 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSORMOVETEST 5540 ! 5550 ! 5560 DEF FNCursormovetest% 5570 IF (Tangent%>=49% AND Tangent%<=57% AND Tangent%<>53%) THEN Slask%=FNCursormove% ELSE Slask%=FNKommandhopp% 5580 RETURN 0% 5590 FNEND 5600 ! 5610 ! 5620 ! 5630 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ KOMMANDHOPP 5640 ! 5650 ! 5660 DEF FNKommandhopp% 5670 Giltig%=0% 5680 IF Tangent%=46% OR Tangent%=45% OR Tangent%=60% OR Tangent%=39% THEN Slask%=FNFastcurmove% 5690 IF Tangent%=62% OR Tangent%=42% OR Tangent%=95% OR Tangent%=58% THEN Slask%=FNHoppcurmove% 5700 IF Tangent%=82% THEN Slask%=FNRitset% 5710 IF Tangent%=83% THEN Slask%=FNSuddset% 5720 IF Tangent%=92% THEN Slask%=FN\verset% 5730 IF Tangent%=85% THEN Slask%=FNUppl|snings{ndring% 5740 IF Tangent%=66% THEN Slask%=FNBorder{ndring% 5750 IF Tangent%=84% THEN Slask%=FNT|msk{rm% 5760 IF Tangent%=65% THEN Slask%=FNAktiv{ndring% 5770 IF Tangent%=76% THEN Slask%=FNDraw% 5780 IF Tangent%=71% THEN Slask%=FNFill% 5790 IF Tangent%=77% THEN Slask%=FNPaint% 5800 IF Tangent%=70% THEN Slask%=FNFrame% 5810 IF Tangent%=75% THEN Slask%=FNKommandolist% 5820 IF Tangent%=80% THEN Slask%=FNPrinter% 5830 IF Tangent%=192% THEN Slask%=FNSave% 5840 IF Tangent%=193% THEN Slask%=FNLoad% 5850 RETURN 0% 5860 FNEND 5870 ! 5880 ! 5890 ! 5900 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSORMOVE 5910 ! 5920 ! 5930 DEF FNCursormove% 5940 IF Tangent%=49% THEN Xtest%=-1% : Ytest%=-1% : Slask%=FNCursortest% 5950 IF Tangent%=50% THEN Xtest%=0% : Ytest%=-1% : Slask%=FNCursortest% 5960 IF Tangent%=51% THEN Xtest%=1% : Ytest%=-1% : Slask%=FNCursortest% 5970 IF Tangent%=52% THEN Xtest%=-1% : Ytest%=0% : Slask%=FNCursortest% 5980 IF Tangent%=54% THEN Xtest%=1% : Ytest%=0% : Slask%=FNCursortest% 5990 IF Tangent%=55% THEN Xtest%=-1% : Ytest%=1% : Slask%=FNCursortest% 6000 IF Tangent%=56% THEN Xtest%=0% : Ytest%=1% : Slask%=FNCursortest% 6010 IF Tangent%=57% THEN Xtest%=1% : Ytest%=1% : Slask%=FNCursortest% 6020 IF Ok% THEN Slask%=FNCursor{ndring% 6030 Slask%=FNCursorutritning% 6040 Slask%=FNCurposutritning% 6050 RETURN 0% 6060 FNEND 6070 ! 6080 ! 6090 ! 6100 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURPOS UTRITNING 6110 ! 6120 ! 6130 DEF FNCurposutritning% 6140 IF Aktiv%=1% THEN PRINT CUR(22%,7%) Xpos1%;CUR(22%,16%) Ypos1% ELSE PRINT CUR(22%,26%) Xpos2%;CUR(22%,34%) Ypos2% 6150 RETURN 0% 6160 FNEND 6170 ! 6180 ! 6190 ! 6200 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSORTEST 6210 ! 6220 ! 6230 DEF FNCursortest% 6240 Ok%=0% 6250 IF Uppl|sning%=1% Slask%=FNLrcursortest% 6260 IF Uppl|sning%=2% Slask%=FNHrcursortest% 6270 RETURN 0% 6280 FNEND 6290 ! 6300 ! 6310 ! 6320 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ LR CURSORTEST 6330 ! 6340 ! 6350 DEF FNLrcursortest% 6360 IF Aktiv%=1% AND Xpos1%+Xtest%>=1% AND Ypos1%+Ytest%>=22% AND Xpos1%+Xtest%<=238% AND Ypos1%+Ytest%<=238% THEN Ok%=1% 6370 IF Aktiv%=2% AND Xpos2%+Xtest%>=1% AND Ypos2%+Ytest%>=22% AND Xpos2%+Xtest%<=238% AND Ypos2%+Ytest%<=238% THEN Ok%=1% 6380 RETURN 0% 6390 FNEND 6400 ! 6410 ! 6420 ! 6430 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HR CURSORTEST 6440 ! 6450 ! 6460 DEF FNHrcursortest% 6470 IF Aktiv%=1% AND Xpos1%+Xtest%>=1% AND Ypos1%+Ytest%>=22% AND Xpos1%+Xtest%<=510% AND Ypos1%+Ytest%<=238% THEN Ok%=1% 6480 IF Aktiv%=2% AND Xpos2%+Xtest%>=1% AND Ypos2%+Ytest%>=22% AND Xpos2%+Xtest%<=510% AND Ypos2%+Ytest%<=238% THEN Ok%=1% 6490 RETURN 0% 6500 FNEND 6510 ! 6520 ! 6530 ! 6540 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ RITSET 6550 ! 6560 ! 6570 DEF FNRitset% 6580 Ritmode%=1% 6590 Slask%=FNStatusutskrift% 6600 RETURN 0% 6610 FNEND 6620 ! 6630 ! 6640 ! 6650 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ SUDDSET 6660 ! 6670 ! 6680 DEF FNSuddset% 6690 Ritmode%=2% 6700 Slask%=FNStatusutskrift% 6710 RETURN 0% 6720 FNEND 6730 ! 6740 ! 6750 ! 6760 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ \VERSET 6770 ! 6780 ! 6790 DEF FN\verset% 6800 Ritmode%=3% 6810 Slask%=FNStatusutskrift% 6820 RETURN 0% 6830 FNEND 6840 ! 6850 ! 6860 ! 6870 ! 6880 ! 6890 ! 6900 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ UPPL\SNINGS[NDRING 6910 ! 6920 ! 6930 DEF FNUppl|snings{ndring% 6940 Slask%=FN[rdus{ker% 6950 WHILE Forts{tta$='F' 6960 Slask%=FNUppl|s{ndring% 6970 Slask%=FNMonitor% 6980 IF Uppl|sning%=1% THEN Slask%=FNT|mlrsk{rm% ELSE Slask%=FNT|mhrsk{rm% 6990 Forts{tta$='' 7000 WEND 7010 IF Forts{tta$=']' Slask%=FNStatusutskrift% 7020 RETURN 0% 7030 FNEND 7040 ! 7050 ! 7060 ! 7070 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ UPPL\S[NDRING 7080 ! 7090 ! 7100 DEF FNUppl|s{ndring% 7110 IF Uppl|sning%=1% THEN Uppl|sning%=2% ELSE Uppl|sning%=1% 7120 RETURN 0% 7130 FNEND 7140 ! 7150 ! 7160 ! 7170 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ BORDER[NDRING 7180 ! 7190 ! 7200 DEF FNBorder{ndring% 7210 IF Border%=0% THEN Border%=1% ELSE Border%=0% 7220 Slask%=FNBorderutrit% 7230 RETURN 0% 7240 FNEND 7250 ! 7260 ! 7270 ! 7280 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ T\M SK[RM 7290 ! 7300 ! 7310 DEF FNT|msk{rm% 7320 Slask%=FN[rdus{ker% 7330 WHILE Forts{tta$='F' 7340 IF Uppl|sning%=1% THEN Slask%=FNT|mlrsk{rm% ELSE Slask%=FNT|mhrsk{rm% 7350 Forts{tta$='' 7360 WEND 7370 Slask%=FNStatusutskrift% 7380 RETURN 0% 7390 FNEND 7400 ! 7410 ! 7420 ! 7430 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ T\M LR SK[RM 7440 ! 7450 ! 7460 DEF FNT|mlrsk{rm% 7470 FGPOINT 1%,22%,0% 7480 FGFILL 238%,238% 7490 RETURN 0% 7500 FNEND 7510 ! 7520 ! 7530 ! 7540 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ T\M HR SK[RM 7550 ! 7560 ! 7570 DEF FNT|mhrsk{rm% 7580 FGPOINT 1%,22%,0% 7590 FGFILL 510%,238% 7600 RETURN 0% 7610 FNEND 7620 ! 7630 ! 7640 ! 7650 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ AKTIV [NDRING 7660 ! 7670 ! 7680 DEF FNAktiv{ndring% 7690 IF Aktiv%=1% THEN FGPOINT Xpos1%,Ypos1%,1% 7700 IF Aktiv%=2% THEN FGPOINT Xpos2%,Ypos2%,1% 7710 IF Aktiv%=1% THEN Aktiv%=2% ELSE Aktiv%=1% 7720 RETURN 0% 7730 FNEND 7740 ! 7750 ! 7760 ! 7770 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ DRAW 7780 ! 7790 ! 7800 DEF FNDraw% 7810 IF Ritmode%=1% THEN Slask%=FNDrawrita% 7820 IF Ritmode%=2% THEN Slask%=FNDrawsudda% 7830 ! IF Ritmode=3 THEN Slask=FNDrawover 7840 RETURN 0% 7850 FNEND 7860 ! 7870 ! 7880 ! 7890 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ DRAW RITA 7900 ! 7910 ! 7920 DEF FNDrawrita% 7930 FGPOINT Xpos1%,Ypos1%,1% 7940 FGLINE Xpos2%,Ypos2%,1% 7950 RETURN 0% 7960 FNEND 7970 ! 7980 ! 7990 ! 8000 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ DRAW SUDDA 8010 ! 8020 ! 8030 DEF FNDrawsudda% 8040 FGPOINT Xpos1%,Ypos1%,0% 8050 FGLINE Xpos2%,Ypos2%,0% 8060 RETURN 0% 8070 FNEND 8080 ! 8090 ! 8100 ! 8110 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FLASH 8120 ! 8130 ! 8140 DEF FNFlash% 8150 R{knare%=0% 8160 IF T{nd%=1% AND Aktiv%=1% THEN FGPOINT Xpos1%,Ypos1%,1% 8170 IF T{nd%=1% AND Aktiv%=2% THEN FGPOINT Xpos2%,Ypos2%,1% 8180 IF T{nd%=0% AND Aktiv%=1% THEN FGPOINT Xpos1%,Ypos1%,0% 8190 IF T{nd%=0% AND Aktiv%=2% THEN FGPOINT Xpos2%,Ypos2%,0% 8200 IF T{nd%=1% THEN T{nd%=0% ELSE T{nd%=1% 8210 RETURN 0% 8220 FNEND 8230 ! 8240 ! 8250 ! 8260 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FILL 8270 ! 8280 ! 8290 DEF FNFill% 8300 IF Ritmode%=1% THEN Slask%=FNFilla% 8310 IF Ritmode%=2% THEN Slask%=FNEjfilla% 8320 RETURN 0% 8330 FNEND 8340 ! 8350 ! 8360 ! 8370 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FILLA 8380 ! 8390 ! 8400 DEF FNFilla% 8410 IF Aktiv%=1% THEN FGFILL Xpos2%,Ypos2%,1% 8420 IF Aktiv%=2% THEN FGFILL Xpos1%,Ypos1%,1% 8430 RETURN 0% 8440 FNEND 8450 ! 8460 ! 8470 ! 8480 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ EJFILLA 8490 ! 8500 ! 8510 DEF FNEjfilla% 8520 IF Aktiv%=1% THEN FGFILL Xpos2%,Ypos2%,0% ELSE FGFILL Xpos1%,Ypos1%,0% 8530 RETURN 0% 8540 FNEND 8550 ! 8560 ! 8570 ! 8580 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ PAINT 8590 ! 8600 ! 8610 DEF FNPaint% 8620 IF Ritmode%=1% THEN Slask%=FNPainta% 8630 IF Ritmode%=2% THEN Slask%=FNEjpainta% 8640 RETURN 0% 8650 FNEND 8660 ! 8670 ! 8680 ! 8690 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ PAINTA 8700 ! 8710 ! 8720 DEF FNPainta% 8730 IF Aktiv%=1% THEN FGPOINT Xpos1%,Ypos1%,0% ELSE FGPOINT Xpos2%,Ypos2%,0% 8740 IF Aktiv%=1% THEN FGPAINT Xpos1%,Ypos1%,1% ELSE FGPAINT Xpos2%,Ypos2%,1% 8750 RETURN 0% 8760 FNEND 8770 ! 8780 ! 8790 ! 8800 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ EJPAINTA 8810 ! 8820 ! 8830 DEF FNEjpainta% 8840 IF Aktiv%=1% THEN FGPAINT Xpos1%,Ypos1%,0% ELSE FGPAINT Xpos2%,Ypos2%,0% 8850 Slask%=FNBorderutrit% 8860 Slask%=FNStatusborder% 8870 RETURN 0% 8880 FNEND 8890 ! 8900 ! 8910 ! 8920 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FAST CURMOVE 8930 ! 8940 ! 8950 DEF FNFastcurmove% 8960 IF Tangent%=60% THEN Xtest%=0% : Ytest%=10% : Slask%=FNCursortest% 8970 IF Tangent%=39% THEN Xtest%=0% : Ytest%=-10% : Slask%=FNCursortest% 8980 IF Tangent%=46% THEN Xtest%=-10% : Ytest%=0% : Slask%=FNCursortest% 8990 IF Tangent%=45% THEN Xtest%=10% : Ytest%=0% : Slask%=FNCursortest% 9000 IF Ok% THEN Slask%=FNFastcursor{ndring% 9010 Slask%=FNCursorutritning% 9020 Slask%=FNCurposutritning% 9030 RETURN 0% 9040 FNEND 9050 ! 9060 ! 9070 ! 9080 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CURSOR[NDRING 9090 ! 9100 ! 9110 DEF FNCursor{ndring% 9120 IF Aktiv%=1% THEN Xpos1%=Xpos1%+Xtest% : Ypos1%=Ypos1%+Ytest% 9130 IF Aktiv%=2% THEN Xpos2%=Xpos2%+Xtest% : Ypos2%=Ypos2%+Ytest% 9140 Ok%=0% 9150 RETURN 0% 9160 FNEND 9170 ! 9180 ! 9190 ! 9200 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FAST CURSOR[NDRING 9210 ! 9220 ! 9230 DEF FNFastcursor{ndring% 9240 IF Ritmode%=1% THEN Slask%=FNFastcurrita% 9250 IF Ritmode%=2% THEN Slask%=FNFastcursudda% 9260 IF Ritmode%=3% THEN Slask%=FNFastcurover% 9270 RETURN 0% 9280 FNEND 9290 ! 9300 ! 9310 ! 9320 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FAST CURRITA 9330 ! 9340 ! 9350 DEF FNFastcurrita% 9360 IF Aktiv%=1% THEN FGLINE Xpos1%+Xtest%,Ypos1%+Ytest%,1% : Xpos1%=Xpos1%+Xtest% : Ypos1%=Ypos1%+Ytest% 9370 IF Aktiv%=2% THEN FGLINE Xpos2%+Xtest%,Ypos2%+Ytest%,1% : Xpos2%=Xpos2%+Xtest% : Ypos2%=Ypos2%+Ytest% 9380 RETURN 0% 9390 FNEND 9400 ! 9410 ! 9420 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FAST CURSUDDA 9430 ! 9440 ! 9450 DEF FNFastcursudda% 9460 IF Aktiv%=1% THEN FGLINE Xpos1%+Xtest%,Ypos1%+Ytest%,0% : Xpos1%=Xpos1%+Xtest% : Ypos1%=Ypos1%+Ytest% 9470 IF Aktiv%=2% THEN FGLINE Xpos2%+Xtest%,Ypos2%+Ytest%,0% : Xpos2%=Xpos2%+Xtest% : Ypos2%=Ypos2%+Ytest% 9480 RETURN 0% 9490 FNEND 9500 ! 9510 ! 9520 ! 9530 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FAST CUROVER 9540 ! 9550 ! 9560 DEF FNFastcurover% 9570 IF Aktiv%=1% THEN Xpos1%=Xpos1%+Xtest% : Ypos1%=Ypos1%+Ytest% 9580 IF Aktiv%=2% THEN Xpos2%=Xpos2%+Xtest% : Ypos2%=Ypos2%+Ytest% 9590 RETURN 0% 9600 FNEND 9610 ! 9620 ! 9630 ! 9640 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FRAME 9650 ! 9660 ! 9670 DEF FNFrame% 9680 IF Ritmode%=1% THEN FGPOINT Xpos1%,Ypos1%,1% 9690 IF Ritmode%=2% THEN FGPOINT Xpos1%,Ypos1%,0% 9700 IF Ritmode%<>3% THEN Slask%=FNFramerita% 9710 RETURN 0% 9720 FNEND 9730 ! 9740 ! 9750 ! 9760 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FRAME RITA 9770 ! 9780 ! 9790 DEF FNFramerita% 9800 FGLINE Xpos2%,Ypos1% 9810 FGLINE Xpos2%,Ypos2% 9820 FGLINE Xpos1%,Ypos2% 9830 FGLINE Xpos1%,Ypos1% 9840 RETURN 0% 9850 FNEND 9860 ! 9870 ! 9880 ! 9890 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ KOMMANDO LIST 9900 ! 9910 ! 9920 DEF FNKommandolist% 9930 Slask%=FNKommandolistclear% 9940 Slask%=FNKommandolistning% 9950 Slask%=FNKommandolistv{nta% 9960 Slask%=FNKommandolistpicback% 9970 Slask%=FNBorderutrit% 9980 Slask%=FNStatusutskrift% 9990 RETURN 0% 10000 FNEND 10010 ! 10020 ! 10030 ! 10040 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ KOMMANDO LIST CLEAR 10050 ! 10060 ! 10070 DEF FNKommandolistclear% 10080 IF Uppl|sning%=1% THEN FGCTL 0% ELSE FGCTL BLK 10090 PRINT CHR$(12%) 10100 Slask%=FNNamnutskrift% 10110 RETURN 0% 10120 FNEND 10130 ! 10140 ! 10150 ! 10160 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ KOMMANDO LISTNING 10170 ! 10180 ! 10190 DEF FNKommandolistning% 10200 PRINT CUR(1%,20%) 'ANV[NDBARA TANGENTER' 10210 PRINT CUR(3%,5%) 'K - LISTAR DESSA KOMMANDON' 10220 PRINT CUR(4%,5%) 'R - RITA' CUR(5%,5%) 'S - SUDDA' CUR(6%,5%) '\ - \VER' 10230 PRINT CUR(7%,5%) 'U - [NDRAR UPPL\SNING ' 10240 PRINT CUR(8%,5%) 'B - BORDER P]/AV' 10250 PRINT CUR(9%,5%) 'T - T\MMER SK[RMEN' 10260 PRINT CUR(10%,5%) 'P - PRINTER UTSKRIFT' 10270 PRINT CUR(11%,5%) 'A - [NDRAR AKTIV CURSOR' 10280 PRINT CUR(13%,5%) 'L - LINJE' 10290 PRINT CUR(14%,3%) 'PF1 - SPARA BILDEN' 10300 PRINT CUR(15%,3%) 'PF2 - LADDA BILDEN' 10310 PRINT CUR(16%,5%) 'G - FYLLD REKTANGEL' 10320 PRINT CUR(17%,5%) 'F - TOM REKTANGEL' 10330 PRINT CUR(19%,5%) 'M - M]LAR (FYLLER EN SLUTEN AREA)' 10340 PRINT CUR(3%,40%) 'DESSA TANGENTER ANV[NDS VID STYRNING' 10350 PRINT CUR(4%,40%) 'AV AKTIV CURSOR I RESPEKTIVE V[DERSTR[CK' 10360 PRINT CUR(6%,40%) '7 8 9' 10370 PRINT CUR(8%,40%) '4 6 1-POSITIONS F\RFLYTTNING' 10380 PRINT CUR(10%,40%) '1 2 3' 10390 PRINT CUR(13%,40%) ' <' 10400 PRINT CUR(14%,40%) ' . - 10-POSITIONS F\RFLYTTNING' 10410 PRINT CUR(16%,40%) " '" 10420 PRINT CUR(18%,40%) ' >' 10430 PRINT CUR(19%,40%) ' : _ HOPP TILL N[RMASTE PUNKT' 10440 PRINT CUR(21%,40%) ' *' 10450 RETURN 0% 10460 FNEND 10470 ! 10480 ! 10490 ! 10500 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ KOMMANDO LIST V[NTA 10510 ! 10520 ! 10530 DEF FNKommandolistv{nta% 10540 PRINT CUR(22%,10%) 'TRYCK P] "RETN" !' 10550 A$='' 10560 WHILE ASCII(A$)<>13% 10570 IF SYS(5%) GET A$ 10580 WEND 10590 RETURN 0% 10600 FNEND 10610 ! 10620 ! 10630 ! 10640 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ KOMMANDO LIST PIC BACK 10650 ! 10660 ! 10670 DEF FNKommandolistpicback% 10680 PRINT CHR$(12%) 10690 Slask%=FNNamnutskrift% 10700 IF Uppl|sning%=1% THEN FGCTL 1% ELSE FGCTL BLK+GWHT 10710 RETURN 0% 10720 FNEND 10730 ! 10740 ! 10750 ! 10760 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP CURMOVE 10770 ! 10780 ! 10790 DEF FNHoppcurmove% 10800 IF Tangent%=62% THEN Slask%=FNHoppupp% 10810 IF Tangent%=42% THEN Slask%=FNHoppner% 10820 IF Tangent%=95% THEN Slask%=FNHopph|ger% 10830 IF Tangent%=58% THEN Slask%=FNHoppv{nster% 10840 Slask%=FNCursorutritning% 10850 Slask%=FNCurposutritning% 10860 RETURN 0% 10870 FNEND 10880 ! 10890 ! 10900 ! 10910 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP UPP 10920 ! 10930 ! 10940 DEF FNHoppupp% 10950 IF Aktiv%=1% THEN Slask%=FNHoppupp1% 10960 IF Aktiv%=2% THEN Slask%=FNHoppupp2% 10970 RETURN 0% 10980 FNEND 10990 ! 11000 ! 11010 ! 11020 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP UPP 1 11030 ! 11040 ! 11050 DEF FNHoppupp1% 11060 Hoppupp1%=Ypos1%+1% 11070 WHILE FGPOINT(Xpos1%,Hoppupp1%)=0% AND Hoppupp1%<239% 11080 Hoppupp1%=Hoppupp1%+1% 11090 WEND 11100 Ypos1%=Hoppupp1%-1% 11110 RETURN 0% 11120 FNEND 11130 ! 11140 ! 11150 ! 11160 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP UPP 2 11170 ! 11180 ! 11190 DEF FNHoppupp2% 11200 Hoppupp2%=Ypos2%+1% 11210 WHILE FGPOINT(Xpos2%,Hoppupp2%)=0% AND Hoppupp2%<239% 11220 Hoppupp2%=Hoppupp2%+1% 11230 WEND 11240 Ypos2%=Hoppupp2%-1% 11250 RETURN 0% 11260 FNEND 11270 ! 11280 ! 11290 ! 11300 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP NER 11310 ! 11320 ! 11330 DEF FNHoppner% 11340 IF Aktiv%=1% THEN Slask%=FNHoppner1% 11350 IF Aktiv%=2% THEN Slask%=FNHoppner2% 11360 RETURN 0% 11370 FNEND 11380 ! 11390 ! 11400 ! 11410 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP NER 1 11420 ! 11430 ! 11440 DEF FNHoppner1% 11450 Hoppner1%=Ypos1%-1% 11460 WHILE FGPOINT(Xpos1%,Hoppner1%)=0% AND Hoppner1%>19% 11470 Hoppner1%=Hoppner1%-1% 11480 WEND 11490 Ypos1%=Hoppner1%+1% 11500 RETURN 0% 11510 FNEND 11520 ! 11530 ! 11540 ! 11550 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP NER 2 11560 ! 11570 ! 11580 DEF FNHoppner2% 11590 Hoppner2%=Ypos2%-1% 11600 WHILE FGPOINT(Xpos2%,Hoppner2%)=0% AND Hoppner2%>19% 11610 Hoppner2%=Hoppner2%-1% 11620 WEND 11630 Ypos2%=Hoppner2%+1% 11640 RETURN 0% 11650 FNEND 11660 ! 11670 ! 11680 ! 11690 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP V[NSTER 11700 ! 11710 ! 11720 DEF FNHoppv{nster% 11730 IF Aktiv%=1% THEN Slask%=FNHoppv{nster1% 11740 IF Aktiv%=2% THEN Slask%=FNHoppv{nster2% 11750 RETURN 0% 11760 FNEND 11770 ! 11780 ! 11790 ! 11800 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP V[NSTER 1 11810 ! 11820 ! 11830 DEF FNHoppv{nster1% 11840 Hoppv{nster1%=Xpos1%-1% 11850 WHILE FGPOINT(Hoppv{nster1%,Ypos1%)=0% AND Hoppv{nster1%>0% 11860 Hoppv{nster1%=Hoppv{nster1%-1% 11870 WEND 11880 Xpos1%=Hoppv{nster1%+1% 11890 RETURN 0% 11900 FNEND 11910 ! 11920 ! 11930 ! 11940 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP V[NSTER 2 11950 ! 11960 ! 11970 DEF FNHoppv{nster2% 11980 Hoppv{nster2%=Xpos2%-1% 11990 WHILE FGPOINT(Hoppv{nster2%,Ypos2%)=0% AND Hoppv{nster2%>0% 12000 Hoppv{nster2%=Hoppv{nster2%-1% 12010 Xpos2%=Hoppv{nster2%+1% 12020 WEND 12030 RETURN 0% 12040 FNEND 12050 ! 12060 ! 12070 ! 12080 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP H\GER 12090 ! 12100 ! 12110 DEF FNHopph|ger% 12120 IF Aktiv%=1% THEN Slask%=FNHopph|ger1% 12130 IF Aktiv%=2% THEN Slask%=FNHopph|ger2% 12140 RETURN 0% 12150 FNEND 12160 ! 12170 ! 12180 ! 12190 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP H\GER 1 12200 ! 12210 ! 12220 DEF FNHopph|ger1% 12230 Hopph|ger1%=Xpos1%+1% 12240 WHILE FGPOINT(Hopph|ger1%,Ypos1%)=0% AND ((Hopph|ger1%<511% AND Uppl|sning%=2%) OR (Hopph|ger1%<239% AND Uppl|sning%=1%)) 12250 Hopph|ger1%=Hopph|ger1%+1% 12260 WEND 12270 Xpos1%=Hopph|ger1%-1% 12280 RETURN 0% 12290 FNEND 12300 ! 12310 ! 12320 ! 12330 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ HOPP H\GER 2 12340 ! 12350 ! 12360 DEF FNHopph|ger2% 12370 Hopph|ger2%=Xpos2%+1% 12380 WHILE FGPOINT(Hopph|ger2%,Ypos2%)=0% AND ((Hopph|ger2%<511% AND Uppl|sning%=2%) OR (Hopph|ger2%<239% AND Uppl|sning%=1%)) 12390 Hopph|ger2%=Hopph|ger2%+1% 12400 WEND 12410 Xpos2%=Hopph|ger2%-1% 12420 RETURN 0% 12430 FNEND 12440 ! 12450 ! 12460 ! 12470 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ [R DU S[KER 12480 ! 12490 ! 12500 DEF FN[rdus{ker% 12510 Forts{tta$='' 12520 WHILE Forts{tta$<>']' AND Forts{tta$<>'F' 12530 PRINT CUR(22%,1%) SPACE$(78%) 12540 PRINT CUR(22%,1%) 'VILL DU "F"orts{tta / "]"terg} '; 12550 GET Forts{tta$ 12560 WEND 12570 RETURN 0% 12580 FNEND 12590 ! 12600 ! 12610 ! 12620 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ INITIERA 12630 ! 12640 ! 12650 DEF FNInitiera% 12660 EXTEND 12670 OUT 34%,136% : ! T[NDER CAPS LOCK 12680 Border%=1% : ! 1 GER BORDER 0 GER EJBORDER 12690 ON ERROR GOTO 12720 12700 IF FGPOINT(500%,100%) THEN REM 12710 Z%=1%/0% 12720 IF ERRCODE=176% THEN Uppl|sning%=1% ELSE Uppl|sning%=2% 12730 ON ERROR GOTO 12740 Xpos1%=120% 12750 Ypos1%=120% 12760 Oldxpos1%=120% 12770 Oldypos1%=120% 12780 Xpos2%=360% 12790 Ypos2%=120% 12800 Oldxpos2%=360% 12810 Oldypos2%=120% 12820 Giltig%=0% 12830 Aktiv%=1% 12840 Before1%=0% 12850 Before2%=0% 12860 Ritmode%=1% : ! 1 GER RITA 2 GER SUDDA 3 GER OVER 12870 Slut%=81% 12880 RETURN 0% 12890 Avsluta%=0% 12900 FNEND 12910 ! 12920 ! 12930 ! 12940 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ PRINTER 12950 ! 12960 ! 12970 DEF FNPrinter% 12980 Slask%=FNPrinterutskriftsfr}gest{llning% 12990 WHILE Forts{tta$<>'A' 13000 OPEN 'PR:' AS FILE 1% 13010 PUT #1%,CHR$(22%) 13020 FOR N%=239% TO 21% STEP -3% 13030 IF Uppl|sning%=1% THEN L{ngd%=239% ELSE L{ngd%=511% 13040 FOR M%=0% TO L{ngd% 13050 A$='' 13060 A%=0% 13070 IF FGPOINT(M%,N%) A%=A%+3% 13080 IF FGPOINT(M%,N%-1%) A%=A%+12% 13090 IF FGPOINT(M%,N%-2%) A%=A%+48% 13100 A$=CHR$(A%) 13110 IF Uppl|sning%=1% THEN PUT #1%,A$ : PUT #1%,A$ ELSE PUT #1%,A$ 13120 NEXT M% 13130 PRINT #1%,CHR$(22%,13%,22%,23%); 13140 FOR X%=0% TO 8% 13150 PRINT #1%,CHR$(22%,23%); 13160 NEXT X% 13170 NEXT N% 13180 CLOSE 1% 13190 Forts{tta$='A' 13200 WEND 13210 PRINT CUR(22%,1%) SPACE$(78%) 13220 Slask%=FNStatusutskrift% 13230 RETURN 0% 13240 FNEND 13250 ! 13260 ! 13270 ! 13280 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ PRINTER UTSKRIFTSFR]GEST[LLNING 13290 ! 13300 ! 13310 DEF FNPrinterutskriftsfr}gest{llning% 13320 PRINT CUR(22%,1%) SPACE$(78%) 13330 PRINT CUR(22%,1%) 'PRINTER UTSKRIFT! (Forts{tta / Avsluta) ?'; 13340 GET Forts{tta$ 13350 RETURN 0% 13360 FNEND 13370 ! 13380 ! 13390 ! 13400 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ SAVE 13410 ! 13420 ! 13430 DEF FNSave% 13440 ON ERROR GOTO 13640 13450 Slask%=FNFilnamnsinmatning% 13460 WHILE Filnamn$<>'S' 13470 PREPARE Filnamn$ AS FILE 2% 13480 Graf$=STRING$(256%,0%) 13490 A%=0% 13500 WHILE A%<480% 13510 Asm$=CHR$(33%)+CVT%$(A%*64%)+CHR$(1%,0%,1%,195%,253%,127%) 13520 Z%=CALL(VARPTR(Asm$),VARPTR(Graf$)) 13530 PUT #2%,Graf$ 13540 A%=A%+4% 13550 Filnamn$='S' 13560 WEND 13570 WEND 13580 CLOSE 2% 13590 Filnamn$='' 13600 Slask%=FNStatusutskrift% 13610 Error%=0% 13620 WHILE Error%<>0% 13630 ! 13640 ! $$$$$$$$$$$$ ERROR RUTIN 13650 ! 13660 ! 13670 PRINT CUR(22%,1%) SPACE$(78%) CUR(22%,1%); 13680 IF ERRCODE=21% THEN PRINT CUR(22%,1%) 'HITTAR EJ FILEN '; 13690 IF ERRCODE=53% THEN PRINT 'FUNKTIONSTANGENT '; 13700 IF ERRCODE=41% THEN PRINT 'SKIVAN FULL '; 13710 IF ERRCODE=42% THEN PRINT 'ENHETEN EJ KLAR '; 13720 PRINT '( TRYCK "CE" )'; 13730 Errtangent$='' 13740 WHILE Errtangent$<>CHR$(24%) 13750 GET Errtangent$ 13760 WEND 13770 ON ERROR GOTO 13780 Slask%=FNStatusutskrift% 13790 Error%=0% 13800 CLOSE 2% 13810 WEND 13820 RETURN 0% 13830 FNEND 13840 ! 13850 ! 13860 ! 13870 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ LOAD 13880 ! 13890 ! 13900 DEF FNLoad% LOCAL Graf$=256 13910 ON ERROR GOTO 14100 13920 Slask%=FNFilnamnsinmatning% 13930 WHILE Filnamn$<>'S' 13940 OPEN Filnamn$ AS FILE 2% 13950 A%=0% 13960 WHILE A%<480% 13970 Asm$=CHR$(33%)+CVT%$(A%*64%)+CHR$(1%,0%,1%,235%,195%,253%,127%) 13980 GET #2%,Graf$ COUNT 256% 13990 Z%=CALL(VARPTR(Asm$),VARPTR(Graf$)) 14000 A%=A%+4% 14010 Filnamn$='S' 14020 WEND 14030 WEND 14040 CLOSE 2% 14050 Filnamn$='' 14060 Slask%=FNStatusutskrift% 14070 Error%=0% 14080 WHILE Error%<>0% 14090 ! 14100 ! $$$$$$$$$$$$ ERROR RUTIN 14110 ! 14120 ! 14130 PRINT CUR(22%,1%) SPACE$(78%) CUR(22%,1%); 14140 IF ERRCODE=21% THEN PRINT CUR(22%,1%) 'HITTAR EJ FILEN '; 14150 IF ERRCODE=53% THEN PRINT 'FUNKTIONSTANGENT '; 14160 IF ERRCODE=41% THEN PRINT 'SKIVAN FULL '; 14170 IF ERRCODE=42% THEN PRINT 'ENHETEN EJ KLAR '; 14180 PRINT '( TRYCK "CE" )'; 14190 Errtangent$='' 14200 WHILE Errtangent$<>CHR$(24%) 14210 GET Errtangent$ 14220 WEND 14230 ON ERROR GOTO 14240 Slask%=FNStatusutskrift% 14250 Error%=0% 14260 CLOSE 2% 14270 WEND 14280 RETURN 0% 14290 FNEND 14300 ! 14310 ! 14320 ! 14330 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ FILNAMNSINMATNING 14340 ! 14350 ! 14360 DEF FNFilnamnsinmatning% 14370 PRINT CUR(22%,1%) SPACE$(78%) 14380 IF Tangent%=192% PRINT CUR(22%,1%) 'SAVE: '; ELSE PRINT CUR(22%,1%) 'LOAD: '; 14390 INPUT 'FILNAMN: (S=slut) ';Filnamn$ 14400 RETURN 0% 14410 FNEND 14420 ! 14430 ! 14440 ! 14450 ! $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ NAMNUTSKRIFT 14460 DEF FNNamnutskrift% 14470 PRINT CUR(24%,10%) 'Gjort av : Erik Sj|stedt, Johan Eriksson, Tommy Soporek T2B' 14480 RETURN 0% 14490 FNEND