Typedefs | |
| using | ordered_json = nlohmann::ordered_json |
Functions | |
| uint32_t | LoRomSnesToPc (uint32_t snes) |
| uint32_t | LoRomPcToSnes (uint32_t pc) |
| std::string | SnesText (uint32_t snes) |
| std::string | HexByte (int value) |
| std::string | AreaText (int area) |
| std::string | RangeText (int first, int last) |
| bool | IsZsV3 (uint8_t asm_version) |
| uint8_t | ReadAsmVersion (const Rom &rom) |
| bool | InRom (const Rom &rom, uint32_t pc, size_t length) |
| uint32_t | ReadLong (const Rom &rom, uint32_t pc) |
| uint16_t | ReadWord (const Rom &rom, uint32_t pc) |
| std::string | HexBytes (const uint8_t *data, size_t count) |
| AreaTableInfo | RomTable (const char *id, const char *label, const char *group, uint32_t pc, int entry_bytes, int first_area, int last_area, std::string past_end, std::string note="") |
| AreaTableInfo | RamTable (const char *id, const char *label, const char *group, uint32_t snes, int entry_bytes, int first_area, int last_area, std::string past_end, std::string note="") |
| std::vector< AreaTableInfo > | ZsCustomV3Tables () |
| std::vector< AreaTableInfo > | VanillaTables () |
| AllocationAreaSize | DecodeAreaSize (uint8_t value, bool zs_v3) |
| int | VanillaSpecialParent (int area) |
| void | ScanAreaMap (const Rom &rom, uint32_t high_table_pc, uint32_t low_table_pc, int index, AreaAllocation *area) |
| int | CountSpriteList (const Rom &rom, uint16_t pointer, bool *valid) |
| std::string | EvidenceCount (int count, const char *singular, const char *plural) |
| std::string | JoinAreas (const std::vector< int > &areas) |
| TailCheckRegion | MakeRegion (const Rom &rom, const TailCheckAnnotator &annotator, const char *id, const char *label, uint32_t snes, int length) |
| TailStreamCheck | CheckBlankStream (const Rom &rom, const char *id, uint32_t snes, const std::vector< uint8_t > &planned, bool applied) |
| ordered_json | TableJson (const AreaTableInfo &table) |
| ordered_json | StreamJson (const MapStreamScan &scan) |
| ordered_json | AreaJson (const AreaAllocation &area) |
| ordered_json | TailJson (const TailMapExpansionCheck &check) |
| std::string | MapColumn (const AreaAllocation &area) |
Variables | |
| constexpr uint32_t | kAsmVersionPc = 0x140145 |
| constexpr uint32_t | kZsFunctionSpacePc = 0x141940 |
| constexpr int | kMap32PerScreen = 256 |
| constexpr uint32_t | kMap32HighPc = 0x1794D |
| constexpr uint32_t | kMap32LowPc = 0x17B2D |
| constexpr uint32_t | kPoolParentPc = 0x140998 |
| constexpr uint32_t | kPoolOverlayPc = 0x140340 |
| constexpr uint32_t | kAreaSizePc = 0x1788D |
| constexpr uint32_t | kVanillaParentPc = 0x125EC |
| constexpr std::array< uint32_t, 3 > | kPoolSpritePointerPcs |
| constexpr uint32_t | kOverworldSpriteBankPc = 0x48000 |
| constexpr int | kMaxSpritesPerList = 0x80 |
| constexpr std::array< int, 8 > | kZsCodeOverlayIds |
| constexpr std::array< int, 9 > | kVanillaCodeOverlayIds |
| using yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::ordered_json = nlohmann::ordered_json |
Definition at line 21 of file overworld_allocation.cc.
| uint32_t yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::LoRomSnesToPc | ( | uint32_t | snes | ) |
Definition at line 44 of file overworld_allocation.cc.
References LoRomSnesToPc().
Referenced by CheckBlankStream(), LoRomSnesToPc(), MakeRegion(), and ScanAreaMap().

| uint32_t yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::LoRomPcToSnes | ( | uint32_t | pc | ) |
Definition at line 48 of file overworld_allocation.cc.
References LoRomPcToSnes().
Referenced by CheckBlankStream(), LoRomPcToSnes(), and RomTable().

