Poke_Transporter_GB/include/dbg/debug_menu_functions.h
Philippe Symons c9ed32e3a1 Debug option: Write/Load Cable data to/from SRAM
This commit allows you to use the Write Cbl Data debug option and new Load Cbl Data debug option to dump a link's data to SRAM
or load it from SRAM and pretend like you got it over the link cable.

This is useful for capturing the link process on gameboy and replay + debug it later in an emulator.
2026-06-04 15:22:46 +02:00

38 lines
1.2 KiB
C

#ifndef _DEBUG_MENU_FUNCTIONS_H
#define _DEBUG_MENU_FUNCTIONS_H
// Here we define debug menu callback functions, to be used as on_execute_callback or on_option_activate in the debug menu entries.
/**
* @brief This function will open the text debug screen.
*/
void show_text_debug_screen(void *context, unsigned user_param);
/**
* @brief This function will show the debug info screen, which contains various flags and info about the current game state.
*/
void show_debug_info_screen(void *context, unsigned user_param);
/**
* @brief This is a generic u8/bool value set callback
*
* @param context a (u8* or bool*) pointer to the flag you want to set/unset.
* @param user_param the value to set the flag to. 0 -> false, anything else -> true.
*/
void dbg_set_byte_val(void *context, unsigned user_param);
/**
* @brief This function will take a song index and play the corresponding song.
* If the index is UINT32_MAX, it will stop the music instead.
*/
void dbg_play_song(void *context, unsigned user_param);
/**
* @brief This function will inject a Pokémon into the game.
* (right now this is just Jirachi)
*/
void dbg_inject_pkmn(void *context, unsigned user_param);
void dbg_unlock_mystery(void *context, unsigned user_param);
#endif