Home Page
Posted By: Carbon Mouse behaviour in Mac driver - 11/08/19 11:21 PM

I just tried the mac driver in MAME again since ages and it runs System 7 quite well.

One issue I'm having is the "proportional" positioning of the mouse pointer in the emulated machine in reference to the mouse on my real machine. Is there any way to have the emulated mouse just get set at the same position as the host machine and, whenever it is out of bounds of the emulation window it freezes at the point of exit, like in VMWare Fusion or Parallels Desktop?
Posted By: R. Belmont Re: Mouse behaviour in Mac driver - 11/09/19 12:23 AM
That would require the MAME C++ code knowing about MacOS internals, which is something we obviously don't want to do.

If Lua scripts could know the mouse pointer's position in the window you could map the mouse inputs to nothing and have a script drive the pointer, but I don't think that's currently possible.
Posted By: Carbon Re: Mouse behaviour in Mac driver - 11/09/19 12:42 PM
OK, a workaround would be to use the driver in full screen mode (but the aspect ratio of the screens have to match).
Posted By: Rich Cini Re: Mouse behaviour in Mac driver - 02/17/20 04:30 PM
I know this clipping does not occur in the OSX port (SDL Mame) of v0.217 but it seems to make logical sense to implement it, especially on spinner or trackball games. I was playing Centipede last night with the Logitech trackball and found it distracting to have to reorient the mouse. I did better than using the joystick, though :-)

I don't have a Windows install readily available to check if the lack of clipping occurs there as well. I know in the WinAPI there's a way to determine the size of a window (GetWindowRect) so it shouldn't be that hard to do (ha, famous last words of course). I'm sure other windowing systems on other host platforms have similar calls (SDL_GetWindowSize, for example).
Posted By: R. Belmont Re: Mouse behaviour in Mac driver - 02/17/20 05:15 PM
The -mouse switch will confine the pointer to the window on the OS X version; you are talking about a very different use case from Carbon.
© Forums