yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
Todo List
Member main (int argc, char **argv)

Use factory or detect backend

Use proper aspect ratio handling

Member yaze::cli::agent::HandleDiffCommand (Rom &rom, const std::vector< std::string > &args)
Use new CommandHandler system for RomDiff
Member yaze::cli::agent::tools::ProjectManager::ExportProject (const std::string &export_path, bool include_rom=false)
Implement project export (create tar/zip archive)
Member yaze::cli::agent::tools::ProjectManager::ImportProject (const std::string &archive_path)
Implement project import (extract tar/zip archive)
Member yaze::cli::agent::TUICommandHandler::PromptUser (const std::string &)
Implement interactive prompting in TUI
{tui.cc} Member yaze::cli::anonymous_namespace{tui.cc}::ApplyAsarPatchComponent (ftxui::ScreenInteractive &screen)
Use new CommandHandler system for AsarPatch
{tui.cc} Member yaze::cli::anonymous_namespace{tui.cc}::LoadRomComponent (ftxui::ScreenInteractive &screen)
Implement file dialog
Member yaze::cli::api::HandleBreakpointHit (const httplib::Request &req, httplib::Response &res)
Integrate with RomDebugAgent for analysis
Member yaze::cli::api::HandleNavigate (const httplib::Request &req, httplib::Response &res)
Integrate with yaze's disassembly viewer to jump to address
Member yaze::cli::api::HandleStateUpdate (const httplib::Request &req, httplib::Response &res)
Store state for use by MesenDebugPanel and RomDebugAgent
Member yaze::cli::AutocompleteEngine::RegisterParameter (const std::string &param, const std::string &desc, const std::vector< std::string > &values={})
Store parameter definitions
Member yaze::cli::HandleGfxExportLegacy (const std::vector< std::string > &arg_vec)

Implement GfxExportCommandHandler

Convert the 8bpp data to the correct SNES bpp format.

Member yaze::cli::HandleGfxImportLegacy (const std::vector< std::string > &arg_vec)

Implement saving the modified graphics sheet back to the ROM.

Convert the 8bpp data to the correct SNES bpp format before writing.

Implement GfxImportCommandHandler

