GithubHelp home page GithubHelp logo

dragonminded / ddr5thmix-solo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from 987123879113/ddr5thmix-solo

0.0 2.0 1.0 6.19 MB

Assembly 7.43% Batchfile 0.59% Shell 0.51% Python 81.53% Cython 9.95%

ddr5thmix-solo's Introduction

Dance Dance Revolution 5th Mix Solo

This is an UNOFFICIAL patch for the System 573/arcade version of Dance Dance Revolution 5th Mix.

The game contains left over code that supports 6 panel gameplay and a large number of songs have 6 panel charts left over from 4th Mix Plus. This project is an attempt to restore that functionality as well as make improvements to the UI to bring it closer to what a real 5th Mix Solo might have felt like.

All source code is included.

KNOWN BUGS/ISSUES

  • Edits are bugged in 6 panel mode (won't fix)
  • Only one of the two sensors in each panel is read (won't fix)

Instructions

Note: YOU MUST PROVIDE YOUR OWN DATA!

Microsoft Visual Studio 2015 x86 Redistributable is required for tools to work properly.

  1. Extract the contents of your Dance Dance Revolution 5th Mix CD to the data_source folder. You should have a DAT folder, GAME.DAT, CARD.DAT, and PSX.EXE file in this folder.
  2. Run step1_extract.bat (step1_extract.sh if you are on *nix) to generate the data_raw folder.
  3. Run step2_make.bat or step2_make_soloio.bat (step2_make.sh or step2_make_soloio.sh if you are on *nix) to build the ddr5thsolo.iso/ddr5thsolo_soloio.iso files. If you are using a real Solo machine then use step2_make_soloio.bat. If you are using MAME or an otherwise non-Solo machine then use step2_make.bat.

Additionally, if you are building this for MAME, you must use chdman (included with MAME) to build the required CHD.

  1. Generate CHD using chdman.exe createcd -i ddr5thsolo.iso -o a27jaa02.chd -c none (-c none is requested because the compression can throw timing off in MAME).
  2. Overwrite roms/ddr5m/a27jaa02.chd in your MAME folder with the newly generated a27jaa02.chd.
  3. Delete nvram/ddr5m in order to force reinstallation when you boot ddr5m next in MAME.
  4. You must run MAME from the command line instead of through the normal MAME UI to bypass hash check errors

If you wish to extract the CD bin/cue from a CHD file, use chdman.exe extractcd -i a27jaa02.chd -o a27jaa02.cue.

Additional Instructions (*NIX ONLY)

If you are building using *nix, you must compile the required Cython modules:

  1. cd tools/py
  2. python3 -m pip install -r requirements.txt
  3. python3 setup.py build_ext --inplace

Notes

  • Dipswitch 1 can be toggled on/off to enable/disable autoplay (even on real hardware)
  • There are various flags in src/main.asm that can be modified such as FORCE_UNLOCK, SOLO_MODE, AUTOPLAY_ENABLED, AUTOPLAY_TIMING, DISABLE_ANNOUNCER, DISABLE_CHEERING, and SWAP_EXTRA_LIGHTS.

Hardware Sensor Fix

If you are running this on an actual Solo cabinet and find that the pad is not as sensitive as you would like due to the game reading only one of the two sensors per arrow, you can apply the following hardware fix to bridge each pair of sensors together. Get a JAMMA fingerboard and wire every connection straight through so that JAMMA pin 1 on the 573 side connects to JAMMA pin 1 on the connector side, and so on. Then, once every pin is connected straight through, bridge the following pins together:

  • Up-Left - X, 22
  • Up - 18, Z
  • Down - 19, 24
  • Left - 20, 23
  • Right - 21, aa
  • Up-Right - Y, bb

Now, when in the IO test menu or in-game, both sensors in each arrow will register and you should notice your sensitivity improving greatly.

Thanks

  • @WannyTiggah for the edited title screen and icon edits
  • @SakamotoNeko13 for the edited 4PANEL/6PANEL graphics on the style select screen
  • @dragonminded for testing with a real Solo cabinet as well as lights mapping, lights test menu and autoplay display on dip test menu

ddr5thmix-solo's People

Contributors

987123879113 avatar dragonminded avatar

Watchers

 avatar  avatar

Forkers

mrdion

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.