8-Bit Software Online Conversion
Form Master - Listing
10REM Form Master
20REM By S.Johnson
30REM June 91
100MODE7
105VDU23,1,0|
110PROCheader
115w=0
120IF G=50 THEN MODE0:PROCtext
121IF G=32 THEN GOTO 100
130MODE1
140COLOUR2
145INPUT TAB(0,4)"Prize Value of Today
's Race ";pt
150INPUT TAB(0,7)"Number of Runners ";
r
155w=w+1
160IFw=1 THEN PROCinit
180PROCinput
185MODE7
186VDU23,1,0 | : CLS
187 PRINTTAB(8,12)CHR$(141)CHR$(131);"
PLEASE WAIT"
188 PRINTTAB(8,13)CHR$(141)CHR$(131);"
PLEASE WAIT"
190PROCsort
200PROCresults
210C=INKEY(200)
220PRINTTAB(3,21)CHR$(131)CHR$(157)CHR
$(132)" Enter Another Race (Y/N)"SPC3CHR
$(156)
230G=GET
240IF G=89 OR G=121 THEN GOTO 130
250CLS:*BASIC
600END
1000DEFPROCinput
1010FOR f=1TOr
1020t=0:x=0:y=25:x$="X":y$="X":pb=0
1025COLOUR132
1030CLS
1040COLOUR3
1050PRINTTAB(16,2)"HORSE ";f
1060COLOUR2
1070PRINTTAB(2,6)"1st form figure";TAB(
2,9)"2nd form figure"
1080PRINTTAB(2,12)"Horse's Name"
1090PRINTTAB(2,15)"Course & Distance"
1100PRINTTAB(2,18)"Days since last run"
1105PRINTTAB(2,21)"Won on todays going(
Y/N)"
1106PRINTTAB(2,24)"Prize Value of lates
t run"
1110INPUTTAB(28,6);x
1120PROCscore
1130a(f)=x
1140PRINTTAB(28,6)" ";a(f)
1150INPUTTAB(28,9);x
1160PROCscore
1170b(f)=x
1180PRINTTAB(28,9)" ";b(f)
1190x=0
1200INPUTTAB(20,12);n$(f)
1204IF LEN(n$(f))>15 THEN SOUND 0,-15,1
0,10:PRINTTAB(20,14)SPC25:GOTO1200
1205PRINTTAB(20,12)" ";n$(f)
1210INPUTTAB(28,15);x$
1220PROCscore
1230cd$(f)=x$
1240PRINTTAB(28,15)" ";cd$(f)
1250x$="X"
1260INPUTTAB(28,18);y
1270PROCscore
1280PRINTTAB(28,18)" ";y
1290y=25
1300INPUTTAB(28,21);y$
1310PROCscore
1320PRINTTAB(28,21)" ";y$
1330y$="X"
1335INPUTTAB(28,24);pb
1336PROCscore
1340t(f)=t
1350COLOUR1:COLOUR132
1355VDU23,1,0 |
1360PRINTTAB(4,30)"Do You Wish To Chang
e Any (Y/N)"
1370G=GET
1375VDU23,1,1 |
1380IF G=89 OR G=121 GOTO 1020
1999NEXTf
2000ENDPROC
2010DEFPROCscore
2020IF x=1 THEN t=t+30
2030IF x=2 THEN t=t+24
2040IF x=3 THEN t=t+16
2050IF x=4 THEN t=t+8
2060IF x$="C" OR x$="c" THEN t=t+8
2070IF x$="D" OR x$="d" THEN t=t+12
2080IF x$="C,D" OR x$="c,d" THEN t=t+16
2090IF x$="C&D" OR x$="c&d" THEN t=t+24
2100IF y<21 THEN t=t+8
2110IF y$="Y" OR y$="y" THEN t=t+8
2120IF pt<pb THEN t=t+8:ENDPROC
2130IF (pt-pb)<=1000 THEN t=t+4:ENDPROC
2200ENDPROC
2500DEFPROCsort
2605LOCAL f
2606LOCAL g
2610FOR f=0TOr-1
2620FOR g=f+1TOr
2630 IF t(f)>t(g) THEN 2700
2640 tf=t(f):af=a(f):bf=b(f):nf$=n$(f):
cdf$=cd$(f):t(f)=t(g):a(f)=a(g):b(f)=b(g
):n$(f)=n$(g):cd$(f)=cd$(g):t(g)=tf:a(g)
=af:b(g)=bf:n$(g)=nf$:cd$(g)=cdf$
2700NEXTg
2710NEXTf
2720ENDPROC
2800DEFPROCresults
2810C=INKEY(300)
2813CLS
2820VDU23,1,0 |
2830PRINTTAB(1,21)CHR$(131)CHR$(157)CHR
$(132)" Send Ratings To Printer (Y/N)"SP
C3CHR$(156)
2840G=GET
2850IF G=89 OR G=121 THEN PROCprint
2851CLS
2855 PRINTTAB(10) CHR$(141)CHR$(129)CHR
$(157)CHR$(135)" RATINGS"SPC3CHR$(156)TA
B(10)CHR$(141)CHR$(129)CHR$(157)CHR$(135
)" RATINGS"SPC3CHR$(156)
2860FORf=0TOr-1
2870PRINTTAB(2,f+5)CHR$(131);a(f);b(f);
TAB(6,f+5)n$(f);TAB(23,f+5)cd$(f);TAB(31
,f+5)CHR$(134)t(f)
2890NEXTf
2895t(0)=0
2900ENDPROC
2950DEFPROCinit
2960DIM a(r),b(r),n$(r),cd$(r),t(r)
2970ENDPROC
3000DEFPROCprint
3010VDU2:PRINT':VDU3:A=INKEY(10):IF ADV
AL(-4)<63 PRINTTAB(6,22)CHR$(132)CHR$(15
7)CHR$(131)" Printer Not On Line"SPC3CHR
$(156):C=INKEY(250):GOTO 2810
3020VDU2
3030FORf=0TOr-1
3040PRINT a(f);b(f);" ";n$(f);SPC(23-L
EN(n$(f)));cd$(f);SPC(7-LEN(cd$(f)));t(f
)
3050NEXTf
3060VDU3
3100ENDPROC
8000 DEFPROCheader
8005VDU23,1,0|
8010 PRINTTAB(8,9)CHR$(141)CHR$(131);"1
. FORM MASTER"
8020 PRINTTAB(8,10)CHR$(141)CHR$(131);"
1. FORM MASTER"
8030 PRINTTAB(8,12)CHR$(141)CHR$(134);"
2. INSTRUCTIONS"
8040 PRINTTAB(8,13)CHR$(141)CHR$(134);"
2. INSTRUCTIONS"
8050G=GET
8070IF G<49 OR G>50 THEN GOTO 8050
8080ENDPROC
8100DEFPROCtext
8106VDU14
8107PRINT"Press SHIFT to scroll screen"
8110*TYPE T.FORMMAS
8120G=GET
8122IF G=32 THEN CLS:ENDPROC
8125IF G<32 OR G>32 THEN GOTO 8120
8130ENDPROC