8-Bit Software Online Conversion

Press the spacebar - Listing

10: 20: 30*|" PROGRAM BY RUSHDEN ROY 40*|" A 'L'PLATE PROGRAMMER 50*|" FOR 8-BIT SOFTWARE 60: 70MODE7 80VDU23,1,0;0;0;0; 90PRINT' 100PROCROY 110PROCdblht("This program looks at th e instruction",0,12) 120PROCdblht("PRESS SPACE",12,20) 130PROCget 140PROCSTAR(20,2,151) 150PROCSTAR(5,5,151) 160PROCSTAR(2,10,147) 170PROCSTAR(19,8,147) 180PROCSTAR(11,13,151) 190PROCSTAR(28,13,151) 200PRINT" No, not this space above but ....." 210PRINT'" .....this space below" 220PROCcentreSpa(23,"Press Space",129, 131) 230PROCget 240PROCdblht("There are a lot of progr ams that ",1,2) 250PROCdblht(" require the instruct ion",2,4) 260PROCdblht("'Press Space'",10,6) 270PROCdblht(" this is usually placed at the ",2,8) 280PROCdblht("bottom of the screen.",7 ,10) 290PRINT'CHR$(134)"(Some do not give a ny instruction and " 300PRINT'CHR$(134)" you are left with a screen wondering" 310PRINT'CHR$(134)" 'What do I do now? !'). So I have put" 320PRINT'CHR$(134)" together a few i deas to brighten" 330PRINT'CHR$(134)" up the PRESS SPACE a bit." 340REPEAT UNTIL GET=32:CLS 350PROCdblht("First we must consider t he type of",1,2) 360PROCdblht("program this press space is to be",1,4) 370PROCdblht("used.",14,6) 380PRINTCHR$(134)" Explanatory: Child ren/New users" 390PRINT'CHR$(134)" Formal : Busi ness type" 400PRINT'CHR$(134)" Colourful : Fun & games" 410PRINT'CHR$(134)" Small : Form al" 420PRINT'CHR$(134)" Large : Show off your skill!" 430PRINTCHR$(131)" All the ideas are in MODE 7 and " 440PRINTCHR$(131)" contained in a PROCEDURE " 450PRINTCHR$(131)"( I'm sure that you can improve them )" 460PRINTTAB(2,21)CHR$(133)" This o ne is PROCcentreSpa" 470PROCcentreSpa(23,"Please Press the Space Bar",132,135) 480PROCget 490 PROCdblht("This is the PROC of a p ress space",1,2) 500PROCdblht("it's small, neat and you see it a lot",0,4) 510PRINT'" It will self centre, you just give" 520PRINT" the line no. (column no. not required)" 530 PRINT" DEF PROCcentreSpa(y%,t$,b% ,f%):s%=18- LENt$/2:PRINTTAB(0,y%);SPC (s%);CHR$b%; CHR$157;CHR$f%;t$;"""SPC(2 )""";CHR$156:ENDPROC" 540 PRINT'" IN THE BRACKETS (y%,t$,b%, f%)" 550PRINT" FIRST is the y% this is the TAB line postion (where you want it e .g. 23 )." 560PRINT" SECOND is the t$ this is the text(What you want printed e.g. Press Space )." 570PRINT" THIRD is the b% this is for the back- ground colour (e.g. 129 red) ." 580PRINT" FORTH is the f% this is the forground colour (e.g. 131 yellow)." 590PROCcentreSpa(23,"Press Space",129, 131) 600PROCget 610PROCdblht(" A different PROCEDURE ",4,4) 620PROCdblht("if a small one is requir ed then",2,6) 630PROCdblht(" it could be flashing in a box",2,8) 640PRINTTAB(5,15)CHR$(133)"This is cal led PROCboxSpa" 650PRINT'' 660PROCboxSpa 670PROCget 680PROCdblht("Or...",2,4) 690PROCdblht("a flashing box and a ste ady text",2,6) 700PRINTTAB(5,15)CHR$(133)"This one is PROCflashboxSpa" 710PRINT'' 720PROCflashboxSpa 730REPEAT UNTIL GET=32:CLS 740PROCdblht("...and a box with a shad ow",2,4) 750PRINTTAB(6,15)CHR$(133)"This is PRO CshadowSpa" 760PROCshadowSpa(6,19) 770PROCget 780PROCdblht("Then you could have the box",2,4) 790PROCdblht("with a box at each corne r",3,6) 800PRINTTAB(1,15)CHR$(133)"So we will call this PROCsqu4Spa" 810PRINT'' 820PROCsqu4Spa 830PROCget 840PROCdblht("...then if we are not ca reful we",2,4) 850PROCdblht("might tie ourselves in a knot!",1,6) 860PRINTTAB(2,15)CHR$(133)"This we wil l call PROCknotsSpa" 870PROCknotsSpa(5,19) 880PROCget 890 PROCdoublehtSpa(12,20) 900PROCdblht("This is straight to the point but",2,4) 910PROCdblht("DOUBLE height",10,6) 920 PRINTTAB(3,15)CHR$(133)"This is ca lled PROCdoublehtSpa" 930PROCget 940PROCdblht("And in two colours if yo u wish",2,4) 950 PRINTTAB(2,15)CHR$(133)"This is ca lled PROCdoublehtSpa2" 960 PROCdoublehtSpa2(12,20) 970PROCget 980PROCdblht("Which could then lead on to this",2,4) 990 PRINTTAB(4,15)CHR$(133)"This is ca lled PROCsnowSpa" 1000 PROCsnowSpa(8,20) 1010PROCget 1020PROCdblht("Also multi colour",8,4) 1030PRINTTAB(2,15)CHR$(133)"This is cal led PROCdoublemulticolSpa" 1040PROCdoublemulticolSpa(10,18) 1050PROCget 1060PROCdblht("This one is borrowed fro m GLM PD",2,4) 1070PROCdblht("Gareth Moore uses this t ype of scroll",1,6) 1080PROCdblht("in his menu (Many thanks Gareth)",2,8) 1090PRINTTAB(5,15)CHR$(133)"This name i s PROCCentScrolSpa" 1100PRINT 1110FOR T=0 TO 500:NEXT T 1120PROCCentScrolSpa("PLEASE PRESS SPAC E BAR FOR THE MENU",3,1) 1130PRINT'" Please wait and you will se e it again" 1140FOR T=0 TO 2000:NEXT T 1150PROCCentScrolSpa("PLEASE PRESS SPAC E BAR FOR THE MENU",5,6) 1160PROCget 1170PROCdblht("Should we try and let th em know",3,4) 1180PROCdblht("by drawing a picture (we ll I tried!)",1,6) 1190 PRINTTAB(4,15)CHR$(133)"This is ca lled PROCbarSpa" 1200 PROCbarSpa(0,17) 1210PROCget 1220PROCdblht("Or..would this be better ?",2,4) 1230 PRINTTAB(4,15)CHR$(133)"This is ca lled PROCfingerSpa" 1240 PROCfingerSpa(3,17) 1250PROCget 1260PROCdblht("By drawing pictures we c ould have",2,4) 1270PROCdblht("a funny one (as seen on Teletext)",2,6) 1280 PRINTTAB(4,13)CHR$(133)"This is ca lled PROCfaceSpa" 1290PROCfaceSpa(8,15) 1300PROCget 1310PROCdblht("... and perhaps not so f unny.",1,4) 1320PRINTTAB(4,13)CHR$(133)"This is cal led PROCwotnoSpa" 1330PROCwotnoSpa(9,20) 1340PROCget 1350PROCdblht("You will need a lot of r oom for ",2,4) 1360PROCdblht("this... but it's differe nt",2,6) 1370PRINTTAB(3,8)CHR$(133)"This is call ed PROCcupmenuSpa" 1380PROCcupmenuSpa(7,10) 1390PROCget 1400PROCdblht("Chris Richardson did one like this",1,4) 1410PROCdblht("he did a big 'Press Brea k' in",3,6) 1420PROCdblht("Issue 23 (Thanks Chris)" ,5,8) 1430PRINTTAB(3,11)CHR$(133)"This is cal led PROCbigblockSpa" 1440PROCbigblockSpa(4,13) 1450PROCget 1460PROCdblht("....and a bit of my need le work!",2,4) 1470PROCdblht("(I dont know where you w ould use",2,6) 1480PROCdblht("this, but is'nt it prett y!!)",2,8) 1490PRINTTAB(3,11)CHR$(133)"This is cal led PROCneedleSpa" 1500PROCneedleSpa(3,13) 1510PROCget 1520PROCdblht("...and soon you can go o ver the top",2,4) 1530PROCdblht("if your not careful and do the ",4,6) 1540PROCdblht("ridiculous!!",6,8) 1550PRINTTAB(0,12)CHR$(133)"If your rea lly interested it's called" 1560PRINTTAB(8,14)CHR$(133)"PROCcarsSpa " 1570PROCcarsSpa(0,18) 1580PROCget 1590PROCdblht("To sum up a 'small' pres s space ",3,1) 1600PROCdblht("will be used mostly beca use it is",2,3) 1610PROCdblht("straight to the point an d does'nt",2,5) 1620PROCdblht("take over the screen fro m the main",2,7) 1630PROCdblht("message and of course ne eds less room.",0,9) 1640PROCdblht("But if you have room to spare,",3,11) 1650PROCdblht("memory to spare,",10,13) 1660PROCdblht("(and programming time to spare)",2,15) 1670PROCdblht("why not give it a though t?",5,17) 1680FOR I=1TO2000:NEXT 1690PROCmanSpa1 1700REPEAT: UNTIL GET=32 1710PROCmanSpa2 1720CLS 1730PROCdblht("Well thats a few ideas, it can",3,2) 1740PROCdblht("be fun so have a go.",8, 4) 1750PROCdblht("Thanks to Chris for his big block",2,6) 1760PROCdblht("Thanks to TV Teletext fo r the face",2,8) 1770PROCdblht(" Thanks to Gareth for hi s scroll",2,10) 1780PROCdblht(" and of course Thanks to You for",2,12) 1790PROCdblht(" press ing the space bar !",5,14) 1800PRINT'" To see it all again gues s what!" 1810PRINT'" Please note :-" 1820PRINT" I have given the procedures long names deliberately. Shorten them i f you wish." 1830PROCget:GOTO70 1840END:REM************************* 1850REM" :::::::::::::::::::::::: 1860DEF PROCSTAR(x,y,c) 1870PRINTTAB(x,y)CHR$(c);CHR$(154);" p xyp0 "CHR$(156) 1880PRINTTAB(x,y+1)CHR$(c);CHR$(154)" " n¶¶¶& "CHR$(156)" * " 1890PRINTTAB(x,y+2)CHR$(c);CHR$(154)" x¶¶¾0 "CHR$(156) 1900PRINTTAB(x,y+3)CHR$(c);CHR$(154);" ".oo/&"CHR$(156) 1910PRINTTAB(x,y+4)CHR$(c);CHR$(154);" ! "CHR$(156) 1920ENDPROC 1930REM" :::::::::::::::::::::::: 1940DEFPROCdblht(x$,x,y) 1950PRINTTAB(x,y);CHR$(141);CHR$(134);x $ 1960PRINTTAB(x,y+1);CHR$(141);CHR$(134) ;x$ 1970ENDPROC 1980REM" ::::::::::::::::::::::::: 1990DEF PROCcentre(t$,b%,f%):s%=18-LENt $/2:PRINTSPC(s%);CHR$b%;CHR$157;CHR$f%;t $;" ";CHR$156:ENDPROC 2000REM" ::::::::::::::::::::::::: 2010DEF PROCcentreSpa(y%,t$,b%,f%):s%=1 8-LENt$/2:PRINTTAB(0,y%);SPC(s%);CHR$b%; CHR$157;CHR$f%;t$;" ";CHR$156:ENDPROC 2020REM" ::::::::::::::::::::::::: 2030 DEF PROCdoublehtSpa(x,y) 2040PRINTTAB(x,y)CHR$(141)CHR$(145)"PRE SS SPACE" 2050PRINTTAB(x,y+1)CHR$(141)CHR$(145)"P RESS SPACE" 2060ENDPROC 2070REM" ::::::::::::::::::::::::: 2080 DEF PROCdoublehtSpa2(x,y) 2090PRINTTAB(x,y)CHR$(141)CHR$(131)"PRE SS SPACE" 2100PRINTTAB(x,y+1)CHR$(141)CHR$(145)"P RESS SPACE" 2110ENDPROC 2120REM" ::::::::::::::::::::::: 2130 DEF PROCboxSpa 2140PRINT"  2150PRINT" PRESS SPACE  2160PRINT"  2170ENDPROC 2180REM" ::::::::::::::::::::::::: 2190 DEF PROCflashboxSpa 2200PRINT"  2210PRINT" PRESS SPACE  2220PRINT"  2230ENDPROC 2240REM" :::::::::::::::::::::::::: 2250 DEFPROCsnowSpa(x,y) 2260PRINTTAB(x,y)"          2270PRINTTAB(x,y+1);CHR$(141)" PRESS SP ACE  2280PRINTTAB(x,y+2)CHR$(141)" PRESS SPA CE d" 2290PRINTTAB(x,y+3)"  !" 2300ENDPROC 2310REM" ::::::::::::::::::::::::: 2320 DEF PROCsqu4Spa 2330PRINT"    2340PRINT"   2350PRINT" PRESS SPACE   2360PRINT"   2370PRINT"    2380ENDPROC 2390REM" ::::::::::::::::::::::::: 2400 DEF PROCdoublemulticolSpa(x,y) 2410PRINTTAB(x+2,y)"  2420PRINTTAB(x+2,y+1)"  2430PRINTTAB(x,y+2)CHR$(134);CHR$(157); CHR$(141)CHR$(129)"PRESS SPACE "CHR$(1 56) 2440PRINTTAB(x,y+3)CHR$(134);CHR$(157); CHR$(141)CHR$(129)"PRESS SPACE "CHR$(1 56) 2450PRINTTAB(x+2,y+4)"  2460PRINTTAB(x+2,y+5)"  2470ENDPROC 2480REM" :::::::::::::::::::::::: 2490DEFPROCCentScrolSpa(text$,c1%,c2%) 2500LOCALc3% 2510IFLENtext$=1THEN2590 2520pos%=0:REPEATpos%=pos%+1 2530t1$=LEFT$(text$,pos%):t2$=RIGHT$(te xt$,pos%) 2540c3%=18-LEN(t1$) 2550PRINTTAB(c3%);CHR$141;CHR$(c1%+128) ;t1$;t2$ 2560PRINTTAB(c3%);CHR$141;CHR$(c2%+128) ;t1$;t2$ 2570VDU11,11 2580UNTILpos%=INT(LEN(text$)/2) 2590c3%=18-(LEN(text$)/2) 2600PRINTTAB(c3%);CHR$141;CHR$(c1%+128) ;text$ 2610PRINTTAB(c3%);CHR$141;CHR$(c2%+128) ;text$ 2620ENDPROC 2630REM" ::::::::::::::::::::::::: 2640 DEF PROCfingerSpa(x,y) 2650PRINTTAB(x,y)"     2660PRINTTAB(x,y+1)" Press   2670PRINTTAB(x,y+2)" Space   2680PRINTTAB(x,y+3)"  ssq   2690PRINTTAB(x,y+4)"   2700PRINTTAB(x,y+5)"   2710ENDPROC 2720REM" ::::::::::::::::::::::: 2730 DEF PROCbarSpa(x,y) 2740PRINTTAB(x,y) "        p pp pp pp ppppp" 2750PRINTTAB(x,y+1)" SHIFT :Z:X:C:V:B:N :M:<,:>.:?/: SHIFT" 2760PRINTTAB(x,y+2)"  ///////////////o?¶" 2770PRINTTAB(x,y+3)"  Press the SPACE bar  2780PRINTTAB(x,y+4)"  O @ O  ,,,,,,,,,,,,,,,.i¶" 2790PRINTTAB(x,y+5)"  //////////////////" 2800ENDPROC 2810REM" ::::::::::::::::::::::::: 2820 DEF PROCfaceSpa(x,y) 2830PRINTTAB(x,y)"  " 2840PRINTTAB(x,y+1)"  ¶ " 2850PRINTTAB(x,y+2)"  ¶ " 2860PRINTTAB(x,y+3)"  ¶ " 2870PRINTTAB(x,y+4)"   ¶ " 2880PRINTTAB(x,y+5)" PRESS  ¶ " 2890PRINTTAB(x,y+6)"  SPACE  ¶ " 2900PRINTTAB(x,y+7)"  ¶ " 2910ENDPROC 2920REM" :::::::::::::::::::::::: 2930 DEFPROCcupmenuSpa(x,y) 2940PRINTTAB(x,y)"   2950PRINTTAB(x,y+1)"    2960PRINTTAB(x,y+2)"    2970PRINTTAB(x,y+3)"   2980PRINTTAB(x,y+4)" ```  ` ``" 2990PRINTTAB(x,y+5)"   3000PRINTTAB(x,y+6)"   3010PRINTTAB(x,y+7)"  " 3020PRINTTAB(x,y+8)"    0" 3030PRINTTAB(x,y+9)"  ¾ " 3040PRINTTAB(x,y+10)"  ssq " 3050PRINTTAB(x,y+11)" PRESS SPACE FOR M ENU" 3060PRINTTAB(x,y+12)"  £££ " 3070ENDPROC 3080 REM" ::::::::::::::::::::::: 3090 DEF PROCbigblockSpa(x,y) 3100PRINTTAB(x,y)CHR$(132);CHR$(157);" "CHR$(156) 3110PRINTTAB(x,y+1)CHR$(132);CHR$(157); "  CHR 3120PRINTTAB(x,y+2)CHR$(132);CHR$(157); "       CHR 3130PRINTTAB(x,y+3)CHR$(132);CHR$(157); "     CHR 3140PRINTTAB(x,y+4)CHR$(132);CHR$(157); "     CHR 3150PRINTTAB(x,y+5)CHR$(132);CHR$(157); "  CHR 3160PRINTTAB(x,y+6)CHR$(132);CHR$(157); "  CHR 3170PRINTTAB(x,y+7)CHR$(132);CHR$(157); "       CHR 3180PRINTTAB(x,y+8)CHR$(132);CHR$(157); "      CHR 3190PRINTTAB(x,y+9)CHR$(132);CHR$(157); "      CHR 3200PRINTTAB(x,y+10)CHR$(132);CHR$(157) ;"  CHR 3210ENDPROC 3220REM" ::::::::::::::::::::::: 3230 DEF PROCneedleSpa(x,y) 3240PRINTTAB(x,y)"   p,£,s  3250PRINTTAB(x,y+1)"      ,£ £,£ £)0" 3260PRINTTAB(x,y+2)"   £)0`&£d  3270PRINTTAB(x,y+3)"      ,d ),0  3280PRINTTAB(x,y+4)"    p8!"dp&  3290PRINTTAB(x,y+5)"        , , , ,8!" 3300PRINTTAB(x,y+6)"    £)0i££$  3310PRINTTAB(x,y+7)"      f,1  3320PRINTTAB(x,y+8)"     p8!:pp$  3330PRINTTAB(x,y+9)"     p,p p,pp)0" 3340PRINTTAB(x,y+10)"   £,p,£,p,  3350ENDPROC 3360PROCcarsSpa(0,18) 3370REM" :::::::::::::::::::::::: 3380DEF PROCcentre(y%,t$,b%,f%):s%=18-L ENt$/2:PRINTTAB(0,y%);SPC(s%);CHR$b%;CHR $157;CHR$f%;t$;" ";CHR$156:ENDPROC 3390REM" :::::::::::::::::::::::: 3400DEF PROCknotsSpa(x,y) 3410PRINTTAB(x,y)"  p0 " 3420PRINTTAB(x,y+1)"   pj`r0" 3430PRINTTAB(x,y+2)"   PRESS SPACE   3440PRINTTAB(x,y+3)"  £c£!`% " 3450PRINTTAB(x,y+4)"  ),! " 3460ENDPROC 3470REM" ::::::::::::::::::::::::::: 3480DEF PROCcarsSpa(x,y) 3490PRINTTAB(x,y)" PRES S " 3500PRINTTAB(x,y+1)"  o5   3510PRINTTAB(x,y+2)"  5     3520PRINTTAB(x,y+3)"   q3q3q3s  3530PRINTTAB(x,y+4)"  PARKING SP ACE   3540PRINTTAB(x,y+5)"     ££!)0 £n¼&£££££n¼&" 3550ENDPROC 3560REM" :::::::::::::::::::::::::: 3570DEF PROCshadowSpa(x,y) 3580PRINTTAB(x,y)"  " 3590PRINTTAB(x,y+1)"  k¶ " 3600PRINTTAB(x,y+2)"  PRESS SPACE j " 3610PRINTTAB(x,y+3)"  j " 3620PRINTTAB(x,y+4)"  // " 3630ENDPROC 3640REM" ::::::::::::::::::::::::::: 3650DEF PROCmanSpa1 3660FOR tab=27TO12STEP-1 3670PROCman(tab,19) 3680PROCman2(tab-1,19) 3690NEXT 3700PROCman3(11,19) 3710ENDPROC 3720DEF PROCmanSpa2 3730FOR tab=11TO1STEP-1 3740PROCman(tab,19) 3750PROCman2(tab-1,19) 3760NEXT 3770ENDPROC 3780DEF PROCman(x,y) 3790PROCdelay 3800PRINTTAB(x,y)"     3810PRINTTAB(x,y+1)" PRESS  " 3820PRINTTAB(x,y+2)" SPACE  " 3830PRINTTAB(x,y+3)"    3840ENDPROC 3850DEF PROCman2(x,y) 3860PROCdelay 3870PRINTTAB(x,y)"    " 3880PRINTTAB(x,y+1)" PRESS  " 3890PRINTTAB(x,y+2)" SPACE  " 3900PRINTTAB(x,y+3)"   " 3910ENDPROC 3920DEF PROCdelay 3930FOR T=1TO100:NEXT 3940ENDPROC 3950DEF PROCman3(x,y) 3960PRINTTAB(x,y)"     3970PRINTTAB(x,y+1)" PRESS  " 3980PRINTTAB(x,y+2)" SPACE  " 3990PRINTTAB(x,y+3)"   " 4000ENDPROC 4010REM" ::::::::::::::::::::::::::: 4020DEF PROCwotnoSpa(x,y) 4030PRINTTAB(x,y)" .?. " 4040PRINTTAB(x,y+1)" PRESS SPACE " 4050PRINTTAB(x,y+2)"    " 4060ENDPROC 4070DEFPROCROY 4080PRINT"   PROGRAM B Y ££££££££" 4090PRINT"     k 7e757£k" 4100PRINT"     s550!5u0£5" 4110PRINT"   p5u7t5upp5" 4120PRINT 4130PRINT" FOR 8-BIT SOFTWARE" 4140PRINT" 1 Oakwood Drive Heaton BOLTO N BL1 5EE"' 4150ENDPROC 4160DEF PROCget 4170REPEAT UNTIL GET=32:CLS 4180ENDPROC