#3620 - Armitage - Sun Mar 02, 2003 12:33 am
Does anyone have any information about the GBA tilt sensor?
Like, specifically how to access it and how many dimensions it
operates in?
Any information much appreciated.
Armitage.
#3622 - Probably Bob - Sun Mar 02, 2003 2:02 am
There is no tilt sensor within the GBA.
However, there are games companies who plan to put them in GBA cartridges for use with GameCube games, via the GBA <--> GC connector.
#41205 - cdubreuilfr - Tue Apr 26, 2005 12:06 pm
Now that "Yoshi Universal Gravitation" and "Waroware twisted" are out (they do use a tilt sensor), does anybody have information on how accessing thee data (register adresses in the game pack and their meaning).
#41301 - FluBBa - Wed Apr 27, 2005 8:47 am
Haven't seen anything yet, but it can't be harder to RE than the Gameboy Player, can it?
_________________
I probably suck, my not is a programmer.
#41516 - sgeos - Fri Apr 29, 2005 10:54 am
FluBBa wrote: |
Haven't seen anything yet, but it can't be harder to RE than the Gameboy Player, can it? |
Maybe not, but there is probably less interest.
-Brendan
#41528 - FluBBa - Fri Apr 29, 2005 2:51 pm
sgeos wrote: |
Maybe not, but there is probably less interest.
|
Well, there doesn't seem to be a huge interest in the GBP either so I seem to be doing these things mostly for my self anyway... and that's fine with me =)
_________________
I probably suck, my not is a programmer.
#41540 - tepples - Fri Apr 29, 2005 3:15 pm
FluBBa wrote: |
Well, there doesn't seem to be a huge interest in the GBP either |
Probably because it's not as capable as the SGB.
_________________
-- Where is he?
-- Who?
-- You know, the human.
-- I think he moved to Tilwick.
#41836 - FluBBa - Mon May 02, 2005 9:20 am
Yoshis UG does some weird accesses to 0x0E008000, 0x0E008100, 0x0E008200, 0x0E008300, 0x0E008400, 0x0E008500 (all byte accesses).
Can't get it to work correctly by cart swapping though...
First it writes 0x55 to 0x0E008000 then 0xAA to 0x0E008100.
Reads 0x0E008300 up to 0xAF0 times or the highest bit is set, then ORs the low nybble with 0x0E008200.
Reads the low nybble from 0x0E008500 and ORs with 0x0E008400.
This is done once a frame, depending on if I write the registers before or after I read them I get:
0xAFF or 0xFFF only...
_________________
I probably suck, my not is a programmer.
#63331 - FluBBa - Mon Dec 12, 2005 1:24 am
Nintendo GBA tiltsensor doc:
----------------------------
The tiltsensor is found in 1 game,
Yoshi's Universal Gravitation / Yoshi Topsy Turvy.
This info is only confirmed for Yoshi's Universal Gravitation.
Its registers are at the top "half" of the SRAM memory range,
all of them are byte accessed.
0x0E008000 (W) Write 0x55 to start sampling?
0x0E008100 (W) Write 0xAA to start sampling?
0x0E008200 (R) Low 8 bits of X axis.
0x0E008300 (R) High 4 bits of X axis plus ready (bit 7)
0x0E008400 (R) Low 8 bits of Y axis.
0x0E008500 (R) High 4 bits of Y axis.
You must set SRAM wait control to 8 clocks to access it correctly.
You must also set the cartridge PHI terminal to 4MHz to make it work.
-----------------------------------------------------------------------
Description:
------------
First set SRAM wait control to 8 clocks and phi terminal output to 4MHz.
REG_WAITCNT = 0x0803;
or if you want faster rom speed, something like this:
REG_WAITCNT = 0x4817;
Somewhere in the VBlank routine, do this:
Read high x component and ready bit from 0x0E008300.
Make sure the ready bit is set, otherwise spinnwait a couple of hundered
times checking the value.
Mask out the lower 4 bits.
Read low x component from 0x0E008200.
Merge with the 4 bits from 0x0E008300.
X is ready.
Read high y component from 0x0E008500.
Mask out lower 4 bits.
Read low y component from 0x0E008400
Merge with the 4 bits from 0x0E008500.
Y is ready.
Write 0x55 to 0x0E008000
Write 0xAA to 0x0E008100
-----------------------------------------------------------------------
On my cartridge I got the following readings:
Readings for X between 0x2AF to 0x477, center at 0x392.
Readings for Y between 0x2C3 to 0x480, center at 0x3A0.
/FluBBa
_________________
I probably suck, my not is a programmer.
Last edited by FluBBa on Wed Sep 12, 2007 9:53 pm; edited 1 time in total
#65015 - Quirky - Thu Dec 29, 2005 2:47 pm
Ha ha! That works as well.
Interestingly, Yoshi recognises not only rotations left-right "around" the screen, but also tipping the GBA back and forth. The latter is a bit useless though, since you can only see the screen at limited angles.
Wario Ware seems to use another method, sadly and doesn't do much with this approach.
#65282 - FluBBa - Sun Jan 01, 2006 9:49 pm
And Wario Ware Twisted is not released in Europe yet either...
_________________
I probably suck, my not is a programmer.
#66477 - Fenderocker - Wed Jan 11, 2006 2:47 am
There was a tilt sensor in the game boy color game "kirbys tilt and tumble"....
*edit* Just got it out to play it and the tilt sensor sucks......*edit*
#70626 - ZueriHB - Tue Feb 07, 2006 9:20 pm
There is also the Japan only Koro Koro Puzzle Happy Panechu which has a Tilt-Sensor.
What kind of tilt-sensor does Yoshi use? Happy Panechu is a 4-way tilt-sensor , and Wario Twisted has a gyration in it, for meassuring twisting.
_________________
We got the Dinosaurs. You're next!
#73277 - HyperHacker - Fri Feb 24, 2006 9:49 am
IIRC, writing 0x55 and 0xAA to specific addresses is a common unlock sequence for flash chips (as 0x55 = 01010101b and 0xAA = 10101010b). Are you sure those are required?
#112103 - knight0fdragon - Wed Dec 13, 2006 7:00 am
sorry to bring up a dead topic, but has anyone been able to actually get this to work???
I tried using this for the DS but I am not getting any good results
I set the WAIT_CR to 0x42
my X stays at 0xFFF
and my Y bounces from 0 and 32 and that is it
if anyone has any demos or anything usefulthat they can point me too I'd appreciate it
_________________
http://www.myspace.com/knight0fdragonds
MK DS FC: Dragon 330772 075464
AC WW FC: Anthony SamsClub 1933-3433-9458
MPFH: Dragon 0215 4231 1206
#112214 - Vengyr - Thu Dec 14, 2006 12:29 pm
Try checking these links out. Seeing this I would say the DS itself doesnt have a motion sensor. and that would be logical. Seeing nintendo was talking about a revolution for controllers with the Wii. It was their first introduction of standard motion capture
http://www.electronista.com/articles/06/12/08/nintendo.ds.tilt.sensor/
http://www.gizmodo.com/gadgets/portable-media/nintendo-ds-motion-sensing-card-220570.php
#112237 - knight0fdragon - Thu Dec 14, 2006 7:27 pm
the game yoshi topsy turvy has the tilt sensor in it, not the DS, the code provided by flubba was to be used with this game, but i cant get the games hardware to work on a ds, I was wondering if there was any demos available for the GBA so that I may test and compare and hopefully get a solution for the DS
_________________
http://www.myspace.com/knight0fdragonds
MK DS FC: Dragon 330772 075464
AC WW FC: Anthony SamsClub 1933-3433-9458
MPFH: Dragon 0215 4231 1206
#113499 - FluBBa - Thu Dec 28, 2006 8:54 am
Are you accesing the registers at 0x0A008zzz on the DS?
_________________
I probably suck, my not is a programmer.
#113517 - sgeos - Thu Dec 28, 2006 1:47 pm
GBAccelerometer Forum Thread - Home Page
DS Motion Card Forum Thread - Home Page
-Brendan
#113534 - knight0fdragon - Thu Dec 28, 2006 4:54 pm
yes I am accessing those areas, that is where SRAM is defined in libnds
and I have the WAIT_CR |=0x0021 to set SRAM to 8 clocks and PHI terminal output to 4 MHz.
to sgeos
GBAccelorator does not work on DS
DS Motion Card and DSerial are slot 1 tilt sensors
Yoshi is a slot 2 tilt sensor
_________________
http://www.myspace.com/knight0fdragonds
MK DS FC: Dragon 330772 075464
AC WW FC: Anthony SamsClub 1933-3433-9458
MPFH: Dragon 0215 4231 1206
#113561 - FluBBa - Thu Dec 28, 2006 11:09 pm
Well, the SRAM needed 8 GBA clocks to function correctly, I guess the nearest would be 18 NDS clocks, WAIT_CR |= 0x0023.
you should probably make sure bit 6 is not set to be sure the output is set to 4MHz.
Oh and if you get it to work on the DS put it up on the DS wiki at http://www.bottledlight.com/ds/ =)
_________________
I probably suck, my not is a programmer.
#113604 - knight0fdragon - Fri Dec 29, 2006 3:41 am
yes that does it, now it works hahaha sweet I will post on that site
_________________
http://www.myspace.com/knight0fdragonds
MK DS FC: Dragon 330772 075464
AC WW FC: Anthony SamsClub 1933-3433-9458
MPFH: Dragon 0215 4231 1206