IF "<Obey$Dir>"="@" THEN Set Obey$Dir ADFS::WSCAPE.$.!wscape
HideCommandWindow
Set Wscape$Dir <Obey$Dir>
StoreCSD
Dir <Wscape$Dir>
IF ADFFS$CPUID<&A10 THEN RMEnsure FPEmulator 2.70 RMLoad <Obey$Dir>.FPEmulator
RMEnsure FPEmulator 2.70 Error You need FPEmulator 2.70 or later
IF ADFFS$CPUID<&A10 THEN RMEnsure ColourTrans 0.51 RMLoad <Obey$Dir>.Colours
RMEnsure ColourTrans 0.51 Error You need ColourTrans 0.51 or later
Screensize 80
WimpSlot -min 724k -max 724k
IF ADFFS$CPUID>=&A10 THEN GOARM3JIT 0
Echo <22><12>
| Bugfix: Should be initialising private sprite areas
KEY 0 5ONERRORQUIT|M2440SYS "OS_SpriteOp",9+256,worldspace%|M2510SYS "OS_SpriteOp",9+256,ecologo%|M1250QUIT|MRUN|F|M
FX 225,1
FX 21,0
FX 138,0,128
ECHO <21>
BASIC -load <Wscape$Dir>.TITLE_BAS
| Bugfix: Page Zero accesses
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA F6CC E92D4010 E1A0F00E
| Don't use the stack for SWI's
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 1BA64 E92D00E1 E58F0004
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 1BA7C E8FD83FF E8FD83F0
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 1BAA0 E92D03E1 E58F0004
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 1BABC E28DD010 E1A00000
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA 1BAC0 E8FD83F6 E8BD83F0
| Add a delay to the main game loop
IF ADFFS$CPUID>=&A10 THEN JITMEMORYA EC60 E2877001 EB02B4E6
IF ADFFS$CPUID>=&A10 THEN MEMA BC000 E2877001 E3370064 11A0F00E E92D4003 E59F1014 E2811002 EF020042 E1500001 3AFFFFFC E58F0000 E8BD8003 0

<Wscape$Dir>.WSeditor
IF ADFFS$CPUID>=&A10 THEN GOARM3JIT
RestoreCSD