private void InitCodeSpaceScriptCompilerDummyIfNeeded(Stream bin) { if (RegionScriptCompilerCommandLineString != null) { return; } RegionScriptCompilerCommandLineString = SenUtils.InitRegion("ScriptCompilerCommandLineString", AddressStartScriptCompilerCommandLineString, AddressEndScriptCompilerCommandLineString, Mapper, bin, 0); { // deinterleave the parsing code bin.Position = Mapper.MapRamToRom(AddressEnd1OfScriptCompilerCliParsingCode); byte[] arr = bin.ReadUInt8Array(9); bin.Position = Mapper.MapRamToRom(AddressEnd2OfScriptCompilerCliParsingCode) - 9; bin.Write(arr); bin.Position = Mapper.MapRamToRom(AddressEnd2OfScriptCompilerCliParsingCode) + 4; bin.WriteByte(8); // then overwrite it RegionScriptCompilerCliParsingCode = SenUtils.InitRegion("ScriptCompilerCliParsingCode", AddressStartOfScriptCompilerCliParsingCode, AddressEnd2OfScriptCompilerCliParsingCode - 9, Mapper, bin, 0xcc); SenUtils.JumpOverCode(RegionScriptCompilerCliParsingCode, Mapper, bin); } RegionScriptCompilerFlagUsageCode = SenUtils.InitRegion("ScriptCompilerFlagUsage", AddressStartOfScriptCompilerFlagUsageCode, AddressEndOfScriptCompilerFlagUsageCode, Mapper, bin, 0xcc); SenUtils.JumpOverCode(RegionScriptCompilerFlagUsageCode, Mapper, bin); RegionScriptCompilerFuncCallCode = SenUtils.InitRegion("ScriptCompilerFuncCallCode", AddressStartOfCompilerFuncCallCode, AddressEndOfCompilerFuncCallCode, Mapper, bin, 0xcc); SenUtils.JumpOverCode(RegionScriptCompilerFuncCallCode, Mapper, bin); RegionScriptCompilerFunction1 = SenUtils.InitRegion("ScriptCompilerFunction1", AddressStartOfScriptCompilerFunction1, AddressEndOfScriptCompilerFunction1, Mapper, bin, 0xcc); RegionScriptCompilerFunction23 = SenUtils.InitRegion("ScriptCompilerFunction23", AddressStartOfScriptCompilerFunction23, AddressEndOfScriptCompilerFunction23, Mapper, bin, 0xcc); RegionScriptCompilerFunctionStrings = SenUtils.InitRegion("ScriptCompilerStrings", AddressStartOfScriptCompilerFunctionStrings, AddressEndOfScriptCompilerFunctionStrings, Mapper, bin, 0); }
private void buttonAssetFixDetails_Click(object sender, EventArgs e) { new TextDisplayForm("Asset fix details for Cold Steel 1", SenUtils.ExtractUserFriendlyStringFromModDescriptions(Sen1Mods.GetAssetMods())).ShowDialog(); }