I2C Bus: Difference between revisions

Nocash (talk | contribs)
 
(8 intermediate revisions by 2 users not shown)
Line 23: Line 23:
|-
|-
| 1
| 1
| Start/device select bit?
| Start/device select bit? [guess from old [[I2C]] page: More data coming?]
|-
|-
| 2
| 2
Line 38: Line 38:
|-
|-
| 6
| 6
| Unknown, always set when writing to CNT?
| Unknown, always set when writing to CNT? [guess from old [[I2C]] page: Interrupt Enable?]
|-
|-
| 7
| 7
Line 65: Line 65:
| 0x00
| 0x00
| No
| No
| Camera0?
| Camera0(internal?)
|-
|-
| 0x78
| 0x78
| 0x00
| 0x00
| No
| No
| Camera1?
| Camera1(external?)
|-
|-
| 0xA0
| 0xA0
| 0x00
| 0x00
| No
| No
| ?
| Camera0 config
|-
|-
| 0xE0
| 0xE0
| 0x00
| 0x00
| No
| No
| ?
| Camera1 config
|-
|-
| 0x4A
| 0x4A
Line 95: Line 95:
| 0x00
| 0x00
| Yes
| Yes
| ?
|}
=== Cameras ===
{| class="wikitable" border="1"
!  REGISTER
!  WIDTH
!  DESCRIPTION
|-
|  0x18
|  2
|  Unknown
|-
|  0x98c
|  2
|  Unknown
|-
|  0x990
|  2
|  Unknown
|}
=== Cameras Config ===
{| class="wikitable" border="1"
!  REGISTER
!  WIDTH
!  DESCRIPTION
|-
|  0xc1
|  8
|  Data from the below camconf_c1 structure is written here.
|}
==== camconf_c1 ====
Data is retrieved from this struct via this byte-offset: (conf_type*0x30) + (conf_index*8). Max number of conf types and conf indexes are 2 and 6.
{| class="wikitable" border="1"
!  CONF TYPE
!  CONF INDEX
!  DATA
!  DESCRIPTION
|-
| 0
| 0
| 38 30 1F 1F 2C 30 1F 1F
| ?
|-
| 0
| 1
| 38 30 1F 1F 38 30 1F 1F
| ?
|-
| 0
| 2
| 2C 30 1F 1F 2C 30 1F 1F
| ?
|-
| 0
| 3
| 2C 30 1F 1F 2C 30 1F 1F
| ?
|-
| 0
| 4
| 2C 30 1F 1F 2C 30 1F 1F
| ?
|-
| 0
| 5
| 2C 30 1F 1F 2C 30 1F 1F
| ?
|-
| 1
| 0
| 30 28 18 18 34 28 08 18
| ?
|-
| 1
| 1
| 30 28 18 18 30 28 08 18
| ?
|-
| 1
| 2
| 28 28 18 18 28 28 08 18
| ?
|-
| 1
| 3
| 28 28 18 18 28 28 08 18
| ?
|-
| 1
| 4
| 28 28 18 18 28 28 08 18
| ?
|-
| 1
| 5
| 28 28 18 18 28 28 08 18
| ?
| ?
|}
|}
Line 124: Line 225:
|  0x20
|  0x20
|  1
|  1
|  Battery flags. When zero the battery is at critical level, arm7 does a shutdown. Bit7 is set when the battery is charging. When the battery icon is full bars, this is 0x0F, and when the battery icon has one solid red bar left this is 0x03?
|  Battery flags. When zero the battery is at critical level, arm7 does a shutdown. Bit7 is set when the battery is charging. Battery levels in the low 4-bits: battery icon bars full 0xF, 3 bars 0xB, 2 bars 0x7, one solid red bar 0x3, and one blinking red bar 0x1. When plugging in or removing recharge cord, this value increases/decreases between the real battery level and 0xF, thus the battery level while bit7 is set is useless.
|-
|-
|  0x21
|  0x21
Line 136: Line 237:
| 0x40
| 0x40
| 1
| 1
| ?
| Volume level: 0x00 - 0x1F.
|-
|-
| 0x70
| 0x70
Line 152: Line 253:
|  1
|  1
|  Used for DSi [[Interrupts|IRQ6]] IF flags.
|  Used for DSi [[Interrupts|IRQ6]] IF flags.
|-
|  0x4
|  1
|  Unknown (bit0 toggled)
|}
|}