djhackersdev / bemanitools

Runs recent Konami arcade games and emulates various arcade hardware.
The Unlicense
84 stars 16 forks source link

DDR: Unable to use slotted readers #91

Open icex2 opened 2 years ago

icex2 commented 2 years ago

In GitLab by @ryu on Dec 20, 2021, 24:52

Summary

DDR A -> A20Plus doesn't read icca-slotted readers with eamio-icca.

Expected behavior

Games should pass all checks and function with BT5's eamio-icca.

Current behavior

DDR A -> A20Plus will either hard crash on IO check, or will throw a 1-1516-0000 when using the -u flag (also when hooking unicorntail.dll)

Detailed Description

Launching the games normally works fine. Launching the games while using ddrio-mm works fine. Launching the games while using eamio-icca crashes on IO check. Launching the games while using eamio-icca and -u/unicorntail.dll results in a 1-1516-0000 Launching the games while using ddrio-mm and -u/unicorntail.dll results in a 1-1516-0000 Launching the games while using ddrio-mm and eamio-icca crashes on IO check. Launching the games while using ddrio-mm, eamio-icca, and -u/unicorntail.dll results in a 1-1516-0000

aciotest.exe shows the card readers are fully functional. eamiotest.exe with eamio-icca shows the card readers are fully functional.

Steps to reproduce

  1. Install BT5 (ddr-12-to-16)
  2. Copy over eamio-icca.dll and aciomgr.dll from either iidx-hwio-x86, sdvx-hwio-x86, or jb-hwio.
  3. Rename ddrio-mm.dll to ddrio.dll
  4. Set serial port to COM4:57600
  5. Modify eamio-icca.conf to reflect COM port changes
  6. Add -o (and -u) to the launch command.
  7. Run gamestart-16.bat

Possible solution

¯\(ツ)

Context (Environment)

Bemanitools version(s) affected

Bemanitools 5.31 -> 5.36

Game(s) and version(s) affected

Log output

See attachment. output__no_uflag.txt output__uflag.txt

Command line arguments

gamestart-16.bat: .\launcher.exe -H 33554432 -K .\ddrhook.dll -o .\arkmdxp3.dll %*

gamestart-16-unicorntail.bat .\launcher.exe -H 33554432 -K .\ddrhook.dll -o -u .\arkmdxp3.dll %*

APIs used

OS version

Windows XP Embedded (old PW-Era IIDX image)

Hardware specs