Skip to content

Commit 9018c2d

Browse files
committed
Fix warnings
1 parent c73be60 commit 9018c2d

File tree

4 files changed

+41
-99
lines changed

4 files changed

+41
-99
lines changed

platforms/libretro/libretro.cpp

Lines changed: 28 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ static const char slash = '/';
3636
#endif
3737

3838
#define MAX_PADS 2
39-
#define JOYPAD_BUTTONS 16
39+
#define JOYPAD_BUTTONS 8
4040

4141
static struct retro_log_callback logging;
4242
static retro_log_printf_t log_cb;
@@ -50,19 +50,13 @@ static int current_screen_width = 0;
5050
static int current_screen_height = 0;
5151
static bool allow_up_down = false;
5252
static bool libretro_supports_bitmasks;
53-
static int spinner_support = 0;
54-
static int spinner_sensitivity = 1;
5553
static float aspect_ratio = 0.0f;
5654

5755
static GeargrafxCore* core;
5856
static u8* frame_buffer;
5957

6058
static int joypad[MAX_PADS][JOYPAD_BUTTONS];
6159
static int joypre[MAX_PADS][JOYPAD_BUTTONS];
62-
static int joypad_ext[MAX_PADS][4];
63-
static int joypre_ext[MAX_PADS][4];
64-
static bool mouse[2];
65-
static bool mousepre[2];
6660

6761
static GG_Keys keymap[] = {
6862
GG_KEY_UP,
@@ -71,8 +65,8 @@ static GG_Keys keymap[] = {
7165
GG_KEY_RIGHT,
7266
GG_KEY_1,
7367
GG_KEY_2,
74-
GG_KEY_RUN,
75-
GG_KEY_SELECT
68+
GG_KEY_SELECT,
69+
GG_KEY_RUN
7670
};
7771

7872
static void fallback_log(enum retro_log_level level, const char *fmt, ...)
@@ -119,7 +113,8 @@ void retro_init(void)
119113
core->Init(GG_PIXEL_RGB565);
120114
#endif
121115

122-
frame_buffer = new u8[HUC6270_MAX_RESOLUTION_WIDTH * HUC6270_MAX_RESOLUTION_HEIGHT * 2];
116+
//frame_buffer = new u8[HUC6270_MAX_RESOLUTION_WIDTH * HUC6270_MAX_RESOLUTION_HEIGHT * 2];
117+
frame_buffer = new u8[1024 * 512 * 2];
123118

124119
audio_sample_count = 0;
125120

@@ -143,47 +138,23 @@ void retro_set_controller_port_device(unsigned port, unsigned device)
143138

144139
struct retro_input_descriptor joypad[] = {
145140

146-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_UP, "Joystick Up" },
147-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_DOWN, "Joystick Down" },
148-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_LEFT, "Joystick Left" },
149-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_RIGHT, "Joystick Right" },
150-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_B, "Yellow (Left)" },
151-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_A, "Red (Right)" },
152-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_Y, "Keypad 1" },
153-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_X, "Keypad 2" },
154-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_L, "Keypad 3" },
155-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_R, "Keypad 4" },
156-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_L2, "Keypad 5" },
157-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_R2, "Keypad 6" },
158-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_L3, "Keypad 7" },
159-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_R3, "Keypad 8" },
160-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_START, "Keypad *" },
161-
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_SELECT, "Keypad #" },
162-
{ 0, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_LEFT, RETRO_DEVICE_ID_ANALOG_Y, "Keypad 9" },
163-
{ 0, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_LEFT, RETRO_DEVICE_ID_ANALOG_X, "Keypad 0" },
164-
{ 0, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_RIGHT, RETRO_DEVICE_ID_ANALOG_Y, "Purple" },
165-
{ 0, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_RIGHT, RETRO_DEVICE_ID_ANALOG_X, "Blue" },
166-
167-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_UP, "Joystick Up" },
168-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_DOWN, "Joystick Down" },
169-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_LEFT, "Joystick Left" },
170-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_RIGHT, "Joystick Right" },
171-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_B, "Yellow (Left)" },
172-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_A, "Red (Right)" },
173-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_Y, "Keypad 1" },
174-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_X, "Keypad 2" },
175-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_L, "Keypad 3" },
176-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_R, "Keypad 4" },
177-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_L2, "Keypad 5" },
178-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_R2, "Keypad 6" },
179-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_L3, "Keypad 7" },
180-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_R3, "Keypad 8" },
181-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_START, "Keypad *" },
182-
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_SELECT, "Keypad #" },
183-
{ 1, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_LEFT, RETRO_DEVICE_ID_ANALOG_Y, "Keypad 9" },
184-
{ 1, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_LEFT, RETRO_DEVICE_ID_ANALOG_X, "Keypad 0" },
185-
{ 1, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_RIGHT, RETRO_DEVICE_ID_ANALOG_Y, "Purple" },
186-
{ 1, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_RIGHT, RETRO_DEVICE_ID_ANALOG_X, "Blue" },
141+
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_UP, "Up" },
142+
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_DOWN, "Down" },
143+
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_LEFT, "Left" },
144+
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_RIGHT, "Right" },
145+
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_A, "I" },
146+
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_B, "II" },
147+
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_SELECT, "Select" },
148+
{ 0, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_START, "Run" },
149+
150+
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_UP, "Up" },
151+
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_DOWN, "Down" },
152+
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_LEFT, "Left" },
153+
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_RIGHT, "Right" },
154+
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_A, "I" },
155+
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_B, "II" },
156+
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_SELECT, "Select" },
157+
{ 1, RETRO_DEVICE_JOYPAD, 0, RETRO_DEVICE_ID_JOYPAD_START, "Run" },
187158

