This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page,
please contact me immediatelly so I can remove it!
|
|
|
-
Entry name:Piggy Bank
-
Category:Games
-
Publisher/Developer:BELLCOM - Public Domain Library
Listing 1
10 DIM PM$(150),C$(12),H$(6) 110 GRAPHICS 0:? "ONE MINUTE PLEASE ...":GOSUB 13000:GOSUB 9000:H$="0.00" 120 GRAPHICS 17:POSITION 0,9:? #6;"PRESS START TO BEGIN":? #6;" HIGH SCORE: $";H$ 125 IF PEEK(53279)=7 THEN 125 130 JOY=1500:BONUS=1:GOTO 1000 1000 REM 1010 GRAPHICS 6:C=4:SETCOLOR 1,C,4:SETCOLOR 2,0,4:SETCOLOR 0,C,6:SETCOLOR 4,11,6:BUCKS=0:POKE 752,1:PX=0 1020 DLIST=PEEK(560)+256*PEEK(561):POKE 512,128:POKE 513,6:HC=0:HC2=0:DHC=0 1030 POKE 559,63:POKE 87,1:POKE DLIST+6,6:POSITION 4,0:? #6,," ":GOSUB 13040 1040 DPIG=DLIST+64:POKE DPIG+2,152:POKE DPIG,77:SC=1.5:CMAX=1:POKE 559,63:NCN=1:CO=4 1044 SPD=1:IF STRIG(0)=0 THEN POKE 656,0:POKE 657,17:? "Advanced Game":NCN=1:CMAX=4:SC=2.5:SPD=2 1045 IF JOY<>1500 THEN POKE 656,0:POKE 657,14:? "Demonstration Game":NCN=8:CMAX=4:SC=2.5 1050 FOR ADDR=DPIG+3 TO DPIG+20:POKE ADDR,13:NEXT ADDR:POKE DPIG+20,141:POKE 54286,192:SETCOLOR 2,C,2 1055 POSITION 4,0:? #6,," ":POKE 87,7 1060 FOR HPOS=51 TO 29 STEP -2:FOR SCROLL=0 TO 12 STEP 4:GOSUB 1540:NEXT SCROLL:NEXT HPOS:HPOS=29:SCROLL=12 1070 PX=125:POKE PLX,PX:FOR X=1 TO 161:POKE PLY,X:NEXT X 1100 REM 1110 APM=ADR(PM$):CN=1:HC=0:HC2=0:DHC=0:NCN=NCN+1:IF NCN-MISS>15 THEN GOTO 1900 1120 TRAP 1990:GOSUB 1800 1130 POKE PLY+2,CN:POKE PLY+3,CN:HC=CO*10*SGN(RND(X)-0.5)+116:SC=SC+0.1*(SC<3):DC=SC 1140 SN=SGN(RND(X)-0.5):HC=CO*16*SN+124:DHC=-SN*CO/4*(RND(X)+0.5) 1150 POKE 53250,HC:HC2=HC+7:POKE 53251,HC2 1200 REM 1210 CN=CN+DC:DC=DC+DDC:GOSUB JOY:IF PEEK(53254)=0 AND CN<190 THEN 1210 1220 IF CN<50 THEN 1210 1230 IF (PEEK(53254)>1 OR PEEK(53255)>1) AND CN<165 AND DC>0 THEN 1300 1240 IF PEEK(53254)=1 AND PEEK(53255)=1 AND CN>100 AND DC>0 THEN POKE 53250,0:POKE 53251,0:GOTO 1400 1250 IF CN<190 THEN 1210 1260 VALUE=0:GOTO 1700 1300 REM 1310 SOUND 0,6,8,10:DHC=RND(X)*3-1.5:DC=-ABS(DC)*0.6:SOUND 0,0,0,0:GOTO 1200 1400 REM 1410 FOR W=15 TO 0 STEP -1:SOUND 0,CO+CO+2,6,W:SETCOLOR 0,C,14-W/2:NEXT W:SETCOLOR 0,C,6:HC=0:HC2=0:DHC=0:MISS=0 1420 FOR I=VALUE TO 5 STEP -5:SOUND 0,I+20,10,6:BUCKS=BUCKS+5:GOSUB 1450:GOSUB JOY+20:NEXT I:SOUND 0,0,0,0 1425 IF BUCKS/100=INT(BUCKS/100) THEN B$(2)=".00":GOSUB 1460 1430 POKE PLY+2,1:POKE PLY+3,1:SC=SC+0.2:SPD=SPD*1.05 1440 GOTO 1100 1450 B$=STR$(BUCKS/100):IF BUCKS/10=INT(BUCKS/10) THEN B$(LEN(B$)+1)="0" 1460 POKE 656,1:POKE 657,24:? "Savings: $ ";B$:RETURN 1500 REM 1510 POKE PLY+2,CN:POKE PLY+3,CN:POKE 53278,0 1520 IF STICK(0)<12 AND STICK(0)>8 AND HPOS<51 THEN SCROLL=SCROLL-4:PX=PX-2:IF SCROLL<0 THEN SCROLL=SCROLL+16:HPOS=HPOS+2 1530 IF STICK(0)<8 AND HPOS>7 THEN SCROLL=SCROLL+4:PX=PX+2:IF SCROLL=16 THEN SCROLL=0:HPOS=HPOS-2 1540 ADDR=80+SCROLL:X=USR(ADR(SUB$),DPIG+1,HPOS,ADDR):HC=HC+DHC:HC2=HC2+DHC:POKE 53250,HC:POKE 53251,HC2 1550 POKE 53248,PX:RETURN 1700 REM 1710 SOUND 0,52,12,8:POKE 53250,0:POKE 53251,0:HC=0:HC2=0:DHC=0:POKE PLY+2,1:POKE PLY+3,1:SC=SC-0.2:MISS=3 1720 SPD=SPD/1.1:FOR W=1 TO 100:NEXT W:SOUND 0,0,0,0:GOTO 1100 1800 REM 1805 OCN=CO 1810 CO=INT(RND(X)*CMAX):RESTORE 1880+CO*3:READ VALUE,COL,DDC:POKE 706,COL:POKE 707,COL:CMAX=CMAX+0.5*(CMAX<4) 1815 IF CO=OCN THEN 1810 1820 FOR A=PMBASE+1538 TO PMBASE+1556 STEP 2:READ X,Y:POKE A,X:POKE A+1,Y:GOSUB JOY+20:NEXT A:DDC=DDC*SPD 1830 FOR A=PMBASE+1538 TO PMBASE+1556 STEP 2:READ X,Y:POKE A+256,X:POKE A+257,Y:GOSUB JOY+20:NEXT A 1840 POKE PLL+2,24:POKE PLL+3,24 1850 RETURN 1880 DATA 10,14,.2 1881 DATA 3,7,7,15,15,13,13,13, 13,15,15,7,7,3,0,0, 0,0,0,0 1882 DATA 224,240,240,248,248,136,168,168,136,248,248,240,240,224,0,0,0,0,0,0 1883 DATA 25,14,.3 1884 DATA 3,7,15,15,25,25,29,29, 25,27,25,9,15,15,7,3, 0,0,0,0 1885 DATA 224,240,248,248,136,140,188,140,140,236,140,140,248,248,240,224,0,0,0,0 1886 DATA 50,14,.4 1887 DATA 7,15,31,31,17,49,55,55, 49,61,61,61,49,17,31,31, 15,7,0,0 1888 DATA 224,240,248,248,136,140,172,172,172,172,172,172,140,140,248,248,240,224,0,0 1889 DATA 100,14,.5 1890 DATA 7,15,15,29,28,24,57,57, 57,60,60,61,57,56,28,29, 31,15,15,7 1891 DATA 224,240,240,184,56,24,156,188, 188,60,28,156,156,28,56,184, 248,240,240,224 1899 INPUT X,Y:? "";CHR$(X*16+Y):GOTO 1899 1900 REM 1905 IF BUCKS>BONUS*700 THEN BONUS=BONUS+1:POKE 656,0:POKE 657,17:? "";:NCN=5:GOTO 1100 1910 POKE 87,2:POSITION 2,0:? #6,," YOU HAVE SAVED $";B$ 1920 FOR I=1 TO 12:SETCOLOR 0,0,0:FOR J=1 TO 25:NEXT J:SETCOLOR 0,0,12:FOR J=1 TO 25:NEXT J:NEXT I 1930 FOR J=1 TO 300:NEXT J:POKE 53248,0:POKE PLY,1:IF BUCKS>HIGH THEN HIGH=BUCKS:H$=B$ 1940 GOTO 120 1990 POP:POKE 53250,0:POKE 53251,0:GOTO 1900 9000 REM 9002 DIM SUB$(40):SUB$="hhhhhhh`" 9005 C=4:DX=2:DY=0:FOR NPIG=0 TO 3:DX=2+NPIG+NPIG 9010 GRAPHICS 7:COLOR 1:SETCOLOR 4,0,0:SETCOLOR 0,C,6:RESTORE 10000+100*NPIG:POKE 559,32 9020 FOR I=1 TO 26:READ Y,X1,X2:IF X2<>0 THEN PLOT DX+X1,DY+Y:DRAWTO DX+X2,DY+Y 9030 NEXT I 9090 COLOR 2:SETCOLOR 1,C,4:RESTORE 11000+100*NPIG:FOR I=1 TO 41 9100 READ Z,X,Y:IF Z=0 THEN PLOT DX+X,DY+Y 9110 IF Z=1 THEN DRAWTO DX+X,DY+Y 9120 NEXT I 9190 COLOR 3:SETCOLOR 2,C,2:RESTORE 12000+100*NPIG:TRAP 9250:FOR I=1 TO 36 9200 READ Z,X,Y:IF Z=0 THEN PLOT DX+X,DY+Y 9210 IF Z=1 THEN DRAWTO DX+X,DY+Y 9220 NEXT I 9250 TRAP 40000:GOSUB 9500:NEXT NPIG 9260 FOR ROW=0 TO 19:SCINDEX=SCREEN+ROW*40:FOR COL=0 TO 10:POKE SCINDEX+COL,0:NEXT COL:NEXT ROW:RETURN 9500 REM 9510 DLIST=PEEK(560)+256*PEEK(561):SCREEN=PEEK(DLIST+4)+256*PEEK(DLIST+5):PIGS=20*1024+1024*NPIG 9550 FOR ROW=0 TO 19:PGINDEX=PIGS+ROW*48:SCINDEX=SCREEN+ROW*40:FOR COL=0 TO 10:POKE PGINDEX+COL,PEEK(SCINDEX+COL) 9560 NEXT COL:NEXT ROW 9590 RETURN 10000 DATA 0,0,0, 1,0,0, 2,6,18, 3,4,21 10010 DATA 4,2,28, 5,1,27, 6,1,27, 7,0,27 10020 DATA 8,0,27, 9,0,27, 10,0,28, 11,0,32 10030 DATA 12,1,32, 13,1,31, 14,2,6, 14,8,31, 15,3,5, 15,11,14, 15,18,20 10040 DATA 16,3,5, 16,19,20, 17,3,5, 17,19,20, 18,3,5, 18,19,20, 19,3,5, 19,3,20 10100 DATA 0,0,0, 1,0,0, 2,6,18, 3,4,21 10110 DATA 4,2,28, 5,1,27, 6,1,27, 7,0,27 10120 DATA 8,0,27, 9,0,27, 10,0,28, 11,0,32 10130 DATA 12,1,32, 13,1,31, 14,2,6, 14,8,31, 15,3,5, 15,11,14, 15,18,20 10140 DATA 16,3,5, 16,19,19, 17,4,5, 17,0,0, 18,5,6, 18,0,0, 19,5,5, 19,0,0 10200 DATA 0,0,0, 1,0,0, 2,6,18, 3,4,21 10210 DATA 4,2,28, 5,1,27, 6,1,27, 7,0,27 10220 DATA 8,0,27, 9,0,27, 10,0,28, 11,0,32 10230 DATA 12,1,32, 13,1,31, 14,2,6, 14,8,31, 15,3,5, 15,11,14, 15,18,20 10240 DATA 16,3,5, 16,19,20, 17,3,5, 17,19,20, 18,3,5, 18,19,20, 19,3,5, 19,3,20 10300 DATA 0,0,0, 1,0,0, 2,6,18, 3,4,21 10310 DATA 4,2,28, 5,1,27, 6,1,27, 7,0,27 10320 DATA 8,0,27, 9,0,27, 10,0,28, 11,0,32 10330 DATA 12,1,32, 13,1,31, 14,2,6, 14,8,31, 15,3,5, 15,11,14, 15,18,20 10340 DATA 16,3,5, 16,19,19, 17,2,4, 17,0,0, 18,2,3, 18,0,0, 19,2,2, 19,0,0 11000 DATA 0,4,3, 1,0,7, 1,0,11, 0,2,4, 0,1,5, 0,1,7 11010 DATA 0,2,13, 0,3,13, 0,3,15, 1,3,19, 0,6,12, 1,5,19, 0,7,11, 0,8,9 11020 DATA 0,12,14, 1,14,14, 0,16,9, 1,17,12, 1,19,17, 1,19,19, 0,20,19, 0,20,15, 1,22,12, 0,22,14 11030 DATA 0,24,13, 0,24,14, 0,26,14, 1,31,14 11040 DATA 0,32,12, 1,32,11, 1,29,10, 1,27,9, 1,27,7, 0,28,4, 1,25,4, 1,22,5, 1,21,3, 0,23,3, 1,26,3 11050 DATA 0,21,3, 1,19,3 11100 DATA 0,4,3, 1,0,7, 1,0,11, 0,2,4, 0,1,5, 0,1,7 11110 DATA 0,2,13, 0,3,13, 0,3,15, 1,5,19, 0,6,12, 1,6,19, 0,7,11, 0,8,10 11120 DATA 0,12,14, 1,14,14, 0,16,8, 1,17,12, 1,18,17, 1,17,19, 0,18,19, 1,19,15, 1,22,12, 0,22,14 11130 DATA 0,24,13, 0,24,14, 0,26,14, 1,31,15 11140 DATA 0,32,12, 1,32,12, 1,29,10, 1,27,9, 1,27,7, 0,28,4, 1,25,4, 1,22,5, 1,21,3, 0,23,3, 1,26,3 11150 DATA 0,21,3, 1,19,3 11200 DATA 0,4,3, 1,0,7, 1,0,11, 0,2,4, 0,1,5, 0,1,7 11210 DATA 0,2,13, 0,3,13, 0,3,15, 1,3,19, 0,6,12, 1,5,19, 0,7,11, 0,8,9 11220 DATA 0,12,14, 1,14,14, 0,16,9, 1,17,12, 1,19,17, 1,19,19, 0,20,19, 0,20,15, 1,22,12, 0,22,14 11230 DATA 0,24,13, 0,24,14, 0,26,14, 1,31,14 11240 DATA 0,32,12, 1,32,11, 1,29,10, 1,27,9, 1,27,7, 0,28,4, 1,25,4, 1,22,5, 1,21,3, 0,23,3, 1,26,3 11250 DATA 0,21,3, 1,19,3 11300 DATA 0,4,3, 1,0,7, 1,0,11, 0,2,4, 0,1,5, 0,1,7 11310 DATA 0,2,13, 0,3,13, 0,2,15, 1,1,19, 0,6,12, 1,3,19, 0,7,11, 0,8,9 11320 DATA 0,12,14, 1,14,14, 0,16,10, 1,17,12, 1,21,19, 1,21,19, 0,22,19, 1,20,15, 1,22,12, 0,22,14 11330 DATA 0,24,13, 0,24,14, 0,26,14, 1,31,14 11340 DATA 0,32,12, 1,32,11, 1,29,10, 1,27,9, 1,27,7, 0,28,4, 1,25,4, 1,22,5, 1,21,3, 0,23,3, 1,26,3 11350 DATA 0,21,3, 1,19,3 12000 DATA 0,1,12, 1,2,15, 0,8,10, 1,7,13, 1,8,14, 1,11,14, 1,11,15, 1,14,15, 1,15,14, 1,17,14, 0,8,13 12010 DATA 0,22,13, 1,23,14, 0,25,14, 0,31,13, 1,29,13, 1,28,12, 0,26,9, 0,27,5, 1,26,7, 0,23,6 12020 DATA 0,25,3, 1,23,3, 1,22,4, 1,23,4, 0,0,6, 1,-2,5 12100 DATA 0,1,12, 1,2,15, 0,8,11, 1,7,13, 1,8,14, 1,11,14, 1,11,15, 1,14,15, 1,15,14, 1,17,14, 0,8,13 12110 DATA 0,22,13, 1,23,14, 0,25,14, 0,30,13, 1,29,13, 1,31,14, 1,28,12, 0,26,9, 0,27,5, 1,26,7, 0,23,6 12120 DATA 0,25,3, 1,23,3, 1,22,4, 1,23,4, 0,0,6, 1,-2,4 12130 DATA 0,2,15, 1,1,19, 1,2,19, 1,3,15, 0,2,17, 0,20,16, 1,22,19, 1,21,19, 1,20,17 12200 DATA 0,1,12, 1,2,15, 0,8,10, 1,7,13, 1,8,14, 1,11,14, 1,11,15, 1,14,15, 1,15,14, 1,17,14, 0,8,13 12210 DATA 0,22,13, 1,23,14, 0,25,14, 0,31,13, 1,29,13, 1,28,12, 0,26,9, 0,27,5, 1,26,7, 0,23,6 12220 DATA 0,25,3, 1,23,3, 1,22,4, 1,23,4, 0,0,6, 1,-2,5 12300 DATA 0,1,12, 1,1,15, 0,9,9, 1,7,13, 1,8,14, 1,11,14, 1,11,15, 1,14,15, 1,15,14, 1,17,14, 0,8,13 12310 DATA 0,22,13, 1,23,14, 0,25,14, 0,31,13, 1,29,13, 1,28,12, 0,26,9, 0,27,5, 1,26,7, 0,23,6 12320 DATA 0,25,3, 1,23,3, 1,22,4, 1,23,4, 0,0,6, 1,-2,6 12330 DATA 0,6,14, 1,7,19, 1,6,19, 1,5,16, 0,6,17, 0,17,16, 1,16,19, 1,17,19, 1,18,16 13000 REM 13005 REM 13010 DIM B$(10) 13015 PM$="X8Rjmm.LV" 13020 PM$(LEN(PM$)+1)="Lbh \`Hh@" 13025 A=6*256-1:FOR I=1 TO LEN(PM$):POKE A+I,ASC(PM$(I,I)):NEXT I 13030 PLX=53248:PLY=1780:PLL=1784 13040 FOR A=1776 TO 1787:POKE A,0:NEXT A 13050 A=PEEK(106)-32:POKE 54279,A:POKE 1788,A+4:PMBASE=256*A:POKE 559,63:POKE 53277,3:POKE 623,2 13060 FOR I=PMBASE+1536 TO PMBASE+1571:POKE I,0:POKE I+256,0:NEXT I 13070 POKE PLY,1:RESTORE 13090:FOR I=PMBASE+1026 TO PMBASE+1041:READ X:POKE I,X:NEXT I:POKE 704,0:POKE PLL,16 13080 X=USR(1648):POKE 512,128:POKE 513,6 13090 DATA 36,60,126,102,100,100,60,62,38,102,102,60,36,0,0,0 13100 RETURN
References
Listing downloads
Downloads
Copyright holder
