REM > CreateJCode:Create DEF PROCCreate(Path$) LOCAL Name$, Sprt$ LOCAL Temp%, Spr1%, Spr2% REMLOCAL ERROR REMON ERROR LOCAL RESTORE ERROR: PROCCreate_Error Name$ = FNWimp_GetLeaf(Path$) SYS"OS_CLI", "CDir " + Path$ SYS"OS_CLI", "Copy " + Task_Path$ + "Base " + Path$ + ".!" + Name$ + " A~C~DFL~N~P~QR~S~T~V" SYS"OS_CLI", "CDir " + Path$ + "." + Name$ SYS"OS_CLI", "CDir " + Path$ + "." + Name$ + ".Basic" PROCWimp_LoadFile(Task_Path$ + "Files.!Sprites", 1, "Sprites") PROCWimp_LoadFile(Task_Path$ + "Files.!Sprites22", 1, "Sprites22") Spr1% = FNHeap_Find(1, "Sprites") Spr2% = FNHeap_Find(1, "Sprites22") Sprt$ = "!" + FNString_Lower(LEFT$(Name$, 11)) $(Spr1% + 4 + &10) = Sprt$ $(Spr2% + 4 + &10) = Sprt$ Spr1%?(4 + &10 + LENSprt$) = 0 Spr2%?(4 + &10 + LENSprt$) = 0 SYS"OS_File", 10, Path$ + ".!" + Name$ + ".!Sprites", &FF9,, Spr1% + 4, Spr1% + !Spr1% + 4 SYS"OS_File", 10, Path$ + ".!" + Name$ + ".!Sprites22", &FF9,, Spr2% + 4, Spr2% + !Spr2% + 4 PROCHeap_Lose(1, "Sprites") PROCHeap_Lose(1, "Sprites22") Type$ = "Obey" PROCCopy(Task_Path$ + "Files.!Run", Path$ + ".!" + Name$ + ".!Run") PROCCopy(Task_Path$ + "Files.!Run2", Path$ + "." + Name$ + ".!Run") PROCCopy(Task_Path$ + "Files.LinkCrunch", Path$ + "." + Name$ +".LinkCrunch") Type$ = "Text" PROCCopy(Task_Path$+"Files.Menus", Path$ + ".!" +Name$+".Resources.UK.Menus") Type$ = "BASIC" PROCBasic(Task_Path$ + "Files.!Main", Path$ + "." + Name$ + ".!Main") PROCBasic(Task_Path$+"Files.Basic.Click",Path$ + "." + Name$ +".Basic.Click") PROCBasic(Task_Path$+"Files.Basic.Init", Path$ + "." + Name$ + ".Basic.Init") PROCBasic(Task_Path$+"Files.Basic.Menu", Path$ + "." + Name$ + ".Basic.Menu") PROCBasic(Task_Path$+"Files.Basic.Quit", Path$ + "." + Name$ + ".Basic.Quit") ENDPROC REM ˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜ DEF PROCCreate_Error PROCHeap_Lose(1, "*") Erro_ERL% = ERL Erro_REPORT$ = REPORT$ Erro_ERR% = Erro_Warn% ERROR Erro_Warn%, REPORT$ ENDPROC REM ˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜ DEF PROCCopy(Fil1$, Fil2$) LOCAL Fil1%, Fil2%, Byte%, Byt1%, Byt2%, Loop% Fil1% = OPENIN(Fil1$) Fil2% = OPENOUT(Fil2$) REMLOCAL ERROR REMON ERROR LOCAL RESTORE ERROR: PROCCopy_Error WHILE NOT EOF#Fil1% Byte% = BGET#Fil1% IF Byte% = ASC"{" THEN Byt1% = BGET#Fil1% Byt2% = BGET#Fil1% IF (Byt1% = ASC"!") AND (Byt2% = ASC"}") THEN FOR Loop% = 1 TO LENName$ BPUT#Fil2%, ASC(MID$(Name$, Loop%, 1)) NEXT ELSE BPUT#Fil2%, Byte% BPUT#Fil2%, Byt1% BPUT#Fil2%, Byt2% ENDIF ELSE BPUT#Fil2%, Byte% ENDIF ENDWHILE REMRESTORE ERROR CLOSE#Fil1% CLOSE#Fil2% SYS"OS_CLI", "SetType " + Fil2$ + " " + Type$ ENDPROC REM ˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜ DEF PROCCopy_Error CLOSE#Fil1% CLOSE#Fil2% Erro_ERL% = ERL Erro_REPORT$ = REPORT$ Erro_ERR% = Erro_Warn% ERROR Erro_Warn%, REPORT$ ENDPROC REM ˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜ DEF PROCBasic(Fil1$, Fil2$) LOCAL Fil1%, Fil2%, Byte%, Byt1%, Byt2% Fil1% = OPENIN(Fil1$) Fil2% = OPENOUT(Fil2$) REMLOCAL ERROR REMON ERROR LOCAL RESTORE ERROR: PROCCopy_Error Byte% = BGET#Fil1% :REM &D BPUT#Fil2%, Byte% Byte% = BGET#Fil1% :REM line 1 WHILE Byte% <> &FF BPUT#Fil2%, Byte% Byte% = BGET#Fil1% :REM line 2 BPUT#Fil2%, Byte% Byte% = BGET#Fil1% :REM length Line$ = "" Byte% = BGET#Fil1% WHILE Byte% <> &D IF Byte% = ASC"{" THEN Byt1% = BGET#Fil1% Byt2% = BGET#Fil1% IF (Byt1% = ASC"!") AND (Byt2% = ASC"}") THEN Line$ += Name$ ENDIF ELSE Line$ += CHR$(Byte%) ENDIF Byte% = BGET#Fil1% ENDWHILE BPUT#Fil2%, LENLine$ + 4 BPUT#Fil2%, Line$; BPUT#Fil2%, Byte% Byte% = BGET#Fil1% :REM line 1 ENDWHILE BPUT#Fil2%, Byte% REMRESTORE ERROR CLOSE#Fil1% CLOSE#Fil2% SYS"OS_CLI", "SetType " + Fil2$ + " " + Type$ ENDPROC