1 CLS:CGEN2:LOCATE7,6:PRINT"FIGHTING MARIO":LOCATE9,15:PRINT"PUSH START":HO=PEEK(&H48D)*256+PEEK(&H483):LOCATE9,18:PRINT"HI-SCORE"HO"0":PALETB Q,13,48,39,22:LOCATE6,10:PRINT"* START":LOCATE8,12:PRINT"CONTINUE-LEVEL":X=10
2 LZ=PEEK(&H48A)*256+PEEK(&H48B)
3 S=STRIG(0):IFS<>2THEN6
4 LOCATE6,X:PRINT" ":X=X+2:IFX=14X=10
5 LOCATE6,X:PRINT"*":PAUSE20
6 IFS=8LV=LV+1:PAUSE10
7 IFS=4LV=LV-1:PAUSE10
8 IFLV<0LV=Q
9 IFLV>LZ THENLV=LZ
10 LOCATE22,12:PRINTLV+1" "
11 IFSTRIG(Q)<>1THEN3
12 IFX=10LV=Q
13 V=17:V1=18:V2=19:GOTO15
14 POKE&H4015,&H89:POKE&H4000,&H6F,&HAB,&HFF,&H8:RETURN
15 CGSET,Q:SPRITEON:X=15:Y=167:B=3:YI=Y:GOSUB82:PO=2:OP=11:GOSUB73:AK=120:AJ=120:SP=4:J=5:GOSUB80:T1=255:TN=300:FL=1:HG=Q:O=&HA
16 FORI=0TO2:DEFSPRITEI,(Q,1,Q,Q,Q)="":NEXT:FORI=3TO5:DEFSPRITEI,(Q,1,Q,1,Q)="":NEXT:POKE&H680,Q,1,2,3,4,5,6,7,12,13,14,15,1,Q,3,2,5,4,7,6,13,12,15,14:PAUSE100
17 S=STICK(Q):TN=TN-1:LOCATE16,22:PRINT"TIME"TN" ":IF TN=Q GOTO64
18 IFG=0ANDA=0ANDS=1B=4:C=3:A=1:SPRITEQ:SPRITE1
19 IFG=0ANDA=1ANDS=2B=1:C=Q:A=Q:SPRITE4:SPRITE3
20 IFG=0ANDS=1X=X+SP:SWAPB,C:IFR=3TI=Q
21 IFG=0ANDS=2X=X-SP:SWAPB,C:IFR=3TI=Q
22 IFG=0SPRITEB,X,Y:SPRITEC
23 IFSTRIG(Q)<>1THEN29
24 CUTQ:PLAY"O5V15B0C0B0"
25 LOCATE12,15:PRINT"PAUSE
26 IFSTRIG(Q)<>1THEN26
27 PLAY"O5V15B0C0B0"
28 LOCATE12,15:PRINT"     "
29 IFG=1ANDS=1D=SP:J=5:SPRITE2
30 IFG=1ANDS=2D=-SP:J=2:SPRITE5
31 IFG=1ANDY>=YI Y=YI:Z=Q:G=Q:D=Q:SPRITEB,X,Y:SPRITE5:SPRITE2
32 IFS=0D=Q
33 X=X+((X>224)-(X<15))*SP
34 IFG=0ANDSTRIG(Q)=8G=1:Z=-10:SPRITEB:GOSUB63
35 Z=Z-(G=1)
36 IFG=1X=X+D:Y=Y+Z:SPRITEJ,X,Y
37 IFR=0R=1:T=240:K=167:POSITIONQ,T,K:PP=OP
38 POKE&H4015,&HF:POKE&H400C,&HF,&HFF,&HE,Q
39 IFR=1T=XPOS(Q):K=YPOS(Q):DEFMOVE(Q)=SPRITE(2,E,1,2,Q,3):POSITIONQ,T,K:MOVEQ:RI=R
40 IFR=1T=SGN(Y-YPOS(Q)):E=((T=1)-(T=-1))+7:IF(Q)*(XPOS(0)<X)THEN E=3
41 IFPL=0ANDR=1ANDABS(X-AK)<6ANDABS(Y-AJ)<6GOSUB14:LP=O:PALETS Q,14,54,39,39:PL=1:PO=PO+2:SP=6:GOSUB73
42 IFR=2DEFSPRITE7,(2,1,Q,Q,Q)="ナニヌネ":X=15:Y=95:T=200:K=95:R=3:CANQ:YI=Y:OP=22:GOSUB73:RI=R:HG=7:PP=OP:G=Q:SPRITEJ:V=8:V1=9:V2=O:TN=700
43 IFR=3T=T+SGN(X-T)*2+LV:K=K+SGN(Y-K)*2+LV:SPRITE7,T,K
44 IFR=4Y=167:V=17:V1=18:V2=19:OP=33:R=5:RI=R:X=15:DEFSPRITE7,(2,1,Q,Q,Q)="XYZ「":SPRITEJ:SPRITEB:TN=900:GOSUB83:YI=Y:T1=240:K=167:MO=6:HG=7:U=-O:PP=OP:GOSUB73:GOSUB80
45 IFR=5ANDOL=Q K=K+U:SPRITE7,T,K:T1=T1+SGN(X-T1)*MO+LV:IFK<=116ORK>=166THENU=-U
46 IFOL=1ANDX>120ANDX<136ANDSTICK(Q)=4R=8:RI=R:PAUSE200
47 IFR=8CLS:SPRITEOFF:FORI=1TO16:LOCATEI+4,11:PRINTMID$("CONGRATULATIONS!",I,1):GOSUB75:PAUSE50:NEXT:PLAY"O3V15M0T5:O4V15M0T5":PLAY"G3G3G3O4C5E5G8:C3C3C3E5G5O5C8":PAUSE300:R=9
48 IFR=9LOCATE5,5:PRINT"IF LEVEL UP,PUSH[A]":LOCATE5,7:PRINT"IF END,PUSH[B]":R=O
49 IFR=O ANDSTRIG(Q)=8R=Q:LV=LV+1:LP=Q:PALETS Q,14,54,22,2:GOTO13
50 IFR=O ANDSTRIG(Q)=4THEN72
51 IFR=O GOTO49
52 IFR<>11P=&HB:XX=X+4:H=(ABS(XX-XPOS(Q))<P)*(ABS(Y-YPOS(Q))<3)*(R=1)+(ABS(X-T)<P)*(ABS(Y-K)<P)*(R>1):IFH<>Q PO=PO-1:GOSUB74:GOSUB73:IFPO=Q GOTO64
53 IFR=5ANDX>215ANDTL=0TL=1:GOSUB14
54 IFTL=1LOCATEO,19:PRINTCHR$(209):PAUSE90:LOCATEO,19:PRINTCHR$(221):POKE&H4015,&HF:POKE&H400C,&HF,&HF,&HF,&HF:PAUSE100:LOCATEO,19:PRINT" ":MO=1:PO=PO+2:GOSUB73:TL=3
55 IFRI=3ANDSTICK(Q)=0ANDLP=10TI=TI+1:IFTI=110THENLP=20
56 IFLP=20LOCATEO,9:PRINTCHR$(199):IFABS(X-96)<&HB ANDABS(Y-88)<&HBTHENGOSUB14:LP=30:LOCATEO,9:PRINT" ":PO=PO+5:GOSUB73
57 IFR=5T=T1+9
58 IFR=1T=XPOS(Q):K=YPOS(Q)
59 IFR<>11P=&HB:XY=X+4:YX=Y+8:IFG=1ANDABS(XY-T)<P ANDABS(YX-K)<3 OP=OP-1:GOSUB73:GOSUB75:SC=SC+5:GOSUB80:IFOP=Q GOSUB76:ERA HG:T=Q:K=Q:SPRITE HG:SC=SC+PP*100:OL=1:GOSUB80:IFRI<>5R=33:OL=Q
60 IFR=11GOSUB77
61 IFR=33LOCATE25,V:PRINTCHR$(195)+CHR$(195)+CHR$(195):LOCATE25,V1:PRINTCHR$(195)" "CHR$(195):LOCATE25,V2:PRINTCHR$(195)" "CHR$(195):R=11
62 GOTO17
63 POKE&H4015,&H99:POKE&H4000,&H5F,166,&H99,&H1:RETURN
64 DEFSPRITE6,(Q,1,Q,Q,Q)="":POKE&H680+6*4,24,25,26,27:SPRITE6,X,Y:SPRITEB:SPRITEJ
65 A=254:FORI=1TO6:POKE&H4015,15:POKE&H4000,132,138,A,8:A=A-A/4:PAUSE2:NEXT
66 POKE&H4000,144:PAUSE60:POKE&H4015,&H17:POKE&H4000,&HF,&HF4,&HFD,&H8:FORZ=50TO28STEP-1:PALETS Q,30,Z,33,2:PAUSE3:NEXT
67 FORH=35TO30STEP-1:PALETS Q,30,30,H,2:PAUSE3:NEXT
68 FOR K=2TO16:PALETS Q,30,30,30,K:PAUSE3:NEXT
69 SPRITEQ:SPRITE1:SPRITE2:SPRITE3:SPRITE4:SPRITE5:SPRITE6
70 IFSC>HO THEN HO=SC
71 IFLV>LZ THEN LZ=LV
72 LOCATE8,9:PRINT"GAME OVER":PAUSE300:POKE&H48D,HO/256,HO MOD256:POKE&H48A,LZ/256,LZ MOD256:RUN
73 LOCATE1,21:PRINT"MARIO["PO" ] ":LOCATE15,21:PRINT"ENEMY["OP" ] ":RETURN
74 POKE&H4015,15:POKE&H4000,&HC5,&H5,&H6,&HA:RETURN
75 POKE&H4015,&HF:POKE&H400C,&H8,&H24,&H99,Q:RETURN
76 POKE&H4015,&H8:POKE&H400C,&HF,&HF,&H5,&H8:RETURN
77 I=220:W=YI:IFABS(X-I)<9ANDABS(Y-W)<9THENPLAY"O5C0":PO=PO+2:SC=SC+TN:GOSUB73:GOSUB79:FL=FL+1:RI=RI+1:R=RI:GOSUB80
78 RETURN
79 LOCATE6,Q:PRINT"FLOOR "FL"  CLEAR":LOCATE7,1:PRINT"FLOOR "FL+1"  START":PAUSE250:LOCATE6,Q:PRINT"               ":LOCATE7,1:PRINT"               ":RETURN
80 LOCATEQ,22:PRINT"SCORE";SC"0":IFSC>30000THENSC=30000
81 RETURN
82 CLS:FORI=0TO27:LOCATEI,20:PRINTCHR$(195):LOCATEI,11:PRINTCHR$(195):LOCATEI,2:PRINTCHR$(195):NEXT:RETURN
83 CLS:FORI=0TO27:LOCATEI,20:PRINTCHR$(195):NEXT:LOCATE14,20:PRINTCHR$(254):RETURN

