choosing advmame v1.4 vs v3
-
Another AdvMAME 3.x question if I may. In 3.5 I see some of the buttons and even the 'UI Select' are mapped to j:happy1, 2, etc. It took me a few minutes to figure out they are the D-Pad directional which doesn't work well at it's defaults. Is there some logic to that? Looking at some of the code I don't see what they are trying to do. Did you just remap you Button 1, 2, etc to get things working. I am using an XBOX 360 controller and I wonder if they are "virutal-sprawling" buttons? :)
/* note that the happy name has no meaning */ /* if not to make "happy" joysticks with many buttons */ #ifdef BTN_TRIGGER_HAPPY1 { BTN_TRIGGER_HAPPY1, "happy1" }, /* joystick */ #endif #ifdef BTN_TRIGGER_HAPPY2 { BTN_TRIGGER_HAPPY2, "happy2" }, /* joystick */ #endif
-
@riverstorm think of it in terms of the arcade control panel on the orginial system. Controlling a tank, you have two levers. They usually have triggers too, but that’s not important.
So, if you were going to push the left lever forward, what exactly would that do? Well, either it is turning you to the right while moving forward, or it is rotating you right in place, or it is driving the tank forward (all depending on what is happening with the right lever). How does that translate to a single joystick? It translates to moving the joystick UP but not UP and LEFT, or it could translate to moving a single stick RIGHT but not RIGHT and DOWN.
It’s not a complete picture when you look at just one line because the “or” in the middle means you need to be considering the what the other stick is doing.
The whole point is that someone figured out all of the combinations and then algebraically boiled it down to these mapping configurations so that two two-way sticks can be driven with a single 8-way joystick. It’s brilliant. For folks building arcade panels it also frees up your second hand for fire buttons.
-
@riverstorm said in choosing advmame v1.4 vs v3:
Another AdvMAME 3.x question if I may. . . Did you just remap you Button 1, 2, etc to get things working. I am using an XBOX 360 controller and I wonder if they are "virutal-sprawling" buttons? :)
I think I get to take an easy answer here and say I didn’t worry about it because I am using a keyboard controller (IPAC) and the standard assignment of switches to keys is the MAME default.
-
@caver01 said in choosing advmame v1.4 vs v3:
The whole point is that someone figured out all of the combinations and then algebraically boiled it down to these mapping configurations so that two two-way sticks can be driven with a single 8-way joystick. It’s brilliant. For folks building arcade panels it also frees up your second hand for fire buttons.
Ok, I thought that someone was you! I was like dang he really put some thought into this. I did start looking at 2 lines then 3, then 4 to make sense. I was thinking I would need a grid and lay it all out to fully understand it. It's an incredibly creative way to do it.
-
@caver01 said in choosing advmame v1.4 vs v3:
@riverstorm said in choosing advmame v1.4 vs v3:
Another AdvMAME 3.x question if I may. . . Did you just remap you Button 1, 2, etc to get things working. I am using an XBOX 360 controller and I wonder if they are "virutal-sprawling" buttons? :)
I think I get to take an easy answer here and say I didn’t worry about it because I am using a keyboard controller (IPAC) and the standard assignment of switches to keys is the MAME default.
Sounds good. I usually setup both keyboard and joystick so it can go either way. In 1.4 they are properly mapped to j:a, j:b, j:c, etc. but in 3.x there's a lot of "happy" buttons j:happy(index), 10 total. It's like they are partially implemented or some work in progress in 3.x with the default the D-pad firing, moving, etc. but not the traditional button a, b, c, etc.
I also noticed in the .rc file the joystick "translation" inputs are very different and much more complex then 1.4. I reloaded 1.4 and dumped my default config so I could screenshot the inputs and will duplicate them in 3.5 as the defaults are completely unplayable via joystick.
-
@caver01 said in choosing advmame v1.4 vs v3:
@arkive Ok. But I think that line about using the utilities is not intended for pi users. Remember, AdvanceMAME has been around for a long time and was not originally developed for the Pi. Multiple platforms use it, but the Pi won’t have the frequency flexibility so the utilities are not really very helpful.
Nah, since 3.0 AM has some serious RPi support. My quotes were from the dedicated RPi section, same as this:
To use the programmable modelines with the Raspberry DPI port you need a GPIO add-on board like the Gert's VGA 666.
The Raspberry Pi has strong limitations on the lower range of pixel clocks when using the DPI/GPIO interface, that will affect your ability to control low frequency monitors, like Arcade screens. [...] To overcome this problematic, AdvanceMAME transparently increase the modeline horizontal size, until it reaches the 31.25 MHz pixel clock. Don't be surprised if a modeline that works in AdvanceMAME, doesn't work when setting manually the timings in other ways.Anyway, I'll try the AM forums as a last resort and then probably abandon this wild goose chase altogether. I was always planning to build a separate Groovy MAME PC box anyway.
-
@arkive Ahhh! That explains a lot. Thanks for quoting that. It also confirms why early on, BuZz was saying that the Pi is going to ignore the modelines. That’s still true for most users, but your hardware config is definitely unique. Perhaps @amadvance can offer a suggestion?
-
@caver01 - Thanks Caver 3.5 works really well. I would swear it seems to fun faster or maybe a better word is smoother. One game I like to play occasionally is Skull & Crossbones and the screen ratio is correct out of the box now without tweaks (one of those odd one-offs that gets lumped into AdvMAME because it works correctly there). I'm still taken back when starting a vector game they just look so much better in AdvMAME. This new version works quite well on the Pi.
Just a quick note is in your tutorial you have an incorrect folder in your config file path
mame-advancemame
where it should bemame-advmame
. -
@riverstorm said in choosing advmame v1.4 vs v3:
Just a quick note is in your tutorial you have an incorrect folder in your config file path
mame-advancemame
where it should bemame-advmame
.Oh, crap. I will fix it now. Nice catch.
I will have to look at Skull and Crossbones. I don’t think I know that one.
-
@caver01 said in choosing advmame v1.4 vs v3:
Perhaps @amadvance can offer a suggestion?
The man himself...that'd be nice. He's probably knee-deep in code, but maybe...paging @amadvance, @amadvance do you read me?
Battlezone was the first videogame that truly blew my mind. Proper 3D in a 2D era. I was about 6 or 7 y.o. when I first saw it, and had to take train trips to another city to actually play it (even though I could barely reach that periscope/visor). Also remember "steering" myself using imaginary twin-joysticks when walking to school. Heady days :)
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.