ekeeke / Genesis-Plus-GX

An enhanced port of Genesis Plus - accurate & portable Sega 8/16 bit emulator
Other
692 stars 197 forks source link

Genesis MultiTap - Wayne Gretzky Hockey Doesn't Work #116

Closed newoski closed 7 years ago

newoski commented 7 years ago

I've got most other games tested and working at this point, but Wayne Gretzky and the NHLPA All-Stars does not seem to work with Multitap, despite being a multitap game.

I've tried all P1 / P2 combinations of the available multitap controllers (4way, teamplayer) (3button, 6 button) and nothing works.

The closest to working is: P1: MD Joypad 6 Button P2: MD Joypad 6 Button + TeamPlayer 6 Button

That will at least bring up the MultiTap message when the game is launched, however, the controls freak out

ekeeke commented 7 years ago

Works fine with TeamPlayer + 3 Button or 6 Button in Port 1 and either nothing or 3 Button or 6 Button in Port 2.

Tested on standalone versions but there is no reason it should not work the same way in retroarch.

newoski commented 7 years ago

Just tested on RetroArch using the setting you described. Doesn't seem to work.

ekeeke commented 7 years ago

Just tested and it works fine in Retroach here (windows version) so I am not sure what the issue is on your end but the game detects teamplayer just fine and let you assign up to 4 human players to each team as expected so there is no core issue here.

I noticed libretro repository was not exactly in sync with my own repository, in particular this commit has not been backported. It should not affect multitap support but you never know.

ra-1 ra-2 ra-3 ra-4 ra-5

newoski commented 7 years ago

Hmmm. I see you're running 1.0.02. That's interesting to see that MultiTap is clearly recognized at the Title Screen. I have yet to see that message on 1.3.X (latest beta). I assume you're simply loading an Exhibition game? When I load the game, with the settings you highlight above in your screenshot, I end up at the same bottom image, but there are only 2 players available. Moreover, only the first player is controllable.

Outside of this game, I have 55 games working correctly with MultiTap. Below are the other games not working:

Wayne Gretzky and the NHLPA All-Stars ATP Tour College Slam Dino Dini's Soccer Ichidant-R International Rugby J.League Pro Striker 2, J.League Pro Striker Perfect Edition Pro Striker Final Stage Micro Machines 2 Mortal Kombat 3 NBA Action 94 NCAA Final Four Basketball Olympic Gold Pepen ga Pengo Ultimate Soccer Wimbledon World Cup USA 94 Worms

ekeeke commented 7 years ago

Multitap is correctly detected for most of these games (some of them do not have multitap support though, like Worms, Olympic Gold, International Rugby or Micro machines 2 where you need the non-jcart version which is afaik undumped) so the issue is on your end I'm afraid. If you are on windows, try the 32-bit dll which is available here and corresponds to the latest version with my September commits https://github.com/ekeeke/Genesis-Plus-GX/blob/master/builds/genesis_plus_gx_libretro.dll

Anyway, Teamplayer emulation is fine in the emulator and since support for this adapter was likely implemented in games using Sega official library, if it works with one game there are big chances it works for all of them. Some games expect different configuration but it seems normal gamepad in port 1 and teamplayer in port 2 was the most supported scheme. Some of them require special action to activate all controllers (in College Slam for example you need to press A on each controller in the team selection screen and in MK3, I think it is a secret multiplayer mode that needs to be activated somehow)

collegeslam

retroarch-1204-085815 retroarch-1204-092710 retroarch-1204-094057 retroarch-1204-125855 retroarch-1204-130503 retroarch-1204-134302 retroarch-1204-134719

newoski commented 7 years ago

Really appreciate the thorough responses. Unfortunately, that core you linked me to caused RetroArch to crash when I try to load it, however, based on your feedback, I have gotten Wayne Gretzky working as well as College Slam. Working on the rest now.

newoski commented 7 years ago

So now that I know about the need for Joypad Auto in some instances, I've gotten most games working.

Here are the last few that I can't seem to figure out:

International Rugby Olympic God Pepenga Pengo Ultimate Soccer World Cup USA 94 Worms

If you could post the settings you're using to get these working, I'd really really appreciate it. From there, I'll put together a zip file with my per game overrides for all MultiTap games.

Thanks again!

newoski commented 7 years ago

(To access Mortal Kombat 3 multiplayer, press A+C and then Start)

ekeeke commented 7 years ago

As already said, following games do NOT support multitap adapter despite often wrongly listed that way (confirmed by the fact there is no code executed trying to detect teamplayer or 4-wayplay):

Following games support multitap just fine:

worldcup94

So now that I know about the need for Joypad Auto in some instances, I've gotten most games working.

Yes, some games support 6-buttons controller but some don't. They all support 3-buttons controller though so you are better using multitaps + 3-buttons by default in retroarch since "auto" is not exposed for multitap options in the libretro port.

newoski commented 7 years ago

Thanks so much! I'll test shortly

On Dec 4, 2016 12:24 PM, "ekeeke" notifications@github.com wrote:

As already said, following games do NOT support multitap adapter despite often wrongly listed that way (confirmed by the fact there is no code executed trying to detect teamplayer or 4-wayplay):

-Pepenga Pengo Requires a gamepad in port and teamplayer in port 2 Multiplayer only in battle mode [image: pengo] https://cloud.githubusercontent.com/assets/717091/20867293/1c5c5012-ba41-11e6-8ebc-4d48448afacb.jpg

