8-Bit Software Online Conversion
Oil Rig Drilling Game - Listing
10PROCinit
20MODE7:PROCoff
30PROCrig
40PROCnoise:PROCwait(2)
50MODE2:PROCoff
60PROCquad:PROCyn
70IF ans$="Y" MODE1:PROCoff:PROCinst
80MODE4:PROCoff:PROCsound
90MODE7:PROCoff
100PROCrig:PROCwait(1)
110VDU28,25,18,36,15
130CHAIN"OILRIG2"
140*****
150DEFPROCinit
160VDU23,227,255,129,129,129,129,129,1
29,255,23,255,255,255,255,255,255,255,25
5,255:ENVELOPE1,2,0,0,0,1,1,1,127,-5,-1,
-1,126,126
170ENDPROC
180*****
190DEFPROCwait(time)
200ti=TIME+time*100:REPEAT:UNTILti<TIM
E
210ENDPROC
220*****
230DEFPROCrig
240CLS
250PRINT"
"
260PRINT"
"
270PRINT"
"
280PRINT"
290PRINT"
300PRINT"
310PRINT"
"
320PRINT"
"
330PRINT"
%`?o0 "
340PRINT"
j5"! "
350PRINT"
j5o5 "
360PRINT"
j5j5 "
370PRINT"
% // "
380PRINT"
"
390PRINT"
"
400PRINT"
"
410PRINT"
"
420PRINT"
"
430PRINT"
"
440PRINT"
"
450PRINT"
"
460PRINT" by
"
470PRINT"
"
480PRINT"
490PRINT"
500ENDPROC
510*****
520DEFPROCoff
530VDU23;11,0;0;0;0
540ENDPROC
550*****
560DEFPROCdouble(text$,down%)
570across%=19-(LEN(text$)/2)
580A%=&A:X%=0:Y%=&9:D=&900
590FOR letter%=1 TO LEN(text$)
600B$=MID$(text$,letter%,1):?D=ASC(B$)
:CALL&FFF1
610VDU23,241,D?1,D?1,D?2,D?2,D?3,D?3,D
?4,D?4,23,242,D?5,D?5,D?6,D?6,D?7,D?7,D?
8,D?8
620PRINTTAB(across%+letter%,down%)CHR$
241;TAB(across%+letter%,down%+1)CHR$242
630NEXT:ENDPROC
640*****
650DEFPROCquad
660COLOUR129:CLS
670A%=&A:X%=0:Y%=&9:D=&900
680FOR letter%=1 TO 14:B$=MID$("INSTRU
CTIONS ?",letter%,1):?D=ASC(B$):CALL&FFF
1
690VDU23,241,D?1,D?1,D?1,D?1,D?2,D?2,D
?2,D?2,23,242,D?3,D?3,D?3,D?3,D?4,D?4,D?
4,D?4,23,243,D?5,D?5,D?5,D?5,D?6,D?6,D?6
,D?6,23,244,D?7,D?7,D?7,D?7,D?8,D?8,D?8,
D?8
700pos%=letter%+2:COLOUR9
710PRINTTAB(pos%,4)CHR$241;TAB(pos%,5)
CHR$242;TAB(pos%,6)CHR$243;TAB(pos%,7)CH
R$244
720PRINTTAB(pos%,14)CHR$241;TAB(pos%,1
5)CHR$242;TAB(pos%,16)CHR$243;TAB(pos%,1
7)CHR$244
730PRINTTAB(pos%,25)CHR$241;TAB(pos%,2
6)CHR$242;TAB(pos%,27)CHR$243;TAB(pos%,2
8)CHR$244:NEXT
740SOUND0,1,1,4
750ENDPROC
760*****
770DEFPROCyn
780REPEAT
790ans$=CHR$(GET AND &DF)
800UNTIL ans$="Y"OR ans$="N"
810ENDPROC
820*****
830DEFPROCinst
840VDU19,3,4,0,0,0
850COLOUR0:COLOUR129
860PROCdouble("Instructions",2):COLOUR
128
870COLOUR3:PROCdouble("This is your ch
ance to become a",6)
880COLOUR2:PROCdouble("millionaire !!"
,8)
890COLOUR3:PROCdouble("You have 15 wee
ks to make your fortune.",10)
900PROCdouble("Each week you decide wh
ere to drill",12)
910PROCdouble("and whether to drill af
ter being told",14)
920PROCdouble("the chances of striking
oil.",16)
930COLOUR2:PROCdouble("BEWARE",20):COL
OUR3
940PROCdouble("There is no guarantee."
,22)
950PROCdouble("Rigs may be sold most o
f the time.",24)
960COLOUR1:COLOUR130:PROCdouble("Pleas
e pay your taxes on time !!!",28)
970IFGET
980ENDPROC
990*****
1000DEFPROCsound
1010VDU19,1,8,0,0,0
1020PROCdouble("SOUND (Y/N) ?",12)
1030SOUND1,1,69,1
1040PROCyn
1050IF ans$="N" THEN *FX210,1
1060ENDPROC
1070*****
1080DEFPROCnoise
1090REPEAT
1100READP,D
1110SOUND1,1,P,D:SOUND2,1,P,D
1120UNTIL P=0
1130PROCwait(1.5):SOUND1,0,0,0:SOUND2,0
,0,0
1140DATA 80,6,89,10,96,6
1150DATA89,8,80,4
1160DATA60,5,80,15
1170DATA0,0
1180ENDPROC