| std::string yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::SnesText | ( | uint32_t | snes | ) |
Definition at line 52 of file overworld_allocation.cc.
References SnesText().
Referenced by CheckBlankStream(), SnesText(), StreamJson(), TableJson(), and TailJson().

| std::string yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::HexByte | ( | int | value | ) |
Definition at line 56 of file overworld_allocation.cc.
| std::string yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::AreaText | ( | int | area | ) |
Definition at line 60 of file overworld_allocation.cc.
References AreaText().
Referenced by AreaText(), JoinAreas(), and MapColumn().

| std::string yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::RangeText | ( | int | first, |
| int | last ) |
Definition at line 64 of file overworld_allocation.cc.
| bool yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::IsZsV3 | ( | uint8_t | asm_version | ) |
Definition at line 68 of file overworld_allocation.cc.
References IsZsV3().
Referenced by IsZsV3().

| uint8_t yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::ReadAsmVersion | ( | const Rom & | rom | ) |
Definition at line 72 of file overworld_allocation.cc.
References yaze::Rom::data(), kAsmVersionPc, ReadAsmVersion(), and yaze::Rom::size().
Referenced by ReadAsmVersion().

| bool yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::InRom | ( | const Rom & | rom, |
| uint32_t | pc, | ||
| size_t | length ) |
Definition at line 76 of file overworld_allocation.cc.
References InRom(), and yaze::Rom::size().
Referenced by InRom(), MakeRegion(), and ScanAreaMap().

| uint32_t yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::ReadLong | ( | const Rom & | rom, |
| uint32_t | pc ) |
Definition at line 80 of file overworld_allocation.cc.
References yaze::Rom::data(), and ReadLong().
Referenced by ReadLong(), and ScanAreaMap().

| uint16_t yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::ReadWord | ( | const Rom & | rom, |
| uint32_t | pc ) |
Definition at line 85 of file overworld_allocation.cc.
References yaze::Rom::data(), and ReadWord().
Referenced by ReadWord().

| std::string yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::HexBytes | ( | const uint8_t * | data, |
| size_t | count ) |
Definition at line 90 of file overworld_allocation.cc.
References HexBytes().
Referenced by HexBytes(), and MakeRegion().

| AreaTableInfo yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::RomTable | ( | const char * | id, |
| const char * | label, | ||
| const char * | group, | ||
| uint32_t | pc, | ||
| int | entry_bytes, | ||
| int | first_area, | ||
| int | last_area, | ||
| std::string | past_end, | ||
| std::string | note = "" ) |
Definition at line 101 of file overworld_allocation.cc.
References yaze::zelda3::AreaTableInfo::entry_bytes, yaze::zelda3::AreaTableInfo::first_area, yaze::zelda3::AreaTableInfo::group, yaze::zelda3::AreaTableInfo::id, yaze::zelda3::AreaTableInfo::in_rom, yaze::zelda3::AreaTableInfo::label, yaze::zelda3::AreaTableInfo::last_area, LoRomPcToSnes(), yaze::zelda3::AreaTableInfo::note, yaze::zelda3::AreaTableInfo::past_end, yaze::zelda3::AreaTableInfo::pc, RomTable(), and yaze::zelda3::AreaTableInfo::snes.
Referenced by RomTable(), VanillaTables(), and ZsCustomV3Tables().

| AreaTableInfo yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::RamTable | ( | const char * | id, |
| const char * | label, | ||
| const char * | group, | ||
| uint32_t | snes, | ||
| int | entry_bytes, | ||
| int | first_area, | ||
| int | last_area, | ||
| std::string | past_end, | ||
| std::string | note = "" ) |
Definition at line 120 of file overworld_allocation.cc.
References yaze::zelda3::AreaTableInfo::entry_bytes, yaze::zelda3::AreaTableInfo::first_area, yaze::zelda3::AreaTableInfo::group, yaze::zelda3::AreaTableInfo::id, yaze::zelda3::AreaTableInfo::in_rom, yaze::zelda3::AreaTableInfo::label, yaze::zelda3::AreaTableInfo::last_area, yaze::zelda3::AreaTableInfo::note, yaze::zelda3::AreaTableInfo::past_end, yaze::zelda3::AreaTableInfo::pc, RamTable(), and yaze::zelda3::AreaTableInfo::snes.
Referenced by RamTable(), VanillaTables(), and ZsCustomV3Tables().

