sdvxio-kfca doesn't actually verify that a KFCA exists before trying to talk to it #39

Closed
opened 2019-11-25 12:26:08 +03:00 by icex2 · 4 comments
icex2 commented 2019-11-25 12:26:08 +03:00 (Migrated from github.com)

In GitLab by @xyen on Nov 25, 2019, 10:26

It just calls aciodrv_kfca_init on node 0

To fix, should loop over all nodes and use aciodrv_device_get_node_product_ident to determine find the KFCA, and use it.

Should also make the port configurable.

In GitLab by @xyen on Nov 25, 2019, 10:26 It just calls `aciodrv_kfca_init` on node 0 To fix, should loop over all nodes and use `aciodrv_device_get_node_product_ident` to determine find the `KFCA`, and use it. Should also make the port configurable.
icex2 commented 2019-11-25 12:28:28 +03:00 (Migrated from github.com)

Just a guess, but with other games using different acio devices on the bus, might this be something we need or should have on other games as well?

Just a guess, but with other games using different acio devices on the bus, might this be something we need or should have on other games as well?
icex2 commented 2019-11-25 12:34:05 +03:00 (Migrated from github.com)

In GitLab by @xyen on Nov 25, 2019, 10:34

eamio-icca is the only other ACIO driver, and assumes that there are 2 card readers always (which works for the game it's meant for: IIDX). You can't use eamio-icca in conjunction with sdvxio-kfca right now however, as we don't have facilities for allowing both of them to initialize the same ACIO port, and select devices to talk to. Maybe we should make an aciodrv.dll, and have eamio-icca / sdvxio-kfca register handlers to it or something?

Regardless, both eamio-icca and sdvxio-kfca assume they are the ONLY things talking to a particular ACIO port, fixing this bug would allow you to boot sdvx while the card reader is still attached, but wouldn't let you use said card reader.

I fixed this on my cab by simply connecting the card reader to a different physical serial port, but it's something we should architect a solution for later down the line (multiple IO dll's using the same port).

In GitLab by @xyen on Nov 25, 2019, 10:34 eamio-icca is the only other ACIO driver, and assumes that there are 2 card readers always (which works for the game it's meant for: IIDX). You can't use eamio-icca in conjunction with sdvxio-kfca right now however, as we don't have facilities for allowing both of them to initialize the same ACIO port, and select devices to talk to. Maybe we should make an aciodrv.dll, and have eamio-icca / sdvxio-kfca register handlers to it or something? Regardless, both eamio-icca and sdvxio-kfca assume they are the ONLY things talking to a particular ACIO port, fixing this bug would allow you to boot sdvx while the card reader is still attached, but wouldn't let you use said card reader. I fixed this on my cab by simply connecting the card reader to a different physical serial port, but it's something we should architect a solution for later down the line (multiple IO dll's using the same port).
icex2 commented 2019-12-01 23:15:15 +03:00 (Migrated from github.com)

In GitLab by @xyen on Dec 1, 2019, 21:15

closed

In GitLab by @xyen on Dec 1, 2019, 21:15 closed
icex2 commented 2019-12-01 23:15:15 +03:00 (Migrated from github.com)

In GitLab by @xyen on Dec 1, 2019, 21:15

fixed in 7e387882db

In GitLab by @xyen on Dec 1, 2019, 21:15 fixed in 7e387882dbcdeb2f52cb4773032c150405ba31c1
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Max/djhackersdev_bemanitools#39