Main > Main Forum

Button Mapping Graphic Display

Pages: << < (4/13) > >>

u_rebelscum:


--- Quote ---I think the first effort is to document all the games, the number of buttons, joys, player positions, and what they are for, ie: fire, move, jump, punch, etc.
--- End quote ---

I think more details are needed.  The info you listed might be enough for the generic 4way or 8way joystick + buttons games (what, 80%?).  But for games like dotron (joy + spinner), ssprint (spinner + pedal), primal rage (start button also an action button), and gauntlet (elf action button labeled different from other's action button) it wouldn't work as well.

I don't think just the number of buttons in a game is enough info.  I think a list of buttons with mame's internal names is needed.

The number of joys is not enough either;  I believe a list of each joystick is needed; one example: some games like john elway quarterback have two normal joysticks + that spring-back joystick only for one player.

For each button/joystick listed, it should include it's the label, like you said.


--- Quote ---One approach would be to design a database and a web front end which allows several parties to contribute to the data collection process.
[snip]
If I were to devote some resources to this concept in the form of web space with db backend, have one of my developers put together a database interface front end (or perhaps a fellow mamer would like to contribute), how many hands might raise who would be interested in moving forward with this data collection project?

I look forward to any and all replies.

Steve
--- End quote ---


I would raise mine, and get the list of all mame's games inputs, as described above.  Of course, with you designing the db and not me, you have the right to deside how much detail is needed. :)

I can make, do a primary review of, and get the list to you by next week, if you want (and let me know soon enough ;) ).

I can change the list's format I submit, but I was thinking something like:

gamename, controller/button mame type, driver supplied label (if any), Input1 (if not standard), Input2 (if not standard)

If you want, I could also list the mame standard inputs in each row for that type of input, but this can be found in mame\ctrlr\std.ini already, and adding it would really balloon the file size.

SteveJ34:


--- Quote ---
I think more details are needed.
--- End quote ---


csbelli:

I would be happy to offer my services for creating the frontend if the database will be Access 2000. I am an internet programmer by trade and this would be pretty simple. Let me know if you would like the help.

csbelli

neuromancer:


--- Quote ---


game,cpnumplayers,p1joy2,p1joy4,p1joy8,p1spinner,p1button1.p1button2,......p2joy2,p2joy4

(need to define all the possible control types to include yokes,steering wheel, etc).

Robotron I guess would create the need for joya and joyb for each joy type to cover the bases. Tank games are like that as well. In essence they are (2) 2-way joys with up/down defined for each, ie: P1joy8a,p1joy8b

Steve :)

--- End quote ---


There are many games that have odd controls that never had more than one of them, so we don't need to have P1-P4 for every single type of control; I'm thinking of Qbert with the diagonal stick, Major Havoc with the Roller, The special thruster for Lunar Lander, and the handlebars for Paper Boy. Oh, and obviously the Push/Pull spinner for DOT.

For the frontend, one would idealy want the ability to map controls to other types of controls. For instance, with asteroids and space invaders, one might want to map left and right to an 8way stick.

I would be willing to help with this project, but I'm not sure in what  capacity. Maybe checking button functions versus labels or drawing up some of the graphics for the frontend. I don't know much about programming. My database experience is split between applications in FileMaker Pro and designing things that others implement in Clipper.

Bob

SirPoonga:


--- Quote ---game,cpnumplayers,p1joy2,p1joy4,p1joy8,p1spinner,p1button1.p1button2,... ...p2joy2,p2joy4

--- End quote ---


NO NO NO.  Bad design!  Hehe.
Need it more generic, it will make life easier (especially if you want this to work with other emus to.
The DB would have many tables.
One table would store the game name, game index, otherstuff.  The important part is game index.
Let's say it has these records:
game index|game name
232|Robotron
362|Mr .Do!
467|Discs of Tron
483|Street Fighter

Then you would have a controls table. The records that show the controls for the above game would be like:
game index|mame control|cp control|label
232|2joy8way|joy1|
232|2joy8way|joy2|
362|joy4way|joy4way|
362|1button|P1B1|Fire
467|dial|up/down spinner|
467|joy8way|tronjoy|
467|button1|tronjoybtn1|Fire
467|button2|tronjoybtn2|Shield
483|joy8way|joy1|
483|joy8way|joy2|
483|button1|p1b1|Weak Punch
483|button2|p1b2|Punch
483|button3|p1b3|Hard Punch
483|button4|p1b4|Weak Kick
483|button5|p1b5|Kick
483|button6|p1b6|Hard Kick
483|button1|p2b1|Weak Punch
483|button2|p2b2|Punch
483|button3|p2b3|Hard Punch
483|button4|p2b4|Weak Kick
483|button5|p2b5|Kick
483|button6|p2b6|Hard Kick

Now, this is assuming you have a control panel with a seperate 4way joystick, an up/down spinner, and a tron style joystick.
The 'cp control' field is the label you give the control in the FE, that will get highlighted somehow when that game is selected.  When you select a game in the FE, it will get the game index from the games table and retrieve all the records for that index in the controls table (easily done in one SQL command).  Then go through each of those records highlighting the control and putting in the text for the label of that control.  It can actually be less complicated, but you get the idea.  The controls should go in a seperate table and be looked up for ease of use, and ANY control can go in there.  With one huge record like you suggested you may not get all controls or future controls that pop up.

Actually, thinking about it, the above example is way more complicated than it needs to be.

The other way I could think up is have a lookup table that lists all the mame controls and the FE label for the control (the represents a control on your cp).
Like:
mame control|cp control
player1button1|p1b1
joy8way|p1joy8way
joy8way|p2joy8way
dial|Spinner
paddle|Spinner
trackball|trackball

Then in the FE the FE would look up the controls in the -listinfo and then correspond them to the above table looking up which FE control to highlight.
Now, if you make a cp designer for your FE when you add a control to the cp a drop down box would appear with all the possibilities for mame controls.  Then a text box for a cp control label (like p2joy8way).  That gets added to the above table.

Now, you have to correlate say player 1 button 1 to Fire or some other text label.  That's a DB like my first example will come in handy.  You list all the games and give it an index, then you have another table with all the controls for that game (the mame controls that you get from listinfo) and any label for that control (like button1 is jump)


Pages: << < (4/13) > >>

Go to full version