IF "<Obey$Dir>"="@" THEN Set Obey$Dir ADFS::Disc1.$.!ChprForce
IF ADFFS$OSVersion>=&35000 THEN ADFRemapVideoMemory 13 320 ELSE ScreenSize 320
RMAFree 292
SpriteFree 24
IF ADFFS$CPUID>=&A10 THEN WimpSlot -min 704K -max 704K ELSE WimpSlot -min 656K -max 704K
SET Disc1$Dir <Obey$Dir>.
IF ADFFS$CPUID>=&A10 THEN GOARM3JIT 0
| Prevent claims in READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 200 E3A00009 E8FD801F READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 394 0A000029 E1A00000 READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 3A8 EF000020 EF020020 READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 3AC E3A00009 E8FD8000 READDISC

| Fix FileV vector code
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 720 E3300000 EA000000 READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 728 13300002 E92D4000 READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 72C 13300003 E51FE010 READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 730 13300004 E13E0000 READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 734 13300007 08BD8000 READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 738 13300008 E50F001C READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 744 0AFFFF3D E1A00000 READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 760 092D8000 18BD8000 READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 764 E1B0F00E EF020008 READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 768 E1A00000 E50FE04C READDISC
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 794 E8FD8000 E8FDC000 READDISC
HideCommandWindow
ScreenSize 160
<OBEY$DIR>.!SETUP1A
SET Disc4$Dir <Disc2$Dir>.
| Bug fix: Page Zero read in ChopperForceIntro
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA A4 E3A00002 E3A00008 ChopperForceIntro
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA D0 EF040140 EB000041 ChopperForceIntro
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 200 E3A03000 E3A03902 ChopperForceIntro

IF ADFFS$CPUID>=&A10 THEN Set Alias$SCREENLOAD ADFScreenLoad %%*0
| Display the disc prompt
KEY 0 DELETE 690,700|M500QUIT|MRUN|F|M
ECHO <21>
FX 225,1
FX 21,0
FX 138,0,128
BASIC -load <OBEY$DIR>.CHOPINTRO
IF ADFFS$CPUID>=&A10 THEN UnSet Alias$SCREENLOAD
| Prevent claims in ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 1FC E3A00009 E8FD801F ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 390 0A000029 E1A00000 ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 3A4 EF000020 EF020020 ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 3A8 E3A00009 E8FD8000 ROTOR

| Fix FileV vector code
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 71C E3300000 EA000000 ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 724 13300002 E92D4000 ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 728 13300003 E51FE010 ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 72C 13300004 E13E0000 ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 730 13300007 08BD8000 ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 734 13300008 E50F001C ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 740 0AFFFF3D E1A00000 ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 75C 092D8000 18BD8000 ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 760 E1B0F00E EF020008 ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 764 E1A00000 E50FE04C ROTOR
IF ADFFS$CPUID>=&A10 AND ADFFS$JIT=0 THEN JITMEMORYA 790 E8FD8000 E8FDC000 ROTOR
IF ADFFS$JIT=0 THEN <OBEY$DIR>.!SETUP3

WIMPSLOT -MIN 704K -MAX 704K
| Bug fix: Page Zero read and unpredictable instructions
ECHO <21>
Set Alias$CACHE ADFDoNothing<32>
IF ADFFS$JIT=0 THEN KEY 0 820Z%=P%:FOR P%=GfH3+&282EC TO GfH3+&8103C STEP 4:IF (!P% AND &FFFFC000)=&E96D4000 P%?2=&2D|M
IF ADFFS$JIT=0 THEN KEY 1 830NEXT:P%=GfH3+&80278:[OPT 2:TEQ R3,#0:MOVEQ PC,R14:STR R1,P%-24:STMFD R13!,{R0,R2-R12,R14}:ADR R1,P%-16888:]:P%=Z%|M*unset key$*|MRUN|F|M
IF ADFFS$JIT=0 THEN FX 225,1
IF ADFFS$JIT=0 THEN FX 21,0
IF ADFFS$JIT=0 THEN FX 138,0,128
IF ADFFS$JIT=0 THEN FX 138,0,129
IF ADFFS$JIT=0 THEN BASIC -load <OBEY$DIR>.GAME
UnSet Alias$CACHE
IF ADFFS$CPUID>=&A10 THEN GOARM3JIT
IF ADFFS$OSVersion>=&35000 THEN ADFRemapVideoMemory