-Ultimate Soccer Support teamplayers on both ports for up to 8 players simultaneously All players in the same team tough and you have to select which one controls which team member in the formation setup (by default player 1 controls the whole team) [image: ultimatesoccer] https://cloud.githubusercontent.com/assets/717091/20867312/ef1a8960-ba41-11e6-8351-426920701a93.jpg

-World Cup USA 94 Supports up to 4 players simultaneously using either 4-WayPlay (connected to both ports) or teamplayer (port 1 or port 2). You can even have 2 teamplayer connected and choose players 5-8 to compose teams but still are limited to mas 4 players simultaneously.

[image: worldcup94] https://cloud.githubusercontent.com/assets/717091/20867897/ea2806dc-ba4e-11e6-917b-ab978f210d90.jpg

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ekeeke/Genesis-Plus-GX/issues/116#issuecomment-264717248, or mute the thread https://github.com/notifications/unsubscribe-auth/ANJjqhOpH4k7GyploblX0yUly9q_2FpFks5rEvdggaJpZM4LCsgs .

newoski commented 7 years ago

Hi ekeeke,

My sincerest thanks for your help getting this setup. Thanks to your help, I've got all supported MultiTap games for Sega Gensis working via the Genesis Plus GX core.

As a shortcut for anyone else that wants to setup all games, here is a link to my Per Game Config Overrides. Just enable Per Game Config Overrides and merge the attached folder structure with your own RetroArch folder. It contains no changes other than the MultiTap enabled settings.

https://www.dropbox.com/s/kjjzo83dfb7laee/Sega%20Genesis%20MultiTap%20Per%20Game%20Config%20Overrides.zip?dl=0

Cheers and thanks again!

newoski commented 7 years ago

Is MultiTap supported for Sega CD and if so, could you post the correct mappings for:

Bill Walsh Dungeon Explorer ESPN National Hockey Night FIFA International Soccer NBA Jam NHL 94

Thanks again ekeeke!

ekeeke commented 7 years ago

I don't have time for this I'm afraid, I'm sure it can easily figured by finding manuals online or trying different combinations.

EA games only support 4-wayplay usually, make sure to put it in both ports because that's the way it worked, there isn't any other possible configuration with that one.

newoski commented 7 years ago

OK, no problem. Based on your previous responses, it sounded like you might have access to the info easily. So far, no combos work. Thanks again for the Genesis help!

newoski commented 7 years ago

NBA Jam works with TeamPlayer (6 Button) for both P1 & P2. Haven't gotten any others working yet.

ekeeke commented 7 years ago

I don't have access to any special info, I just read game manuals and tested configurations.

As already mentioned, game manuals can easily be found on http://segaretro.org. Just type the game you are looking for in the search bar and scroll down for cover/manual scans.

As already explained, Bill Walsh, FIFA International Soccer & NHL 94 are EA games which usually only work with 4-WayPlay and their manual mention they are not compatible with 6-buttons gamepad (need the MODE button trick) so they should work with WayPlay+3B in both Port 1 & Port2 (to be more precise, that multitap had two cables which must be connected to both ports at the same time)

According to their manual, Dungeon Explorer & ESPN National Hockey Night are TeamPlayer compatible games and seem to only support 3-buttons gamepad configuration so I would try Teamplayer+3B on port 1 if I were you

newoski commented 7 years ago

Hmmm. No go with those combos or any others I've tried. Is it confirmed working by others?

ekeeke commented 7 years ago

I don't need others confirming it, I know it works because as already said, all games use the same official code routines to handle those multitaps so if emulation wasn't fine, all games would fail detecting them.

Here you go anyway with aforementioned configurations (note that ESPN National Hockey Night seems compatible with TeamPlayer but also EA 4Way-Play).

Screenshots taken from Retroarch (just in case)

retroarch-1213-011936

retroarch-1213-013421

retroarch-1213-013702

retroarch-1213-013948

retroarch-1213-014059

newoski commented 7 years ago

so weird. ive tried like every combo. any chance you can upload per game overrides (for P1 & 2) with the settings that work for you? happy to send some beer money. this is killing me

ekeeke commented 7 years ago

Nope , sorry, I don't know how to do that (I barely use retroarch myself except for tests like that) and I'm not even sure that old version I use supports per game settings.

You will have to manage it yourself like you did with other games (which also did not worked for you initially).

You are probably doing something wrong with input settings, although I admit this part is not very clear in Retroarch since what the emulator is referred as port 1 and port 2 (for emulated devices) is labelled as "player 1" and "player 2" in retroarch, which can be confusing.

Here are the settings I used:

4-Way Play:

4wayplay-port1 4wayplay-port2

Teamplayer

team-port1 team-port2

newoski commented 7 years ago

Wow, so this is interesting. NHL 94 seems to work, with those settings, but here's the problem... After pressing Start at the SEGA screen, the controller stops responding until after the intro video and credits which takes forever. If I wait until after the credits are done, then the 4 controllers work. This is so weird...

ekeeke commented 7 years ago

I don't know, I don't have this issue.

Are you using the core dll provided by retroarch or one compiled from here? I noticed another commit which has not been backported by libretro into their Genesis Plus GX repository and might cause some issues with input descriptors.

https://github.com/ekeeke/Genesis-Plus-GX/commit/ff2cb27f486d61cf824bf1bd525b28ff2dfd65eb

They will need to sync with my repository.