Exemple #1
0
        private FreeSpaceManager setupFreeSpaceManager(AddressMapper addressMapper)
        {
            var freeSpaceManager = new FreeSpaceManager();

            // Venture Card Table
            freeSpaceManager.addFreeSpace(addressMapper.toVersionAgnosticAddress((BSVAddr)0x80410648), addressMapper.toVersionAgnosticAddress((BSVAddr)0x80411b9b));
            // Map Data String Table and Map Data Table
            freeSpaceManager.addFreeSpace(addressMapper.toVersionAgnosticAddress((BSVAddr)0x80428978), addressMapper.toVersionAgnosticAddress((BSVAddr)0x804298cf));
            // Map Default Settings Table
            freeSpaceManager.addFreeSpace(addressMapper.toVersionAgnosticAddress((BSVAddr)0x804363c8), addressMapper.toVersionAgnosticAddress((BSVAddr)0x80436a87));
            // Unused costume string table 1
            freeSpaceManager.addFreeSpace(addressMapper.toVersionAgnosticAddress((BSVAddr)0x8042bc78), addressMapper.toVersionAgnosticAddress((BSVAddr)0x8042c23f));
            // Unused costume string table 2
            freeSpaceManager.addFreeSpace(addressMapper.toVersionAgnosticAddress((BSVAddr)0x8042dfc0), addressMapper.toVersionAgnosticAddress((BSVAddr)0x8042e22f));
            // Unused costume string table 3
            freeSpaceManager.addFreeSpace(addressMapper.toVersionAgnosticAddress((BSVAddr)0x8042ef30), addressMapper.toVersionAgnosticAddress((BSVAddr)0x8042f7ef));
            // Unused menu id=0x06 (MapSelectScene_E3)
            freeSpaceManager.addFreeSpace(addressMapper.toVersionAgnosticAddress((BSVAddr)0x801f8520), addressMapper.toVersionAgnosticAddress((BSVAddr)0x801f94bb));
            // Unused menu id=0x38 (WorldMenuScene)
            freeSpaceManager.addFreeSpace(addressMapper.toVersionAgnosticAddress((BSVAddr)0x801ed6a8), addressMapper.toVersionAgnosticAddress((BSVAddr)0x801edab7));
            // Unused menu id=0x39 (FreePlayScene)
            freeSpaceManager.addFreeSpace(addressMapper.toVersionAgnosticAddress((BSVAddr)0x801edad4), addressMapper.toVersionAgnosticAddress((BSVAddr)0x801ee71f));
            // Unused menu class (SelectMapUI)
            freeSpaceManager.addFreeSpace(addressMapper.toVersionAgnosticAddress((BSVAddr)0x801fce28), addressMapper.toVersionAgnosticAddress((BSVAddr)0x801ff777));

            // used additional address:
            // 0x804363b4 (4 bytes):  force simulated button press
            // 0x804363b8 (12 bytes): pointer to internal name table
            // 0x804363c4 (4 bytes):  ForceVentureCardVariable
            return(freeSpaceManager);
        }
Exemple #2
0
 public void write(EndianBinaryWriter stream, AddressMapper addressMapper, List <MapDescriptor> mapDescriptors, FreeSpaceManager freeSpaceManager, IProgress <ProgressInfo> progress)
 {
     this._fsm = freeSpaceManager;
     this._p   = progress;
     this._w   = stream;
     this._am  = addressMapper;
     writeAsm(stream, addressMapper, mapDescriptors);
     this._fsm = null;
     this._p   = null;
     this._w   = null;
     this._am  = null;
 }
Exemple #3
0
 public MainDol(EndianBinaryReader stream, List <AddressSection> fileMappingSections, IProgress <ProgressInfo> progress)
 {
     this.addressMapper    = setupAddressMapper(stream, fileMappingSections, progress);
     this.freeSpaceManager = setupFreeSpaceManager(addressMapper);
     this.patches          = setupPatches();
 }