Member yaze::cli::HandleOverworldDescribeMapLegacy (const std::vector< std::string > &arg_vec)
Implement OverworldDescribeMapCommandHandler
Member yaze::cli::HandleOverworldFindTileLegacy (const std::vector< std::string > &arg_vec)
Implement OverworldFindTileCommandHandler
Member yaze::cli::HandleOverworldGetTileLegacy (const std::vector< std::string > &arg_vec)
Implement OverworldGetTileCommandHandler
Member yaze::cli::HandleOverworldGetVisibleRegionLegacy (const std::vector< std::string > &arg_vec)
Implement OverworldGetVisibleRegionCommandHandler
Member yaze::cli::HandleOverworldListWarpsLegacy (const std::vector< std::string > &arg_vec)
Implement OverworldListWarpsCommandHandler
Member yaze::cli::HandleOverworldScrollToLegacy (const std::vector< std::string > &arg_vec)
Implement OverworldScrollToCommandHandler
Member yaze::cli::HandleOverworldSelectRectLegacy (const std::vector< std::string > &arg_vec)
Implement OverworldSelectRectCommandHandler
Member yaze::cli::HandleOverworldSetTileLegacy (const std::vector< std::string > &arg_vec)
Implement OverworldSetTileCommandHandler
Member yaze::cli::HandleOverworldSetZoomLegacy (const std::vector< std::string > &arg_vec)
Implement OverworldSetZoomCommandHandler
Member yaze::cli::HandlePaletteImportLegacy (const std::vector< std::string > &arg_vec)
Implement saving the modified palette back to the ROM.
Member yaze::cli::handlers::DungeonGetRoomTilesCommandHandler::Execute (Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Implement tile data retrieval from room
Member yaze::cli::handlers::DungeonSetRoomPropertyCommandHandler::Execute (Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Implement property setting
Member yaze::cli::handlers::OverworldTileStatsCommandHandler::Execute (Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Implement comprehensive tile statistics
Member yaze::cli::handlers::PaletteAnalyzeCommandHandler::Execute (Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Implement actual palette analysis
Member yaze::cli::handlers::PaletteGetColorsCommandHandler::Execute (Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Implement actual palette color retrieval
Member yaze::cli::handlers::PaletteSetColorCommandHandler::Execute (Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Implement actual palette color setting
Member yaze::cli::PaletteEditorComponent::Render () override

Implement saving the modified palette to the ROM

This needs to be handled by the main TUI loop

Member yaze::cli::PolicyEvaluator::EvaluateForbiddenRanges (absl::string_view proposal_id, PolicyResult *result)
Implement forbidden range checking
Member yaze::cli::PolicyEvaluator::EvaluateTestRequirements (absl::string_view proposal_id, PolicyResult *result)
Implement test requirement evaluation
Member yaze::core::AsarWrapper::ApplyPatchWithBinary (const std::string &patch_path, std::vector< uint8_t > &rom_data, const std::vector< std::string > &include_paths)
CRC32 for CLI path
Member yaze::core::ShutdownWindow (Window &window)
BAD FIX, SLOW SHUTDOWN TAKES TOO LONG NOW
Member yaze::editor::AgentRomSyncPanel::Draw (AgentUIContext *context, const RomSyncCallbacks &callbacks, ToastManager *toast_manager)
Send via network coordinator (handled by caller usually)
{editor_manager.cc} Member yaze::editor::anonymous_namespace{editor_manager.cc}::GetEditorName (EditorType type)
Move to EditorRegistry
Member yaze::editor::AssemblyEditor::DrawEditMenu ()
Implement this.
Member yaze::editor::DrawDiggableTilesEditorPopup (zelda3::DiggableTiles *diggable_tiles, const std::vector< gfx::Tile16 > &tiles16, const std::array< uint8_t, 0x200 > &all_tiles_types)
Open file dialog and export
Member yaze::editor::DrawItemEditorPopup (zelda3::OverworldItem &item)
Implement deleting OverworldItem objects, currently only hides them
Member yaze::editor::DungeonUsageTracker::DrawUsageGrid ()
Implement usage grid visualization
Member yaze::editor::DungeonUsageTracker::RenderSetUsage (const absl::flat_hash_map< uint16_t, int > &usage_map, uint16_t &selected_set, int spriteset_offset=0x00)
Implement set usage rendering
Member yaze::editor::layout_designer::WidgetCodeGenerator::GenerateContainerCode (const WidgetDefinition &widget, int indent)
Implement container code generation
Member yaze::editor::LinkSpritePanel::OpenSheetInPixelEditor ()
Add Link sheet to open_sheets with a special identifier
Member yaze::editor::LinkSpritePanel::ResetToVanilla ()
Implement reset to vanilla
Member yaze::editor::MemoryEditor::DrawSearchPopup ()

Implement search

Implement search using hex-search handler

Member yaze::editor::MenuOrchestrator::GetCurrentEditorName () const
Get current editor name
Member yaze::editor::MenuOrchestrator::GetShortcutForAction (const std::string &action) const
Implement shortcut mapping
Member yaze::editor::MenuOrchestrator::RegisterGlobalShortcuts ()
Register global keyboard shortcuts
Member yaze::editor::MessageEditor::Find () override
Implement replace functionality
Member yaze::editor::music::InstrumentEditorView::DrawProperties (MusicInstrument &instrument, MusicBank &bank)
Add Gain Mode toggle
Member yaze::editor::music::SampleEditorView::DrawSampleList (MusicBank &bank)
Implement file dialog for BRR import
Member yaze::editor::music::SongBrowserView::Draw (MusicBank &bank)

Implement SPC/MML import

Open rename popup

Member yaze::editor::music::TrackerView::DrawGrid (MusicSong *song, const MusicBank *bank)
Handle multiple segments)
Member yaze::editor::music::TrackerView::HandleKeyboardInput (MusicSong *song)

Implement range deletion logic

Check existing and set to Rest (0xC9) or insert Rest

Member yaze::editor::MusicEditor::Copy () override
Serialize selected events to clipboard
Member yaze::editor::MusicEditor::ExportSongToAsm (int song_index)
Add native file dialog for export path selection
Member yaze::editor::MusicEditor::Paste () override
Paste from clipboard
Member yaze::editor::ObjectEditorPanel::DrawStaticObjectEditor ()
Implement ASM export (Phase 5)
Member yaze::editor::OverworldCanvasRenderer::DrawV3Settings ()
Implement v3 settings UI
Member yaze::editor::PanelManager::ResetToDefaults (size_t session_id)
Load default visibility from config file or hardcoded defaults
Member yaze::editor::PixelEditorPanel::DrawMiniMap ()
Calculate actual viewport bounds based on scroll position
Member yaze::editor::ProjectFileEditor::ApplySyntaxHighlighting ()
Implement custom syntax highlighting for INI format
Member yaze::editor::ProjectManager::CreateFromTemplate (const std::string &template_name, const std::string &project_name)
Implement template-based project creation
Member yaze::editor::ProjectManager::ExportProject (const std::string &export_path)
Implement project export logic
Member yaze::editor::ProjectManager::GetAvailableTemplates () const
Scan templates directory and return available templates
Member yaze::editor::ProjectManager::OpenProject (const std::string &filename="")
Show file dialog
Member yaze::editor::ProjectManager::RepairCurrentProject ()
Implement project repair logic
Member yaze::editor::ProjectManager::SaveProjectAs (const std::string &filename="")
Show save dialog
Member yaze::editor::ScreenEditor::DrawInventoryItemIcons ()
Select this icon for editing
Member yaze::editor::SessionCoordinator::DrawSessionContextMenu (size_t index)
Implement session duplication
Member yaze::editor::SessionCoordinator::DuplicateCurrentSession ()
Implement proper duplication when editors become movable
Member yaze::editor::SessionCoordinator::IsSessionModified (size_t index) const
Implement modification tracking
Member yaze::editor::SessionCoordinator::LoadRomIntoSession (const std::string &filename, size_t session_index=SIZE_MAX)
Implement actual ROM loading
Member yaze::editor::SessionCoordinator::SaveActiveSession (const std::string &filename="")
Implement actual ROM saving
Member yaze::editor::SessionCoordinator::SaveSessionAs (size_t session_index, const std::string &filename)
Implement actual ROM saving
Member yaze::editor::SettingsPanel::DrawParameterWidget (core::PatchParameter *param)
Implement item dropdown using game item names
Member yaze::editor::SettingsPanel::DrawPatchSettings ()
File browser for patches folder
Member yaze::editor::UICoordinator::DrawLayoutPresets ()
[EditorManagerRefactor] Implement full layout preset UI with
Member yaze::editor::UICoordinator::DrawProjectHelp ()
[EditorManagerRefactor] Implement project help dialog
Member yaze::editor::UICoordinator::DrawWindowManagementUI ()
[EditorManagerRefactor] Implement window management dialog
Member yaze::editor::UsageStatisticsCard::DrawUsageGrid ()
Add actual usage data visualization here
Member yaze::editor::UsageStatisticsCard::DrawUsageStates ()
Query actual data
Member yaze::editor::WindowDelegate::ApplyLayoutToWindow (const std::string &window_id, const std::string &layout_data)
Implement layout application
Member yaze::editor::WindowDelegate::GetHiddenWindows () const
Implement actual visibility checking
Member yaze::editor::WindowDelegate::GetVisibleWindows () const
Implement actual visibility checking
Member yaze::editor::WindowDelegate::GetWindowPosition (const std::string &window_id) const
Implement actual position retrieval
Member yaze::editor::WindowDelegate::GetWindowSize (const std::string &window_id) const
Implement actual size retrieval
Member yaze::editor::WindowDelegate::HideWindowsInCategory (const std::string &category)
Implement category-based window hiding
Member yaze::editor::WindowDelegate::LoadLayout (const std::string &preset_name)
Parse and apply layout data
Member yaze::editor::WindowDelegate::ShowOnlyWindow (const std::string &window_id)
Implement show-only functionality
Member yaze::editor::WindowDelegate::ShowWindowsInCategory (const std::string &category)
Implement category-based window showing
Member yaze::editor::WorkspaceManager::FocusNextWindow ()
Implement proper window cycling
Member yaze::editor::WorkspaceManager::FocusPreviousWindow ()
Implement window cycling backward
Member yaze::emu::BreakpointManager::EvaluateCondition (const std::string &condition, uint32_t pc, uint32_t address, uint8_t value)
Implement proper expression evaluation
Member yaze::emu::debug::DisassemblyViewer::RenderContextMenu (uint32_t address)

Implement breakpoint toggle callback

Show detailed instruction info

Member yaze::emu::debug::DisassemblyViewer::RenderDisassemblyTable (uint32_t current_pc, const std::vector< uint32_t > &breakpoints)
Open documentation for this mnemonic
Member yaze::emu::debug::DisassemblyViewer::RenderToolbar ()
Open file dialog and export
Member yaze::emu::debug::SemanticIntrospectionEngine::GetSemanticState ()
Implement lag frame detection
Member yaze::emu::Emulator::RenderSaveStates ()
Create ui::RenderSaveStates() when save state system is implemented
Member yaze::emu::input::SDL2InputBackend::Poll (int player) override
Add gamepad support
Member yaze::emu::input::SDL2InputBackend::ProcessEvent (void *event) override
Handle gamepad events
Member yaze::emu::Ppu::EvaluateSprites (int line)
rectangular sprites, wierdness with sprites at -256
Member yaze::emu::Ppu::HandleOPT (int layer, int *lx, int *ly)

not sure if correct for interlace

not sure if correct

Member yaze::emu::Ppu::HandlePixel (int x, int y)

subscreen pixels can be clipped to black as well

math for subscreen pixels (add/sub sub to main)

Member yaze::emu::Ppu::Read (uint8_t adr, bool latch)
only when ppulatch is set
Member yaze::emu::Ppu::Write (uint8_t adr, uint8_t val)

oam address reset when written on first line of vblank, (and when

vram access during rendering (also cgram and oam)

mosaic line reset specifics

Member yaze::emu::render::SaveStateManager::GenerateRoomState (int room_id)
detect region
Member yaze::emu::Snes::RunCycle ()
this starts a little after start of vblank
Member yaze::emu::Spc700::RunOpcode ()
Add SPC700 DisassemblyViewer similar to CPU
Member yaze::emu::ui::RenderAIAgentPanel (Emulator *emu)

Stop agent

Start agent

Member yaze::emu::ui::RenderCpuInstructionLog (Emulator *emu, uint32_t log_size)
Open disassembly viewer window
Member yaze::gfx::LoadAllPalettes (const std::vector< uint8_t > &rom_data, PaletteGroupMap &groups)
Refactor LoadAllPalettes to use group names, move to zelda3 namespace
Member yaze::gfx::TextureAtlas::AllocateRegion (int source_id, int width, int height)
Implement more efficient rect packing (shelf, guillotine, etc.)
Member yaze::gfx::TextureAtlas::DrawRegion (int source_id, int dest_x, int dest_y)
Integrate with renderer to draw atlas region at (dest_x, dest_y)
Member yaze::gfx::TextureAtlas::PackBitmap (const Bitmap &src, const AtlasRegion &region)
Implement pixel copying from src to atlas_bitmap_ at region
Member yaze::gfx::ZsprLoader::ApplyPaletteToRom (Rom &rom, const ZsprData &zspr)
Find exact glove color offsets for US ROM
Member yaze::gui::BeginWindowWithDisplaySettings (const char *id, bool *active, const ImVec2 &size, ImGuiWindowFlags flags)
Add more display settings to popup windows.
Member yaze::gui::Canvas::DrawBitmapTable (const BitmapTable &gfx_bin)
Add parameters for sizing and positioning
Member yaze::gui::CanvasContextMenu::RenderPaletteOperationsMenu (Rom *rom, gfx::Bitmap *bitmap)

Open file in system viewer

Open file in system viewer

Member yaze::gui::ClickableText (const std::string &text)
Setup themes and text/clickable colors
Member yaze::gui::CollaborationPanel::RenderApprovalProposal (const net::ProposalApprovalManager::ApprovalStatus &status, int index)

Send approval vote

Send rejection vote

Member yaze::gui::CollaborationPanel::RenderProposalEntry (const ProposalEntry &entry, int index)

Send approval to server

Send rejection to server

Execute proposal

Member yaze::gui::CollaborationPanel::RenderSnapshotEntry (const SnapshotEntry &entry, int index)

Export snapshot to file

Open snapshot viewer

Member yaze::gui::CollaborationPanel::RenderVersionHistoryTab ()

Show result

Find snapshot with this hash and mark as safe

Show result in UI

Member yaze::gui::CollaborationPanel::RenderVersionSnapshot (const net::RomSnapshot &snapshot, int index)
Show result
Member yaze::net::CollaborationService::ApplyDiff (const std::string &diff_data)
Implement proper diff application
Member yaze::net::CollaborationService::GenerateDiff (const std::string &from_hash, const std::string &to_hash)
Implement proper binary diff generation
Member yaze::project::YazeProject::ImportFromZScreamFormat (const std::string &project_path)
Implement ZScream format parsing when format specification is
Member yaze::project::YazeProject::ImportZScreamProject (const std::string &zscream_project_path)
Implement actual ZScream format parsing when format is known
Member yaze::rom::HyruleMagicValidator::FixChecksum ()
Implement proper SNES checksum calculation.
Member yaze::test::AIVisionVerifier::CaptureAndEncodeScreenshot ()
Encode to base64 for API calls
Member yaze::test::AIVisionVerifier::CaptureScreenshot (const std::string &name)
Implement PNG saving
Member yaze::test::ScreenshotAssertion::ComparePerceptualHash (const Screenshot &actual, const Screenshot &expected)
Implement proper pHash algorithm
Member yaze::test::ScreenshotAssertion::CompareStructural (const Screenshot &actual, const Screenshot &expected)
Implement proper SSIM algorithm
Member yaze::test::ScreenshotAssertion::FindDifferingRegions (const Screenshot &actual, const Screenshot &expected, int threshold)
Implement region clustering for difference visualization
Member yaze::test::ScreenshotAssertion::SaveScreenshot (const Screenshot &screenshot, const std::string &path)
Implement proper PNG encoding
Member yaze::test::TestManager::DrawTestDashboard (bool *show_dashboard=nullptr)

Implement file dialog to load ROM specifically for testing

This would need access to EditorManager to create a new session

Implement result export

Member yaze::zelda3::draw_routines::DrawWaterFace (const DrawContext &ctx)
Implement state check from RoomDraw_EmptyWaterFace ($019D29)
Member yaze::zelda3::DungeonObjectEditor::HandleMouseClick (int x, int y, bool left_button, bool right_button, bool shift_pressed)
Show context menu
Member yaze::zelda3::DungeonObjectEditor::InitializeEditor ()
Make this path configurable or platform-aware
Member yaze::zelda3::music::MusicBank::ImportSampleFromWav (const std::string &filepath, const std::string &name)
Implement proper WAV loading and BRR encoding
Member yaze::zelda3::music::MusicBank::LoadExpandedSongTable (Rom &rom, std::vector< MusicSong > *custom_songs)
Load auxiliary bank songs from $2B00 if needed
Member yaze::zelda3::music::MusicBank::SaveInstruments (Rom &rom)
Implement instrument serialization
Member yaze::zelda3::music::MusicBank::SaveSamples (Rom &rom)
Implement BRR encoding and sample saving
Member yaze::zelda3::ObjectDrawer::DrawObjectList (const std::vector< RoomObject > &objects, gfx::BackgroundBuffer &bg1, gfx::BackgroundBuffer &bg2, const gfx::PaletteGroup &palette_group, const DungeonState *state=nullptr, gfx::BackgroundBuffer *layout_bg1=nullptr)
Handle pitch mismatch properly (copy row by row)
Member yaze::zelda3::OverworldMap::LoadCustomOverworldData ()
Might need this one too "index == 0x1B"
Member yaze::zelda3::OverworldMap::LoadDeathMountainGFX ()
Change the conditions for death mountain gfx
Member yaze::zelda3::Room::sprites_
add separate door objects list when door section (F0 FF) is parsed
Member yaze::zelda3::SaveGameData (Rom &rom, GameData &data)

Implement SaveAllGraphicsData logic

Implement SaveAllPalettes logic using Rom::WriteColor

Member yaze::zelda3::Sprite::Draw ()
Add something here?
Member yaze::zelda3::TitleScreen::BuildTileset (Rom *rom)
Build tile16 blockset from tile8 data