Changes

2,130 bytes added ,  02:14, 9 November 2020
Clean up some of the non-descriptive and/or wrong variable names
Line 57: Line 57:  
|-
 
|-
 
| 1
 
| 1
| LCD flicker (always successful)
+
| LCD "flicker"/contrast (always successful)
 
|-
 
|-
 
| 2
 
| 2
Line 84: Line 84:  
|-
 
|-
 
| A
 
| A
| Power saving mode (ABL)
+
| Adaptive BackLight (ABL)
 
|-
 
|-
 
| B
 
| B
Line 99: Line 99:  
|-
 
|-
 
| F
 
| F
| Power saving mode (ABL) in legacy (DSi/GBA) mode
+
| Adaptive BackLight (ABL) in legacy (DSi/GBA) mode
 
|}
 
|}
   Line 122: Line 122:  
| 2*
 
| 2*
 
| 00050000
 
| 00050000
| [[#Screen_flicker|Screen flicker]]
+
| [[#Screen_flicker|Display panel contrast]]
 
|-
 
|-
 
| 0x24
 
| 0x24
Line 167: Line 167:  
| 0x20
 
| 0x20
 
| ???
 
| ???
| [[#ABL|Power saving mode]]
+
| [[#ABL|Adaptive BackLight / Power saving mode]]
 
|-
 
|-
 
| 0x470
 
| 0x470
Line 228: Line 228:     
==Touch==
 
==Touch==
 +
Used for mapping touch ADC values to display pixel co-ordinates.
 +
 +
<code>
 +
[4096, 4096] --> [320, 240]
 +
 +
[RawX, RawY] --> [PointX, PointY]
 +
</code>
 +
 +
Usually [PointX0, PointY0] is placed around 25% from the top-left corner, and the same for [PointX1, PointY1] except 25% from the bottom-right corner.
 +
This offsetting is needed because the touch film starts to distort outside of that rectangle, which would skew the touch results near the center of the screen.
 +
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 258: Line 269:     
==Circle pad==
 
==Circle pad==
 +
 +
Contains the centering position of the circle pad. For other circle pad settings, see [[#Circle_pad_extra|circle pad extra]].
 +
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
 +
!  Declaration
 
!  Description
 
!  Description
 
|-
 
|-
 
| 0x00
 
| 0x00
 
| s16 CenterX
 
| s16 CenterX
 +
|rowspan="2"| Raw analog values corresponding to zero input position
 
|-
 
|-
 
| 0x02
 
| 0x02
Line 270: Line 286:     
==Screen flicker==
 
==Screen flicker==
 +
 +
These values are written to MCU register 0x03 and 0x04 respectively. They both set the display contrast voltage.
 +
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
 +
!  Declaration
 
!  Description
 
!  Description
 
|-
 
|-
 
| 0
 
| 0
 
| u8 FlickerTop
 
| u8 FlickerTop
 +
|rowspan="2"| Contrast voltage
 
|-
 
|-
 
| 1
 
| 1
Line 281: Line 302:  
|-
 
|-
 
| 2*
 
| 2*
 +
|rowspan="2"| Inline checksum
 
| Checksum low byte, NOT THIS[0]
 
| Checksum low byte, NOT THIS[0]
 
|-
 
|-
Line 290: Line 312:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
 +
!  Declaration
 
!  Description
 
!  Description
 
|-
 
|-
 
| 0
 
| 0
| u8 CompensationValue (???)
+
| u8 CompensationValue
 +
| (???)
 
|-
 
|-
 
| 1*
 
| 1*
 +
|
 
| Checksum byte, NOT THIS[0]
 
| Checksum byte, NOT THIS[0]
 
|}
 
|}
Line 302: Line 327:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 368: Line 393:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 401: Line 426:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 425: Line 450:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
 +
!  Declaration
 
!  Description
 
!  Description
 
|-
 
|-
 
| 0x00
 
| 0x00
 
| u8 DriverGainHP
 
| u8 DriverGainHP
 +
| Headphone gain
 
|-
 
|-
 
| 0x01
 
| 0x01
 
| u8 DriverGainSP
 
| u8 DriverGainSP
 +
| Speaker gain
 
|-
 
|-
 
| 0x02
 
| 0x02
 
| u8 AnalogVolumeHP
 
| u8 AnalogVolumeHP
 +
|
 
|-
 
|-
 
| 0x03
 
| 0x03
 
| u8 AnalogVolumeSP
 
| u8 AnalogVolumeSP
 +
|
 
|-
 
|-
 
| 0x04
 
| 0x04
 
| s8 ShutterVolume[2]
 
| s8 ShutterVolume[2]
 +
|
 
|-
 
|-
 
| 0x06
 
| 0x06
 
| u8 MicrophoneBias
 
| u8 MicrophoneBias
 +
| Capacitive microphone bias voltage
 
|-
 
|-
 
| 0x07
 
| 0x07
| u8 QuickCharge (???)
+
| u8 QuickCharge
 +
| (???)
 
|-
 
|-
 
| 0x08
 
| 0x08
| u8 PGA_GAIN (microphone gain)
+
| u8 PGA_GAIN
 +
| ??? (microphone gain)
 
|-
 
|-
 
| 0x09
 
| 0x09
Line 456: Line 490:  
| 0x0C
 
| 0x0C
 
| s16 FilterHP32[3*5]
 
| s16 FilterHP32[3*5]
 +
| Headphone filter for 32728.49Hz sampling rate
 
|-
 
|-
 
| 0x2A
 
| 0x2A
 
| s16 FilterHP47[3*5]
 
| s16 FilterHP47[3*5]
 +
| Headphone filter for 47605Hz sampling rate
 
|-
 
|-
 
| 0x48
 
| 0x48
 
| s16 FilterSP32[3*5]
 
| s16 FilterSP32[3*5]
 +
| Speaker filter for 32728.49Hz sampling rate
 
|-
 
|-
 
| 0x66
 
| 0x66
 
| s16 FilterSP47[3*5]
 
| s16 FilterSP47[3*5]
 +
| Speaker filter for 47605Hz sampling rate
 
|-
 
|-
 
| 0x84
 
| 0x84
 
| s16 FilterMic32[(1+2)+((1+4)*5)]
 
| s16 FilterMic32[(1+2)+((1+4)*5)]
 +
| Microphone filter for 32728.49Hz sampling rate
 
|-
 
|-
 
| 0xBC
 
| 0xBC
 
| s16 FilterMic47[(1+2)+((1+4)*5)]
 
| s16 FilterMic47[(1+2)+((1+4)*5)]
 +
| Microphone filter for 47605Hz sampling rate
 
|-
 
|-
 
| 0xF4
 
| 0xF4
 
| s16 FilterFree[(1+2)+((1+4)*5)]
 
| s16 FilterFree[(1+2)+((1+4)*5)]
 +
| Unknown
 
|-
 
|-
 
| 0x12C
 
| 0x12C
Line 495: Line 536:  
| 0x132
 
| 0x132
 
| u8 YM_Driver
 
| u8 YM_Driver
 +
| ??? (circle-pad or touch panel related?)
 
|-
 
|-
 
| 0x133
 
| 0x133
Line 503: Line 545:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 515: Line 557:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 527: Line 569:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 578: Line 620:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 602: Line 644:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 630: Line 672:     
==MCU==
 
==MCU==
 +
 +
Somewhat misleading, these values are actually used for clamping the MCU's raw slider readings to comprehensible values.
 +
 +
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
 +
!  Declaration
 
!  Description
 
!  Description
 
|-
 
|-
 
| 0x00
 
| 0x00
| s16 SVR2_Min (???)
+
| s16 SVR2_Min
 +
| Raw 3D volume slider values <= this map to 3D slider value 0.0
 
|-
 
|-
 
| 0x02
 
| 0x02
| s16 SVR2_Max (???)
+
| s16 SVR2_Max
 +
| Raw 3D volume slider values >= this map to 3D slider value 1.0
 
|-
 
|-
 
| 0x04
 
| 0x04
 
| s16 VolumeSliderMin
 
| s16 VolumeSliderMin
 +
| Written to MCU reg 0x58. Volume slider values <= this map to volume value 0x00
 
|-
 
|-
 
| 0x06
 
| 0x06
 
| s16 VolumeSliderMax
 
| s16 VolumeSliderMax
 +
| Written to MCU reg 0x59. Volume slider values >= this map to volume value 0x3F
 
|}
 
|}
    
==ULCD delay==
 
==ULCD delay==
 +
 +
There is a delay between switching the parallax barrier, and adjusting the backlight.
 +
These delay values determine how many VBlank events to wait on before switching the backlight curves to the appropriate mode.
 +
 +
This is needed only to prevent epillepsy from analog jitter causing unwanted mode switches, and both values are usually always set to 1 or 2.
 +
 +
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 662: Line 720:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 671: Line 729:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 695: Line 753:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Line 710: Line 768:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
!  Offset
 
!  Offset
Description
+
Declaration
 
|-
 
|-
 
| 0x00
 
| 0x00
Trusted
225

edits