Dosbox Version 6 - Usb Keyboard


Pickle

Mega GP Mania
Joined
May 30, 2006
Messages
5,518
Location
Detroit, Michigan
Website
Visit site
Ive uploaded the latest dosbox binary and source. Not many changes this time around.
1. USB keyboard support (the dosbox.conf needs to be updated with usescancodes=false for it to work right)
2. M_HT latest dynarec (there was a small increase in speed between v2 and v3, you probably wont notice it)

Thats it, I hope someone find this useful. And as always im around to help anyone get a game/app up and running.

(Thanks go to Thanks to Senor Quack for the USB keyboard support in SDL, also if theres interest to add keyboard support in some the other ports I can do that)
 
Hi,

just uploaded a file with an attempt at speeding up adlib FM synthesis in dosbox, using the second arm940 core of the GP2X

file

It still (and maybe always be!) a bit of a hack, for it to work I had to remove the mmuhack loading
and add a SDL_GP2X_AllowGfxMemory call for reasons I don't fully understand...
 
Hmmmm, I'm going to have to have another look at this. It's just getting too nice. Admittedly I've been using PSP DOSBOX with IRQ keyboard (it's truly portable) but seeing as I have the GP2X + HUB, a proper USB keyboard connected sounds excellent.

Thanks!

Extra "R" removed. <_<
 
Pickle said:
Ive uploaded the latest dosbox binary and source. Not many changes this time around.
1. USB keyboard support (the dosbox.conf needs to be updated with usescancodes=false for it to work right)
2. M_HT latest dynarec (there was a small increase in speed between v2 and v3, you probably wont notice it)

Thats it, I hope someone find this useful. And as always im around to help anyone get a game/app up and running.

(Thanks go to Thanks to Senor Quack for the USB keyboard support in SDL, also if theres interest to add keyboard support in some the other ports I can do that)
/
hi there
//
anyway of touchscreen support for vice? would be amazing to have it
 
Last edited by a moderator:
sepulep said:
Hi,

just uploaded a file with an attempt at speeding up adlib FM synthesis in dosbox, using the second arm940 core of the GP2X

file

It still (and maybe always be!) a bit of a hack, for it to work I had to remove the mmuhack loading
and add a SDL_GP2X_AllowGfxMemory call for reasons I don't fully understand...


Now this something interesting, ive thought of this in the back of my mind but never attempted it. It would be ideal if SB, GUS could also be done on the second core too. Also your work could come in handy for pandora. I think the same idea could be could be used with the DSP core.
Dont worry about the MMU, it didnt really help anyways.
 
Last edited by a moderator:
Pickle, since there's this new development with FM speedup, you should have the latest SDL I've been working on here:

http://www.mediafire.com/?imeznyhnm59

We (Open2X) moved back to 1.2.11 because 1.2.13 has an issue with sound. This SDL also uses select() instead of nanosleep() for SDL_Delay, the older way.. Nanosleep was causing problems in various programs because of unusual behaviour.

It has a workaround for a bug in the kernel touchscreen driver causing occaisional non-responsive touchscreens on program startup.

Also has two new functions to disallow the touchscreen from raising mouse button and movement events (this is sometimes useful when porting stuff)
 
Senor Quack said:
Pickle, since there's this new development with FM speedup, you should have the latest SDL I've been working on here:

http://www.mediafire.com/?imeznyhnm59

We (Open2X) moved back to 1.2.11 because 1.2.13 has an issue with sound. This SDL also uses select() instead of nanosleep() for SDL_Delay, the older way.. Nanosleep was causing problems in various programs because of unusual behaviour.

It has a workaround for a bug in the kernel touchscreen driver causing occaisional non-responsive touchscreens on program startup.

Also has two new functions to disallow the touchscreen from raising mouse button and movement events (this is sometimes useful when porting stuff)


Did you back port the USB keyboard support, last I read from Orkie was that it wasnt in the newest lib?
 
Last edited by a moderator:
Pickle said:
Did you back port the USB keyboard support, last I read from Orkie was that it wasnt in the newest lib?

Everything is in it.
 
Last edited by a moderator:
ok. I updated the archive with a version that includes the same thing for OPL3 - this seems to be
too slow at the moment: the second core can not keep up. I think it needs some optimizations - actually I already saw huge improvement by taking out some padding out of the data structures, probably showing cache issues. At the moment it is running just a little too slow to keep up with anything more than the simplest music playback. I wonder if there are any easy/ obvious things that can speed up code on the 940T??

(o yea: there was also a bug in the previous code preventing the use of dual OPL)

BTW, sbblaster or GUS would indeed be nice, but as far as I can see that is more complicated..

