//全データの取得 public static void RecycleOldData(ref List <Address> recycle, uint script_pointer) { byte[] alloc = new byte[36 + (36 * 9) + 4]; uint addr = Program.ROM.p32(script_pointer); if (U.isSafetyOffset(addr + 36 + (36 * 9))) { uint term = Program.ROM.u32(addr + 36 + (36 * 9)); if (term == 0xFFFFFFFF) {//9個メニューで確定 FEBuilderGBA.Address.AddPointer(recycle , script_pointer , 36 + (36 * 9) + 4 , "SplitMenu9" , Address.DataTypeEnum.SplitMenu9 ); return; } } if (U.isSafetyOffset(addr + 36 + (36 * 5))) { uint term = Program.ROM.u32(addr + 36 + (36 * 5)); if (term == 0xFFFFFFFF) {//5個メニューで確定 FEBuilderGBA.Address.AddPointer(recycle , script_pointer , 36 + (36 * 5) + 4 , "SplitMenu5" , Address.DataTypeEnum.SplitMenu5 ); return; } } //よくわからんので汎用ルーチン MenuDefinitionForm.MakeAllDataLength(recycle, script_pointer, isDirectAddress: true); }
//全データの取得 public static void RecycleOldData(ref List <Address> recycle, uint script_pointer) { MenuDefinitionForm.MakeAllDataLength(recycle, script_pointer, isDirectAddress: true); }