4dsdev
Views: 614,208 Main | Rules/FAQ | Memberlist | Active users | Last posts | Calendar | Stats | Online users | Search 11-24-17 04:59 PM
Guest:

0 users reading Touch Screen? | 1 bot

Main - Reverse-engineering - Touch Screen? New reply


gudenau
Posted on 03-21-16 10:35 PM Link | #987
Anyone have info on how the 3DS gets its input from the touch screen?

profi200
Posted on 03-22-16 02:32 AM Link | #988
*cough* libnds *cough*

gudenau
Posted on 03-22-16 02:38 AM Link | #989
Posted by profi200
*cough* libnds *cough*

Is the hardware really the same though? I know it changed from DS to DSi and I don't want to use compatibility modes.

nocash
Posted on 03-27-16 04:55 PM (rev. 2 of 03-27-16 05:00 PM) Link | #990
libnds should contain code for both DS and DSi modes (that code will require "low level" access to SPI bus).
don't know if 3DS comes up with a different mode, just try the DSi code. If it works, then DSi and 3DS are apparently accessing it the same way.
calibration data could be read in DS fashion (from wifi flash), but there should be also a 3DS specific config file containing the same calibration values (probably also stored somewhere in RAM).

profi200
Posted on 03-27-16 05:03 PM Link | #991
xerpi is reverse engineering sysmodules right now to find out how to do it. Unfortunately the DSi touchscreen read code in libnds does not correctly work. I thought because it is backwards compatible that could work but it is different in 3DS mode.

xerpi
Posted on 03-27-16 05:17 PM Link | #992
Here's all the RE I've done to the GPIO module: http://pastie.org/private/b17vatmthopnxufqb5trw
I'm still trying to figure out how the GPIO registers work.

Dazzozo
Posted on 03-27-16 05:24 PM Link | #993
see http://3dbrew.org/w/index.php?title=Codec_Services&curid=2071&diff=16241&oldid=13745

These use SPI device 3, I think the legacy (TWL) device was 2.

gudenau
Posted on 03-28-16 02:55 PM Link | #994
Oh, so mr Linux was working on it. Cool.

Guess I'll just do other things...

xerpi
Posted on 03-31-16 07:20 AM Link | #995
Yesterday I finally got the touchscreen working on Linux after porting the RE'd code from the codec and SPI services. I'll post the pseudo-code to get the touchscreen initialized and read from it soon.

gudenau
Posted on 04-11-16 12:03 AM Link | #996
Posted by xerpi
Yesterday I finally got the touchscreen working on Linux after porting the RE'd code from the codec and SPI services. I'll post the pseudo-code to get the touchscreen initialized and read from it soon.

Nice, got ARM9 <-> ARM11 yet?


Main - Reverse-engineering - Touch Screen? New reply

Page rendered in 0.042 seconds. (2048KB of memory used)
MySQL - queries: 28, rows: 83/83, time: 0.028 seconds.
[powered by Acmlm] Acmlmboard 2.064 (2017-11-20)
© 2005-2008 Acmlm, Xkeeper, blackhole89 et al.