| std::vector< AreaTableInfo > yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::ZsCustomV3Tables | ( | ) |
Definition at line 139 of file overworld_allocation.cc.
References kAreaSizePc, kMap32HighPc, kMap32LowPc, kPoolOverlayPc, kPoolParentPc, kPoolSpritePointerPcs, RamTable(), RomTable(), and ZsCustomV3Tables().
Referenced by ZsCustomV3Tables().

| std::vector< AreaTableInfo > yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::VanillaTables | ( | ) |
Definition at line 258 of file overworld_allocation.cc.
References kAreaSizePc, kMap32HighPc, kMap32LowPc, kVanillaParentPc, RamTable(), RomTable(), and VanillaTables().
Referenced by VanillaTables().

| AllocationAreaSize yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::DecodeAreaSize | ( | uint8_t | value, |
| bool | zs_v3 ) |
Definition at line 310 of file overworld_allocation.cc.
References DecodeAreaSize(), yaze::zelda3::kLarge, yaze::zelda3::kSmall, yaze::zelda3::kTall, and yaze::zelda3::kWide.
Referenced by DecodeAreaSize().

| int yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::VanillaSpecialParent | ( | int | area | ) |
Definition at line 328 of file overworld_allocation.cc.
References VanillaSpecialParent().
Referenced by VanillaSpecialParent().

| void yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::ScanAreaMap | ( | const Rom & | rom, |
| uint32_t | high_table_pc, | ||
| uint32_t | low_table_pc, | ||
| int | index, | ||
| AreaAllocation * | area ) |
Definition at line 335 of file overworld_allocation.cc.
References yaze::Rom::data(), yaze::zelda3::MapStreamScan::decoded, yaze::zelda3::MapStreamScan::decoded_bytes, yaze::zelda3::MapStreamScan::error, yaze::zelda3::AreaAllocation::high, yaze::zelda3::MapStreamScan::in_rom, InRom(), kMap32PerScreen, LoRomSnesToPc(), yaze::zelda3::AreaAllocation::low, yaze::zelda3::AreaAllocation::map_pointer_valid, yaze::zelda3::MapStreamScan::pc, ReadLong(), ScanAreaMap(), yaze::zelda3::ScanMapStream(), yaze::Rom::size(), yaze::zelda3::MapStreamScan::snes, yaze::zelda3::MapStreamScan::terminated, and yaze::zelda3::AreaAllocation::unique_tile32.
Referenced by ScanAreaMap().
| int yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::CountSpriteList | ( | const Rom & | rom, |
| uint16_t | pointer, | ||
| bool * | valid ) |
Definition at line 374 of file overworld_allocation.cc.
References CountSpriteList(), yaze::Rom::data(), kMaxSpritesPerList, kOverworldSpriteBankPc, and yaze::Rom::size().
Referenced by CountSpriteList().

| std::string yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::EvidenceCount | ( | int | count, |
| const char * | singular, | ||
| const char * | plural ) |
Definition at line 394 of file overworld_allocation.cc.
References EvidenceCount().
Referenced by EvidenceCount().

| std::string yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::JoinAreas | ( | const std::vector< int > & | areas | ) |
Definition at line 398 of file overworld_allocation.cc.
References AreaText(), and JoinAreas().
Referenced by JoinAreas().

