Skip to content

Triforce: add ICCard manager for card-based titles#14531

Draft
Dil3mm4 wants to merge 1 commit into
dolphin-emu:masterfrom
Dil3mm4:triforce-vs-card-manager
Draft

Triforce: add ICCard manager for card-based titles#14531
Dil3mm4 wants to merge 1 commit into
dolphin-emu:masterfrom
Dil3mm4:triforce-vs-card-manager

Conversation

@Dil3mm4
Copy link
Copy Markdown

@Dil3mm4 Dil3mm4 commented Mar 31, 2026

Add a Triforce card manager for ICCard-based titles.

Issue:
Triforce ICCard titles had no UI for selecting named cards, creating new cards, or controlling insertion and ejection. Card handling was implicit, slot-based, and game-driven.

Test:
Build dolphin-emu and boot Virtua Striker 4 Ver.2006 (Export). Open Tools -> Triforce Card Manager, create cards, select them per slot, and verify insert and pull behavior. The same manager is also available for Gekitou Pro Yakyuu and Key of Avalon with their title-specific slot counts and insert behavior.

What changed:

  • added a Triforce card manager window for ICCard titles
  • added ICCard slot status/path/insert control on the AM baseboard
  • kept actual insertion behavior in the per-title IOPorts adapters
  • made blank card creation explicit by game type so VS4, Gekitou, and Avalon initialize card data correctly
  • kept VS4's slot-B-after-slot-A-lock behavior while exposing the same manager UI for Gekitou and Avalon

Add a Triforce card manager for ICCard-based titles.

Issue:
Triforce ICCard titles had no UI for selecting named cards, creating new cards,
or controlling insertion and ejection. Card handling was implicit, slot-based,
and game-driven.

Test:
Build dolphin-emu and boot Virtua Striker 4 Ver.2006 (Export). Open Tools ->
Triforce Card Manager, create cards, select them per slot, and verify insert and
pull behavior. The same manager is also available for Gekitou Pro Yakyuu and Key
of Avalon with their title-specific slot counts and insert behavior.

What changed:
- added a Triforce card manager window for ICCard titles
- added ICCard slot status/path/insert control on the AM baseboard
- kept actual insertion behavior in the per-title IOPorts adapters
- made blank card creation explicit by game type so VS4, Gekitou, and Avalon
  initialize card data correctly
- kept VS4's slot-B-after-slot-A-lock behavior while exposing the same manager
  UI for Gekitou and Avalon
@JMC47
Copy link
Copy Markdown
Contributor

JMC47 commented Apr 2, 2026

Created cards crash Gekito Pro Yakyuu via your manager. VS4 works, I didn't test Avalon because it requires me to setup things a bit more indepth.

Each major revision of Avalon probably needs a different card, as well. I don't think this is ready for primetime or well thought out enough.

My recommendations: Have an automatic mode (aka, what Dolphin does now) for players that don't want to have to manage the IC Card window while playing. Maybe even let players select the card, I don't know exactly what. But the fact is that on my arcade I would have to manage cards while playing the game now and I don't have a mouse and keyboard to do that.

I do like the idea of having multiple named cards, this just needs a lot of work.

@Dil3mm4
Copy link
Copy Markdown
Author

Dil3mm4 commented Apr 2, 2026

Created cards crash Gekito Pro Yakyuu via your manager. VS4 works, I didn't test Avalon because it requires me to setup things a bit more indepth.

Each major revision of Avalon probably needs a different card, as well. I don't think this is ready for primetime or well thought out enough.

My recommendations: Have an automatic mode (aka, what Dolphin does now) for players that don't want to have to manage the IC Card window while playing. Maybe even let players select the card, I don't know exactly what. But the fact is that on my arcade I would have to manage cards while playing the game now and I don't have a mouse and keyboard to do that.

I do like the idea of having multiple named cards, this just needs a lot of work.

Will convert to draft trying to address what you mentioned as soon as I'll have the time to.

Thanks for reviewing :)

@Dil3mm4 Dil3mm4 marked this pull request as draft April 2, 2026 20:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants