In memory of Ben “bushing” Byer, who passed away on Monday, February 8th, 2016.

Difference between revisions of "Hardware/MX23L4005"

From WiiBrew
Jump to navigation Jump to search
(merge pages)
m (Hallowizer moved page MX23L4005 to Hardware/MX23L4005: It’s hardware{{fact}})
 
(7 intermediate revisions by 5 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 =
+
== GameCube boot ROM ==
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 the GameCube boot 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. Setting the time via the [[System Menu]] affects only this bias; while it is possible to change the time counted by the RTC, the System Menu does not do this.
  
= 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)
+
  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
 
   
 
   
 
  8 0?  measuring this pin prevents the wii from shutting off when you hold the power button down ?!!?
 
  8 0?  measuring this pin prevents the wii from shutting off when you hold the power button down ?!!?
  9 nc?
+
  9 nc on PCB
 
  10 TP109 0?
 
  10 TP109 0?
 
  11 TP43 0?
 
  11 TP43 0?
Line 43: Line 43:
 
  22 xtal
 
  22 xtal
 
  23 xtal
 
  23 xtal
  24 TP119 turns on shortly after poweron
+
  24 TP119 turns on shortly after poweron (connects to U10) -- reset?
  25 TP117 +3.3v when wii has power
+
  25 TP117 +3.3v when wii has power (connects to U9)
 
  26 TP116 0?
 
  26 TP116 0?
 
  27 +3.3v when wii has power
 
  27 +3.3v when wii has power
  28 0?
+
  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:47, 5 January 2022

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

GameCube boot ROM

The only data contained in the GameCube boot 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. Setting the time via the System Menu affects only this bias; while it is possible to change the time counted by the RTC, the System Menu does not do this.

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.