8-Bit Software Online Conversion
:0.$.Menu - Listing
10*FX119
20MODE3
30VDU22,7
40VDU23;8202;0;0;0;
50PROCa
60PROCb
70ONERRORVDU3:MODE7:REPORT:PRINT" at
line ";ERL:PROCc("KEY0 LIST "+STR$(ERL)+
"|M"):PROCc("FX138,0,128"):PROCd:END
80REPEAT
90e$=FNf
100IFLEFT$(e$,1)<>CHR$(27)THENPROCg(e$
):*DIR $
110UNTILLEFT$(e$,1)=CHR$(27)
120MODE7
130PROCd
140END
150DEFPROCa
160*FX225,128
170*FX229,1
180*FX4,1
190ENDPROC
200DEFPROCd
210*FX225,1
220*FX229,0
230*FX4,0
240ENDPROC
250DEFPROCb
260DIMh%256
270i$=FNj
280PROCk
290l$="38"
300m$="Oct 1994"
310n$=":0.$.7TO3":REM n$="$.MAG.7TO3"
320f%=1
330e%=1
340PROCo
350ENDPROC
360DEFFNS
370="Menu"
380DEFPROCk
390i%=5
400p%=2
410q%=3
420r%=5
430s%=5
440t%=5
450u%=2
460v%=3
470w%=4
480x%=3
490y%=2
500z%=3
510aa%=7
520ba%=7
530ENDPROC
540DEFPROCo
550LOCALca%
560VDU26,12
570PRINTCHR$(128+i%);" I.D. ";i$;" ";C
HR$(144+p%);"¶///////%¶/////////////////
¶";
580PRINTCHR$(144+p%);"¶///////////*///
/////";CHR$(128+r%);" Issue ";LEFT$(l
$,2);" ";CHR$(144+p%);"¶";
590PRINTCHR$(144+p%);"¶";CHR$(144+q%);
"jk 74$5 j£`p`pj 0 0p0p`p ";CH
R$(144+p%);"¶";
600PRINTCHR$(144+p%);"¶";CHR$(144+q%);
"jk"!7457 "kjjj$j!545=55j.";CHR$(128+r%
);LEFT$(m$,8);CHR$(144+p%);"¶";
610PRINTCHR$(144+p%);"
""£ £ !£! "£"£" "!££!!!!"£ ";CH
R$(145);" ";
620FORca%=1TO18
630PRINTCHR$(144+p%);"¶";SPC(36);CHR$(
144+p%);"¶";
640NEXT
650PRINTCHR$(144+p%);"¶|||||||||||||||
||||||||||||||||||||||¶";
660VDU28,2,22,37,5
670ENDPROC
680DEFPROCc($h%)
690LOCALX%,Y%
700X%=h%MOD256
710Y%=h%DIV256
720CALL&FFF7
730ENDPROC
740DEFFNj
750LOCALda%,i$
760da%=OPENIN("!Boot")
770IFda%=0THENPROCea("No !Boot file -
unable to read user ID!")
780PTR#da%=EXT#da%-4
790i$=CHR$(BGET#da%)+CHR$(BGET#da%)+CH
R$(BGET#da%)
800CLOSE#da%
810=i$
820DEFPROCea(fa$)
830VDU22,7
840PRINTfa$
850PROCd
860END
870DEFFNf
880LOCALga%,s$,ha%,ia%,ja$,ka$,ka%
890REPEAT
900CLS
910PROCla(f%)
920READs$,ha%
930IFha%>14THENha%=14
940PRINTTAB(0,0);CHR$(128+s%);TAB(1+(1
7.5-(LEN(s$)/2)),0);s$
950FORia%=1TOha%
960READja$,ka$,ka$,ka$,ka%,ka%,ka%
970PRINTTAB(1,1+ia%);" ";CHR$(128+t%)
;CHR$(64+ia%);CHR$(128+u%);ja$;TAB(35,1+
ia%);CHR$156;
980NEXT
990PRINTTAB(1,1+e%);CHR$(128+w%);CHR$1
57;
1000PRINTTAB(0,17);CHR$(128+v%);"Press"
;CHR$129;"f0";CHR$(128+v%);"for help if
necessary...";
1010REPEAT
1020REPEAT
1030*FX21
1040ga%=GET
1050IFga%>=ASC("a")ANDga%<=ASC("z")THEN
ga%=ga%-32
1060UNTILga%=128ORga%=138ORga%=139ORga%
=13OR(ga%>=65ANDga%<=(64+ha%))ORga%=ASC(
"8")ORga%=ASC("O")ORga%=ASC("P")OR(ga%=2
7ANDINKEY(-1))
1070PRINTTAB(1,1+e%);" ";
1080IFga%=138ANDe%<ha%THENe%=e%+1
1090IFga%=139ANDe%>1THENe%=e%-1
1100IFga%>=65ANDga%<=(64+ha%)THENe%=ga%
-64
1110PRINTTAB(1,1+e%);CHR$(128+w%);CHR$1
57;
1120UNTILga%=13ORga%=128ORga%=ASC("P")O
Rga%=ASC("8")ORga%=ASC("O")ORga%=27
1130IFga%=128THENPROCma
1140UNTILga%=13ORga%=ASC("P")ORga%=ASC(
"8")ORga%=ASC("O")ORga%=27
1150=CHR$(ga%)+STR$(e%)
1160DEFPROCma
1170LOCALga%
1180CLS
1190PRINTTAB(5,0);CHR$(128+x%);"Using t
he 8BS menu system"
1200PRINTTAB(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."
1210PRINT'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"
1220PRINTCHR$(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."
1230PRINTTAB(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...";
1240REPEAT
1250*FX21
1260ga%=GET
1270UNTILga%=27ORga%=128
1280IFga%=27THENENDPROC
1290CLS
1300PRINTTAB(5,0);CHR$(128+x%);"Using t
he 8BS menu system"
1310PRINTTAB(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."
1320PRINTTAB(0,16);CHR$(128+z%);"Press
ESCAPE to return to the"'CHR$(128+z%);"m
enu...";
1330REPEAT
1340*FX21
1350ga%=GET
1360UNTILga%=27
1370ENDPROC
1380DEFPROCg(e$)
1390LOCALna%,ka$,oa$,pa$,qa$,ra%,sa%,ta
%
1400PROCla(f%)
1410READka$,ka%
1420FORna%=1TOVAL(MID$(e$,2))
1430READka$,oa$,pa$,qa$,ra%,sa%,ta%
1440NEXT
1450IFta%=0ANDpa$<>""THENPROCc("DIR "+p
a$)
1460IFra%ANDNOTsa%THENPROCua(ASC(LEFT$(
e$,1)),qa$):ENDPROC
1470IFra%ANDsa%THENPROCva(ASC(LEFT$(e$,
1)),qa$):ENDPROC
1480IFta%>0THENf%=ta%:e%=1:ENDPROC
1490PROCd
1500IFLEFT$(oa$,1)="*"THENPROCc(oa$+" "
+qa$):END
1510IFoa$="CHAIN"THENCHAINqa$
1520IFoa$="LOAD"THENPROCc("KEY0 LOAD "+
CHR$(34)+qa$+CHR$(34)+"|MLIST|N|M"):PROC
c("FX21"):PROCc("FX138,0,128"):PROCd:VDU
22,7:END
1530END
1540DEFPROCua(ga%,qa$)
1550VDU22,3
1560VDU23;8202;0;0;0;
1570ONERRORIFERR=17THENPROCc("FX229,1")
:VDU3,22,7:VDU23;8202;0;0;0;:PROCo:GOTO7
0ELSEVDU3:MODE7:REPORT:PRINT" at line ";
ERL:PROCc("KEY0 LIST "+STR$(ERL)+"|M"):P
ROCc("FX138,0,128"):PROCd:END
1580*FX21
1590*FX229,0
1600IFga%<>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
1610PROCc("Type "+qa$)
1620*FX229,1
1630ONERRORVDU3:MODE7:REPORT:PRINT" at
line ";ERL:PROCc("KEY0 LIST "+STR$(ERL)+
"|M"):PROCc("FX138,0,128"):PROCd:END
1640IFga%<>ASC("P")THENVDU15ELSEVDU3
1650PRINT'"Press ESCAPE to return to th
e menu...";
1660*FX21
1670REPEATUNTILGET=27
1680VDU22,7
1690VDU23;8202;0;0;0;
1700PROCo
1710ENDPROC
1720DEFPROCva(ga%,qa$)
1730IFINSTR(qa$,"@")<>0AND(ga%=ASC("P")
ORga%=ASC("8"))THENqa$=FNwa(qa$)
1740IFINSTR(qa$,"@")<>0ANDga%<>ASC("P")
ANDga%<>ASC("8")THENqa$=LEFT$(qa$,INSTR(
qa$,"@")-1)
1750?&80=&C6:?&81=&D6
1760IFga%=ASC("P")THEN$&A00=qa$:Z%=1:CH
AINn$
1770IFga%=ASC("8")THEN$&A00=qa$:Z%=0:CH
AINn$
1780IFga%=ASC("O")THENPROCxa(qa$)
1790PROCc("RUN "+qa$)
1800ENDPROC
1810DEFFNwa(qa$)
1820LOCALga%
1830CLS
1840PRINTCHR$(128+ba%);"Which part of t
he article? (1/2)";
1850REPEAT
1860*FX21
1870ga%=GET
1880UNTILga%=49ORga%=50
1890IFga%=49THEN=LEFT$(qa$,INSTR(qa$,"@
")-1)
1900=MID$(qa$,INSTR(qa$,"@")+1)
1910DEFPROCxa(qa$)
1920CLS
1930PRINTCHR$(128+aa%);"Please press th
e key to use to"'CHR$(128+aa%);"scroll u
p..."
1940?&80=0
1950?&80=FNya
1960PRINT'CHR$(128+aa%);"Please press t
he key to use to"'CHR$(128+aa%);"scroll
down..."
1970*FX21
1980?&81=FNya
1990PROCc("KEY0 *LOAD "+qa$+" 1900|M?&1
974=?&80:?&1981=?&81|MCALL&1904|F|M")
2000*FX21
2010VDU21
2020PROCd
2030*FX138,0,128
2040END
2050DEFFNya
2060LOCALA%,B%
2070REPEAT
2080A%=&7A
2090!&70=USR(&FFF4)
2100B%=255-(?&71)
2110UNTILB%<>0ANDB%<>182ANDB%<>?&80
2120=B%
2130DEFPROCla(f%)
2140IFf%=1THENRESTORE
2150IFf%=2THENRESTORE 2300
2160IFf%=3THENRESTORE 2450
2170IFf%=4THENRESTORE 2570
2180IFf%=5THENRESTORE 2720
2190IFf%=6THENRESTORE 2810
2200ENDPROC
2210DATA Main Menu.,7
2220DATA About This Issue.,,:0,Thi1,-1,
-1,0
2230DATA Program Documentation.,,:0,Pro
gDoc,-1,-1,0
2240DATA Magazine Menu 1.,,,,0,0,2
2250DATA Magazine Menu 2.,,,,0,0,3
2260DATA Utilities Menu.,,,,0,0,4
2270DATA Games and Demos.,,,,0,0,5
2280DATA ADFS Extra Menu.,,,,0,0,6
2290:
2300DATA Magazine Menu 1.,13
2310DATA General Messages 1.,,:0,Gen1,-
1,-1,0
2320DATA General Messages 2.,,:0,Gen2,-
1,-1,0
2330DATA For Sale/Wanted 1.,,:0,Ads1,-1
,-1,0
2340DATA For Sale/Wanted 2.,,:0,Ads2,-1
,-1,0
2350DATA 8BS Adverts.,,:0,8BSad,-1,-1,0
2360DATA Help! 1.,,:0,Help1,-1,-1,0
2370DATA Help! 2.,,:0,Help2,-1,-1,0
2380DATA Messages to You.,,:0,uu,-1,-1,
0
2390DATA The Reactor.,,:0,Reactor,-1,-1
,0
2400DATA Editorial.,,:2,Editori,-1,0,0
2410DATA Suggested Contacts.,,:0,Contac
t,-1,-1,0
2420DATA Magazine Menu 2.,,,,0,0,3
2430DATA Return to Main Menu.,,,,0,0,1
2440:
2450DATA Magazine Menu 2.,10
2460DATA 8BS Messaging System Info.,,:0
,QMesInf,-1,-1,0
2470DATA Man.,,:0,Man,-1,-1,0
2480DATA ASCII>Message System Info.,,:0
,ASMSDoc,-1,-1,0
2490DATA My Early Days. Part 3.,,:0,Ear
ly3,-1,0,0
2500DATA Editorial Summary.,,:0,EdiSum,
-1,-1,0
2510DATA BBC Emulators.,,:0,Emulate,-1,
-1,0
2520DATA Hard Drive 1.,,:2,Hard1,-1,0,0
2530DATA Hard Drive 2.,,:2,Hard2,-1,0,0
2540DATA Magazine Menu 1.,,,,0,0,2
2550DATA Return to Main Menu.,,,,0,0,1
2560:
2570DATA Utilities Menu.,13
2580DATA 8BS Messaging System. V 1.07,C
HAIN,:2,SendMes,0,0,0
2590DATA ASCII>Message System. V 0.21,C
HAIN,:2,ASC2MES,0,0,0
2600DATA Fast DFS Backup.,CHAIN,:2,Fast
Bak,0,0,0
2610DATA Brackets Expansion.,CHAIN,:2,B
rackts,0,0,0
2620DATA MPG Calculator.,CHAIN,:2,MPGme
nu,0,0,0
2630DATA Magic Eye Program.,CHAIN,:2,3D
Eye-2,0,0,0
2640DATA Printer Dump.,CHAIN,:2,Dump,0,
0,0
2650DATA Draw Screen. ZX/:LS0123 RET,CH
AIN,:2,3DED,0,0,0
2660DATA Palindromic Numbers 1.,CHAIN,:
2,Palinsq,0,0,0
2670DATA Palindromic Numbers 2.,CHAIN,:
2,Palincu,0,0,0
2680DATA Calendar Printer.,CHAIN,:2,YrP
rint,0,0,0
2690DATA Maxiply.,CHAIN,:2,MaxInfo,0,0,
0
2700DATA Return to Main Menu.,,,,0,0,1
2710:
2720DATA Games and Demos Menu.,7
2730DATA Magic Eye Screen.,CHAIN,:2,Eye
Scr,0,0,0
2740DATA SumVaders.,CHAIN,:2,Sumvade,0,
0,0
2750DATA Tune. Nowhere Man.,CHAIN,:2,No
where,0,0,0
2760DATA Dice.,CHAIN,:2,Dice,0,0,0
2770DATA Magic Numbers.,CHAIN,:2,MagicN
u,0,0,0
2780DATA Pools. Poem.,CHAIN,:2,Pools,0,
0,0
2790DATA Return to Main Menu.,,,,0,0,1
2800:
2810DATA ADFS Menu.,1
2820DATA Return to Main Menu.,,,,0,0,1