| TailCheckRegion yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::MakeRegion | ( | const Rom & | rom, |
| const TailCheckAnnotator & | annotator, | ||
| const char * | id, | ||
| const char * | label, | ||
| uint32_t | snes, | ||
| int | length ) |
Definition at line 841 of file overworld_allocation.cc.
References yaze::Rom::data(), yaze::zelda3::TailCheckRegion::first_bytes, HexBytes(), yaze::zelda3::TailCheckRegion::id, yaze::zelda3::TailCheckRegion::in_rom, InRom(), yaze::zelda3::TailCheckRegion::label, yaze::zelda3::TailCheckRegion::length, LoRomSnesToPc(), MakeRegion(), yaze::zelda3::TailCheckRegion::nonzero_bytes, yaze::zelda3::TailCheckRegion::owner, yaze::zelda3::TailCheckAnnotator::ownership, yaze::zelda3::TailCheckRegion::pc, yaze::Rom::size(), yaze::zelda3::TailCheckRegion::snes, yaze::zelda3::TailCheckRegion::symbol, and yaze::zelda3::TailCheckAnnotator::symbol.
Referenced by MakeRegion().
| TailStreamCheck yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::CheckBlankStream | ( | const Rom & | rom, |
| const char * | id, | ||
| uint32_t | snes, | ||
| const std::vector< uint8_t > & | planned, | ||
| bool | applied ) |
Definition at line 872 of file overworld_allocation.cc.
References CheckBlankStream(), yaze::zelda3::MapStreamScan::compressed_bytes, yaze::zelda3::TailStreamCheck::consumed_bytes, yaze::Rom::data(), yaze::zelda3::MapStreamScan::decoded_bytes, yaze::zelda3::TailStreamCheck::decoded_bytes, yaze::zelda3::MapStreamScan::error, yaze::zelda3::TailStreamCheck::error, yaze::zelda3::TailStreamCheck::id, kMap32PerScreen, LoRomPcToSnes(), LoRomSnesToPc(), yaze::zelda3::ScanMapStream(), yaze::Rom::size(), yaze::zelda3::TailStreamCheck::snes, SnesText(), yaze::zelda3::TailStreamCheck::stopped_at, yaze::zelda3::TailStreamCheck::stream_bytes, yaze::zelda3::MapStreamScan::terminated, yaze::zelda3::TailStreamCheck::terminated, yaze::zelda3::TailStreamCheck::terminated_within_stream, and yaze::zelda3::TailStreamCheck::valid.
Referenced by CheckBlankStream().
| ordered_json yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::TableJson | ( | const AreaTableInfo & | table | ) |
Definition at line 1173 of file overworld_allocation.cc.
References yaze::zelda3::AreaTableInfo::applies_first, yaze::zelda3::AreaTableInfo::applies_last, yaze::zelda3::AreaTableInfo::entry_bytes, yaze::zelda3::AreaTableInfo::first_area, yaze::zelda3::AreaTableInfo::group, yaze::zelda3::AreaTableInfo::id, yaze::zelda3::AreaTableInfo::in_rom, yaze::zelda3::kSpecialTailFirstArea, yaze::zelda3::AreaTableInfo::label, yaze::zelda3::AreaTableInfo::last_area, yaze::zelda3::AreaTableInfo::Misses(), yaze::zelda3::AreaTableInfo::note, yaze::zelda3::AreaTableInfo::past_end, yaze::zelda3::AreaTableInfo::pc, yaze::zelda3::AreaTableInfo::snes, SnesText(), and TableJson().
Referenced by TableJson().

| ordered_json yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::StreamJson | ( | const MapStreamScan & | scan | ) |
Definition at line 1193 of file overworld_allocation.cc.
References yaze::zelda3::MapStreamScan::compressed_bytes, yaze::zelda3::MapStreamScan::decoded_bytes, yaze::zelda3::MapStreamScan::error, yaze::zelda3::MapStreamScan::pc, yaze::zelda3::MapStreamScan::snes, SnesText(), StreamJson(), and yaze::zelda3::MapStreamScan::terminated.
Referenced by AreaJson(), and StreamJson().

