Original post by georgie
This is a two-player game I wrote back in the heyday of the PET (1981). It's modeled after the arcade game of the same name including shot 'steering' capability.
Tank Battle runs well using the VICE PET emulator and of course the real PET. It fits within 8k but doesn't work properly on the VICE pet 2001 setting (use pet 4032 setting instead). Game control uses the keyboard as described in the program help, left player A,D,W,X,S and right player 4,6,8,2,5. For those people running emulators on a machine without a numeric keypad I have a VICE keyboard map that makes the game playable (email me at georgie3@hotmail.com to get the map or if you have problems extracting the program).
The game is written entirely in machine language except for some setup code. I've posted it in uuencode format due to the binary machine code it contains. It extracts to a .d64 file as follows:
- Save the text to a file ending in .uu using copy & paste into notepad.
- uudecode to create tank_battle.zip
- unzip to create Tank Battle.D64
This can be done using WinRAR, or with unix/linux/cygwin uudecode and unzip.
Have fun!
Georg Feil
begin 700 tank_battle.zip
M4$L#!!0````(`#BZ/C?#$%^3R!4```"K`@`/````5&%N:R!"871T;&4N1#8T
M[-E[<%-7>@#P[YYK6QAD6[(,E@E+;K1.(E&1W*N796&,92/`L;"-+6/CV4R5
M;/.@)5NV3;N49,F5'&>7Q3;/P7AVM6,,MB,;DZ`DG;!$6^4!P32T2CMI'L34
M9-+4<5*JS788)J6TW[DR&\CN3O_H/YW)]_-8.CJO>W7O>7S7!B"$$$(((800
M0@@AA!!"""&$$$(((8000@@AA!!"""&$$$(((8000@@AA!!"""&$$$(((800
M0@@AA!!"""&$$$(((8000@@AA!!"""&$$$(((8000@@AA!!"""&$$$(((800
M0@@AA!!"""&$$$(((8000@@AA!!"""&$$$(((8000@@AA!!"""&$$$(((800
M0@@AA!!"""&$$$(((8000@@AA!!"""&$$$(((8000@@AA!!"""&$$$(((800
M0@@AA!!"""&$_']A*`!8\I;ZF7I[Q!LY%SD?^2BR/%H;#43?C6:BY5UU73E8
MJ4T%,Z\L_::9F*H!F']'RJO^:3?XX.Q2X15ANJ:`UUJ8PI
MC!D1X)JJ2^7UJP"%M0!JP54HA"42Z'EWS?C+PCRU^&WU@IH?61V9C%R+A*+_
M$(6NA5U57=5=#^&Y>%S\!T`XQ$\!SP!T(&;PK4S=*J2"1>%<83J<*LD1\R`-
M9CFO1GA=552]%WK@`35/$O6@J&730@^\!?JP,`W?!@&^X0Q%6W>^L6V!FG.[
MY`58JQX%0<9+JDM!#.53'7C_A"\`9H1U-7E7=;\"&"S.
MJ2F$;:NT_L*\JHHOMP$4WQ7Y@X@1JY*^CIZ*I:/G7W'HR#"ZE#.:E
MPO2@D()+?&BD<,P)(*C:B:3P5\?[7LHKR]K9F?E9UN`'$>9M!2\T;]-%5-6[
M->?6GF')3O5P9"3R2N3-2#IR(>**KHJNB[9&-\,WG,$HA"<.L$Q>''I=8GAB
M/\M8I-VE$_TLLWCL7!QB[[#8<9:\Q#*B=&%17(B)XO%#+"Z$
MR'O)L[6S1N&)94]8G]SP))8(]ULO+7M@K@36"UNL6Y;MV+`#2ZPWMVF^N
MF]NT_*:-,/IL/'*WU<:8(`C:,%P.G?`C>!$'2*&P0G!FO\=___OT/YY-OCA^
MY*<'>I]1G_B+K7_R\`/W;VK[^GC[+;_[JA!"R#?`1QA-2;BNOOICW#WU7O%E
MW%GG>8'5?`_C`<-GZG6U$W?-_=&_C7X9'>P:[-)VS>CWHL]T-;5)LM0*YJ?#
M`![<[F&K-]LE[M$B./DV_33`6Z*,&[I.72D%:
M"MMT*M8"9L"&^I1^;G_GP<8T0,$S*8`'C2H88NJ'VA[.C^[L^K.N5Z/7HHN[
M;NNZLZNVJZ4QL-I8'Y)"34T-TJ;LF07JFAKQER_Q57(&8*^E!L0W=N-'/9`Y
M!E&[E[]S,U34,P#?W2@#O/E]%8,P/0@BA&OFY0B@ULAY`H9EH,_!+(.699#S
MM+KCG0U%Q%4#YNCT`F=>_WILW([XI#-7D+\K=">6/+JF"S/37:M#]_WT,N;\_
M-KI%_+7NJOCB[I7Q#=W5<;5[U3&7F"D<]'K&G0HRK
MO6[Q6(5XHLKN%C.Z^.`QC[BWNM$MIN=I19<<(C3MZ5?@^C3H\X7&W>
M;.VNQEY63;Z:?B/\OYW*_PE^99A[I/GN=/;YAI!O*N-\(>=V?%CN=U>Z/%Z[
MXO#=ESAE'0_5VWR]E;+L^QFX<6W?+87\C0U2K3\4"@8DUSTR;,AAF&NMLRF5
M7D6JW22M#32UK)76!.J#\(>X)V"+II:FQE`3;,_)P4]:<7W`6;.N*;3>7Q^\
MIZYI/0SDS(?&4*+"-V#9;SFB.&V6FPYS!_PBIPB:@PF'R^UK:$VX%;=OUVM6
MMRS+3EM"'G4H<#W'H%50/+R"XE9\_6Z/TVG'<_+U>^0*.9MR>]P>NT.IT/*\
MV90;DW9L85S06)ZP2!9?9R@1JO=UUB4<5_?'LX
M\A=.6"RC'AD[A?N*'I_=U1EZ`1N,#IRS6J01B[VSSJ[8+#'+"MZ%<[RS+MOA
MF.*&MJ(=LSNQI2)#=]'(;&?BC+6SW.;K#"9>M]8W8FJ7M?,YQ5%A>\'I&!VP
M2+P3K*]@_8-%O\`C!4\H\FBV@^>*WIC%-@G\'
M%.<*7J/%SGDYWA/6OE9K;PS.*X8]2M\O=BW+$->P7?$
M7;P4OZCBEF%)P%K$^^%29-F64+!W
M+:U@VN,8[8.'"OK$G_$;:RQ>TQ*PRC9I?5MK2*H-2$Z7S#O:53`C#EA,1ORV
MD8:$<(=I@[,#C>'V-"=G7GF@?5WS-"8_7
M+8\I+OE8NZ^_>4R1W789_J/@`UUD8\+I\+HJCSJ='F]EW"7S8VP\NG',68&7
M^S5K@^TYI9*?J[$@4S"QC^'>),06BD&K,5DF8LY^G@/9G.`#QN1",
M;J8*<_C[/)YS+_]P@&5<6/T\BRT1DS&6SHTOC<68]U-A,B]S&Z:F#K.TZ>)A
MAG6Q6HS%#C,\WA(1>XF91>PF5B8FEXC:69A%_B'&,CNN'V;)PVP*^_MS;'68
M2:G2Y`G6ZQ63"=9;*;XRP$X^7F93TV7\],IX^BGS#T^PV`FVQW(]P8)3VGG_
MJU;0NX]A6^^_[>/%SXL7$RPN8G]I8V%M6S`8"$F!CF98OF`WZZ_`*]I@EWV8
M\&J)J*\A\9JUPN6Q'>-OBFT,YUF%QVEO@/""O2R4<,J\MJ?2'AI_R1J:<+BQ
M)KY@'LY`[3._GY81G%$AV+5@'QZCPJ,=H0+GH$-+X+1TNGFB4BOPRG@CDPL.
M,.V^;TKPUM1\68]<;2<4*Q'5-<8BUKTR>8UU"T,PO#*M&Z[R3B[?4X1OGR[O
MKGJ>G5DY$_RL>,;\D-`M3"Z7A1GI#M,P3^7R"D(P8YK.E]F0\$S53\P/58TE
M/S!U5R4OF+I7#M=T5P_[NU<=W\=FME2!=,HD/68*/FJ2!DV8YHD(3_/$8SQ]
MKF\?"T^+AKQ/JM,8",5S^W:8O)^*8^%I(5,TG9-9<%.4-,TR>9C%9F;.81.Y
M8+@:AQH>;M6GT,U;OHPM!6S),L9I',V\V'JC^.:V]YG6&@U\ML&R_$\`+V1K
M71/.5<7FP^%PVVX,+;A
MR[^+]>)XT&Z+T?BM;PT98^^FC+%8\9`%9VC0[G!@22P6P_Q8ZFTCYILL<#B_
M@_5[/&Y^ZSV>"KN+#SZ7O9*_N>W:`,$5W.F&L_GWX^#!?8I7K'!FW^::568_
M*3AP,OD/8G_>2AQ<#LRKQ'W`P7>$2L6NN"IY`H>/4\'-[X^,1G8H%F<-
MPM[JX>K8!!M>%3O.+AKY;)1B4RR8*AD68M=8./D.RXC!Q,+D)9:^FKS",KD7
MK[#TY:2(EUB*E"9?8LM9B>[RV(C3)O0V&O-7\WD1OIG_ZO$RG,O=U3C7-^-M"PXOS,[C
M_
MW37)#UBW?Q`NXI>8EYQBQF+
M'M8U0Y>_KBX0#+3X0P'KFJ:6=G_+:IN]W>ZUWY3?$M@8:&D-V.P==H=]37U+
MP-YJ=]M;FD)8*`4#:T+277!$UP9=K:%`H$5JQ4A`R[:[[/X;U5KJUZ[#>O:;
MJFA9=H]]-;RIB^(@-1J-Z_!)O[@E$&IK:=R'<8:$#_JA^L:V@&4%?*#K@=\,
M3-S'7#)\K#L(?!\RPJQN$`9@\;PAWDUS?5V#Y#>:\,Y=8>8?SK+8%<:ORJ_"
M<4-OPTR\J/>^F0F=V+MN)IAC&&)]AUAPS'`]R9))-O4J2_/U/LEZ7>+%EUCZ
M-G[_<1PLP$Q1G/B2]Z7]F3Q86QH7O?]UDL5.\N4;1P_./]&\>?[Q[;A_3.%+
M_KGTU>Q?U/DKA&>'=Y_>G;DVFQ4^U'L0;_A!]FRX[R"+XQT_R,;">#0<7"?9
MQ+^PV$M,.Y'LIH(%UR\S*5&*?8637[#N,\G+;"P.P:Z_QR$X*:1-$_RQ;>I]
M/DHBI=)[BXPE4)9K!!X/>;/KY5R`I?``JS&W&++A$TZ7N?!)2V%>!4[,;$A5
MF4VY/0I.-"<\DVL"?RMC+L_O)%;`OW^SC%_A]UZQGK.BFWM_HYCCC&
MN0MQ(/,8\LA-X,OC4;3Q!2D;
M2S!\?B-:`RC?-@1]V]F$808OGRV3SWH-,Q/%,^>+9])78SUL9CHODWO9,)/^
M##=R+.K`!]Q]+%Z#LW,0AO)/]K#E^[0K;3AWLI
M),OHXXPW%[!Y^F^"0X9#ZP9!*TFSP?D]!]CE[>S8=O83\V,'V,!V]NBS8>G1
M4CR_0PR7GDR>]%IQ,*\4'Z@/X#C!!8AW-8^_[V?7S[/D>3;U-D[YB^?Y`0XP
M'J7
M!/PV7[]_K!;O2@-N]PTW;?<\UV'7
M(]$QX?#MZGA!&>UOMC=JL5PVJFM.8/P&/RK\6!?%'4DK[(,7"U]>T.]UR/;V
M;`#X<]PD9-\MI[2+GQ$^#O3!QX5O+<`HSS^F'/6/\=RX0SOA!ML8GA'&+@UC
MN+/UU]J]'CQ"'^06A6?KC;DE$UX18Z*)2C&68%]%9SA;\4)AU#3`(Z[KIUGR
M-)N:Y%?P--;B%S>'K_(!OBM\.SG,S)L9+N[)$5RM<7G/#+._G('AY%#C/,
MX4'F8['3?!6X/L![G9R7KL/"`18<*H[G\;X:>5^+><-/>5_/%UT<88;Y\4
MC=,]V\6R;!<7!Y@A-Z[#UMDPKI!_B8%;3U\;$`NU'2$("Y,3?/$_CHM_4AMF
M>!B,5$:,+!N$CR@NW`+XAG]WJ]36?(
M_*&A4^_B3P$8--IXD.AVV$8'1O@L+*X/84]^*50?N`-[VXF!.G3IJ\6!$<>X
M-5OS1+8=CAX/UN=_M6VO;Y2P-L3U+2(_OEL^ZI;CXPX>S#7P8;%)BT>U$$^&
MT_I6,1MX?/4`@;$*?X"`]_4A<6X?T)[
M9VHU-9N^8]ID>LCTH.G)+4_L&`1K3]?@=;M0$I?VUIRHGI0ROYX<3.OC
M@Q@1Q)_:6QT\56)[:O*IC&MR64:>-&?LDP]C*1;$'^8QPZF2R8WI^;RN6:L[
M!%.?FS*+9J9STE
M3/SGC:UD&78-O<=9[_.L]QW6^R[+!B>G2F9F<$OYI;9Y9/]9*_64:O^GQ9N.
M6YT'-!]I^<8EIL0!6Q?)C^XPY/*!RV"MXD.7"E5;V[<9=N5%J6J,]
M$M3,?X3AU96/.N):*.6<>S:0E;F$QW4C@?L'=,S?@OW);LQS^>;^:L"[V3[_
M^SR_<_$"56%.+-/ZG/?L+;:N*
M`SA^DDO3VS;59K4Q59R74&D*74G3M:31AT2H6^VEG5EK6WQP#XH5?17$/R`3
M&=N,M*QE]2%0`FMI,&@V90]NJ$-A'7;&O0U$V(M$QV;`!V&.7G_GWK3"J#X,
M'[\?N,WI/;^3]O;>_,[OG*KKS6]+6&+0ZQU*;LMHNXV?R#C]B?J4?OUN$$)"C4MI.U?.LKIT?<6TJ73:J.UXCMR6QDE96R\6>F6
M/[FT_Y")M.0SI*C.^8SB9X&K?J/-=Z3D-ZSW?UBWK&N.GM3MK7#)-&KA7*/,
M[TU2U24W/IQOD#:##?2S#5)Y%&)?$E:.O*&
M%WG#BUP*EYJ]R(9>\U)VU0%*6BO,-%_+^R\M;
M>7^QU&)$WEWLS+48\T^N6[>"1BYHC'Z?LZOV7V&WQ)%7*Q2P)K,9J81B_?NB
M5V+?QL8G>WJE_)-"/[JS,S!EGE';.P,RF4Z,]5JCW;9M'9[*'LJ.'A[1_W'I
MZ^N+RK+\B]B7LG[X1-XE=3PA0U\QU]1);Y^C/+#6GXRK$V9139_]KK[U,5V.
M?SI][NSXY)JWI'<'G3(_5\?[AQ+JO'E9N9_MX>%A=U?@5-3+.]*4!<3BJDSA
M%?.:%Y,8<,^NYA>]%'#'_,GK&!C64_QJWMU9\$+U*F1!GVEK=#\Y,DG*I)@[
MK0LZ75C_VB/)TJVK,WH"D!JL$)0J[$KE3O%BL#.WY*]>"';J?-RH\X-]*2*U
M5>1B:^="^NN>2D-I6>?<2Y'UY[P^?^5AZ=-/F/2^);VU-]9_=+O*:
M(K69C>=K+T@V.;0IF:)C\U9[K6WS=GNM9?/W]EI`?CF)/G&PH)8C+Z=-G2W"
ML3.95Y5.&*W5C_8:<\727EF=1.;K5)?VD
M/A"1B]:5A5$+F8&8\FYS:F?S9RBNG@@D5'WSYUPY.>R>>SWPE-12"]8N9*T7
MVC?Q]+-26Z7D@9K55;E4[U*^=T\>'+$FY$O6.C`UVRU5>"'PC%YRQ'NBNOJ7
MU8:TW")?%I;N:9V@1[(IKZ?^C?HF,%8?52_MO.[M.N_/@.W=[,'4L9FNWMFN
M7KT]EOIXIBN:DOM^/GD(+/D9L]ZI8[-=ZI'&/;Z,>FC+>;S#N;_CP>D7
M'W/W4>\ZC>W.[L<>QS%V.T*.X[OW^&<;=:4N'E])9'3C/_=Q[YMS-*3NV=Q=
MV>E\]-_'`0``````````````````````````````````````````````````
M````````````````````````````````````````````````````````````
M`````````````````````````````````````````````````/^#OP%02P$"
M%`L4````"``XNCXWPQ!?D\@5````JP(`#P```````````"``````````5&%N
B:R!"871T;&4N1#8T4$L%!@`````!``$`/0```/45````````
`
end
Do you also have the Basic code to post ?
Original post by georgie
Sorry... I could post the Basic part but most of the game is in assembly language so there wouldn't be much point. Here's a link to the D64 file to make things easier:
http://georgie.home.dyndns.org/Tank%20Battle.D64 (http://georgie.home.dyndns.org/Tank%20Battle.D64)
May be a bit flaky, if it doesn't work try again.
G