public void WriteJump5Byte(byte style) { ulong source = (ulong)(Binary.Position + 5); Binary.WriteUInt8(style); Binary.WriteInt32(-5, EndianUtils.Endianness.LittleEndian); // self-jump until set AddSource(Mapper.MapRomToRam(source - 4)); Binary.Position = (long)source; }
private static List <(uint where, uint count, uint skip)> GetChunksForTexPointersFix(IRomMapper mapper) { List <(uint where, uint count, uint skip)> patches = new List <(uint where, uint count, uint skip)>(); patches.Add((mapper.MapRomToRam(0x5742A8u), 35, 0x04)); patches.Add((mapper.MapRomToRam(0x574338u), 218, 0x0C)); patches.Add((mapper.MapRomToRam(0x585F18u), 252, 0x24)); patches.Add((mapper.MapRomToRam(0x585F1Cu), 252, 0x24)); return(patches); }
public void WriteJump(byte style) { ulong source = (ulong)(Binary.Position + 2); Binary.WriteUInt8(style); Binary.WriteInt8(-2); // self-jump until set AddSource(Mapper.MapRomToRam(source - 1)); Binary.Position = (long)source; }