Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
07460 DIP/Input Minor Always Oct 22, 2019, 00:36 Oct 24, 2019, 18:00
Tester MetalGod View Status Public Platform MAME (Official Binary)
Assigned To Resolution Not fixable OS Windows Vista/7/8 (64-bit)
Status [?] Closed Driver
Version 0.214 Fixed in Version Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 07460: nslasher and clones: Coin3 key is wrong
Description Coin3 key is wrong
It is set to key 3. That's the default key for START3 in MAME
It should be set to key 7, which is the default coin3 key in MAME
Steps To Reproduce First, it is neccesary to change the game to 3 player mode.
Press F2 to enter test menu
Game Options
Player Selection = 3 Player Simultaneos
Exit

Now press Player 3 start to check the issue.
Additional Information
Github Commit
Flags
Regression Version
Affected Sets / Systems nslasher and clones
Attached Files
 
Relationships
There are no relationship linked to this issue.
Notes
5
User avatar
No.17112
Fujix
Administrator
Oct 22, 2019, 05:01
When selecting "3P Simultaneos" with "Coin counter type: Individual", MAME is missing the coin input for the player 3, we have to use the service input and then press "Right Ctrl" to start the 3rd player.

And when the Coin counter type is set to "One", the 7 key for "Coin 3" doesn't work, but the 3 key inserts coins.
To start the game, P1 is P1 Button 1, P2 is P2 Button 1 and P3 is P3 Button 1 respectively. Looks like OK to me.
User avatar
No.17116
MetalGod
Senior Tester
Oct 22, 2019, 09:59
edited on: Oct 22, 2019, 10:09
Coin input for player 3 is set to key "3". It should be key "7"
It is not OK.

Start button is OK cause is set to each players button1
Coin3 is not OK

*Issue edited
User avatar
No.17118
Haze
Senior Tester
Oct 22, 2019, 14:52
edited on: Oct 22, 2019, 14:55
This is because MAME emulates one specific cabinet type.

Once you change that in service, how the board is wired up is expected to be changed too, which means the input that WAS player 3 start on the PCB is now Coin 3. MAME doesn't actually map a Coin 3 for this at all as it doesn't exist in the default cabinet setup, you're literally using what it thinks is P3 start to add a coin because it's the same physical line on the PCB.

Unless MAME supports an extra level of abstraction for cabinet types this is going to occur in a lot of drivers. You could add a fake 'config switch' and conditional ports rather than a true level of abstraction, but it can get messy quickly.

Even then there's no way for it to be automatic based on service mode, as you're expected to use it in a physically different cabinet with different wiring.
User avatar
No.17125
Heihachi_73
Tester
Oct 23, 2019, 04:16
I don't think MAME is advanced enough to the point that it could automatically generate and map the correct buttons by reading the game's DIP switches or even the NVRAM, although even that could be technically possible if someone could be bothered writing obscure code like that (and of course, with sanity checks in place to make sure that garbage values revert to the default layout rather than crashing MAME).

Technically it's already possible to change the buttons in the menu using PORT_CONDITION in the driver code but it's a PITA and users would still have to manually set the desired button/cabinet layout in the Machine Configuration menu. Basically what Haze was saying about config switches and conditional ports.
User avatar
No.17135
Haze
Senior Tester
Oct 24, 2019, 18:00
you can do it with the dipswitches (conditional inputs) but trying to do it automatically based on values extracted from NVRAM for games that use NVRAM instead of dips would be a hack.