MAMEWorld >> EmuChat
View all threads Index   Threaded Mode Threaded  

Pages: 1

arromdee
MAME Fan
Reged: 06/05/15
Posts: 4
Send PM


Linux problems (Mame 0.162)
#341130 - 06/06/15 01:41 AM


I am having several problems under Linux (Mageia 4, Mame 0.162):

I cannot map joysticks. Something is causing my joystick to be seen as two joysticks, which does happen outside Mame, but when I actually use the joystick, Mame thinks it's #2. A joystick test program shows my joystick as joystick 0 as I expected (which should be 1 in Mame, not 2). The obvious solution is to try remapping the joysticks. However, that doesn't work.

I originally get:


Joystick: Start initialization
Input: Adding Joy #0: Twin USB Joystick
Joystick: Twin USB Joystick
Joystick: ... 4 axes, 12 buttons 1 hats 0 balls
Joystick: ... Physical id 0 mapped to logical id 1
Input: Adding Joy #1: Twin USB Joystick
Joystick: Twin USB Joystick
Joystick: ... 4 axes, 12 buttons 1 hats 0 balls
Joystick: ... Physical id 1 mapped to logical id 2
Joystick: End initialization


Trying to map the joysticks causes them all to be remapped at -1 no matter what I do.


joy_idx1 0
joy_idx2 1
joy_idx3 2


gives me


Joystick: Start initialization
Input: Adding Joy #0: 0
Joystick: 0
Joystick: ... -1 axes, -1 buttons -1 hats -1 balls
Joystick: ... Physical id -1 mapped to logical id 1
Input: Adding Joy #1: 1
Joystick: 1
Joystick: ... -1 axes, -1 buttons -1 hats -1 balls
Joystick: ... Physical id -1 mapped to logical id 2
Input: Adding Joy #2: 2
Joystick: 2
Joystick: ... -1 axes, -1 buttons -1 hats -1 balls
Joystick: ... Physical id -1 mapped to logical id 3
Input: Adding Joy #3: Twin USB Joystick
Joystick: Twin USB Joystick
Joystick: ... 4 axes, 12 buttons 1 hats 0 balls
Joystick: ... Physical id 0 mapped to logical id 4
Input: Adding Joy #4: Twin USB Joystick
Joystick: Twin USB Joystick
Joystick: ... 4 axes, 12 buttons 1 hats 0 balls
Joystick: ... Physical id 1 mapped to logical id 5


and the actual joystick (which my system thinks is physical ID 1) is now treated as joystick 5.


I cannot configure video. The main complication is that most documentation is written for Windows. For instance, there is a file docs/newvideo that comes with mame. It helpfully describes that depending on what I want to do, I might use d3d or ddraw, I'm on Linux; I don't have these. It also mentions hwstretch. There is no hwstretch option. (I need to use the ancient video card option. My card is not technically ancient, but it's a builtin Radeon HD 3000; already bad, and my drivers are terrible. The driver is "ati" (the free driver). With vsync off, glxgears gives me around 1100 in software mode and 2000 accelerated.)

Attempting to use switchres with window=0, leads me to a weird situation where the screen switches to the new resolution, but the game doesn't fit inside the screen and acts as though it's being fit into a larger screen, making it go off the edge. soft or opengl makes no difference to this, and smaller prescale values actually make it worse.

I have no idea what values are acceptable for the "scalemode" option. The SDL.txt sort of documents it but it lists an "async" option that doesn't actually work under Linux. Furthermore, it just lists the options without descriptions. What are they and why would I want them? Googling tells me that async is "async overlay", which is also unhelpful.

window=0 always maximizes even with maximize=0. (maximize works correctly with window=1.)

prescale seems to do nothing in windowed mode. I have no way to tell if it is working in fullscreen mode.

Also, is there any way to say "scale by the largest integer factor that fits in the current screen resolution"? For that matter, is there any way at all to specify what factor to scale by, given that I do not have d3d or ddraw?

The documentation claims that prescale takes a parameter from 1 to 8. It only accepts 1-3.

Running a game and going into the options gives me an option for "pixel aspect". Is there a way to say "apply pixel aspect to every game that has it"?



R. Belmont
Cuckoo for IGAvania
Reged: 09/21/03
Posts: 9716
Loc: ECV-197 The Orville
Send PM


Re: Linux problems (Mame 0.162) new [Re: arromdee]
#341149 - 06/06/15 06:56 PM


First off, my standard spiel: you'll get much better Linux support and be able to interact with other Linux users on the SDLMAME board at forums.bannister.org. I only have direct experience with Fedora and Ubuntu, both of which tend to run MAME with a lot less drama than is described here, but folks there run it on all sorts of things.

> I cannot map joysticks. Something is causing my joystick to be seen as two joysticks,
> which does happen outside Mame, but when I actually use the joystick, Mame thinks
> it's #2. A joystick test program shows my joystick as joystick 0 as I expected (which
> should be 1 in Mame, not 2). The obvious solution is to try remapping the joysticks.
> However, that doesn't work.

