MiSTer-devel / NeoGeo_MiSTer

NeoGeo for MiSTer
GNU General Public License v2.0
145 stars 76 forks source link

V-Liner & Jockey Grand Prix Support #176

Closed ajgowans closed 11 months ago

ajgowans commented 1 year ago

Currently the core is missing support for the arcade gambling games V-Liner and Jockey Grand Prix.

Both these carts work on original hardware, but have a different Mapper. Add ram at 0x20000 - 0x201FFF and they will work most likely. V-Liner has additional controls however, a slow machine lever and buttons, so those inputs would need to be supported.

Relevant code from Mame:

Add ram at 0x20000 - 0x201FFF and they will work most likely. V-Liner has additional controls however, a slot machine lever and buttons, so those inputs would need to be supported.

case NEOGEO_JOCKEYGP: space.install_read_handler(0x200000, 0x201fff, read16sm_delegate(m_slots[m_curr_slot], FUNC(neogeo_cart_slot_device::ram_r))); space.install_write_handler(0x200000, 0x201fff, write16s_delegate(m_slots[m_curr_slot], FUNC(neogeo_cart_slot_device::ram_w))); break; case NEOGEO_VLINER: space.install_read_handler(0x200000, 0x201fff, read16sm_delegate(m_slots[m_curr_slot], FUNC(neogeo_cart_slot_device::ram_r))); space.install_write_handler(0x200000, 0x201fff, write16s_delegate(m_slots[m_curr_slot], FUNC(neogeo_cart_slot_device::ram_w))); // custom input handling... install it here for the moment. space.install_read_port(0x300000, 0x300001, 0x01ff7e, "DSW"); space.install_read_port(0x280000, 0x280001, "IN5"); space.install_read_port(0x2c0000, 0x2c0001, "IN6"); break; }

More information on these titles on the forum: https://misterfpga.org/viewtopic.php?t=6166&sid=f1e01055d27d17560d428ab35b86a6c5

Relevant code in Mame for Mappers: Neo-Geo-Mappers

sorgelig commented 11 months ago

I've added support for these "games". I'm not familiar with them, so it needs testing. Additional controls for vliner are implemented too. In Mame there is definition for dpad but i didn't see any place where it's used. It seems game uses only ABCD and Coin buttons. ABC button is used as Operator button.

ajgowans commented 11 months ago

Thanks for looking at this. I've loaded the following from the MiSTer pack on HTGDB and I can't find a way to progress past the configuration screens and into play. The config for V-Liner does reference D-UP to exit.

Jockey Grandprix (jockeygp).neo Jockey Grandprix (set 2) (jockeygpa).neo V-Liner (set 1) (vliner).neo V-Liner (set 2) (vlinero).neo

This could be user error my end, did you manage to get into the games from these screens OK?

sorgelig commented 11 months ago

Set all ABCD buttons on gamepad. They are Big/Small/D-UP/Start. also Coin and ABC(operator button).

V-Liner (set1) and Jockey Grandprix (set1) should work and run at least to playable state. Did you manage Jockey GP to play?

Toryalai1 commented 11 months ago

I managed to get vliner and jockey grandprix to work. This ticket can be closed. Thank you Sorg for your hard work

To get it to work, you need to press coin button then you press C button. Then you come to main screen and then you press coin button and B button

sorgelig commented 11 months ago

Pressing D-UP (C) is enough to get out of initial nvram setup. Then save the memory from OSD and it won't popup anymore.