|Re: [hatari-devel] IKBD_Cmd_SetMouseScale in the game "The Sentinel"|
[ Thread Index |
| More lists.tuxfamily.org/hatari-devel Archives
I've tested rainbow II multimedia (winuae CPU).
It's really much better with the patch :
The mouse goes perfectly from the upper to the bottom of the screen,
that's really good.
For the left/right movement, there's still a little problem : the mouse
doesn't go to the extrem right of the screen, it goes out a bit before
(a precision problem ?).
The patch is good for rainbow 2.
For crown of creation (oldCPU), the problem seems to persist on the X
axis of the mouse (the Y axis is useable).
Le 26/05/2013 18:22, Nicolas Pomarède a écrit :
On 26/05/2013 16:28, Eero Tamminen wrote:
On sunnuntai 26 toukokuu 2013, Nicolas Pomarède wrote:
But you can check yourself, run : "hatari --trace ikbd_all 2>log"
then "grep IKBD log" to see how the program accesses the keyboard.
TOS startup + Spectrum 512:
$ grep IKBD ikbd.log | grep -v IKBD_Cmd_ReadAbsMousePos
IKBD_Cmd_Reset VBLs=8 framecyc=72956
And drawing program reads the mouse with ReadAbsMousePos().
-> ikbd.diff fixes the mouse issue with it.
That's good news (I didn't check spectrum512 before).
However, Spectrum 512 has also regressed, the color bands on the
go diagonally across the screen. I think that would need to be fixed
That's not an emulation issue. Spectrum 512 needs to be started in 60
Hz, not 50 Hz (it doesn't change freq itself, I don't know why). You
can try with a US or UK TOS that sets freq to 60 Hz.
I will update release note / compatibility files for these (I will
commit it later to main source tree, I have pending changes to finish
PS. Maybe Hextracker should use IKBD mouse scaling too,
instead of (apparently) doing it manually?
I don't think so. You get much better control by getting relative
mouse changes instead of absolute ones.
With rel changes, you can scale delta X/Y yourself if you want in your
program, but you can also do more interesting effects, like adding
acceleration to the mouse pointer if deltaX/Y remain high for a
determined period of time (as available in Windows or KDE for example)