mirror of
https://github.com/bsnes-emu/bsnes.git
synced 2025-08-31 18:02:04 +02:00
Move things around some more
This commit is contained in:
@@ -2432,3 +2432,33 @@ bool GB_is_background_rendering_disabled(GB_gameboy_t *gb)
|
||||
return gb->background_disabled;
|
||||
}
|
||||
|
||||
unsigned GB_get_screen_width(GB_gameboy_t *gb)
|
||||
{
|
||||
switch (gb->border_mode) {
|
||||
default:
|
||||
case GB_BORDER_SGB:
|
||||
return GB_is_hle_sgb(gb)? 256 : 160;
|
||||
case GB_BORDER_NEVER:
|
||||
return 160;
|
||||
case GB_BORDER_ALWAYS:
|
||||
return 256;
|
||||
}
|
||||
}
|
||||
|
||||
unsigned GB_get_screen_height(GB_gameboy_t *gb)
|
||||
{
|
||||
switch (gb->border_mode) {
|
||||
default:
|
||||
case GB_BORDER_SGB:
|
||||
return GB_is_hle_sgb(gb)? 224 : 144;
|
||||
case GB_BORDER_NEVER:
|
||||
return 144;
|
||||
case GB_BORDER_ALWAYS:
|
||||
return 224;
|
||||
}
|
||||
}
|
||||
|
||||
double GB_get_usual_frame_rate(GB_gameboy_t *gb)
|
||||
{
|
||||
return GB_get_clock_rate(gb) / (double)LCDC_PERIOD;
|
||||
}
|
||||
|
@@ -102,6 +102,10 @@ void GB_set_color_correction_mode(GB_gameboy_t *gb, GB_color_correction_mode_t m
|
||||
void GB_set_light_temperature(GB_gameboy_t *gb, double temperature);
|
||||
void GB_set_pixels_output(GB_gameboy_t *gb, uint32_t *output);
|
||||
|
||||
unsigned GB_get_screen_width(GB_gameboy_t *gb);
|
||||
unsigned GB_get_screen_height(GB_gameboy_t *gb);
|
||||
double GB_get_usual_frame_rate(GB_gameboy_t *gb);
|
||||
|
||||
bool GB_is_odd_frame(GB_gameboy_t *gb);
|
||||
uint32_t GB_convert_rgb15(GB_gameboy_t *gb, uint16_t color, bool for_border);
|
||||
|
||||
|
36
Core/gb.c
36
Core/gb.c
@@ -1936,42 +1936,6 @@ void GB_set_border_mode(GB_gameboy_t *gb, GB_border_mode_t border_mode)
|
||||
gb->border_mode = border_mode;
|
||||
}
|
||||
|
||||
unsigned GB_get_screen_width(GB_gameboy_t *gb)
|
||||
{
|
||||
switch (gb->border_mode) {
|
||||
default:
|
||||
case GB_BORDER_SGB:
|
||||
return GB_is_hle_sgb(gb)? 256 : 160;
|
||||
case GB_BORDER_NEVER:
|
||||
return 160;
|
||||
case GB_BORDER_ALWAYS:
|
||||
return 256;
|
||||
}
|
||||
}
|
||||
|
||||
unsigned GB_get_screen_height(GB_gameboy_t *gb)
|
||||
{
|
||||
switch (gb->border_mode) {
|
||||
default:
|
||||
case GB_BORDER_SGB:
|
||||
return GB_is_hle_sgb(gb)? 224 : 144;
|
||||
case GB_BORDER_NEVER:
|
||||
return 144;
|
||||
case GB_BORDER_ALWAYS:
|
||||
return 224;
|
||||
}
|
||||
}
|
||||
|
||||
unsigned GB_get_player_count(GB_gameboy_t *gb)
|
||||
{
|
||||
return GB_is_hle_sgb(gb)? gb->sgb->player_count : 1;
|
||||
}
|
||||
|
||||
double GB_get_usual_frame_rate(GB_gameboy_t *gb)
|
||||
{
|
||||
return GB_get_clock_rate(gb) / (double)LCDC_PERIOD;
|
||||
}
|
||||
|
||||
void GB_set_joyp_write_callback(GB_gameboy_t *gb, GB_joyp_write_callback_t callback)
|
||||
{
|
||||
if (!callback) {
|
||||
|
@@ -990,11 +990,6 @@ uint32_t GB_get_clock_rate(GB_gameboy_t *gb);
|
||||
uint32_t GB_get_unmultiplied_clock_rate(GB_gameboy_t *gb);
|
||||
void GB_set_clock_multiplier(GB_gameboy_t *gb, double multiplier);
|
||||
|
||||
unsigned GB_get_screen_width(GB_gameboy_t *gb);
|
||||
unsigned GB_get_screen_height(GB_gameboy_t *gb);
|
||||
double GB_get_usual_frame_rate(GB_gameboy_t *gb);
|
||||
unsigned GB_get_player_count(GB_gameboy_t *gb);
|
||||
|
||||
/* Handy ROM info APIs */
|
||||
// `title` must be at least 17 bytes in size
|
||||
void GB_get_rom_title(GB_gameboy_t *gb, char *title);
|
||||
|
@@ -909,3 +909,7 @@ static void render_jingle(GB_gameboy_t *gb, size_t count)
|
||||
return;
|
||||
}
|
||||
|
||||
unsigned GB_get_player_count(GB_gameboy_t *gb)
|
||||
{
|
||||
return GB_is_hle_sgb(gb)? gb->sgb->player_count : 1;
|
||||
}
|
||||
|
@@ -67,3 +67,4 @@ internal void GB_sgb_render(GB_gameboy_t *gb);
|
||||
internal void GB_sgb_load_default_data(GB_gameboy_t *gb);
|
||||
|
||||
#endif
|
||||
unsigned GB_get_player_count(GB_gameboy_t *gb);
|
||||
|
Reference in New Issue
Block a user