forgot to say: if you have any questions/comments about the code I would be most happy to answer ofcourse!!
 
sepulep said:
ok. I updated the archive with a version that includes the same thing for OPL3 - this seems to be
too slow at the moment: the second core can not keep up. I think it needs some optimizations - actually I already saw huge improvement by taking out some padding out of the data structures, probably showing cache issues. At the moment it is running just a little too slow to keep up with anything more than the simplest music playback. I wonder if there are any easy/ obvious things that can speed up code on the 940T??

(o yea: there was also a bug in the previous code preventing the use of dual OPL)

BTW, sbblaster or GUS would indeed be nice, but as far as I can see that is more complicated..

forgot to say: if you have any questions/comments about the code I would be most happy to answer ofcourse!!
the second core it can always be overclocked that might not be the best solution or even be enough.

did you do any benchmarks other than seeing that it runs with the OPL? In other words do you see anything that shows that it helps? For example I added a FPS display, does that increase when you use this?
 
Last edited by a moderator:
Pickle said:
the second core it can always be overclocked that might not be the best solution or even be enough.

did you do any benchmarks other than seeing that it runs with the OPL? In other words do you see anything that shows that it helps? For example I added a FPS display, does that increase when you use this?
well...I didn't actually know about the FPS display, but now I have tested it:)

test with civilization intro, cycles:500, frameskip 1
OPL2: small gain of 1-2 fps on 10-15 fps
OPL3: definite gain of 2-3 fps on 10-12 fps.

in the OPL2 case furthermore the sound is much smoother in case of the 940 core. (Not prefect though)
in the OPL3 case again the sound is much smoother, basically no chopping until multiple voices kick in at that point the second core loses sync due to the workload (this can be checked by monitoring the messages send and executed). Then the sound becomes choppy.
 
Last edited by a moderator:
sepulep said:
Pickle said:
the second core it can always be overclocked that might not be the best solution or even be enough.

did you do any benchmarks other than seeing that it runs with the OPL? In other words do you see anything that shows that it helps? For example I added a FPS display, does that increase when you use this?
well...I didn't actually know about the FPS display, but now I have tested it:)

test with civilization intro, cycles:500, frameskip 1
OPL2: small gain of 1-2 fps on 10-15 fps
OPL3: definite gain of 2-3 fps on 10-12 fps.

in the OPL2 case furthermore the sound is much smoother in case of the 940 core. (Not prefect though)
in the OPL3 case again the sound is much smoother, basically no chopping until multiple voices kick in at that point the second core loses sync due to the workload (this can be checked by monitoring the messages send and executed). Then the sound becomes choppy.


Well thats doesnt sound bad, better than nothing. I assume your using 11025 hz
 
Last edited by a moderator:
Pickle said:
sepulep said:
Pickle said:
the second core it can always be overclocked that might not be the best solution or even be enough.

did you do any benchmarks other than seeing that it runs with the OPL? In other words do you see anything that shows that it helps? For example I added a FPS display, does that increase when you use this?
well...I didn't actually know about the FPS display, but now I have tested it:)

test with civilization intro, cycles:500, frameskip 1
OPL2: small gain of 1-2 fps on 10-15 fps
OPL3: definite gain of 2-3 fps on 10-12 fps.

in the OPL2 case furthermore the sound is much smoother in case of the 940 core. (Not prefect though)
in the OPL3 case again the sound is much smoother, basically no chopping until multiple voices kick in at that point the second core loses sync due to the workload (this can be checked by monitoring the messages send and executed). Then the sound becomes choppy.


Well thats doesnt sound bad, better than nothing. I assume your using 11025 hz


yes, I didn't try anything beyond 11025. I hope I can get the OPL3 just a little bit better, because its pretty close...
 
Last edited by a moderator:
sepulep said:
yes, I didn't try anything beyond 11025. I hope I can get the OPL3 just a little bit better, because its pretty close...


I follow how you send message from the main thread to the 920 thread, I didnt look far enough, but do you have to send data back to the main thread? For example does waveform data get passed back to mixed into the final audio output?
 
Last edited by a moderator:
Pickle said:
I follow how you send message from the main thread to the 920 thread, I didnt look far enough, but do you have to send data back to the main thread? For example does waveform data get passed back to mixed into the final audio output?
yes, there is also a seperate buffer for audiodata (SharedData).
 
Last edited by a moderator:
sepulep said:
well...I didn't actually know about the FPS display, but now I have tested it:)

test with civilization intro, cycles:500, frameskip 1
OPL2: small gain of 1-2 fps on 10-15 fps
OPL3: definite gain of 2-3 fps on 10-12 fps.
Just wondering at what speed you clocked the GP2X at to achieve these results?
 
Last edited by a moderator:
Back
Top