Skip to content

Commit

Permalink
Silence warnings
Browse files Browse the repository at this point in the history
  • Loading branch information
LibretroAdmin committed Feb 9, 2025
1 parent 9267771 commit afd7399
Show file tree
Hide file tree
Showing 9 changed files with 91 additions and 63 deletions.
76 changes: 36 additions & 40 deletions ai/game_ai.c
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
#endif

#include <retro_assert.h>
#include <compat/strl.h>

#include "../deps/game_ai_lib/GameAI.h"

Expand Down Expand Up @@ -51,65 +52,60 @@ void game_ai_debug_log(int level, const char *fmt, ...)
va_end(vp);
}

void array_to_bits_16(volatile signed short * result, const bool b[16])
void array_to_bits_16(volatile signed short *result, const bool b[16])
{
for (int bit = 0; bit <= 15; bit++)
{
*result |= b[bit] ? (1 << bit) : 0;
}
}

/* Interface to RA */

extern signed short int game_ai_input(unsigned int port, unsigned int device, unsigned int idx, unsigned int id, signed short int result)
signed short int game_ai_input(unsigned int port, unsigned int device,
unsigned int idx, unsigned int id, signed short int result)
{
if (ga == NULL)
return 0;

if (port < GAME_AI_MAX_PLAYERS)
if (ga && (port < GAME_AI_MAX_PLAYERS))
return g_buttons_bits[port];

return 0;
}