What happens if you forego remapping the joystick numbers and just try to assign the joysticks in MAME's Inputs panel? (Tab -> Inputs (This Game)).

> and the actual joystick (which my system thinks is physical ID 1) is now treated as
> joystick 5.

Regarding documentation, we ship Linux man pages with MAME which explain the Linux-specific aspects of configuration. There are not many, though - most options work as they do in Windows.

> Attempting to use switchres with window=0, leads me to a weird situation where the
> screen switches to the new resolution, but the game doesn't fit inside the screen and
> acts as though it's being fit into a larger screen, making it go off the edge. soft
> or opengl makes no difference to this, and smaller prescale values actually make it
> worse.

What if you turn off switchres with window=0, to keep your desktop resolution? With LCD monitors, that's the preferred way to do things.

> I have no idea what values are acceptable for the "scalemode" option.

"scalemode" is a very specialized parameter that you shouldn't touch unless you are Couriersud

> prescale seems to do nothing in windowed mode. I have no way to tell if it is working
> in fullscreen mode.

> Also, is there any way to say "scale by the largest integer factor that fits in the
> current screen resolution"? For that matter, is there any way at all to specify what
> factor to scale by, given that I do not have d3d or ddraw?

The Linux-exclusive -nounevenstretch switch will cause a perfect integer scaling factor, possibly with some letter boxing and window boxing around the image.

> The documentation claims that prescale takes a parameter from 1 to 8. It only accepts
> 1-3.

Prescale factors that blow the game up to larger than your output resolution will be rejected, because that's pointless.

> Running a game and going into the options gives me an option for "pixel aspect". Is
> there a way to say "apply pixel aspect to every game that has it"?

No, and you shouldn't do that because it displays the games with incorrect geometry.



arromdee
MAME Fan
Reged: 06/05/15
Posts: 4
Send PM


Re: Linux problems (Mame 0.162) new [Re: R. Belmont]
#341153 - 06/06/15 09:20 PM


> What happens if you forego remapping the joystick numbers and just try to assign the
> joysticks in MAME's Inputs panel? (Tab -> Inputs (This Game)).

That's where I noticed the problem in the first place. Trying to map a control to a joystick shows the joystick as joystick 2. I could if I wanted map every single control on every single game, but that's a lot of mapping.

>Regarding documentation, we ship Linux man pages with MAME

Ah, I see where they are now. Is there a make target to install them or should I just copy them manually?

> What if you turn off switchres with window=0, to keep your desktop resolution? With
> LCD monitors, that's the preferred way to do things.

If I turn off switchres the problem does not happen, but I need to try switchres to see if I can get a speedup to 100%, since the game I tried (Twinbee) is 100% in a small window, but is less than 100% in a larger window and in full screen.

> > The documentation claims that prescale takes a parameter from 1 to 8. It only
> accepts
> > 1-3.
> Prescale factors that blow the game up to larger than your output resolution will be
> rejected, because that's pointless.

My resolution is 1920x1090. Twinbee is 224x256. 4X is less than my output resolution.

> > Running a game and going into the options gives me an option for "pixel aspect". Is
> > there a way to say "apply pixel aspect to every game that has it"?
> No, and you shouldn't do that because it displays the games with incorrect geometry.

What does it do then? I thought that it was for the case where the real machine doesn't produce square pixels. Wouldn't using it end up displaying every game correctly, by definition?

Edit (2): Doing some experimentation, it seems the pixel aspect on produces 1:1 pixels and pixel aspect off doesn't. So that explains why it won't do prescale 4. If I have pixel aspect on and nounevenstretch it produces 224x256 and stretches by a factor of exactly 4.

In windowed mode, I do also see a problem where the window is too tall, whether pixel aspect is on or not and whether unevenstretch is on or not, although the amount by which it is too tall varies depending on those settings. How can I prevent this?

Edited by arromdee (06/06/15 10:09 PM)


Pages: 1

MAMEWorld >> EmuChat
View all threads Index   Threaded Mode Threaded  

Extra information Permissions
Moderator:  Robbbert, Tafoid 
1 registered and 358 anonymous users are browsing this forum.
You cannot start new topics
You cannot reply to topics
HTML is enabled
UBBCode is enabled
Thread views: 1015