Path: utzoo!attcan!uunet!husc6!ukma!sean
From: sean@ms.uky.edu (Sean Casey)
Newsgroups: comp.sys.amiga
Subject: F/A-18 patch program. Source and uuencoded executable.
Message-ID: <9826@g.ms.uky.edu>
Date: 4 Jul 88 12:56:07 GMT
Organization: The Leaning Tower of Patterson Office @ The Univ. of KY
Lines: 220

F/A-18 Interceptor is a marvelous program. Unfortunately, for $50, you
have to turn a cardboard "code wheel" every 5 minutes. This is idiocy.
I refuse to be humiliated this way after I paid so much money for the
program.

Someone sent me patch instructions to use with newzap, and I incorporated
them into a program to automate the patching. I suppose someone could come
up with a better patch, but this can do for now. You still have to answer
the question, but the answer is always 0000.

Instructions:

Use a copy of your original disk.
Unshar and uudecode.
Run f18fix and put your copy in DF0: when asked.
The disk whirs a few seconds and it's done.
The code response will always be 0000 from this point on.

DISCLAIMER

I am not responsible if you trash your disks with this program. Use
it at your own risk.

If you don't like what I'm doing, or think I advocate software piracy,
get stuffed. If you do like what I'm doing, may you live a long life,
your children have the normal number of limbs, etc...

* F/A-18 Interceptor is a Trademark of Electronic Arts and probably Robert
  Dinnerman too.


#! /bin/sh
: This is a shell archive, meaning:
: 1. Remove everything above the '#! /bin/sh' line.
: 2. Save the resulting text in a file.
: 3. Execute the file with /bin/sh '(not csh)' to create the files:
:	'f18fix.c'
:	'f18fix.uu'
: This archive created: 'Mon Jul  4 08:36:22 1988
'
: By:	'Sean Casey (The Leaning Tower of Patterson Office @ The Univ. of KY)'
export PATH; PATH=/bin:$PATH
echo shar: extracting "'f18fix.c'" '(565 characters)'
if test -f 'f18fix.c'
then
	echo shar: will not over-write existing file "'f18fix.c'"
else
cat  >'f18fix.c' <<'SHAR_EOF'
/*
 *	f18fix.c by Sean Casey, PUBLIC DOMAIN.
 */

#include "fcntl.h"

main()
{
	char s[8], zero = 0;
	char *fn = "df0:F-18 Interceptor";
	int fp;

	puts("Insert copy of F-18 Interceptor into DF0: and press RETURN:\n");
	gets(s);

	if ((fp = open(fn, O_RDWR)) < 0) {
		puts("Couldn't open file \"DF0:F-18 Interceptor\"\n");
		exit(-1);
	}

	lseek(fp, (long) 0x1cd8d, 0);
	write(fp, &zero, 1);
	lseek(fp, (long) 0x1cd9d, 0);
	write(fp, &zero, 1);
	lseek(fp, (long) 0x1cdad, 0);
	write(fp, &zero, 1);
	lseek(fp, (long) 0x1cdbb, 0);
	write(fp, &zero, 1);
	close(fp);
}
SHAR_EOF
if test 565 -ne "`wc -c < 'f18fix.c'`"
then
	echo shar: error transmitting "'f18fix.c'" '(should have been 565 characters)'
fi
fi # end of overwriting check
echo shar: extracting "'f18fix.uu'" '(7035 characters)'
if test -f 'f18fix.uu'
then
	echo shar: will not over-write existing file "'f18fix.uu'"