extern void game_ai_init()
void game_ai_init(void)
{
if (create_game_ai == NULL)
if (!create_game_ai)
{
#ifdef _WIN32
BOOL fFreeResult, fRunTimeLinkSuccess = FALSE;
BOOL fFreeResult, fRunTimeLinkSuccess = FALSE;

g_lib_handle = LoadLibrary(TEXT("game_ai.dll"));
retro_assert(hinstLib);
g_lib_handle = LoadLibrary(TEXT("game_ai.dll"));
retro_assert(hinstLib);

char full_module_path[MAX_PATH];
DWORD dwLen = GetModuleFileNameA(g_lib_handle, static_cast<char*>(&full_module_path), MAX_PATH);
char full_module_path[MAX_PATH];
DWORD dwLen = GetModuleFileNameA(g_lib_handle, static_cast<char*>(&full_module_path), MAX_PATH);

if (hinstLib != NULL)
{
create_game_ai = (create_game_ai_t) GetProcAddress(hinstLib, "create_game_ai");
retro_assert(create_game_ai);
if (hinstLib)
{
create_game_ai = (create_game_ai_t) GetProcAddress(hinstLib, "create_game_ai");
retro_assert(create_game_ai);

destroy_game_ai = (destroy_game_ai_t) GetProcAddress(hinstLib, "destroy_game_ai");
retro_assert(destroy_game_ai);
destroy_game_ai = (destroy_game_ai_t) GetProcAddress(hinstLib, "destroy_game_ai");
retro_assert(destroy_game_ai);

game_ai_lib_init = (game_ai_lib_init_t) GetProcAddress(hinstLib, "game_ai_lib_init");
retro_assert(game_ai_lib_init);
game_ai_lib_init = (game_ai_lib_init_t) GetProcAddress(hinstLib, "game_ai_lib_init");
retro_assert(game_ai_lib_init);

game_ai_lib_think = (game_ai_lib_think_t) GetProcAddress(hinstLib, "game_ai_lib_think");
retro_assert(game_ai_lib_think);
game_ai_lib_think = (game_ai_lib_think_t) GetProcAddress(hinstLib, "game_ai_lib_think");
retro_assert(game_ai_lib_think);

game_ai_lib_set_show_debug = (game_ai_lib_set_show_debug_t) GetProcAddress(hinstLib, "game_ai_lib_set_show_debug");
retro_assert(game_ai_lib_set_show_debug);
game_ai_lib_set_show_debug = (game_ai_lib_set_show_debug_t) GetProcAddress(hinstLib, "game_ai_lib_set_show_debug");
retro_assert(game_ai_lib_set_show_debug);

game_ai_lib_set_debug_log = (game_ai_lib_set_debug_log_t) GetProcAddress(hinstLib, "game_ai_lib_set_debug_log");
retro_assert(game_ai_lib_set_debug_log);
}
game_ai_lib_set_debug_log = (game_ai_lib_set_debug_log_t) GetProcAddress(hinstLib, "game_ai_lib_set_debug_log");
retro_assert(game_ai_lib_set_debug_log);
}
#else
g_lib_handle = dlopen("./libgame_ai.so", RTLD_NOW);
retro_assert(g_lib_handle);

if(g_lib_handle != NULL)
if (g_lib_handle)
{
dlinfo(g_lib_handle, RTLD_DI_ORIGIN, (void *) &game_ai_lib_path);

Expand All @@ -135,7 +131,7 @@ extern void game_ai_init()
}
}

extern void game_ai_shutdown()
void game_ai_shutdown(void)
{
if (g_lib_handle)
{
Expand All @@ -152,14 +148,14 @@ extern void game_ai_shutdown()
}
}

extern void game_ai_load(const char * name, void * ram_ptr, int ram_size, retro_log_printf_t log)
void game_ai_load(const char * name, void * ram_ptr, int ram_size, retro_log_printf_t log)
{
strcpy((char *) &g_game_name[0], name);

g_ram_ptr = ram_ptr;
g_ram_ptr = ram_ptr;
g_ram_size = ram_size;

g_log = log;
g_log = log;

if (ga)
{
Expand All @@ -168,12 +164,14 @@ extern void game_ai_load(const char * name, void * ram_ptr, int ram_size, retro_
}
}

extern void game_ai_think(bool override_p1, bool override_p2, bool show_debug, const void *frame_data, unsigned int frame_width, unsigned int frame_height, unsigned int frame_pitch, unsigned int pixel_format)
void game_ai_think(bool override_p1, bool override_p2, bool show_debug,
const void *frame_data, unsigned int frame_width, unsigned int frame_height,
unsigned int frame_pitch, unsigned int pixel_format)
{
if (ga)
game_ai_lib_set_show_debug(ga, show_debug);

if (ga == NULL && g_ram_ptr != NULL)
if (!ga && g_ram_ptr)
{
ga = create_game_ai((char *) &g_game_name[0]);
retro_assert(ga);
Expand Down Expand Up @@ -214,7 +212,5 @@ extern void game_ai_think(bool override_p1, bool override_p2, bool show_debug, c
g_frameCount=0;
}
else
{
g_frameCount++;
}
}
47 changes: 41 additions & 6 deletions ai/game_ai.h
Original file line number Diff line number Diff line change
@@ -1,9 +1,44 @@
#pragma once
/* RetroArch - A frontend for libretro.
* Copyright (C) 2010-2014 - Hans-Kristian Arntzen
* Copyright (C) 2011-2016 - Daniel De Matteis
* Copyright (C) 2021 - David G.F.
*
* RetroArch is free software: you can redistribute it and/or modify it under the terms
* of the GNU General Public License as published by the Free Software Found-
* ation, either version 3 of the License, or (at your option) any later version.
*
* RetroArch is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with RetroArch.
* If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef RARCH_GAME_AI_H__
#define RARCH_GAME_AI_H__

#include <boolean.h>
#include <retro_common_api.h>

#include <libretro.h>

signed short int game_ai_input(unsigned int port, unsigned int device, unsigned int idx, unsigned int id, signed short int result);
void game_ai_init();
void game_ai_shutdown();
void game_ai_load(const char * name, void * ram_ptr, int ram_size, retro_log_printf_t log);
void game_ai_think(bool override_p1, bool override_p2, bool show_debug, const void *frame_data, unsigned int frame_width, unsigned int frame_height, unsigned int frame_pitch, unsigned int pixel_format);
RETRO_BEGIN_DECLS
signed short int game_ai_input(unsigned int port, unsigned int device,
unsigned int idx, unsigned int id, signed short int result);

void game_ai_init(void);

void game_ai_shutdown(void);

void game_ai_load(const char * name, void * ram_ptr,
int ram_size, retro_log_printf_t log);

void game_ai_think(bool override_p1, bool override_p2, bool show_debug,
const void *frame_data, unsigned int frame_w, unsigned int frame_h,
unsigned int frame_pitch, unsigned int pixel_format);

RETRO_END_DECLS

#endif
4 changes: 2 additions & 2 deletions menu/drivers/materialui.c
Original file line number Diff line number Diff line change
Expand Up @@ -9372,15 +9372,15 @@ static enum menu_action materialui_parse_menu_entry_action(
struct menu_state *menu_st = menu_state_get_ptr();
size_t selection_total = menu_st->entries.list ? MENU_LIST_GET_SELECTION(menu_st->entries.list, 0)->size : 0;
size_t selection = menu_st->selection_ptr;
size_t new_selection = random_range(0, selection_total - 1);
size_t new_selection = random_range(0, (unsigned)(selection_total - 1));
menu_entry_t entry_new;

MENU_ENTRY_INITIALIZE(entry_new);
menu_entry_get(&entry_new, 0, new_selection, NULL, false);
/* Keep randomizing until selection is a fresh playlist */
while (new_selection == selection || entry_new.type != FILE_TYPE_PLAYLIST_COLLECTION)
{
new_selection = random_range(0, selection_total - 1);
new_selection = random_range(0, (unsigned)(selection_total - 1));
menu_entry_get(&entry_new, 0, new_selection, NULL, false);
}

Expand Down
9 changes: 4 additions & 5 deletions menu/drivers/ozone.c
Original file line number Diff line number Diff line change
Expand Up @@ -8154,9 +8154,9 @@ static enum menu_action ozone_parse_menu_entry_action(
? ozone_get_onscreen_category_selection(ozone)
: ozone->categories_selection_ptr;

new_selection = random_range(ozone->system_tab_end + 1, ozone->system_tab_end + horizontal_list_size);
new_selection = random_range(ozone->system_tab_end + 1, (unsigned)(ozone->system_tab_end + horizontal_list_size));
while (new_selection == (int)tab_selection)
new_selection = random_range(ozone->system_tab_end + 1, ozone->system_tab_end + horizontal_list_size);
new_selection = random_range(ozone->system_tab_end + 1, (unsigned)(ozone->system_tab_end + horizontal_list_size));

if (new_selection != (int)tab_selection)
ozone_sidebar_goto(ozone, new_selection);
Expand All @@ -8175,15 +8175,15 @@ static enum menu_action ozone_parse_menu_entry_action(
struct menu_state *menu_st = menu_state_get_ptr();
size_t selection_total = menu_st->entries.list ? MENU_LIST_GET_SELECTION(menu_st->entries.list, 0)->size : 0;
size_t selection = menu_st->selection_ptr;
size_t new_selection = random_range(0, selection_total - 1);
size_t new_selection = random_range(0, (unsigned)(selection_total - 1));
menu_entry_t entry_new;

MENU_ENTRY_INITIALIZE(entry_new);
menu_entry_get(&entry_new, 0, new_selection, NULL, false);
/* Keep randomizing until selection is a fresh playlist */
while (new_selection == selection || entry_new.type != FILE_TYPE_PLAYLIST_COLLECTION)
{
new_selection = random_range(0, selection_total - 1);
new_selection = random_range(0, (unsigned)(selection_total - 1));
menu_entry_get(&entry_new, 0, new_selection, NULL, false);
}

Expand Down Expand Up @@ -11654,7 +11654,6 @@ static void ozone_frame(void *data, video_frame_info_t *video_info)
bool video_fullscreen = video_info->fullscreen;
bool mouse_grabbed = video_info->input_driver_grab_mouse_state;
bool menu_mouse_enable = video_info->menu_mouse_enable;
bool input_menu_swap_ok_cancel_buttons = video_info->input_menu_swap_ok_cancel_buttons;
bool battery_level_enable = video_info->battery_level_enable;
bool timedate_enable = video_info->timedate_enable;
gfx_display_t *p_disp = (gfx_display_t*)video_info->disp_userdata;
Expand Down
4 changes: 2 additions & 2 deletions menu/drivers/rgui.c
Original file line number Diff line number Diff line change
Expand Up @@ -8114,15 +8114,15 @@ static enum menu_action rgui_parse_menu_entry_action(
{
size_t selection_total = menu_st->entries.list ? MENU_LIST_GET_SELECTION(menu_st->entries.list, 0)->size : 0;
size_t selection = menu_st->selection_ptr;
size_t new_selection = random_range(0, selection_total - 1);
size_t new_selection = random_range(0, (unsigned)(selection_total - 1));
menu_entry_t entry_new;

MENU_ENTRY_INITIALIZE(entry_new);
menu_entry_get(&entry_new, 0, new_selection, NULL, false);
/* Keep randomizing until selection is a fresh playlist */
while (new_selection == selection || entry_new.type != FILE_TYPE_PLAYLIST_COLLECTION)
{
new_selection = random_range(0, selection_total - 1);
new_selection = random_range(0, (unsigned)(selection_total - 1));
menu_entry_get(&entry_new, 0, new_selection, NULL, false);
}

Expand Down
4 changes: 2 additions & 2 deletions menu/drivers/xmb.c
Original file line number Diff line number Diff line change
Expand Up @@ -5562,15 +5562,15 @@ static enum menu_action xmb_parse_menu_entry_action(
struct menu_state *menu_st = menu_state_get_ptr();
size_t selection_total = menu_st->entries.list ? MENU_LIST_GET_SELECTION(menu_st->entries.list, 0)->size : 0;
size_t selection = menu_st->selection_ptr;
size_t new_selection = random_range(0, selection_total - 1);
size_t new_selection = random_range(0, (unsigned)(selection_total - 1));
menu_entry_t entry_new;

MENU_ENTRY_INITIALIZE(entry_new);
menu_entry_get(&entry_new, 0, new_selection, NULL, false);
/* Keep randomizing until selection is a fresh playlist */
while (new_selection == selection || entry_new.type != FILE_TYPE_PLAYLIST_COLLECTION)
{
new_selection = random_range(0, selection_total - 1);
new_selection = random_range(0, (unsigned)(selection_total - 1));
menu_entry_get(&entry_new, 0, new_selection, NULL, false);
}

Expand Down
2 changes: 0 additions & 2 deletions menu/menu_displaylist.c
Original file line number Diff line number Diff line change
Expand Up @@ -7914,9 +7914,7 @@ unsigned menu_displaylist_build_list(
case DISPLAYLIST_LOAD_CONTENT_LIST:
case DISPLAYLIST_LOAD_CONTENT_SPECIAL:
{
const char *menu_ident = menu_driver_ident();
core_info_list_t *info_list = NULL;

core_info_get_list(&info_list);

if (!string_is_empty(settings->paths.directory_menu_content))
Expand Down
4 changes: 2 additions & 2 deletions menu/menu_driver.c
Original file line number Diff line number Diff line change
Expand Up @@ -8129,10 +8129,10 @@ size_t menu_playlist_random_selection(size_t selection, bool is_explore_list)
selection_start = 2;
}

new_selection = random_range(selection_start, selection_total - 1);
new_selection = random_range(selection_start, (unsigned)(selection_total - 1));

while (new_selection == selection && selection_start != selection_total - 1)
new_selection = random_range(selection_start, selection_total - 1);
new_selection = random_range(selection_start, (unsigned)(selection_total - 1));

return new_selection;
}
4 changes: 2 additions & 2 deletions runahead.c
Original file line number Diff line number Diff line change
Expand Up @@ -1562,8 +1562,8 @@ static INLINE void preempt_input_poll(preempt_t *preempt,
for (p = 0; p < max_users; p++)
{
/* Check full digital joypad */
joypad_state = state_cb(p, RETRO_DEVICE_JOYPAD,
0, RETRO_DEVICE_ID_JOYPAD_MASK);
joypad_state = (int16_t)(state_cb(p, RETRO_DEVICE_JOYPAD,
0, RETRO_DEVICE_ID_JOYPAD_MASK));
if (joypad_state != preempt->joypad_state[p])
{
preempt->joypad_state[p] = joypad_state;
Expand Down

0 comments on commit afd7399

Please sign in to comment.