2023-02-20 03:27:35 +00:00
|
|
|
#ifndef __RT64_LAYER_H__
|
|
|
|
#define __RT64_LAYER_H__
|
|
|
|
|
2023-11-13 00:40:02 +00:00
|
|
|
#include "../ultramodern/ultramodern.hpp"
|
2024-01-01 05:09:14 +00:00
|
|
|
#include "../ultramodern/config.hpp"
|
|
|
|
|
|
|
|
namespace RT64 {
|
|
|
|
struct Application;
|
|
|
|
}
|
|
|
|
|
|
|
|
namespace ultramodern {
|
|
|
|
struct WindowHandle;
|
|
|
|
}
|
|
|
|
|
2024-03-03 04:23:29 +00:00
|
|
|
RT64::Application* RT64Init(uint8_t* rom, uint8_t* rdram, ultramodern::WindowHandle window_handle, bool developer_mode);
|
2024-01-01 05:09:14 +00:00
|
|
|
void RT64UpdateConfig(RT64::Application* application, const ultramodern::GraphicsConfig& old_config, const ultramodern::GraphicsConfig& new_config);
|
2024-02-05 03:55:15 +00:00
|
|
|
void RT64EnableInstantPresent(RT64::Application* application);
|
2024-01-01 05:09:14 +00:00
|
|
|
void RT64SendDL(uint8_t* rdram, const OSTask* task);
|
|
|
|
void RT64UpdateScreen(uint32_t vi_origin);
|
|
|
|
void RT64ChangeWindow();
|
|
|
|
void RT64Shutdown();
|
2024-01-21 19:04:56 +00:00
|
|
|
RT64::UserConfiguration::Antialiasing RT64MaxMSAA();
|
2024-03-03 07:36:14 +00:00
|
|
|
uint32_t RT64GetDisplayFramerate(RT64::Application* application);
|
2023-02-20 03:27:35 +00:00
|
|
|
|
2023-10-31 02:41:05 +00:00
|
|
|
void set_rt64_hooks();
|
|
|
|
|
2023-02-20 03:27:35 +00:00
|
|
|
#endif
|
|
|
|
|