8-Bit Software Online Conversion
:0.$.Menu - Listing
10:
20*FX119
30MODE3
40VDU22,7
50VDU23;8202;0;0;0;
60PROCa
70PROCb
80ONERRORVDU3:MODE7:REPORT:PRINT" at
line ";ERL:PROCc("KEY0 LIST "+STR$(ERL)+
"|M"):PROCc("FX138,0,128"):PROCd:END
90REPEAT
100e$=FNf
110IFLEFT$(e$,1)<>CHR$(27)THENPROCg(e$
):*DIR $
120UNTILLEFT$(e$,1)=CHR$(27)
130MODE7
140PROCd
150END
160:
170DEFPROCa
180*FX225,128
190*FX229,1
200*FX4,1
210ENDPROC
220:
230DEFPROCd
240*FX225,1
250*FX229,0
260*FX4,0
270ENDPROC
280:
290DEFPROCb
300DIMh%256
310i$=FNj
320PROCk
330l$="35"
340m$="Jun 1994"
350n$=":0.$.7TO3":REM n$="$.MAG.7TO3"
360f%=1
370e%=1
380PROCo
390ENDPROC
400:
410DEFFNS
420="Menu"
430:
440DEFPROCk
450i%=2
460p%=2
470q%=6
480r%=3
490s%=5
500t%=5
510u%=3
520v%=6
530w%=4
540x%=3
550y%=2
560z%=3
570aa%=7
580ba%=7
590ENDPROC
600:
610DEFPROCo
620LOCALca%
630VDU26,12
640PRINTCHR$(128+i%);" I.D. ";i$;" ";C
HR$(144+p%);"¶///////%¶/////////////////
¶";
650PRINTCHR$(144+p%);"¶///////////*///
/////";CHR$(128+r%);" Issue ";LEFT$(l
$,2);" ";CHR$(144+p%);"¶";
660PRINTCHR$(144+p%);"¶";CHR$(144+q%);
"jk 74$5 j£`p`pj 0 0p0p`p ";CH
R$(144+p%);"¶";
670PRINTCHR$(144+p%);"¶";CHR$(144+q%);
"jk"!7457 "kjjj$j!545=55j.";CHR$(128+r%
);LEFT$(m$,8);CHR$(144+p%);"¶";
680PRINTCHR$(144+p%);"
""£ £ !£! "£"£" "!££!!!!"£ ";CH
R$(145);" ";
690FORca%=1TO18
700PRINTCHR$(144+p%);"¶";SPC(36);CHR$(
144+p%);"¶";
710NEXT
720PRINTCHR$(144+p%);"¶|||||||||||||||
||||||||||||||||||||||¶";
730VDU28,2,22,37,5
740ENDPROC
750:
760DEFPROCc($h%)
770LOCALX%,Y%
780X%=h%MOD256
790Y%=h%DIV256
800CALL&FFF7
810ENDPROC
820:
830DEFFNj
840LOCALda%,i$
850da%=OPENIN("!Boot")
860IFda%=0THENPROCea("No !Boot file -
unable to read user ID!")
870PTR#da%=EXT#da%-4
880i$=CHR$(BGET#da%)+CHR$(BGET#da%)+CH
R$(BGET#da%)
890CLOSE#da%
900=i$
910:
920DEFPROCea(fa$)
930VDU22,7
940PRINTfa$
950PROCd
960END
970:
980DEFFNf
990LOCALga%,s$,ha%,ia%,ja$,ka$,ka%
1000REPEAT
1010CLS
1020PROCla(f%)
1030READs$,ha%
1040IFha%>14THENha%=14
1050PRINTTAB(0,0);CHR$(128+s%);TAB(1+(1
7.5-(LEN(s$)/2)),0);s$
1060FORia%=1TOha%
1070READja$,ka$,ka$,ka$,ka%,ka%,ka%
1080PRINTTAB(1,1+ia%);" ";CHR$(128+t%)
;CHR$(64+ia%);CHR$(128+u%);ja$;TAB(35,1+
ia%);CHR$156;
1090NEXT
1100PRINTTAB(1,1+e%);CHR$(128+w%);CHR$1
57;
1110PRINTTAB(0,17);CHR$(128+v%);"Press"
;CHR$129;"f0";CHR$(128+v%);"for help if
necessary...";
1120REPEAT
1130REPEAT
1140*FX21
1150ga%=GET
1160IFga%>=ASC("a")ANDga%<=ASC("z")THEN
ga%=ga%-32
1170UNTILga%=128ORga%=138ORga%=139ORga%
=13OR(ga%>=65ANDga%<=(64+ha%))ORga%=ASC(
"8")ORga%=ASC("O")ORga%=ASC("P")OR(ga%=2
7ANDINKEY(-1))
1180PRINTTAB(1,1+e%);" ";
1190IFga%=138ANDe%<ha%THENe%=e%+1
1200IFga%=139ANDe%>1THENe%=e%-1
1210IFga%>=65ANDga%<=(64+ha%)THENe%=ga%
-64
1220PRINTTAB(1,1+e%);CHR$(128+w%);CHR$1
57;
1230UNTILga%=13ORga%=128ORga%=ASC("P")O
Rga%=ASC("8")ORga%=ASC("O")ORga%=27
1240IFga%=128THENPROCma
1250UNTILga%=13ORga%=ASC("P")ORga%=ASC(
"8")ORga%=ASC("O")ORga%=27
1260=CHR$(ga%)+STR$(e%)
1270:
1280DEFPROCma
1290LOCALga%
1300CLS
1310PRINTTAB(5,0);CHR$(128+x%);"Using t
he 8BS menu system"
1320PRINTTAB(0,2);CHR$(128+y%);"Use the
up and down cursor keys to"'CHR$(128+y%
);"move the bar or press the letter"'CHR
$(128+y%);"next to the required menu opt
ion to";CHR$(128+y%);"position it immedi
ately."
1330PRINT'CHR$(128+y%);"Press RETURN to
load or view the"'CHR$(128+y%);"highlig
hted program/article. If it"'CHR$(128+y%
);"is an article, pressing 8 will"'CHR$(
128+y%);"display it in 80 columns. Press
ing"
1340PRINTCHR$(128+y%);"P will print it
out and pressing O"'CHR$(128+y%);"will a
llow you to view it in"'CHR$(128+y%);"te
letext mode with your own choice"'CHR$(1
28+y%);"of scrolling keys."
1350PRINTTAB(0,16);CHR$(128+z%);"Press"
;CHR$(129);"f0";CHR$(128+z%);"for more h
elp or ESCAPE"'CHR$(128+z%);"to return t
o the menu...";
1360REPEAT
1370*FX21
1380ga%=GET
1390UNTILga%=27ORga%=128
1400IFga%=27THENENDPROC
1410CLS
1420PRINTTAB(5,0);CHR$(128+x%);"Using t
he 8BS menu system"
1430PRINTTAB(0,2);CHR$(128+y%);"Pressin
g SHIFT and ESCAPE together"'CHR$(128+y%
);"at the menu will return you to"'CHR$(
128+y%);"BASIC."
1440PRINTTAB(0,16);CHR$(128+z%);"Press
ESCAPE to return to the"'CHR$(128+z%);"m
enu...";
1450REPEAT
1460*FX21
1470ga%=GET
1480UNTILga%=27
1490ENDPROC
1500:
1510DEFPROCg(e$)
1520LOCALna%,ka$,oa$,pa$,qa$,ra%,sa%,ta
%
1530PROCla(f%)
1540READka$,ka%
1550FORna%=1TOVAL(MID$(e$,2))
1560READka$,oa$,pa$,qa$,ra%,sa%,ta%
1570NEXT
1580IFta%=0ANDpa$<>""THENPROCc("DIR "+p
a$)
1590IFra%ANDNOTsa%THENPROCua(ASC(LEFT$(
e$,1)),qa$):ENDPROC
1600IFra%ANDsa%THENPROCva(ASC(LEFT$(e$,
1)),qa$):ENDPROC
1610IFta%>0THENf%=ta%:e%=1:ENDPROC
1620PROCd
1630IFLEFT$(oa$,1)="*"THENPROCc(oa$+" "
+qa$):END
1640IFoa$="CHAIN"THENCHAINqa$
1650IFoa$="LOAD"THENPROCc("KEY0 LOAD "+
CHR$(34)+qa$+CHR$(34)+"|MLIST|N|M"):PROC
c("FX21"):PROCc("FX138,0,128"):PROCd:VDU
22,7:END
1660END
1670:
1680DEFPROCua(ga%,qa$)
1690VDU22,3
1700VDU23;8202;0;0;0;
1710ONERRORIFERR=17THENPROCc("FX229,1")
:VDU3,22,7:VDU23;8202;0;0;0;:PROCo:GOTO8
0ELSEVDU3:MODE7:REPORT:PRINT" at line ";
ERL:PROCc("KEY0 LIST "+STR$(ERL)+"|M"):P
ROCc("FX138,0,128"):PROCd:END
1720*FX21
1730*FX229,0
1740IFga%<>ASC("P")THENPRINT'"Press SHI
FT to scroll or ESCAPE for the menu..."'
:VDU14ELSEPRINT'"Press SPACE when you ar
e ready to print... (Press ESCAPE to qui
t)"':REPEATUNTILGET=32:VDU2
1750PROCc("Type "+qa$)
1760*FX229,1
1770ONERRORVDU3:MODE7:REPORT:PRINT" at
line ";ERL:PROCc("KEY0 LIST "+STR$(ERL)+
"|M"):PROCc("FX138,0,128"):PROCd:END
1780IFga%<>ASC("P")THENVDU15ELSEVDU3
1790PRINT'"Press ESCAPE to return to th
e menu...";
1800*FX21
1810REPEATUNTILGET=27
1820VDU22,7
1830VDU23;8202;0;0;0;
1840PROCo
1850ENDPROC
1860:
1870DEFPROCva(ga%,qa$)
1880IFINSTR(qa$,"@")<>0AND(ga%=ASC("P")
ORga%=ASC("8"))THENqa$=FNwa(qa$)
1890IFINSTR(qa$,"@")<>0ANDga%<>ASC("P")
ANDga%<>ASC("8")THENqa$=LEFT$(qa$,INSTR(
qa$,"@")-1)
1900?&80=&C6:?&81=&D6
1910IFga%=ASC("P")THEN$&A00=qa$:Z%=1:CH
AINn$
1920IFga%=ASC("8")THEN$&A00=qa$:Z%=0:CH
AINn$
1930IFga%=ASC("O")THENPROCxa(qa$)
1940PROCc("RUN "+qa$)
1950ENDPROC
1960:
1970DEFFNwa(qa$)
1980LOCALga%
1990CLS
2000PRINTCHR$(128+ba%);"Which part of t
he article? (1/2)";
2010REPEAT
2020*FX21
2030ga%=GET
2040UNTILga%=49ORga%=50
2050IFga%=49THEN=LEFT$(qa$,INSTR(qa$,"@
")-1)
2060=MID$(qa$,INSTR(qa$,"@")+1)
2070:
2080DEFPROCxa(qa$)
2090CLS
2100PRINTCHR$(128+aa%);"Please press th
e key to use to"'CHR$(128+aa%);"scroll u
p..."
2110?&80=0
2120?&80=FNya
2130PRINT'CHR$(128+aa%);"Please press t
he key to use to"'CHR$(128+aa%);"scroll
down..."
2140*FX21
2150?&81=FNya
2160PROCc("KEY0 *LOAD "+qa$+" 1900|M?&1
974=?&80:?&1981=?&81|MCALL&1904|F|M")
2170*FX21
2180VDU21
2190PROCd
2200*FX138,0,128
2210END
2220:
2230DEFFNya
2240LOCALA%,B%
2250REPEAT
2260A%=&7A
2270!&70=USR(&FFF4)
2280B%=255-(?&71)
2290UNTILB%<>0ANDB%<>182ANDB%<>?&80
2300=B%
2310:
2320DEFPROCla(f%)
2330IFf%=1THENRESTORE
2340IFf%=2THENRESTORE 2500
2350IFf%=3THENRESTORE 2620
2360IFf%=4THENRESTORE 2760
2370IFf%=5THENRESTORE 2890
2380IFf%=6THENRESTORE 2960
2390ENDPROC
2400:
2410DATA Main Menu.,7
2420DATA About This Issue.,,:0,Thi1,-1,
-1,0
2430DATA Program Documentation.,,:0,Pro
gDoc,-1,-1,0
2440DATA Magazine Menu 1.,,,,0,0,2
2450DATA Magazine Menu 2.,,,,0,0,3
2460DATA Utilities Menu.,,,,0,0,4
2470DATA Demos.,,,,0,0,5
2480DATA ADFS Extra Menu.,,,,0,0,6
2490:
2500DATA Magazine Menu 1.,10
2510DATA General Messages 1.,,:0,Gen1,-
1,-1,0
2520DATA General Messages 2.,,:0,Gen2,-
1,-1,0
2530DATA For Sale/Wanted Part 1.,,:2,Ad
s1,-1,-1,0
2540DATA For Sale/Wanted Part 2.,,:0,Ad
s2,-1,-1,0
2550DATA Help!,,:0,Help,-1,-1,0
2560DATA Messages to You.,,:0,uu,-1,-1,
0
2570DATA The Reactor.,,:0,Reactor,-1,-1
,0
2580DATA Show Diary.,,:0,Show1,-1,-1,0
2590DATA Magazine Menu 2.,,,,0,0,3
2600DATA Return to Main Menu.,,,,0,0,1
2610:
2620DATA Magazine Menu 2.,12
2630DATA 8BS Messaging System Info.,,:0
,QMesInf,-1,-1,0
2640DATA How I Became a Programmer.,,:0
,HIBACPS,-1,0,0
2650DATA An Insight Into Programming.,,
:0,AIIPS,-1,0,0
2660DATA Monitor Cables.,,:0,MonCab,-1,
-1,0
2670DATA Initialising Rom Images.,,:0,R
omInit,-1,-1,0
2680DATA The 8BS TBI Top 50.,,:0,Top50,
-1,-1,0
2690DATA Sentence Generator Article.,,:
2,SentGen,-1,-1,0
2700DATA Questionnaire Results.,,:2,Que
sres,-1,0,0
2710DATA Members Interests.,,:2,Intrest
,-1,-1,0
2720DATA Word Processors. Note Pads.,,:
2,K2Oart,-1,0,0
2730DATA Magazine Menu 1.,,,,0,0,2
2740DATA Return to Main Menu.,,,,0,0,1
2750:
2760DATA Utilities Menu.,11
2770DATA 8BS Messaging System. V 1.04,C
HAIN,:2,SendMes,0,0,0
2780DATA Perfect Numbers.,CHAIN,:2,Perf
ect,0,0,0
2790DATA Prime Numbers.,CHAIN,:2,Prime,
0,0,0
2800DATA Mode 7 Editor.,CHAIN,:2,Diatex
t,0,0,0
2810DATA Magic Eye.,CHAIN,:2,Magic3D,0,
0,0
2820DATA Print/View Magic Eye Screen.,C
HAIN,:2,Mode4Pr,0,0,0
2830DATA Palindromic Numbers.,CHAIN,:2,
Lappy,0,0,0
2840DATA Sentence Generator. SentSlw.,C
HAIN,:2,SentSlw,0,0,0
2850DATA Sentence Generator. Sentenc.,C
HAIN,:2,Sentenc,0,0,0
2860DATA Menu Reader.,CHAIN,:0,Menread,
0,0,0
2870DATA Return to Main Menu.,,,,0,0,1
2880:
2890DATA Demos Menu.,5
2900DATA Coal Man. PRINTER ON.,CHAIN,:2
,CoalMan,0,0,0
2910DATA Picture.,CHAIN,:2,PicLoad,0,0,
0
2920DATA Mandelbrots In Seconds!,CHAIN,
:2,MandRun,0,0,0
2930DATA Dreamscape Demo.,CHAIN,:2,Land
Dem,0,0,0
2940DATA Return to Main Menu.,,,,0,0,1
2950:
2960DATA ADFS Menu.,1
2970DATA Return to Main Menu.,,,,0,0,1