#include <array>#include <cstdint>#include <map>#include <vector>#include "absl/status/status.h"#include "absl/status/statusor.h"#include "app/gfx/core/bitmap.h"#include "app/gfx/types/snes_palette.h"#include "rom/rom.h"#include "rom/rom_diagnostics.h"#include "zelda.h"Go to the source code of this file.
Classes | |
| struct | yaze::zelda3::GameData |
| struct | yaze::zelda3::LoadOptions |
Namespaces | |
| namespace | yaze |
| namespace | yaze::zelda3 |
| Zelda 3 specific classes and functions. | |
Functions | |
| absl::Status | yaze::zelda3::LoadGameData (Rom &rom, GameData &data, const LoadOptions &options={}) |
| Loads all Zelda3-specific game data from a generic ROM. | |
| absl::Status | yaze::zelda3::SaveGameData (Rom &rom, GameData &data) |
| Saves modified game data back to the ROM. | |
| absl::Status | yaze::zelda3::LoadMetadata (const Rom &rom, GameData &data) |
| absl::Status | yaze::zelda3::LoadPalettes (const Rom &rom, GameData &data) |
| absl::Status | yaze::zelda3::LoadGfxGroups (Rom &rom, GameData &data) |
| absl::Status | yaze::zelda3::LoadGraphics (Rom &rom, GameData &data) |
| absl::Status | yaze::zelda3::SaveGfxGroups (Rom &rom, const GameData &data) |
| absl::StatusOr< std::array< gfx::Bitmap, kNumLinkSheets > > | yaze::zelda3::LoadLinkGraphics (const Rom &rom) |
| Loads Link's graphics sheets from ROM. | |
| absl::StatusOr< std::vector< uint8_t > > | yaze::zelda3::Load2BppGraphics (const Rom &rom) |
| Loads 2BPP graphics sheets from ROM. | |
| absl::StatusOr< gfx::Bitmap > | yaze::zelda3::LoadFontGraphics (const Rom &rom) |
| Loads font graphics from ROM. | |
| absl::Status | yaze::zelda3::SaveAllGraphicsData (Rom &rom, const std::array< gfx::Bitmap, kNumGfxSheets > &sheets) |
| Saves all graphics sheets back to ROM. | |
| uint32_t | yaze::zelda3::GetGraphicsAddress (const uint8_t *data, uint8_t addr, uint32_t ptr1, uint32_t ptr2, uint32_t ptr3, size_t rom_size) |
| Gets the graphics address for a sheet index. | |
Variables | |
| constexpr uint32_t | yaze::zelda3::kNumGfxSheets = 223 |
| constexpr uint32_t | yaze::zelda3::kNumLinkSheets = 14 |
| constexpr uint32_t | yaze::zelda3::kNumMainBlocksets = 37 |
| constexpr uint32_t | yaze::zelda3::kNumRoomBlocksets = 82 |
| constexpr uint32_t | yaze::zelda3::kNumSpritesets = 144 |
| constexpr uint32_t | yaze::zelda3::kNumPalettesets = 72 |
| constexpr uint32_t | yaze::zelda3::kEntranceGfxGroup = 0x5D97 |
| constexpr uint32_t | yaze::zelda3::kMaxGraphics = 0x0C3FFF |
| constexpr uint32_t | yaze::zelda3::kPalettesetIdsAddress = 0x75460 |
| constexpr uint32_t | yaze::zelda3::kDungeonPalettePointerTable = 0xDEC4B |
| constexpr uint32_t | yaze::zelda3::kLinkGfxOffset = 0x80000 |
| constexpr uint16_t | yaze::zelda3::kLinkGfxLength = 0x800 |
| constexpr uint32_t | yaze::zelda3::kFontSpriteLocation = 0x70000 |
| constexpr uint32_t | yaze::zelda3::kUncompressedSheetSize = 0x0800 |
| constexpr uint32_t | yaze::zelda3::kTile16Ptr = 0x78000 |