Skip to content

Conversation

windwakr
Copy link
Contributor

@windwakr windwakr commented Oct 10, 2023

This adds the Slide Controller add-on, used by the game Slide Adventure MAGKID. AFAIK no other emulator supports this add-on.
Only the Windows frontend is implemented. Set slot 2 to auto, load up the game and move your mouse around.

If you're just looking to play the game, then download a build of the emulator here
desmume-slidecontroller.zip

Slide.Adventure.MAGKID.mp4

This is a draft because

  • I'm not sure about my changes to the Windows main.cpp regarding raw input reading
  • The cursor needs some mechanism to lock/hide it while playing
  • Rarely, some bits get dropped somewhere causing the whole thing to desync and stop functioning. No clue, probably in my serial handling code.

I'm not sure if I want to work through the frontend issues. If anyone else wants to then feel free to take over(squash my commits please). Otherwise, it'll be here for anyone that just wants to play the game.

I mostly referenced the small section in GBATEK and the chip's data sheet, with a small amount of RE of the game.

@windwakr
Copy link
Contributor Author

OK, I ended up rewriting the slot2 code to make it not so awful, taking heavy inspiration from the Magic Reader serial handling code in GBE+.

I feel like the slot2 code is in acceptable state now. The frontend code is unchanged and still crap and broken, though.

@windwakr
Copy link
Contributor Author

windwakr commented Oct 12, 2023

Ok, last change before leaving this for a while. I added rumble support. In doing this, I moved the definition of FeedbackON from slot2_rumblepak.cpp to slot2.cpp to make it more clear that it's available for other add-ons.

I guess set your controller on your lap? Yeah, it isn't the most practical to use. In-game there's a setting to turn rumble off it it's unwanted.

Rumble is now always allowed. Turns out there's an in-game option to turn it off so there's no need for this.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant