示例#1
0
 public bool canConvertToFileAddress(BSVAddr boomStreetVirtualAddress)
 {
     if (canConvertToVersionAgnosticAddress(boomStreetVirtualAddress))
     {
         return(canConvertToFileAddress(toVersionAgnosticAddress(boomStreetVirtualAddress)));
     }
     return(false);
 }
示例#2
0
        protected override VAVAddr readTableAddr(EndianBinaryReader stream, AddressMapper addressMapper, bool isVanilla)
        {
            BSVAddr addr = isVanilla ? (BSVAddr)0x801cca70 : (BSVAddr)0x804363bc;

            stream.Seek(addressMapper.toFileAddress(addr), SeekOrigin.Begin);
            var lis_opcode  = stream.ReadUInt32();
            var addi_opcode = stream.ReadUInt32();

            return((VAVAddr)PowerPcAsm.make32bitValueFromPair(lis_opcode, addi_opcode));
        }
示例#3
0
 public VAVAddr toVersionAgnosticAddress(BSVAddr boomStreetVirtualAddress)
 {
     return((VAVAddr)versionMapper.map((long)boomStreetVirtualAddress));
 }
示例#4
0
 public bool canConvertToVersionAgnosticAddress(BSVAddr boomStreetVirtualAddress)
 {
     return(versionMapper.findSection((long)boomStreetVirtualAddress) != null);
 }
示例#5
0
 public int toFileAddress(BSVAddr boomStreetVirtualAddress)
 {
     return((int)fileMapper.map((long)toVersionAgnosticAddress(boomStreetVirtualAddress)));
 }