188159
{ 0, 0, 0, 0, NULL }
189160
};
@@ -223,10 +194,10 @@ void retro_get_system_av_info(struct retro_system_av_info *info)
223194

224195
info->geometry.base_width = runtime_info.screen_width;
225196
info->geometry.base_height = runtime_info.screen_height;
226-
info->geometry.max_width = HUC6270_MAX_RESOLUTION_WIDTH;
227-
info->geometry.max_height = HUC6270_MAX_RESOLUTION_HEIGHT;
197+
info->geometry.max_width = 1024;//HUC6270_MAX_RESOLUTION_WIDTH;
198+
info->geometry.max_height = 512;//HUC6270_MAX_RESOLUTION_HEIGHT;
228199
info->geometry.aspect_ratio = aspect_ratio;
229-
info->timing.fps = 60.0;
200+
info->timing.fps = 59.82;
230201
info->timing.sample_rate = 44100.0;
231202
}
232203

@@ -304,8 +275,6 @@ static void update_input(void)
304275
{
305276
for (int i = 0; i < JOYPAD_BUTTONS; i++)
306277
joypre[j][i] = joypad[j][i];
307-
for (int i = 0; i < 4; i++)
308-
joypre_ext[j][i] = joypad_ext[j][i];
309278
}
310279

311280
// Get current state
@@ -327,26 +296,8 @@ static void update_input(void)
327296
}
328297
joypad[j][4] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_A) ? 1 : 0;
329298
joypad[j][5] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_B) ? 1 : 0;
330-
joypad[j][6] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_X) ? 1 : 0;
331-
joypad[j][7] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_Y) ? 1 : 0;
332-
joypad[j][8] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_START) ? 1 : 0;
333-
joypad[j][9] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_SELECT) ? 1 : 0;
334-
joypad[j][10] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_L) ? 1 : 0;
335-
joypad[j][11] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_R) ? 1 : 0;
336-
joypad[j][12] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_L2) ? 1 : 0;
337-
joypad[j][13] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_R2) ? 1 : 0;
338-
joypad[j][14] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_L3) ? 1 : 0;
339-
joypad[j][15] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_R3) ? 1 : 0;
340-
341-
int analog_left_x = input_state_cb( j, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_LEFT, RETRO_DEVICE_ID_ANALOG_X);
342-
int analog_left_y = input_state_cb( j, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_LEFT, RETRO_DEVICE_ID_ANALOG_Y);
343-
int analog_right_x = input_state_cb( j, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_RIGHT, RETRO_DEVICE_ID_ANALOG_X);
344-
int analog_right_y = input_state_cb( j, RETRO_DEVICE_ANALOG, RETRO_DEVICE_INDEX_ANALOG_RIGHT, RETRO_DEVICE_ID_ANALOG_Y);
345-
346-
joypad_ext[j][0] = analog_left_x != 0 ? 1 : 0;
347-
joypad_ext[j][1] = analog_left_y != 0 ? 1 : 0;
348-
joypad_ext[j][2] = analog_right_x != 0 ? 1 : 0;
349-
joypad_ext[j][3] = analog_right_y != 0 ? 1 : 0;
299+
joypad[j][6] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_SELECT) ? 1 : 0;
300+
joypad[j][7] = joypad_bits[j] & (1 << RETRO_DEVICE_ID_JOYPAD_START) ? 1 : 0;
350301
}
351302

352303
for (int j = 0; j < MAX_PADS; j++)
@@ -361,17 +312,6 @@ static void update_input(void)
361312
core->KeyReleased(static_cast<GG_Controllers>(j), keymap[i]);
362313
}
363314
}
364-
365-
for (int i = 0; i < 4; i++)
366-
{
367-
if (joypad_ext[j][i] != joypre_ext[j][i])
368-
{
369-
if (joypad_ext[j][i] == 1)
370-
core->KeyPressed(static_cast<GG_Controllers>(j), keymap[i + JOYPAD_BUTTONS]);
371-
else
372-
core->KeyReleased(static_cast<GG_Controllers>(j), keymap[i + JOYPAD_BUTTONS]);
373-
}
374-
}
375315
}
376316
}
377317

@@ -410,11 +350,7 @@ static void check_variables(void)
410350

411351
if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value)
412352
{
413-
// TODO
414-
// if (strcmp(var.value, "Enabled") == 0)
415-
// core->GetVideo()->SetNoSpriteLimit(true);
416-
// else
417-
// core->GetVideo()->SetNoSpriteLimit(false);
353+
core->GetHuC6270()->SetNoSpriteLimit(strcmp(var.value, "Enabled") == 0);
418354
}
419355
}
420356

src/cartridge.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -129,9 +129,9 @@ bool Cartridge::LoadFromFile(const char* path)
129129
extension = pathstr.substr(pathstr.find_last_of(".") + 1);
130130
transform(extension.begin(), extension.end(), extension.begin(), (int(*)(int)) tolower);
131131

132-
strncpy(m_file_path, path, 512);
133-
strncpy(m_file_name, filename.c_str(), 512);
134-
strncpy(m_file_extension, extension.c_str(), 512);
132+
snprintf(m_file_path, sizeof(m_file_path), "%s", path);
133+
snprintf(m_file_name, sizeof(m_file_name), "%s", filename.c_str());
134+
snprintf(m_file_extension, sizeof(m_file_extension), "%s", extension.c_str());
135135

136136
ifstream file(path, ios::in | ios::binary | ios::ate);
137137

src/geargrafx_core.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ bool GeargrafxCore::RunToVBlank(u8* frame_buffer, s16* sample_buffer, int* sampl
8787
GG_Debug_State debug_state;
8888
bool get_debug_state = true;
8989
bool debug_enable = false;
90+
bool instruction_completed = false;
9091
if (IsValidPointer(debug))
9192
{
9293
debug_enable = true;
@@ -95,13 +96,14 @@ bool GeargrafxCore::RunToVBlank(u8* frame_buffer, s16* sample_buffer, int* sampl
9596
#endif
9697

9798
m_huc6260->SetBuffer(frame_buffer);
98-
bool instruction_completed = false;
9999
bool stop = false;
100100
int failsafe_clocks = 0;
101101

102102
do
103103
{
104104
#ifndef GG_DISABLE_DISASSEMBLER
105+
instruction_completed = false;
106+
105107
if (get_debug_state)
106108
{
107109
get_debug_state = false;
@@ -113,13 +115,16 @@ bool GeargrafxCore::RunToVBlank(u8* frame_buffer, s16* sample_buffer, int* sampl
113115
debug_state.S = m_huc6280->GetState()->S->GetValue();
114116
}
115117
#endif
116-
instruction_completed = false;
117118

118119
if (m_clock % 3 == 0)
119120
m_huc6280->ClockTimer();
120121

121122
if ((m_clock % (m_huc6280->IsHighSpeed() ? 3 : 12)) == 0)
123+
#ifndef GG_DISABLE_DISASSEMBLER
122124
instruction_completed = m_huc6280->Clock();
125+
#else
126+
m_huc6280->Clock();
127+
#endif
123128

124129
stop = m_huc6260->Clock();
125130

src/huc6280_opcodes_inline.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ inline void HuC6280::OPCodes_ADC(u8 value)
2929
{
3030
int a;
3131
u8 final_result;
32-
u16 address;
32+
u16 address = 0;
3333

3434
#if !defined(GG_TESTING)
3535
if (IsSetFlag(FLAG_TRANSFER))
@@ -40,7 +40,8 @@ inline void HuC6280::OPCodes_ADC(u8 value)
4040
}
4141
else
4242
#endif
43-
a = m_A.GetValue();
43+
44+
a = m_A.GetValue();
4445

4546
if (IsSetFlag(FLAG_DECIMAL))
4647
{

0 commit comments

Comments
 (0)