mirror of
https://github.com/N64Recomp/N64ModernRuntime.git
synced 2026-05-11 03:12:15 +00:00
Comments explaining which callbacks are required
This commit is contained in:
parent
1cf5157206
commit
0277b6540e
4 changed files with 20 additions and 11 deletions
|
|
@ -41,6 +41,14 @@ namespace recomp {
|
||||||
void set_rom_contents(std::vector<uint8_t>&& new_rom);
|
void set_rom_contents(std::vector<uint8_t>&& new_rom);
|
||||||
void do_rom_read(uint8_t* rdram, gpr ram_address, uint32_t physical_addr, size_t num_bytes);
|
void do_rom_read(uint8_t* rdram, gpr ram_address, uint32_t physical_addr, size_t num_bytes);
|
||||||
void do_rom_pio(uint8_t* rdram, gpr ram_address, uint32_t physical_addr);
|
void do_rom_pio(uint8_t* rdram, gpr ram_address, uint32_t physical_addr);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The following arguments contain mandatory callbacks that need to be registered (i.e., can't be `nullptr`):
|
||||||
|
* - `rsp_callbacks`
|
||||||
|
* - `renderer_callbacks`
|
||||||
|
*
|
||||||
|
* It must be called only once and it must be called before `ultramodern::preinit`.
|
||||||
|
*/
|
||||||
void start(
|
void start(
|
||||||
ultramodern::renderer::WindowHandle window_handle,
|
ultramodern::renderer::WindowHandle window_handle,
|
||||||
const recomp::rsp::callbacks_t& rsp_callbacks,
|
const recomp::rsp::callbacks_t& rsp_callbacks,
|
||||||
|
|
@ -51,6 +59,7 @@ namespace recomp {
|
||||||
const ultramodern::events::callbacks_t& events_callbacks,
|
const ultramodern::events::callbacks_t& events_callbacks,
|
||||||
const ultramodern::error_handling::callbacks_t& error_handling_callbacks_
|
const ultramodern::error_handling::callbacks_t& error_handling_callbacks_
|
||||||
);
|
);
|
||||||
|
|
||||||
void start_game(const std::u8string& game_id);
|
void start_game(const std::u8string& game_id);
|
||||||
std::u8string current_game_id();
|
std::u8string current_game_id();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,10 +5,6 @@ set(CMAKE_CXX_STANDARD 20)
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
||||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||||
|
|
||||||
# Warnings
|
|
||||||
# TODO: uncoment this when we fix the warnings
|
|
||||||
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra")
|
|
||||||
|
|
||||||
add_library(ultramodern STATIC
|
add_library(ultramodern STATIC
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}/src/audio.cpp"
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/audio.cpp"
|
||||||
"${CMAKE_CURRENT_SOURCE_DIR}/src/error_handling.cpp"
|
"${CMAKE_CURRENT_SOURCE_DIR}/src/error_handling.cpp"
|
||||||
|
|
|
||||||
|
|
@ -131,6 +131,10 @@ void set_audio_callbacks(const audio_callbacks_t& callbacks);
|
||||||
/**
|
/**
|
||||||
* Register all the callbacks used by `ultramodern`, most of them being optional.
|
* Register all the callbacks used by `ultramodern`, most of them being optional.
|
||||||
*
|
*
|
||||||
|
* The following arguments contain mandatory callbacks that need to be registered (i.e., can't be `nullptr`):
|
||||||
|
* - `rsp_callbacks`
|
||||||
|
* - `renderer_callbacks`
|
||||||
|
*
|
||||||
* It must be called only once and it must be called before `ultramodern::preinit`.
|
* It must be called only once and it must be called before `ultramodern::preinit`.
|
||||||
*/
|
*/
|
||||||
void set_callbacks(
|
void set_callbacks(
|
||||||
|
|
|
||||||
|
|
@ -230,13 +230,13 @@ uint32_t ultramodern::get_target_framerate(uint32_t original) {
|
||||||
auto& config = ultramodern::renderer::get_graphics_config();
|
auto& config = ultramodern::renderer::get_graphics_config();
|
||||||
|
|
||||||
switch (config.rr_option) {
|
switch (config.rr_option) {
|
||||||
default:
|
case ultramodern::renderer::RefreshRate::Original:
|
||||||
case ultramodern::renderer::RefreshRate::Original:
|
default:
|
||||||
return original;
|
return original;
|
||||||
case ultramodern::renderer::RefreshRate::Manual:
|
case ultramodern::renderer::RefreshRate::Manual:
|
||||||
return config.rr_manual_value;
|
return config.rr_manual_value;
|
||||||
case ultramodern::renderer::RefreshRate::Display:
|
case ultramodern::renderer::RefreshRate::Display:
|
||||||
return display_refresh_rate.load();
|
return display_refresh_rate.load();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue