Difference between revisions of "MX23L4005"

From WiiBrew
Jump to navigation Jump to search
(Per everything I know about hardware, time isn't stored in the NAND because the NAND would be written to a little too much, it would be the SRAM because it's designed to be written to many times.)
 
(3 intermediate revisions by 2 users not shown)
Line 3: Line 3:
 
[[File:Mx23l4005_10x.jpg|thumb|MX23L4005|Dieshot courtesy of Flylogic]]
 
[[File:Mx23l4005_10x.jpg|thumb|MX23L4005|Dieshot courtesy of Flylogic]]
  
= Font data =
+
== Font data ==
The only data contained in ROM on the Wii is two fontsets (one Latin, on Japanese). They are compressed using a proprietary format (Yay0), and generally only used in GameCube mode.
+
The only data contained in ROM on the Wii is two fontsets (one Latin, one Japanese). They are compressed using a proprietary format (Yay0), and generally only used in GameCube mode.
  
= RTC =
+
== RTC ==
Real-Time Clock (RTC) is 32-bit value, counting time intervals in seconds. To get the real time (seconds since January 1st, 2000 12am) add the counter bias saved in SRAM (or is it stored in NAND? {{check}})
+
Real-Time Clock (RTC) is 32-bit value, counting time intervals in seconds. To get the real time (seconds since January 1st, 2000 12am) add the counter bias saved in SRAM.
  
= SRAM =
+
== SRAM ==
 
The SRAM stores some miscellaneous settings that are only used in GameCube compatibility mode.
 
The SRAM stores some miscellaneous settings that are only used in GameCube compatibility mode.
  
Line 18: Line 18:
 
Observed pin behavior:
 
Observed pin behavior:
 
  1 connected to power button - active high (measures +3.3v while power button is pressed)
 
  1 connected to power button - active high (measures +3.3v while power button is pressed)
  2 wii power state (+3.3v when power is on or in standby, 0v otherwise) TP113 comes on slightly after pin 3
+
  2 wii power state (+3.3v when power is on or in standby, 0v otherwise) TP113 comes on slightly after pin 3 --power on?
 
  3 wii power state (+3.3v when power is on or in standby, 0v otherwise) (nc on PCB!)
 
  3 wii power state (+3.3v when power is on or in standby, 0v otherwise) (nc on PCB!)
 
  4 Gnd
 
  4 Gnd
 
  5 0? TP46 pulses occasionally to 1
 
  5 0? TP46 pulses occasionally to 1
  6 1? TP106
+
  6 1? TP106 green LED?
 
  7 0? TP45
 
  7 0? TP45
 
   
 
   
Line 43: Line 43:
 
  22 xtal
 
  22 xtal
 
  23 xtal
 
  23 xtal
  24 TP119 turns on shortly after poweron (connects to U10)
+
  24 TP119 turns on shortly after poweron (connects to U10) -- reset?
 
  25 TP117 +3.3v when wii has power (connects to U9)
 
  25 TP117 +3.3v when wii has power (connects to U9)
 
  26 TP116 0?
 
  26 TP116 0?
Line 49: Line 49:
 
  28 NC on PCB
 
  28 NC on PCB
  
 +
== DI ==
 +
 +
This chip appears to also have some connection with the disc drive, as it stores flags for when the eject button is pressed (0x01010101) and when a disc has been changed (0x02020202), which the System Menu depends upon for the disc channel to actually detect changed discs.  These flags are accessed over EXI, with reads using 0x21000800 and writes using 0xa1000800.  Implemented in Dolphin by [https://github.com/dolphin-emu/dolphin/commit/11bd132650b0f5af784677c022649f111c2091a5#diff-d544a71d3efe726bf8ed256a6b07bbc7 this commit].
  
 
[[Category:Hardware]]
 
[[Category:Hardware]]

Latest revision as of 19:29, 20 January 2020

Much as with the GameCube, the MX "RTC-SRAM-ROM" chip sits on the EXI bus at address 0-1. http://hitmen.c02.at/files/yagcd/yagcd/chap10.html#sec10.3

Dieshot courtesy of Flylogic

Font data

The only data contained in ROM on the Wii is two fontsets (one Latin, one Japanese). They are compressed using a proprietary format (Yay0), and generally only used in GameCube mode.

RTC

Real-Time Clock (RTC) is 32-bit value, counting time intervals in seconds. To get the real time (seconds since January 1st, 2000 12am) add the counter bias saved in SRAM.

SRAM

The SRAM stores some miscellaneous settings that are only used in GameCube compatibility mode.

The custom MX23L4005 chip used on the Nintendo Wii contains the GameCube font set, RTC, and power management functions. It is listed on WiiRe as "U8: MX "E062674-MG" "MX23L4005-24C1" "RTC-RVL A" "2S08802" (RTC, TSOP28 18x8mm)".

Die shot: http://www.bunniestudios.com/blog/?p=227

Observed pin behavior:

1 connected to power button - active high (measures +3.3v while power button is pressed)
2 wii power state (+3.3v when power is on or in standby, 0v otherwise) TP113 comes on slightly after pin 3 --power on?
3 wii power state (+3.3v when power is on or in standby, 0v otherwise) (nc on PCB!)
4 Gnd
5 0? TP46 pulses occasionally to 1
6 1? TP106 green LED?
7 0? TP45

8 0?  measuring this pin prevents the wii from shutting off when you hold the power button down ?!!?
9 nc on PCB
10 TP109 0?
11 TP43 0?
12 TP44 exi?
13 TP41 exi?
14 TP42 exi?

15 exi?
16 Gnd
17 3.3v when wii has power applied
18 3.3v when wii has power applied
19 TP108 measuring this causes wii to power on immediately
20 TP231 0? 
21 TP110 3.3v when wii has power applied, goes low briefly when powering off

22 xtal
23 xtal
24 TP119 turns on shortly after poweron (connects to U10) -- reset?
25 TP117 +3.3v when wii has power (connects to U9)
26 TP116 0?
27 +3.3v when wii has power
28 NC on PCB

DI

This chip appears to also have some connection with the disc drive, as it stores flags for when the eject button is pressed (0x01010101) and when a disc has been changed (0x02020202), which the System Menu depends upon for the disc channel to actually detect changed discs. These flags are accessed over EXI, with reads using 0x21000800 and writes using 0xa1000800. Implemented in Dolphin by this commit.