#146211 - KeithE - Fri Nov 30, 2007 4:41 pm
Thanks to Action Replay, Nitro Hax, and the fine folks at kodewerx.net (kenobi especially), you can now play your commercial games with tilt control.
Some Action Replay/Nitro Hax codes have been written that map the X and Y acceleration of the DS Motion Pak to Left, Right, Up, and Down button presses. It works as follows:
1) Overwrite all the pointers to 0x4000130 (REG_KEYINPUT) with a pointer to an unused memory location.
2) Read REG_KEYINPUT and the DS Motion Pak.
3) Combine the key states from REG_KEYINPUT with key states calculated from the measured tilt.
4) Write the new key states that include tilt to the specified unused memory location.
Voila - the game uses key states that are calculated from the tilt measured by the DS Motion Pak.
Once the game has started, press Start+Select to enable tilt sensing. Keep in mind that this is the first release - most likely newer, better versions will be released in the future. It has been tested and confirmed to work on Mario Kart DS (AMCE) and Tony Hawk's Downhill Jam (AWKE), and it probably works on most games.
Don't ask if it works on roms - I only have legitimate game cartridges.
Here are the codes:
Action Replay:
023FE074 012FFF11 E0000000 00000084 E92D00FF E59F006C E1DF17B0 E59F2068 E1DF36BA E3510000 01D040B0 03140004 03140008 03510000 03A01001 058F104C E3510001 1A00000D E3A04402 E0845803 E2833001 E1CF33B6 E0846803 E4957004 E1570000 05054004 E1550006 BAFFFFFA E3530040 03A03000 058F3010 058F300E E8BD00FF E12FFF1E 04000130 02400000 00000000 00000000 023FE074 E3520003 023FE074 012FFF11 E0000000 00000080 E92D003F E3A05301 E5955130 E1DF16B8 E2811001 E1CF16B0 E3A0240A E3A03402 E3A04002 E3110002 12844002 E3110001 15D20000 07D21004 0A00000D E3110002 1A000005 E3500071 B3C55010 E350008F C3C55020 E1CF52B2 EA000005 E1DF51BA E3500071 B3C55040 E350008F C3C55080 E1C350B0 E8BD003F E12FFF1E 00000000 023FE074 E3520003
Nitro Hax:
C2000000 00000084 E92D00FF E59F006C E1DF17B0 E59F2068 E1DF36BA E3510000 01D040B0 03140004 03140008 03510000 03A01001 058F104C E3510001 1A00000D E3A04402 E0845803 E2833001 E1CF33B6 E0846803 E4957004 E1570000 05054004 E1550006 BAFFFFFA E3530040 03A03000 058F3010 058F300E E8BD00FF E12FFF1E 04000130 02400000 00000000 00000000 C2000000 00000080 E92D003F E3A05301 E5955130 E1DF16B8 E2811001 E1CF16B0 E3A0240A E3A03402 E3A04002 E3110002 12844002 E3110001 15D20000 07D21004 0A00000D E3110002 1A000005 E3500071 B3C55010 E350008F C3C55020 E1CF52B2 EA000005 E1DF51BA E3500071 B3C55040 E350008F C3C55080 E1C350B0 E8BD003F E12FFF1E 00000000
Enjoy!
#146215 - Sweater Fish Deluxe - Fri Nov 30, 2007 6:37 pm
This is cool, but I can't imagine that moving the system up/down/left/right to simulate the digital pad feels all that super fantastic, at least not in the two games you mentioned. There might be some that it would work well with, though none are jumping into my mind at the moment.
What would be really nice is some more game-specific codes that have controls mapped in ways that make sense to the game. So Z-rotation could be used for the wheel and Z-acceleration for shifting in a racing game.
Would it be possible to map the motion pak to touchscreen inputs? Then you'd have analog for analog and it might work really well in certain games (I'm thinking especially of some of the games on the AtariMix collection, though there's probably plenty of others).
I'll definitely be interested to see how this hacking develops. Could end up being really really cool for certain games.
...word is bondage...
#146224 - spinal_cord - Fri Nov 30, 2007 9:26 pm
one step closer to tilt mario64. I suppose it might be possible to add support for the 'run' button, so tilting a certain angle will walk mario and tilt further he will run?
_________________
I'm not a boring person, it's just that boring things keep happening to me.
Homepage
#146227 - tepples - Fri Nov 30, 2007 10:17 pm
spinal_cord wrote: |
one step closer to tilt mario64. |
But would that necessarily be a desirable thing? There's a reason that Super Mario Galaxy uses the Control Stick instead of the Nunchuk's tilt sensor.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#146231 - spinal_cord - Fri Nov 30, 2007 10:36 pm
tepples wrote: |
spinal_cord wrote: | one step closer to tilt mario64. |
But would that necessarily be a desirable thing? |
For me..... Yes.
_________________
I'm not a boring person, it's just that boring things keep happening to me.
Homepage
#146242 - NeX - Sat Dec 01, 2007 12:37 am
A touchscreen one would be a bit more useful, methinks. Cool anyhow.
_________________
Strummer or Drummer?.
Or maybe you would rather play with sand? Sandscape is for you in that case.
#146288 - spinal_cord - Sun Dec 02, 2007 12:52 am
Would that be possible Keith? somehow set the motion pak to 'drag' the stylus rather than setting a button press? would bring my tilt mario64 dream a little closer.
*Wish i was a 'super leet' coder so I could do things like this myself, but alas I'm far to lazy to learn.
[slightly off topic] Anyone know how I can get a free motion pak, are there any competitions around offering them as a prize or something? I have the slot-1 version, but thats no good for this.
_________________
I'm not a boring person, it's just that boring things keep happening to me.
Homepage
#146293 - Gunnex - Sun Dec 02, 2007 3:26 am
AC:WW + Tilt = Gangster
#146295 - KeithE - Sun Dec 02, 2007 4:05 am
Probably possible to map motion pak to stylus. It is a matter of finding the location in RAM of some in-game variables that are controlled by the stylus and updating them with motion pak outputs.
One challenge would be how do you tell the game whether or not the stylus is down - just touch the screen anywhere (maybe with a finger), then tilt to move? Other ideas?
I'm working on giving "analog" control to games that use the digital D-pad by attempting to use a technique called Pulse Width Modulation (PWM). Basically, the pad would be pressed on and off very quickly, with the percentage of time that it is pressed increasing as you tilt more. I have no idea how it will feel or how the game will react to it, but it will certainly be interesting to try.
Of course, game specific mappings will yield the best results. Unfortunately, I don't own very many commercial DS games - most of my DS game playing is homebrew!
#146296 - tepples - Sun Dec 02, 2007 4:12 am
You'd need some sort of violence mod (where shovel and axe actually do something to neighbors) to turn pacifist sandbox into gangster sandbox. I don't even want to contemplate how many AR/NH lines that would take ;-) But seriously, pressing a direction for soft tilt and pressing L+direction for hard tilt would work for ACWW.
A lot of the touch-screen-hooking code would be similar to "sprite following" in PocketNES or other emulators. For example, in Super Mario 64: when in game mode, set the pen down bit to whether or not the tilt is in the dead zone. When the tilt leaves the dead zone, put the pen down in the middle and then set the stylus position to the tilt vector.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#146484 - KeithE - Tue Dec 04, 2007 8:33 pm
Here are codes that do analog control - tilt a little to turn a little, tilt a lot to turn a lot. It works on games that use the D-pad by "pressing" the buttons on and off very quickly.
It makes the menus VERY hard to control, so I added a feature that if you hold SELECT it turns off the tilt sensing. Hold SELECT when the game is in a menu, then you can use the D-pad to choose your option.
Action Replay:
023fe074 012fff11 e0000000 00000084 e92d00ff e59f006c e1df17b0 e59f2068 e1df36ba e3510000 01d040b0 03140004 03140008 03510000 03a01001 058f104c e3510001 1a00000d e3a04402 e0845803 e2833001 e1cf33b6 e0846803 e4957004 e1570000 05054004 e1550006 bafffffa e3530040 03a03000 058f3010 058f300e e8bd00ff e12fff1e 04000130 02400000 00000000 00000000 023fe074 e3520003 023fe074 012fff11 e0000000 000000e4 e92d00ff e3a05301 e5955130 e1df1cb8 e2811001 e1cf1cb0 e3a0240a e3a03402 e3a04002 e5df60b4 e5df70b2 e3110002 12844002 e3110001 15d20000 07d21004 0a000021 e3110002 1a00000f e350007f b2866080 b0466000 aa000002 e356000f c3c55010 c3a06000 e3500081 c0866000 c2466080 da000002 e356000f c3c55020 c3a06000 e1cf55b2 ea00000f e1df54ba e350007f b2877080 b0477000 aa000002 e357000f c3c55040 c3a07000 e3500081 c0877000 c2477080 da000002 e357000f c3c55080 c3a07000 e1c350b0 e1cf60bc e1cf70ba e8bd00ff e12fff1e 00000000 00000000 00000000 023fe074 e3520003 94000130 fffb0000 023fe074 012fff11 e0000000 0000001c e92d0003 e3a00301 e5900130 e3a01402 e1c100b0 e8bd0003 e12fff1e 00000000 023fe074 e3520003
Nitro Hax:
C2000000 00000084 e92d00ff e59f006c e1df17b0 e59f2068 e1df36ba e3510000 01d040b0 03140004 03140008 03510000 03a01001 058f104c e3510001 1a00000d e3a04402 e0845803 e2833001 e1cf33b6 e0846803 e4957004 e1570000 05054004 e1550006 bafffffa e3530040 03a03000 058f3010 058f300e e8bd00ff e12fff1e 04000130 02400000 00000000 00000000 C2000000 000000E4 E92D00FF E3A05301 E5955130 E1DF1CB8 E2811001 E1CF1CB0 E3A0240A E3A03402 E3A04002 E5DF60B4 E5DF70B2 E3110002 12844002 E3110001 15D20000 07D21004 0A000021 E3110002 1A00000F E350007F B2866080 B0466000 AA000002 E356000F C3C55010 C3A06000 E3500081 C0866000 C2466080 DA000002 E356000F C3C55020 C3A06000 E1CF55B2 EA00000F E1DF54BA E350007F B2877080 B0477000 AA000002 E357000F C3C55040 C3A07000 E3500081 C0877000 C2477080 DA000002 E357000F C3C55080 C3A07000 E1C350B0 E1CF60BC E1CF70BA E8BD00FF E12FFF1E 00000000 00000000 00000000 94000130 FFFB0000 C2000000 0000001C E92D0003 E3A00301 E5900130 E3a01402 E1C100b0 E8Bd0003 E12FFF1E 00000000
Touchscreen code is a little beyond my abilities right now. Anyone interested in helping?
#146881 - Tockit - Mon Dec 10, 2007 7:50 pm
super monkey ball DS comes to mind.
as does morph ball mode in MP:H (but not biped mode, bleh..)
sounds fun, mang!
_________________
-01011101001010101010 (frank)
#149428 - LocalToast - Sat Jan 19, 2008 11:49 pm
Tockit wrote: |
super monkey ball DS comes to mind.
as does morph ball mode in MP:H (but not biped mode, bleh..)
sounds fun, mang! |
Monkey Ball and MPH alt would be amazing!
#150486 - sinkhead - Tue Feb 05, 2008 6:15 pm
I can't get it to work with my CycloDS Evolution, I just get white screens when loading the ROM (tried MKDS and Bomberman) :(
#150488 - Sweater Fish Deluxe - Tue Feb 05, 2008 6:32 pm
sinkhead wrote: |
I can't get it to work with my CycloDS Evolution, I just get white screens when loading the ROM (tried MKDS and Bomberman) :( |
That's too bad.
KeithE wrote: |
Don't ask if it works on roms - I only have legitimate game cartridges. |
...word is bondage...
#150489 - sinkhead - Tue Feb 05, 2008 6:48 pm
Sweater Fish Deluxe wrote: |
sinkhead wrote: | I can't get it to work with my CycloDS Evolution, I just get white screens when loading the ROM (tried MKDS and Bomberman) :( |
That's too bad.
KeithE wrote: | Don't ask if it works on roms - I only have legitimate game cartridges. |
...word is bondage... |
I wasn't asking, I was informing other users it doesn't currently work. Me asking would be completely different.
#150512 - Sweater Fish Deluxe - Wed Feb 06, 2008 12:14 am
sinkhead wrote: |
I wasn't asking, I was informing other users it doesn't currently work. Me asking would be completely different. |
I wasn't assuming that you *WERE* asking, I was saying that it's too bad, but that KeithE never claimed that it did work. Me assuming that you were asking would be completely different.
...word is bondage...
#151077 - KeithE - Mon Feb 18, 2008 2:13 pm
I finally got around to making a video of Mario Kart DS controlled by the DS Motion Pak using an Action Replay. Here it is:
http://www.youtube.com/watch?v=O2ha78roYv4
#151083 - ps2aich - Mon Feb 18, 2008 5:16 pm
Cool, that's a real advantage of the Slot-2 motion pack over the Slot-1 motion card ....
#154117 - donachy - Fri Apr 11, 2008 1:20 pm
Hi guys!
Anyone knows if the Motion Card (Slot-2) works with R4???
#167515 - MystBoy - Mon Mar 16, 2009 7:25 pm
hey can you also get this worke with teh motion card (slot 1) or the Neoflash MK-R6 Gold???
#167581 - KeithE - Thu Mar 19, 2009 2:41 am
Where would the game card go if slot 1 has a motion card or R6 Gold?
#167846 - MystBoy - Tue Mar 31, 2009 7:22 am
the R6 Gold is a normal flashcard with ?SD and a motioncard the same time