digarok / gsplus

Modern cross-platform Apple IIgs emulator and tools based on KEGS
http://apple2.gs/plus
GNU General Public License v2.0
151 stars 45 forks source link

read_paddles is never being called from io_read at mem loc 0x64 - 0x68 #113

Closed mrfixit2001 closed 3 years ago

mrfixit2001 commented 3 years ago

I'm not sure if this repo is even being watched by anyone, but I need some help.

I am compiling and running on a custom version of Linux for a Rockchip ARM Cortex A53 SBC. The userspace is 32-bit and the kernel is 64-bit, so the application binary is 32-bit. I'm using the SDL joystick driver and GLES2 graphics.

I have debugged the application to the end of paddle_update_trigger_dcycs where g_paddle_dcycs[i] are being set and they are correctly calculating and assigning the values when up/down/left/right is used on the joystick.

But these values are never being used within the read_paddles function call from io_read in moremem.c. The memory addresses that these read_paddles calls are never being triggered.

Everything else in the emulator is running fine. Game loads fine, runs fine, the button-press events work, it's only the joystick (paddles) up/down/left/right that are not working (which means of course the games are not playable).

I have to assume that for some reason this architecture is trying to use a slightly different memory address? I'm just about out of ideas, so any thoughts and brainstorming is welcomed!

mrfixit2001 commented 3 years ago

So after more testing I discovered that the emulator requires a keyboard and mouse in it's current state. I'll be patching the necessary controls into the emulator so that joystick controls can emulate strategic button press and mouse commands so that they won't be needed. I was barking up the wrong tree :) Please disregard