Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Yet Another JVS Emulator (YetAnotherJVSEmu)  (Read 1372 times)

0 Members and 1 Guest are viewing this topic.

wutno

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 22
  • Last login:June 03, 2023, 07:33:51 pm
  • I want to build my own arcade controls!
Yet Another JVS Emulator (YetAnotherJVSEmu)
« on: May 11, 2020, 11:40:17 am »
Introducing YetAnotherJVSEmu...

https://github.com/GXTX/YetAnotherJVSEmu

This is a FOSS JVS emulator based on off the shelf libraries present in Ubuntu's package manager and other Free and Open Source Software. The aim of the project was to avoid messy config files and just have a base platform you can easily modify and understand what does what via a friendly and easy to use command line UI. The idea is to be the Apple motto of "It just works".

Supports *any* controller that Linux can pickup thanks to using SDL2 as the controller backend.

Want to play gun games? Just have a WiiMote connected and you'll automatically be asked if you want to use it! Supports using the WiiMote as X/Y positional using analog values or even the recently added touch screen input (untested). You can attach up to 2 WiiMotes (artificial limit) so you could even 2 player gun games such a Virtua Cop or House Of The Dead.

By default the mapping is set to what is comfortable to play racing games on my Chihiro using an Xbox 360 controller, because of this if you want to change mappings you must use custom maps BUT! this is very trivial to change (once again thanks to SDL2); there are external maps that are already community made, or maybe you even want to create your own because you find the controls are lacking you can use the community source maps located here https://github.com/gabomdq/SDL_GameControllerDB/ and place the "gamecontrollerdb.txt" file in the directly with the executable. Buttons are currently mapped *all* to Player 1, but if you can easily change this in 'Includes/SdlIo.cpp' near the bottom. Players are currently limited to 2 (are there games which actually use more?), to see more hard limits checkout the defines in 'Includes/JvsIo.h'.

I'm not going to go into detail how to use it here but if you checkout the readme I believe you should be able to get a good idea as I tried to be as detailed as possible. Check that out here: https://github.com/GXTX/YetAnotherJVSEmu/blob/master/README.md

All of my testing has been on a Raspberry Pi 3B+ on Ubuntu 20.04 with a Type-3 Chihiro which has been to be confirmed working as expected on:

    OutRun 2
    OutRun 2 Special Tours
    Virtua Cop 3
    Ghost Squad
    Wangan Midnight Maxium Tune
    Wangan Midnight Maxium Tune 2
    House Of The Dead 3 (converted to work on Type-3)
    Crazy Tazi - High Roller (converted to work on Type-3)

I know that there's *some* games which check for certain things like IO name and I'd love to get a full list of games which do this and what they expect, I could potentially add a easy to use command line switch instead of requiring you to manually edit it in 'Includes/JvsIo.cpp'.

Check out the project here: https://github.com/GXTX/YetAnotherJVSEmu