/shared2/sys/SYSCONF

From WiiBrew
< /shared2‎ | sys
Jump to navigation Jump to search

The SYSCONF contains many Wii system settings.

The format of the file is fairly simple. Its size is 0x4000, and it contains a header that reads "SCv0", followed by the number of settings in the file (be u16), and then a list of offsets of each setting (be u16). Each setting (aka "Item") contains first a u8, specifying the type of the value, and the length of the name. The low-order 5 bits specify the length of the name, minus one. The high-order three bits specify the type of the value, as given by the table below. This is followed by a name, in ASCII, then a value. In the case of a BIGARRAY, the value begins with a be u16 specifying the length of the data, in bytes, which follows. In the case of a SMALLARRAY, the value begins with a u8 specifying the length.

Last 4 bytes of the file read "SCed".

Conventions for adding or removing settings to the file are currently unknown, but shouldn't be too hard to determine--although that's not necessarily a useful function.

Types

Name Value
BIGARRAY 1
SMALLARRAY 2
BYTE 3
SHORT 4
LONG 5
LONGLONG 6
BOOL 7

Some settings from the file:

BT Settings

Name Type Size Values Description
BT.DINF BIGARRAY 0x460 Bluetooth IDs List of Wiimotes "synced" to the system
BT.CDIF BIGARRAY ? ? {{{5}}}
BT.SENS LONG 4 0-4? Wiimote sensitivity setting
BT.BAR BYTE 1 0,1 Sensor bar position (0:bottom)
BT.SPKV BYTE 1 varies Wiimote speaker volume
BT.MOT BYTE 1 0,1 Wiimote motor on/off

IPL Settings

Name Type Size Values Description
IPL.IDL SMALLARRAY 2 0,1;0,1 Shutdown mode and idle LED mode
IPL.UPT BYTE 1 2,? Update Type
IPL.NIK SMALLARRAY 0x16 utf16be string, including trailing NUL Console Nickname
IPL.AR BYTE 1 0,1 Aspect ratio setting. 0: 4:3 1: 16:9
IPL.SSV BYTE 1 0,1 Screen Saver off/on (burn-in reduction)
IPL.LNG BYTE 1 0,1 System Language, see conf.c for some values
IPL.SADR BIGARRAY 0x1007 lots "Simple Address" Contains some region info
IPL.CB LONG 4 ?? Counter Bias -- difference between RTC and local time, in seconds
IPL.PC SMALLARRAY 0x50 string Parental Control password/setting
IPL.CD BOOL 1 bool Config Done flag -- has initial setup been performed?
IPL.CD2 BOOL 1 bool Config2 Done flag -- has network setup been performed?
IPL.EULA BOOL 1 bool EULA Done flag -- has EULA been acknowledged?
IPL.PGS BYTE 1 0,1 Use Progressive Scan
IPL.E60 BYTE 1 0,1 Use EuRGB60 (PAL6)
IPL.SND BYTE 1 0-2 Sound setting
IPL.DH BYTE 1 ? Display Offset (Horiz)
IPL.INC LONG 4 ? "Installed Channel App Count"
IPL.ARN ? ? ? ?
IPL.FRC LONG 4 ? "Free Channel App Count"

IPL.SADR values: Offset 0 is a Country Code and offset 1 seems to be a more localized region code.

Misc Settings

Name Type Size Values Description
DEV.BTM BYTE 1 0 Production, 1 Development Bootmode (used for NDEV)
DEV.VIM ? ? ? ?
DEV.CTC ? ? ? ?
DEV.DSM BYTE 1 0 Disabled, 1 Enabled, 2 Debug Drive saving (used for NDEV)
DVD.CNF ? ? ? ?
WWW.RST ? ? ? WWW Restriction
NET.CNF ? ? ? ?
NET.CFG ? ? ? ?
NET.CTPC LONG 4 ? Net Content Restrictions ("Content Parental Control"?)
NET.WCFG LONG 4 ? WC24 Configuration flags