| ordered_json yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::AreaJson | ( | const AreaAllocation & | area | ) |
Definition at line 1206 of file overworld_allocation.cc.
References yaze::zelda3::AllocationAreaSizeName(), yaze::zelda3::AllocationWorldName(), yaze::zelda3::AreaAllocation::area, AreaJson(), yaze::zelda3::AreaAllocation::duplicate_of, yaze::zelda3::AreaAllocation::entrances, yaze::zelda3::AreaAllocation::evidence, yaze::zelda3::AreaAllocation::exits, yaze::zelda3::AreaAllocation::high, yaze::zelda3::AreaAllocation::holes, yaze::zelda3::AreaAllocation::low, yaze::zelda3::AreaAllocation::map_pointer_source, yaze::zelda3::AreaAllocation::map_pointer_valid, yaze::zelda3::AreaAllocation::name, yaze::zelda3::AreaAllocation::parent, yaze::zelda3::AreaAllocation::parent_past_end, yaze::zelda3::AreaAllocation::size, yaze::zelda3::AreaAllocation::sprites, StreamJson(), yaze::zelda3::AreaAllocation::uncovered_tables, yaze::zelda3::AreaAllocation::unique_tile32, yaze::zelda3::AreaAllocation::used, and yaze::zelda3::AreaAllocation::world.
Referenced by AreaJson().

| ordered_json yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::TailJson | ( | const TailMapExpansionCheck & | check | ) |
Definition at line 1241 of file overworld_allocation.cc.
References yaze::zelda3::TailMapExpansionCheck::asm_version, yaze::zelda3::TailMapExpansionCheck::findings, yaze::zelda3::TailMapExpansionCheck::free_bytes_before_marker, yaze::zelda3::TailMapExpansionCheck::marker_present, yaze::zelda3::TailMapExpansionCheck::marker_value, yaze::zelda3::TailMapExpansionCheck::operands, yaze::zelda3::TailMapExpansionCheck::regions, yaze::zelda3::TailMapExpansionCheck::rom_compatible, SnesText(), yaze::zelda3::TailMapExpansionCheck::streams, yaze::zelda3::TailMapExpansionCheck::tables_stopping_before_tail, yaze::zelda3::TailCheckScopeName(), yaze::zelda3::TailCheckVerdictName(), TailJson(), yaze::zelda3::TailMapExpansionCheck::verdict, yaze::zelda3::TailMapExpansionCheck::zs_code_end_snes, and yaze::zelda3::TailMapExpansionCheck::zs_code_found.
Referenced by TailJson().

| std::string yaze::zelda3::anonymous_namespace{overworld_allocation.cc}::MapColumn | ( | const AreaAllocation & | area | ) |
Definition at line 1321 of file overworld_allocation.cc.
References AreaText(), yaze::zelda3::AreaAllocation::duplicate_of, yaze::zelda3::AreaAllocation::map_pointer_source, yaze::zelda3::AreaAllocation::map_pointer_valid, MapColumn(), and yaze::zelda3::AreaAllocation::unique_tile32.
Referenced by MapColumn().

|
constexpr |
Definition at line 23 of file overworld_allocation.cc.
Referenced by ReadAsmVersion().
|
constexpr |
Definition at line 24 of file overworld_allocation.cc.
|
constexpr |
Definition at line 25 of file overworld_allocation.cc.
Referenced by CheckBlankStream(), and ScanAreaMap().
|
constexpr |
Definition at line 26 of file overworld_allocation.cc.
Referenced by VanillaTables(), and ZsCustomV3Tables().
|
constexpr |
Definition at line 27 of file overworld_allocation.cc.
Referenced by VanillaTables(), and ZsCustomV3Tables().
|
constexpr |
Definition at line 28 of file overworld_allocation.cc.
Referenced by ZsCustomV3Tables().
|
constexpr |
Definition at line 29 of file overworld_allocation.cc.
Referenced by ZsCustomV3Tables().
|
constexpr |
Definition at line 30 of file overworld_allocation.cc.
Referenced by VanillaTables(), and ZsCustomV3Tables().
|
constexpr |
Definition at line 31 of file overworld_allocation.cc.
Referenced by VanillaTables().
|
constexpr |
Definition at line 32 of file overworld_allocation.cc.
Referenced by ZsCustomV3Tables().
|
constexpr |
Definition at line 34 of file overworld_allocation.cc.
Referenced by CountSpriteList().
|
constexpr |
Definition at line 35 of file overworld_allocation.cc.
Referenced by CountSpriteList().
|
constexpr |
Definition at line 39 of file overworld_allocation.cc.
|
constexpr |
Definition at line 41 of file overworld_allocation.cc.