else
cat  >'f18fix.uu' <<'SHAR_EOF'
begin 644 f18fix
M```#\P`````````#``````````(```1Q````A0````$```/I```$<4[Z!8).
M5?_P0BW_]T'Z`.(K2/_R2'H`[TZZ!3!83TAM__A.N@%*6$\_/``"+RW_\DZZ
M`U!<3SM`__!*0&P42'H!`DZZ!0983S\\__].N@Z.5$]"9TAY``'-C3\M__!.
MN@*24$\_/``!2&W_]S\M__!.N@V24$]"9TAY``'-G3\M__!.N@)N4$\_/``!
M2&W_]S\M__!.N@UN4$]"9TAY``'-K3\M__!.N@)*4$\_/``!2&W_]S\M__!.
MN@U*4$]"9TAY``'-NS\M__!.N@(F4$\_/``!2&W_]S\M__!.N@TF4$\_+?_P
M3KH/+E1/3EU.=61F,#I&+3$X($EN=&5R8V5P=&]R`$ENH`!&4,+PIA%EA/)%].
M74YU(%)2DA`02(#`?`#_8.Q.50``2.<(,"1M``@0*@`,P#P`&&<*R``B9($"L`
M#$B`P'P`A+!\`(1F##\\__\O"TZZ"*Y<3]?\````%D'L@;JWR&76/RH`$"\J
M``@0*@`-2(`_`$ZZ`A0X`$I`4$]N%$I$9@1P"&`"@""+P9.N@RH2'C__T*G+P9.N@Q^3^\`&&`F,"T`#,!\!0"P?`4`
M9A@O!DZZ"_)Z!%A/.46!SG#_3-\,\$Y=3G4P!,'\``8GA@@`,`3!_``&($#1
MRS%M``P`!`@M``,`#&<02'@``4*G+P9.N@PD3^\`##`$8,)D;W,N;&EB0```$Y5``!(YPP@."T`"$ZZ":PP!,'\``8D0-7L@R!QK7)9@XR/``3:PAT`"+"4``$*4Z!U$CG@(`(+@`$`2EG$$OZ``A.KO_B8`9"I_-?3G-#^@`@3J[^:"E`
M@=AF#"X\``.`!TZN_Y1@!$ZZ`!I03TYU9&]S+FQI8G)A0`!```P+(&ZP?P`!B\`3KH+$BE`@0`!``!.N@K6
M4$\N;('03G4@;('*0F@`!"!L@(@;('B2J@`)%!/9Q`@;('B(F@`)"\13KH)F%A/+RR!XB\*
M3KH":"EL@>*!YE!/3KH)F"!L@8_+('J3KKXX$)G3KH'LE!/)%].74YU*@!.50``
M2.<,,"1M`!`@;0`(2J@`K&<8(&T`""`H`*SE@"@`($0@*``0Y8`F0&`$)FR!
MO!`32(!(P-"M``Q4@#E`@>Q"IS`L@>Q(P"\`3KH)I"E`@>Y03V8(3-\,,$Y=
M3G40$TB`.@`_!2!+4H@O""\L@>Y.N@%^,`5(P"!`T>R![D/Z`400V6;\/RT`
M#B\*+RR![DZZ`3H@;('N0C!0`#E\``&!ZC`%2,#0K('N)D!2BR1+3^\`%!`3
M2(`Z`+!\`"!G&+I\``EG$KI\``QG#+I\``UG!KI\``IF!%*+8-@,$P`@;7H,
M$P`B9BY2BR!+4HL0$$B`.@!G'B!*4HH0A;I\`")F$`P3`")F!%*+8`9"*O__
M8`)@UF`X($M2BQ`02(`Z`&@".3KH(""E`@?)03V8(3-\,<$Y=3G4@;0`,(F@`)"\I``1.N@@X*`!8
M3V=22'H`;2!$+R@`-DZZ"`HF0$J`4$]G-$AX`^TO"TZZ!PPL`%!/9R0@!N6`
M*@`@125H``@`I"5&`)Q(>`/M2'H`.$ZZ!N@E0`"@4$\O!$ZZ!]983R\L@?).
MN@R!NK7(9>HD7TY=3G5.50``
M2.<(("1M``AX`"`*9@IP_TS?!!!.74YU2BH`#&=0""H``@`,9PP_//__+PIA
M4C@`7$\0*@`-2(`_`$ZZ!1R(0`@J``$`#%1/9PHO*@`(3KH"+EA/""H`!0`,
M9Q(O*@`23KH"P"\J`!).N@(44$]"DD*J``1"J@`(0BH`##`$8)!.5?_^2.<(
M("1M``A!^O]&*4B!]@@J``0`#&<*R``B1(2BH`#&<8U?P````60>R!NK7(90AP`"1?3EU.=6#B0I)"J@`$0JH`
M""`*8.I.5?_\+PHD;0`(/SP$`$ZZ`,`K0/_\5$]F\``$`$"!*T?P````.
M)4@`""1?3EU.=35\!```$`CJ``$`#"5M__P`"!`J``U(@#\`3KH`XDI`5$]G
M!@`J`(``#&#.3E4``$CG`#`D;('&8!0F4B`J``10@"\`+PI.N@1X4$\D2R`*
M9NA"K('&3-\,`$Y=3G5.50``+PI!^O_&*4B!^D*G("T`"%"`+P!.N@0F)$!*
M@%!/9@AP`"1?3EU.=22L@<8E;0`(``0I2H'&(`I0@&#F3E4``'``,"T`""\`
M8;)83TY=3G5.50``2.<`,)?+)&R!QF`.(&T`"%&(L!``0J=.N@+T*T#__`@```Q03V<2
M2FR!X&8(("W__$Y=3G5.N@`&<`!@]$Y5``!(>``$2'H`'$ZZ`?XO`$ZZ`BP_
M/``!3KH`#D_O``Y.74YU7D,*`$Y5``!*K('V9P8@;('V3I`_+0`(3KH`"%1/
M3EU.=4Y5__PO!#`M``A(P"M`__Q*K('*9RAX`&`*/P1.N@#^5$]21+AL@;IM
M\#`L@;K!_``&+P`O+('*3KH"%E!/2JR!^F<&(&R!^DZ02JR!P&<*+RR!P$ZZ
M`9)83TJL@?YG""!L@?X@K(("2JR"!F<*+RR"!DZZ`:Y83TJL@@IG"B\L@@I.
MN@&>6$]*K((.9PHO+((.3KH!CEA/2JR"$F<*+RR"$DZZ`7Y83RQX``0(+@`$
M`2EG%"\-2_H`"DZN_^(J7V`&0J?S7TYS2JR!XF8P2JR![FI20$C`Y8`O`"\L@>9.N@%:3^\`$&`.3KH!2"\L@>).N@%T
M6$\@+?_\+FR!T$YU*!].74YU3E4``$CG#B`X+0`(,`3!_``&)$#5[('*2D1M
M"KAL@;IL!$J29A`Y?``"@