8-Bit Software Online Conversion

Push The Bale - Listing

50MODE7 51PROCchrs 52PROCstart 53MODE5 60VDU5:IFK%=78 PROCnew 70REPEAT:CLS:PROCmap 80REPEAT:K%=0:K%=INKEY(10) 90IFK%=47 OR K%=58 OR K%=88 OR K%=90P ROCtest:*FX21,0 130IFK%=127 PROCback 140IFK%=27 PROCclean:PROCmap 150UNTILK%=78 OR K%=81 OR P%=A% 160IFP%=A% PROCcomp 170IFK%=78 PROCnew 180UNTILK%=81:MODE7:END 200DEFPROCtest:D%=1:Z%=0 210N%=Y%:E%=X%:W%=Y%:V%=X% 220IFK%=47 Y%=Y%-1:W%=Y%-1:M$=D$ 230IFK%=58 Y%=Y%+1:W%=Y%+1:M$=U$ 240IFK%=88 X%=X%+1:V%=X%+1:M$=R$ 250IFK%=90X%=X%-1:V%=X%-1:M$=L$ 260C%=POINT(X%*64+32,Y%*32-16) 270IFC%=3 PROCmove:F%=1 280IFC%=1 Y%=N%:X%=E% 290IFC%=0PROCmove:F%=0 300IFC%=2 PROCpush 310FORT%=1 TO 300:NEXT:ENDPROC 330DEFPROCmove 340MOVEE%*64,N%*32:PRINT X$; 350IFF%=1 PRINT A$ 360MOVEX%*64,Y%*32:PRINT M$:ENDPROC 380DEFPROCpush 390C%=POINT(V%*64+32,W%*32-16) 400IFC%=1 OR C%=2 Y%=N%:X%=E%:Z%=0:END PROC 410D%=POINT(X%*64+16,Y%*32-16) 420MOVEX%*64,Y%*32:PRINT X$ 430MOVEV%*64,W%*32 440IFC%=3 PRINT P$ ELSE PRINT B$ 450PROCmove:F%=0:IFC%=3 P%=P%+1 460IFD%=1 F%=1:P%=P%-1 470Z%=1:ENDPROC 490DEFPROCback:IFD%=0ENDPROC 500MOVEX%*64,Y%*32:PRINT X$; 510IFF%=1 PRINT A$:F%=0 520IFPOINT(E%*64+32,N%*32-16)=3 F%=1 530MOVEE%*64,N%*32:PRINT M$ 540IFZ%=1 PROCBale 550Y%=N%:X%=E%:D%=0:ENDPROC 570DEFPROCBale 580C%=POINT(V%*64+16,W%*32-16) 590MOVEV%*64,W%*32:PRINT X$; 600IFC%=1 PRINT A$:P%=P%-1 610C%=POINT(X%*64+32,Y%*32-16) 620MOVEX%*64,Y%*32 630IFC%=3 PRINT P$:P%=P%+1 640IFC%=0PRINT B$ 650ENDPROC 670DEFPROCcomp:VDU19,2,11,0,0,0 680S%=S%+1:IFS%=51 S%=1 690TIME=0:REPEAT:UNTILTIME>800 700VDU19,2,3,0,0,0:ENDPROC 720DEFPROCmap:P%=0:A%=0:F%=0 730RESTORE (1690+10*S%) 740READ R%:U%=(32-R%)/2 750FORY%=1 TO R%:READ Z$ 760IFK%=27 NEXT ELSE PROCconv:PROCplot (W$):NEXT 770FORY%=2 TO R%-1:READ Z$ 780IFZ$="X" Z$="0":Y%=R%-1 790IFZ$<>"0" PROCconv:PROCplot(A$) 800NEXT:FORY%=3 TO R%-2:READ Z$ 810IFZ$<>"0" PROCconv:PROCplot(B$) 820NEXT:READ X%,Y%:Y%=Y%+U% 830MOVE300,900:PRINT"SCREEN - ";S% 840MOVEX%*64,32*Y%:PRINT S$:ENDPROC 860DEFPROCconv:Y$="" 870REPEAT:Z$="0"+Z$:UNTILLEN(Z$)=6 880FORI%=2 TO 6:N$=MID$(Z$,I%,1) 890IFN$="0" N$="0000" 900IFN$="1" N$="0001" 910IFN$="2" N$="0010" 920IFN$="3" N$="0011" 930IFN$="4" N$="0100" 940IFN$="5" N$="0101" 950IFN$="6" N$="0110" 960IFN$="7" N$="0111" 970IFN$="8" N$="1000" 980IFN$="9" N$="1001" 990IFN$="A" N$="1010" 1000IFN$="B" N$="1011" 1010IFN$="C" N$="1100" 1020IFN$="D" N$="1101" 1030IFN$="E" N$="1110" 1040IFN$="F" N$="1111" 1050Y$=Y$+N$:NEXT:ENDPROC 1070DEFPROCplot(I$):MOVE64,(Y%+U%)*32 1080FORX%=2 TO 20:N$=MID$(Y$,X%,1) 1090IFN$="1" N$=I$ ELSE N$=O$ 1100IFN$=B$ A%=A%+1:IFPOINT(X%*64-32,(Y %+U%)*32-16)=3 N$=P$:P%=P%+1 1110PRINT N$;:NEXT:ENDPROC 1130DEFPROCclean:FORY%=2 TO R%-1 1140MOVE128,(Y%+U%)*32:FORX%=3 TO 19 1150IFPOINT(X%*64-32,(Y%+U%)*32-16)<>1 PRINTH$; ELSE PRINTO$; 1160NEXT:NEXT:ENDPROC 1180DEFPROCstart:S%=1 1190VDU23;8202;0;0;0;:*FX229,1 1200T$="Public Domain - 8BS " 1210PRINTTAB(3,16)"From:"SPC4"8-Bit Sof tware,"'SPC12"17 Lambert Park Road,"'SPC 12"Hedon,"'SPC12"Hull HU12 8HF." 1220FORI%=3 TO 4:PRINTTAB(5,I%)CHR$141C HR$129CHR$157CHR$135T$CHR$156:NEXT 1230T$="PUSH-the-Bale by Carl Wheat" 1240PRINTTAB(4,9)CHR$141T$ 1250PRINTTAB(4,10)CHR$141T$ 1260T$=STRING$(29,"£") 1270PRINTTAB(3,8)CHR$147T$ 1280PRINTTAB(3,12)CHR$147T$ 1290PRINTTAB(2,23)CHR$134"Do you want i nstructions? - Y/N" 1300K$=GET$:IFK$="N" ENDPROC 1310CLS:PRINTTAB(0,2)CHR$131"Your view is from above looking at a"'CHR$131"man working in a wharehouse." 1320PRINTTAB(0,5)CHR$131"All the yellow Bales have to be pushed"'CHR$131"onto t he white targets. The following"'CHR$131 "keys can be used to move the man:" 1330PRINTTAB(6,9)"Z - LEFT"SPC(7)"X - R IGHT"TAB(6,11)": - UP"SPC(9)"/ - DOWN" 1340PRINTTAB(0,13)CHR$131"Or a Joystick can be used. Also use;" 1350PRINTTAB(6,15)"DELETE - backspace l ast move"TAB(6,17)"ESCAPE - Resets the s creen"TAB(6,19)"N - enter New screen num ber"TAB(6,21)"Q - to Quit the game" 1360PRINTTAB(9,23)CHR$129CHR$157CHR$135 "Press Any Key "CHR$156 1370K%=GET:ENDPROC 1390DEFPROCnew:REPEAT:GCOL0,2 1400MOVE160,200:PRINT"INPUT NEW SCREEN" :MOVE224,150:PRINT"NUMBER, 1 - 50" 1410MOVE300,50:INPUT"SCREEN ";S% 1420MOVE812,50:PRINTSTRING$(8,H$) 1430UNTILS%>0AND S%<51:ENDPROC 1450DEFPROCchrs 1460VDU23,224,0,24,60,60,24,0,0,102 1470VDU23,225,0,0,66,66,102,102,102,0 1480VDU23,226,102,0,0,24,60,60,24,0 1490VDU23,227,0,102,102,102,66,66,0,0 1500VDU23,228,0,128,140,30,30,140,128,0 ,23,229,0,124,112,0,0,112,124,0 1510VDU23,230,0,1,49,120,120,49,1,0 1520VDU23,231,0,62,14,0,0,14,62,0 1530VDU23,232,0,0,24,60,60,24,0,0 1540VDU23,233,0,0,0,66,66,102,0,0 1550VDU23,234,0,66,0,24,24,0,66,0,23,23 5,126,231,255,189,189,255,231,126 1560VDU23,236,255,68,68,255,255,17,17,2 55,23,237,0,36,90,36,36,90,36,0 1570VDU23,238,0,0,0,0,0,0,0,0,23,255,25 5,255,255,255,255,255,255,255 1580H$=CHR$18+CHR$0+CHR$0+CHR$255 1590B$=CHR$18+CHR$0+CHR$2+CHR$235 1600P$=CHR$18+CHR$0+CHR$2+CHR$235+CHR$8 +CHR$18+CHR$0+CHR$1+CHR$237 1610W$=CHR$18+CHR$0+CHR$3+CHR$255+CHR$8 +CHR$18+CHR$0+CHR$1+CHR$236 1620A$=CHR$18+CHR$0+CHR$3+CHR$234 1630D$=CHR$18+CHR$0+CHR$3+CHR$224+CHR$8 +CHR$18+CHR$0+CHR$1+CHR$225 1640U$=CHR$18+CHR$0+CHR$3+CHR$226+CHR$8 +CHR$18+CHR$0+CHR$1+CHR$227 1650L$=CHR$18+CHR$0+CHR$3+CHR$228+CHR$8 +CHR$18+CHR$0+CHR$1+CHR$229 1660R$=CHR$18+CHR$0+CHR$3+CHR$230+CHR$8 +CHR$18+CHR$0+CHR$1+CHR$231 1670S$=CHR$18+CHR$0+CHR$3+CHR$232+CHR$8 +CHR$18+CHR$0+CHR$1+CHR$233 1680O$=CHR$238:X$=H$+CHR$8:ENDPROC 1700DATA11,7F00,41FF,7DD61,40001,45BE1, 75A3F,10200,1C600,4400,4400,7C00,0,6,6,6 ,X,0,12000,0,0,2800,800,2000,12,3 1710DATA10,3FFC,E084,8084,9E84,9804,C28 4,86FC,8010,8210,FFF0,18,18,18,18,18,X,1 200,100,0,1000,2800,2A40,10,5 1720DATA10,3FC00,207FE,30002,20602,3FE2 E,308,208,24C,204,3FC,1E000,E000,1E000,X ,120,90,80,A0,90,A0,16,9 1730DATA14,7FF00,42180,42080,40180,4218 0,6FF80,42080,420FF,40081,42081,42001,7F F81,81,FF,0,0,0,0,0,0,0,1E,1E,1E,1E,1E,D 800,1000,0,0,8000,19500,8200,1D200,500,0 ,11,3 1740DATA13,FC,84,3B4,204,3FE0C,20604,20 00C,2060E,3FEE2,202,2B2,23E,3E0,0,0,0,0, 1E000,1E000,1E000,X,0,A0,40,120,160,90,0 ,8,40,16,6 1750DATA11,39F8,6D08,4708,4008,4508,45C 8,4478,4440,4040,4640,7FC0,30,30,30,30,3 0,X,0,1800,1000,1000,900,1200,900,6,3 1760DATA12,7800,4EF8,4288,4388,4008,438 8,77DC,41C4,4004,6984,3F8C,F8,0,70,70,70 ,30,X,1800,0,1500,1000,20,800,200,30,10, 10 1770DATA16,7F80,4080,4080,4080,4080,408 0,1F3FE,10002,1028A,14062,1CA7A,4042,488 2,4002,4FFE,7800,3F00,3F00,3F00,X,0,0,0, 0,0,10A8,900,2A00,1000,A00,1210,228,4,10 1780DATA14,1FE0,1020,3F03E,20002,31022, 1F03E,1060,1DFE,D82,982,802,F82,82,FE,0, 0,0,0,0,0,0,1C,1C,14,1C,1C,680,4848,A00, 280,700,0,0,0,0,0,3,4 1790DATA16,7FFF,4005,5FF5,7D015,45005,4 5005,4D019,69011,43F71,41011,71011,41011 ,41011,40001,6F011,39FFF,2,2,2,18002,180 02,6,E,E,E,E,E,E,E,0,0,0,770,200,6A0,280 ,0,540,200,106C0,E080,18CA0,3,15 1800DATA15,3C00,25E0,2738,200C,3606,20D 2,740A,7C482,4410F,4006F,7F9C1,F41,51,41 ,7F,0,0,0,0,0,0,0,0,0,2,36,2E,3E,800,400 ,1A0,20,1A0,1020,1800,100,0,0,0,12,4 1810DATA13,3F8,208,3E0E,3E362,20B62,2E0 62,28062,2A0E2,28036,28024,2BF04,20004,3 FFFC,0,0,1C,1C,1C,1C,1C,X,0,0,0,1D00,A00 ,1500,A00,1540,0,9,9 1820DATA13,3C000,243FF,27E19,60001,444A 9,46601,402A9,4A201,526A9,42481,70487,18 CF8,FF80,0,0,1C,14,14,14,14,14,1C,X,1000 0,9120,10040,140,10800,1000,4800,9000,0, 7,9 1830DATA16,1E,FF2,822,3B8A,3E00A,2038A, 2009A,2420A,31EEB,17001,10035,17031,111F F,10410,1FC10,7F0,0,0,0,0,0,0,0,0,FC0,FC 0,FC0,X,0,0,80,2860,5C20,2040,4,0,1000,0 ,C000,140,12,14 1840DATA16,1F00,3F100,24100,20900,23BF8 ,32088,1002E,120A2,1BD82,1201E,12090,106 10,1D0F0,4080,4480,7F80,0,0,0,0,1F00,1F0 0,1F00,X,0,C000,0,0,2640,4000,200,40,220 ,2100,800,800,8,11 1850DATA15,7800,4800,4FF8,4208,4208,E06 8,9628,86C8,9818,1C830,10020,10F20,109E0 ,11800,1F000,0,0,1F0,1F0,190,10,10,X,0,1 800,80,200,900,2000,140,400,3440,4000,0, 6,10 1860DATA14,3F00,2100,1EDFC,10046,14042, 107D2,1ECF6,4992,4002,7F26,213C,2010,211 0,3FF0,0,0,0,0,0,0,0,0,0,1800,1800,1800, 0,2400,1210,2000,0,0,0,0,0,0,5,4 1870DATA13,1E00F,13FF9,10001,10A4D,1A10 5,7B445,4066D,44021,64707,3ECBC,2808,208 8,3FF8,0,0,0,0,0,3000,3800,1800,300,400, 400,0,2010,B0,4900,0,10084,0,0,0,14,11 1880DATA16,7FFFF,404C1,78401,40005,41EA 1,6E2BF,6A8A0,682A0,60EA0,600A0,44FA0,44 C20,461E0,7C100,10F00,1F800,1E,1E,1A,1E, X,4900,1100,8000,0,1000,1000,A000,9000,1 0000,10000,0,1000,7,15 1890DATA16,FF00,81BF,80E1,79C21,40825,5 0021,509E5,5C921,53B05,50821,50125,50D21 ,5FDE7,41024,7C03C,7FE0,0,1E,16,2,16,2,6 ,2,6,2,6,X,600,2010,2280,8910,200,10,0,4 010,4800,10,200,100,15,14 1900DATA15,7C0,C7C,F844,8AC4,A284,8C04, 1E024,12C3C,12C20,10020,1AC20,1BD20,101E 0,10100,1FF00,0,38,38,68,78,X,200,0,0,0, 740,80,100,74C0,0,0,0,7,11 1910DATA16,7FFFF,40101,6FC7D,40001,41C0 3,41EF2,51012,50002,59012,51012,43FFB,60 481,40081,42411,43F9F,7E0F0,0,0,0,0,0,F6 0,FF0,7E0,FE0,X,100,10520,10110,A104,400 0,1008,0,4,8000,14020,9228,4080,11,13 1920DATA14,7F0,3C90,649F,4491,3C491,244 11,20481,24491,24091,64491,44491,44491,4 7CF3,7C79E,00,00,6,6,2,6,6,6,6,6,6,4,140 ,00,2140,800,1040,900,2040,B00,A040,00,1 6,8 1930DATA16,3FFF0,26490,2401F,20411,2100 1,7034B,7093B,45C3B,44B3B,408CB,6F109,40 001,7FF23,40012,4001E,7FFF0,0,0,0,0,0,0, 0,0,0,0,0,0,3FF20,3FF20,800,4B80,8250,80 0,2000,12000,8000,0,20,904,80,C0,4,2 1940DATA16,7FE1F,40211,5FBF1,51B07,5002 2,5E802,40857,42301,641F9,441F9,46FCF,68 004,4AF84,48204,4FFFC,78000,0,0,0,0,0,0, 0,0,0,0,7F8,38,DF8,X,404,0,800,7C0,28,9C 00,11000,10000,1000,10000,0,0,17,10 1950DATA12,3FC,206,7E62,C822,C002,89FE, 8904,8804,8904,C91C,49F0,7F00,0,0,0,0,0, E8,E0,E0,E0,X,18,180,2028,200,1000,2600, 1000,0,17,3 1960DATA13,FC0,3F860,2033F,20001,26E99, 30081,1059B,7FC01,40929,40821,601A9,2042 3,3FFFE,0,0,0,0,0,0,0,3F000,3F000,1F000, 1C000,8480,B048,4,1020,244,128,0,100,204 ,11,2 1970DATA15,1F0,3F10,201E,2022,6002,3C03 2,24DE2,20842,34842,27EE2,20032,3E01A,30 1E,1F10,1F0,0,0,4,1C,C,1C,38,38,18,C,4,X ,280,C80,520,B00,2000,8000,0,0,300,940,4 80,3,7 1980DATA13,7FFFF,48889,40001,4FFD9,6C00 B,4C00B,4EFFB,48041,68511,6A03F,43FE0,46 000,7C000,0,0,0,1FE0,1FE0,X,8908,10004,1 4A0,400,0,104,A00,0,10000,12,9 1990DATA14,7C3E,7C7E3,4C4C1,40441,4EC43 ,68042,68EFA,6E2C2,402C2,462C2,47CD6,7C8 02,882,FFE,1C,3C,34,3C,3C,X,1000,11008,1 00,200,4,0,11838,10010,100,28,6,9 2000DATA16,7C00,4400,4600,43C0,1E078,12 008,339C8,20A48,2006F,24A01,31A01,10213, 1101E,19910,9FF0,F000,3800,3800,3C00,1F8 0,1E00,X,0,0,0,0,20,A400,8480,38,2140,90 A0,2500,0,10,13 2010DATA15,3C0,240,270,238,7E08,4208,40 18,4210,4210,F610,8210,C370,6040,3E40,3C 0,0,0,0,0,3800,3C00,3C00,3C00,X,100,0,14 0,80,C0,20,140,20,2880,1000,80,5,11 2020DATA15,FFF0,E610,C210,8250,F050,82F 0,9210,9210,8A30,82F0,8210,F610,C010,C19 0,FFF0,1800,3C00,7C00,C00,C00,X,40,80,10 0,0,2400,40,80,3800,800,C0,440,14,5 2030DATA15,1E00,13E0,7038,4208,436C,4E6 4,5034,4024,DC04,8264,824C,C298,5430,406 0,7FC0,0,0,0,0,0,0,0,0,0,3C00,3C00,2800, 3C00,A00,840,0,0,280,2540,80,110,0,0,80, 14,12 2040DATA16,3F7E0,21420,6DC20,40020,436B E,500A2,405A3,4A1A1,7A7AD,20C81,200AF,6D C81,45C41,41001,442E1,7FFBF,0,0,0,0,0,0, 0,0,0,0,1E,1E,3E,1E,100,18300,8000,5000, 12000,1000,0,5000,A000,0,0,6000,11,14 2050DATA16,7FF0,4010,4010,3F870,208C8,2 0408,211CE,21DC3,37CC1,17DF1,70D83,40002 ,41B66,47804,7CFC4,7C,3FE0,3FE0,680,X,0, 0,0,D060,8000,8210,8000,C,4000,5048,1000 0,150,11,9 2060DATA15,700,7DF0,C510,8010,81BF,1DA1 9,10299,10019,70889,45F09,40271,4E001,40 131,401FF,7FF00,0,0,0,0,0,0,0,0,38000,38 000,30000,3F000,3F000,0,480,1400,0,2144, 3520,44,2000,2800,840,0,10,2 2070DATA11,3C00,27F0,2010,2290,28B0,202 0,68A0,4320,4020,7F20,1E0,0,0,0,500,700, 700,X,1200,40,0,800,1000,440,100,13,10 2080DATA16,3E00,7E380,42080,420BC,420E4 ,40404,4E5F7,60181,6FBB7,43081,430A1,400 81,43061,63061,3FFE1,3F,0,0,0,0,0,0,8,8, 1E,E,1E,1E,1E,1E,600,1C800,9500,4000,100 00,2400,0,8400,8600,D00,C200,0,12,13 2090DATA16,3FE00,20200,20200,28600,213F C,3F044,4314,4984,6034,4414,4114,6D16,25 32,2502,2006,3FFC,1E000,1E000,17000,1E00 0,X,0,0,0,C00,60,10,A00,100,480,40,1200, D0,17,13 2100DATA15,1E,33,7FFE1,40021,57F23,57F6 3,40001,4FF61,7881F,804,C04,604,304,18C, F8,0,0,3FF80,20080,20000,20000,X,4,0,14, 0,1C,0,C0,210,190,60,0,18,7 2110DATA13,7C0,FC7E,8002,38002,23B83,28 011,28081,20091,38083,B683,8601,F03F,1FE 0,0,0,0,0,3F00,3F00,3F00,3F00,X,A48,A48, 4048,64,48,0,18,154,A0,18,11 2120DATA11,1FF,7FB11,44E01,440BB,40591, 4E401,60537,3D1B2,4402,7C9E,7F0,0,38000, 38000,38000,X,48,0,0,A48,0,C00,40,10,4 2130DATA15,1FF,101,175,3D45,7E701,40145 ,4416D,67B01,2FA4F,2F008,23388,201F8,2BF 80,22000,3E000,0,0,38,38,38,X,0,0,0,0,88 00,80,20,420,8800,400,0,10,12 2140DATA14,1C000,161E0,13F38,1100E,1000 2,11402,135DE,16104,1C304,18604,10C1C,11 C10,114F0,1F780,0,0,0,0,0,0,0,3800,7800, F000,E000,E000,0,5A0,2210,4240,0,20,50,2 0,120,80,8,5 2150DATA16,3FE0,2020,2038,2008,33E8,162 8,1408,1038,3408,2698,E09C,8084,A004,BF4 C,8078,FFC0,1FC0,1FC0,X,0,0,0,0,40,280,8 40,20,1300,40,A90,0,15,9 2160DATA11,F000,9FC0,3807F,20061,22E01, 28081,280B1,23631,3001F,1FF30,1E0,0,0,1E ,E,E,E,E,X,4000,9900,4180,0,6B40,0,2040, 9,6 2170DATA17,0,1FF0,1110,1010,1010,1010,1 010,1C70,440,7EFC,4004,4004,600C,2008,20 08,27C8,3C78,0,EE0,FE0,FE0,FE0,FE0,X,AA0 ,540,AA0,540,AA0,0,0,0,0,1550,AA0,1550,2 80,11,15 2180DATA15,3FE,262,E02,7836,1CF74,10A14 ,14014,10A04,1CBE4,7804,E0C,218,230,260, 3C0,0,0,0,0,1E0,1E0,1E0,X,80,108,0,2080, 400,10,0,40,120,C0,0,10,4 2190DATA16,1E07E,12043,138C1,10889,12F8 1,1015F,70554,40144,40E56,4D002,7890A,85 42,C2A6,6002,3022,1FFE,0,0,0,0,0,0,0,0,0 ,7000,7800,3C00,1C00,C00,0,8000,4000,100 0,C000,11000,A000,0,0,1010,810,508,3,9