10
20 :
30 pdev%=0:nobj%=1:y=1:p=2:r=3:DIM yaw(1),pitch(1),roll(1)
40 :
50 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
60 IFok%:PROC1
70 PRINT"Evaluate <fac> OP \ ... \ <fac>";FNnot(ok%)
80 :
90 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
100 IFok%:PROC2
110 PRINT"Evaluate <fac> \ ... \ OP <fac>";FNnot(ok%)
120 :
130 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
140 IFok%:PROC3
150 PRINT"Evaluate <fac> OP <fac> \ ... \ OP <fac>";FNnot(ok%)
160 :
170 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
180 IFok%:PROC4
190 PRINT"Evaluate <fac> ^ \ ... \ <fac>";FNnot(ok%)
200 :
210 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
220 IFok%:PROC5
230 PRINT"Evaluate <fac> \ ... \ ^ <fac>";FNnot(ok%)
240 :
250 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
260 IFok%:PROC6
270 PRINT"DIM var(1, 2, \ ... \ 3, 4)";FNnot(ok%)
280 :
290 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
300 IFok%:PROC7
310 PRINT"DIM var(1, 2 \ ... \ , 3, 4)";FNnot(ok%)
320 :
330 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
340 IFok%:PROC8
350 PRINTCHR$13;"PRINT over lines";FNnot(ok%)
360 :
370 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
380 IFok%:PROC9
390 PRINT"FN(...) calling DEFFN(\...\)<cr>=";FNnot(ok%)
400 :
410 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
420 IFok%:PROC10
430 PRINT"FN(...) calling DEFFN(\...\)=";FNnot(ok%)
440 :
450 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
460 IFok%:PROC11
470 PRINT"FN(\...\) calling DEFFN(...)";FNnot(ok%)
480 :
490 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
500 IFok%:PROC12
510 PRINT"FN(\...\) calling DEFFN(\...\)<cr>=";FNnot(ok%)
520 :
530 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
540 IFok%:PROC13
550 PRINT"FN(\...\) calling DEFFN(\...\)=";FNnot(ok%)
560 :
570 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
580 IFok%:PROC14
590 PRINTCHR$13;"FN(...) calling DEFFN(...)=\..\";FNnot(ok%)
600 :
610 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
620 IFok%:PROC15
630 PRINT"PROC(\...\)<cr> calling DEFPROC(...)";FNnot(ok%)
640 :
650 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
660 IFok%:PROC16
670 PRINT"PROC(\..arrays..\<cr>) calling DEFPROC(...)";FNnot(ok%)
680 :
690 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
700 IFok%:PROC16a
710 PRINT"PROC(\..arrays.\)<cr> calling DEFPROC(...)";FNnot(ok%)
720 :
730 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
740 IFok%:PROC17
750 PRINT"PROC(...) calling DEFPROC(\...\<cr>)";FNnot(ok%)
760 :
770 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
780 IFok%:PROC18
790 PRINT"PROC(\...\) calling DEFPROC(\...\)<cr>";FNnot(ok%)
800 :
810 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
820 IFok%:PROC19
830 PRINT"PROCname calling DEFPROCname \...\";FNnot(ok%)
840 :
850 ok%=TRUE:ON ERROR ok%=FALSE:ON ERROR OFF
860 IFok%:PROC20
870 PRINT"PROCname calling DEFPROCname: \...\";FNnot(ok%)
880 :
890 END
900 :
910 DEFFNnot(A%)=" "+STRING$(44-POS,".")+LEFT$("not ",NOTA%)+"ok"
920 :
930
940
950 DEFPROC1
960 _one=1:_two=2:_three=4:_four=8
970 rbBand% = _one OR _two OR \ mask options together
980 \ _three OR _four
990 ENDPROC
1000 :
1010 DEFPROC2
1020 _one=1:_two=2:_three=4:_four=8
1030 rbBand% = _one \ mask options together
1040 \ OR _three OR _four
1050 ENDPROC
1060 :
1070 DEFPROC3
1080 _one=1:_two=2:_three=4:_four=8
1090 rbBand% = _one OR _two \ mask options together
1100 \ OR _three OR _four
1110 ENDPROC
1120 :
1130 DEFPROC4
1140 a=1:b=2
1150 c = a ^ \
1160 \ b
1170 ENDPROC
1180 :
1190 DEFPROC5
1200 a=1:b=2
1210 c = a \
1220 \ ^ b
1230 ENDPROC
1240 :
1250 DEFPROC6
1260 DIM ArmBand1(1, 1, \ long DIM definition
1270 \ 1, 1)
1280 ENDPROC
1290 :
1300 DEFPROC7
1310 DIM ArmBand2(1, 1 \ long DIM definition
1320 \ , 1, 1)
1330 ENDPROC
1340 :
1350 DEFPROC8
1360 PRINT "The quick brown";\ prelude
1370 \ " fox"; \ subject
1380 \ " jumps"; \ verb
1390 \ " over"; \ conjunction
1400 \ " the lazy dog"; \ object
1410 \ "."
1420 ENDPROC
1430 :
1440 DEFPROC9
1450 A%=FN_cw(0,"","",1,2,3,4,5,6,7)
1460 ENDPROC
1470 :
1480 DEFPROC10
1490 A%=FN_dw(0,"","",1,2,3,4,5,6,7)
1500 ENDPROC
1510 :
1520 DEFPROC11
1530 A%=FN_wi(0 \
1540 \ ,"", \
1550 \ "", \
1560 \ 1,2,3,4,5,6,7)
1570 ENDPROC
1580 :
1590 DEFPROC12
1600 A%=FN_cw(0 \
1610 \ ,"", \
1620 \ "", \
1630 \ 1,2,3,4,5,6,7)
1640 ENDPROC
1650 :
1660 DEFPROC13
1670 A%=FN_dw(0 \
1680 \ ,"", \
1690 \ "", \
1700 \ 1,2,3,4,5,6,7)
1710 ENDPROC
1720 :
1730 DEFPROC14
1740 FOR A%=1 TO 12:PRINTCHR$13;A%;" ";FNmonth(A%);:NEXT
1750 ENDPROC
1760 :
1770 DEFPROC15
1780 PROCrend(pdev%, \ pointer to Direct3D device
1790 \ nobj%, \ number of objects
1800 \ y, \ yaw angle
1810 \ p, \ pitch angle
1820 \ r) \ roll angle
1830 \
1840 ENDPROC
1850 :
1860 DEFPROC16
1870 PROCrender(pdev%, \ pointer to Direct3D device
1880 \ nobj%, \ number of objects
1890 \ yaw(), \ array of yaw angles
1900 \ pitch(),\ array of pitch angles
1910 \ roll() \ array of roll angles
1920 \ )
1930 ENDPROC
1940 :
1950 DEFPROC16a
1960 PROCrender(pdev%, \ pointer to Direct3D device
1970 \ nobj%, \ number of objects
1980 \ yaw(), \ array of yaw angles
1990 \ pitch(),\ array of pitch angles
2000 \ roll()) \ array of roll angles
2010 \
2020 ENDPROC
2030 :
2040 DEFPROC17
2050 PROCredraw(pdev%,nobj%,yaw(),pitch(),roll())
2060 ENDPROC
2070 :
2080 DEFPROC18
2090 PROCupdate(pdev%,nobj%,yaw(),pitch(),roll())
2100 ENDPROC
2110 :
2120 DEFPROC19
2130 PROCone
2140 ENDPROC
2150 :
2160 DEFPROC20
2170 PROCtwo
2180 ENDPROC
2190 :
2200
2210
2220 DEFFN_cw(h%, s$, t$, \ handle and strings
2230 \ p1%, p2%, p3%, \ parameters
2240 \ p4%, p5%, p6%, p7%\ more parameters
2250 \ )
2260 =0
2270 :
2280 DEFFN_dw(h%, s$, t$, \ handle and strings
2290 \ p1%, p2%, p3%, \ parameters
2300 \ p4%, p5%, p6%, p7%\ more parameters
2310 \ )=1
2320 :
2330 DEFFN_wi(h%, s$, t$, p1%, p2%, p3%, p4%, p5%, p6%, p7%)=2
2340 :
2350 DEFFNmonth(mon%) \
2360 \ =MID$("JanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNovemberDecember", \
2370 \ VALMID$("010816212629333743525967",mon%*2-1,2), \
2380 \ VALMID$("785534469788",mon%,1))
2390 :
2400 DEFPROCrend(pd%,no%,y,pi,rl)
2410 ENDPROC
2420 :
2430 DEFPROCrender(pd%,no%,y(),pi(),rl())
2440 ENDPROC
2450 :
2460 DEFPROCredraw(pd%, \
2470 \ no% \
2480 \ ,y(), \
2490 \ pi(),rl())
2500 ENDPROC
2510 :
2520 DEFPROCupdate(pd%, \
2530 \ no% \
2540 \ ,y(), \
2550 \ pi(),rl() \
2560 \ )
2570 ENDPROC
2580 :
2590 DEFPROCone \
2600 \ ENDPROC
2610 :
2620 DEFPROCtwo: \
2630 \ ENDPROC