New pages
Jump to navigation
Jump to search
6 August 2026
- 07:2207:22, 6 August 2026 /dev/ppc app (hist | edit) [993 bytes] Spletz (talk | contribs) (Created page with "'''/dev/ppc_app''' is the CAFE-IOS device node, part of IOS-MCP, for the PowerPC application service. It is accessed and utilised by the Cafe OS Kernel. == List of Functions (IoctlAsync) == {| class="wikitable" ! Command !! Function !! Description !! Notes |- | 0xB0 || WaitPPCBoot || || Called by KiWaitForStartupEvent |- | 0xB1 || RegisterForIopPowerEvents || Pairs PPC kernel with pending ppc_app requests. || Called by KiRegisterForIopPowerEvents |- | 0xB2 || OnApp...")
- 05:3305:33, 6 August 2026 IOS-NIM-BOSS (hist | edit) [403 bytes] Spletz (talk | contribs) (Created page with "Nintendo's proprietary online services such as installation downloads and background online services (SpotPass). This uses statically-linked libcurl. In line with other Nintendo Network related IOS modules (i.e IOS-FPD), IOS-FPD is coded in C++ as opposed to C like the rest of the Kernel. == Devices == */dev/nim - Installation manager */dev/boss - Background Online Services (SpotPass)")
- 05:3005:30, 6 August 2026 IOS-FPD (hist | edit) [443 bytes] Spletz (talk | contribs) (Created page with "Friend presence daemon and account services, which use statically linked libcurl. Strangely, this module is not called something like "IOS-FPD-ACT" following the naming scheme of the "NIM-BOSS" module. In line with other Nintendo Network related IOS modules (i.e IOS-NIM-BOSS), IOS-FPD is coded in C++ as opposed to C like the rest of the Kernel. == Devices == */dev/fpd - Friend Presence Daemon */dev/act - Account library")
3 August 2026
- 04:1304:13, 3 August 2026 SCFM (hist | edit) [2,928 bytes] Techflash (talk | contribs) (Add really crappy SCFM page)
30 July 2026
- 05:1405:14, 30 July 2026 /dev/bsp/CCRH (hist | edit) [2,871 bytes] Spletz (talk | contribs) (Created page with "'''/bsp/CCRH''' is the BSP entity responsible for the hardware reset line of the DRH. = Attributes = === Reset === This attribute drives the DRH hardware reset via GPIO (CCRIO3, with CCRIO12 as a secondary control line on some code paths). Behavior is gated by the board revision and movPassiveReset in the BSP EEPROM config, and differs depending on the board type: *On EV boards, the reset is always driven through this attribute. *On CT boards, it only fires if bo...")
27 July 2026
- 08:4308:43, 27 July 2026 Nn vctl.rpl (hist | edit) [2,823 bytes] Spletz (talk | contribs) (Created page with "'''nn_vctl.rpl''' is the Cafe OS library for '''v'''ersion '''c'''on'''t'''ro'''l'''. == Functions == Function names listed below are under the namespace <code>nn::vctl</code>. {| class="wikitable" ! Name !! Prototype !! Description |- | Initialize || <code>nn::vctl::Initialize(void)</code> || Initialises the version control library. |- | Finalize || <code>nn::vctl::Finalize(void)</code> || Cleans up and closes the version control library. |- | GetTentativeUpdateInfo...")
24 July 2026
- 15:1415:14, 24 July 2026 Input Manager (hist | edit) [7,382 bytes] Spletz (talk | contribs) (Created page with "The Input Manager (IM) handles the Energy Saver functionality of the Wii U, including Screen Burn-In Reduction and Auto Power-Down (APD). The Input Manager is responsible for monitoring all user input devices and discerning the lack of user activity. If no activity is detected for the specified timeout, the Input Manager triggers video screen burn-in reduction (auto-dimming) or a shutdown request. Its IOSU device node for the RM is '''/dev/im'''. Its PPC shim is in cor...")
20 July 2026
- 08:2808:28, 20 July 2026 IOS-TEST (hist | edit) [449 bytes] Spletz (talk | contribs) (Created page with "IOS-TEST is a module in IOSU dedicated to debugging and development. == Devices == */dev/testproc1 - Test process */dev/testproc2 - Test process */dev/iopsh - IOP shell */dev/cbl - Cafe OS block log */debug/prof - Profiler (development mode only) */test/ppcprotviol - PPC protocol violation (test mode only) */test/sp - System profiler (test mode only) */test/test_rm - Resource manager test (test mode only) == IOSThreadProfileComma...")
- 05:1605:16, 20 July 2026 Cafe OS/Kernel (hist | edit) [19,411 bytes] Spletz (talk | contribs) (Created page with "The kernel runs in supervisor mode on the PowerPC, and performs the basic tasks of a microkernel. It is responsible for process isolation, memory management, and interrupt dispatching, as well as communication with IOSU. Cafe OS applications run as user mode processes, with separate address spaces and W^X memory protection. == Syscalls == Cafe OS syscalls are issued by doing the following: li r0, 0x0100 # load syscall value->r0 sc # syscall instruction...")
19 July 2026
- 05:0305:03, 19 July 2026 PCFS (hist | edit) [647 bytes] Spletz (talk | contribs) (Created page with "PCFS ([https://en.wikipedia.org/wiki/Personal_computer PC] Filesystem) refers to the Wii U's ability to derive its internal filesystem from a host computer rather than the console NAND. It is intended for development purposes and ease of file transferring and filesystem access for the developer. As such, it is only available on development hardware and fully available when the console is in DEV mode (otherwise a PCFS device will not be initialised). If the console is not...")
- 04:4304:43, 19 July 2026 ATFS (hist | edit) [190 bytes] Spletz (talk | contribs) (Created page with "ATFS (formerly DVDFS in SDK versions prior to 2.03) refers to the file system format for Cafe optical discs. It provides section-level encryption and support for up to 25GB of disc capacity.")
18 July 2026
- 11:4311:43, 18 July 2026 IOS/Kernel (hist | edit) [11,303 bytes] Spletz (talk | contribs) (Created page with "= Kernel = After being parsed by it's own ELF loader, the IOSU's kernel is launched from the Wii U's SRAM (0xFFFF0000). IOSU's kernel follows a standard ARM microkernel architecture: // IOSU kernel entry-point // ARM vector table (firmware 5.5.1) start() // 0xFFFF0000 { // Reset handler pc <- sub_FFFF0060 // Undefined handler pc <- loc_812DD6C // SWI handler pc <- sub_812DD20 // Prefetch handler pc <- sub_812E74C // Abort handl...")
- 11:4211:42, 18 July 2026 IOS/Loader (hist | edit) [1,012 bytes] Spletz (talk | contribs) (Created page with "= Loader = Each time the IOSU starts, the ELF loader is the first portion of code that runs in order to make preparations for the actual IOSU binary. During the console's initial boot, boot1 is responsible for fetching the "fw.img" file from NAND, verifying, decrypting and launching it (cold boot). However, IOS-MCP also has to do this when handling a system restart (warm boot) for which it follows a similar path but, ultimately, uses the LaunchOS system...")
- 11:3511:35, 18 July 2026 IOS/Resource utilisation (hist | edit) [1,371 bytes] Spletz (talk | contribs) (Created page with "== IOSResourceAggregateUtilization == {| class="wikitable" border="1" |- ! Offset || Size || Description |- | 0x0 || 0x4 || ActiveResources |- | 0x4 || 0x4 || ActiveResourcesWaterline |- | 0x8 || 0x4 || MaxResources |- | 0xC || 0x4 || TotalActiveTxns |- | 0x10 || 0x4 || TotalActiveTxnsWaterline |- | 0x14 || 0x4 || TotalTxnAllocFailures |- | 0x18 || 0x4 || MaxTotalActiveTxns |} == IOSResourcePerProcessUtilization == {| class="wikitable" border="1" |- ! Offset || Size ||...")
- 11:3211:32, 18 July 2026 IOS/IOSHeap (hist | edit) [0 bytes] Spletz (talk | contribs) (Created page with "== IOSHeap == The IOSU is able to create and handle up to 0x30 heaps. Each heap has a corresponding descriptor structure stored in the kernel's BSS section (0x08150008 in firmware 5.5.1). {| class="wikitable" border="1" |- ! Offset || Size || Description |- | 0x0 || 0x4 || Base |- | 0x4 || 0x4 || Owner |- | 0x8 || 0x4 || Size |- | 0xC || 0x4 || FreeList |- | 0x10 || 0x4 || AllocErrors |- | 0x14 || 0x4 || FreeErrors |- | 0x18 || 0x4 || ReAllocErrors |- | 0x...")
- 11:3011:30, 18 July 2026 IOS/Resource request (hist | edit) [5,135 bytes] Spletz (talk | contribs) (Created page with "== IOSMessage == This is a s32. == IOSMessageQueueId == This is an u32. == IOSMessageQueue == {| class="wikitable" border="1" |- ! Offset || Size || Description |- | 0x0 || 0x4 || EmptyQueue |- | 0x4 || 0x4 || FullQueue |- | 0x8 || 0x4 || Count |- | 0xC || 0x4 || Rptr |- | 0x10 || 0x4 || Size |- | 0x14 || 0x4 || Buffer |- | 0x18 || 0x4 || Id |- | 0x1C || 0x1 || Owner |- | 0x1D || 0x1 || HasEvent |- | 0x1E || 0x2 || |} ==...")
- 11:2711:27, 18 July 2026 IOS/IOSThread (hist | edit) [0 bytes] Spletz (talk | contribs) (Created page with "== IOSThread == The IOSU is able to create and handle up to 0xB4 threads. Each thread has a corresponding internal structure stored in kernel SRAM (0xFFFF4D78 in firmware 5.5.1). {| class="wikitable" border="1" |- ! Offset || Size || Description |- | 0x0 || 0x40 || Context |- | 0x40 || 0x4 || Pc |- | 0x44 || 0x4 || Next |- | 0x48 || 0x4 || InitPriority |- | 0x4C || 0x4 || Priority |- | 0x50 || 0x4 || State |- | 0x54 || 0x4 || Pi...")
- 11:2711:27, 18 July 2026 IOS/IOSTime (hist | edit) [0 bytes] Spletz (talk | contribs) (Created page with "== IOSTimeStruct == {| class="wikitable" border="1" |- ! Offset || Size || Description |- | 0x0 || 0x4 || Microsecond |- | 0x4 || 0x4 || Second |} == IOSTimeCalendar == {| class="wikitable" border="1" |- ! Offset || Size || Description |- | 0x0 || 0x4 || Year |- | 0x4 || 0x4 || Month |- | 0x8 || 0x4 || Day |- | 0xC || 0x4 || Hour |- | 0x10 || 0x4 || Minute |- | 0x14 || 0x4 || Second |- | 0x18 || 0x4 || Microsecond |}")
15 July 2026
- 11:5811:58, 15 July 2026 IOS/Syscalls (hist | edit) [20,845 bytes] Spletz (talk | contribs) (Created page with "== Syscalls (via undefined instructions) == Similarly to the Wii's IOS, the IOSU uses a syscall table that is stored towards the end of the kernel area inside the main ARM binary (fw.img). The second vector is the invalid instruction handler, which is used to implement syscalls: fw:FFFF0000 LDR PC, =_reset fw:FFFF0004 LDR PC, =starbuck_syscall_handler The Starbuck syscall handler: starbuck_syscall_handler STMFA SP,...")
13 July 2026
- 09:5909:59, 13 July 2026 /dev/bsp/CORTADO (hist | edit) [4,534 bytes] Spletz (talk | contribs) (Created page with "'''/bsp/CORTADO''' is the BSP entity that handles methods related to the [https://wiki.raregamingdump.ca/index.php/Cortado Cortado] platform. It is only available on board types <code>BSP_HARDWARE_VERSION_HOLLYWOOD_CORTADO</code> and <code>BSP_HARDWARE_VERSION_HOLLYWOOD_CORTADO_ESPRESSO</code>. Not much is really known about Cortado, its BSP entity or NESCAFE. == Attributes == === FPGAType === '''Options''': <code>BSP_AO_QUERY_DATA_INDIRECT</code> '''Permissions''': <...")
12 July 2026
- 10:0210:02, 12 July 2026 Nio prof.rpl (hist | edit) [1,644 bytes] Spletz (talk | contribs) (Created page with "nio_prof.rpl is the shim/wrapper library for PPC communication with the /debug/prof IOSU device node on the IOP, i.e the ''Wii U's IO profiler API''. == Functions == {| class="wikitable" ! Name !! Prototype !! Description |- | IO_ProfilerLibInit || <code>IO_PROF_RVAL IO_ProfilerLibInit(void)</code> || Initializes the IO profiler library. |- | IO_ProfilerLibFinish || <code>IO_PROF_RVAL IO_ProfilerLibFinish(void)</code> || Cleanup and close the IO profiler li...")
- 09:5109:51, 12 July 2026 /debug/prof (hist | edit) [1,779 bytes] Spletz (talk | contribs) (Created page with "''/debug/prof'' is the IOSU device node for the Wii U's IO profiler API. It provides statistics about the percentage of IO bandwidth consumed by each of the determined IO channels. To measure an operation, a profiling checkpoint should be started just before it begins and end the checkpoint when it finishes. The profiler reports the I/O activity that occurred during that interval. The application can then either stop profiling or start another checkpoint to measure the n...")
14 June 2026
- 06:0306:03, 14 June 2026 Cafe SDK 1.7 (hist | edit) [174 bytes] Spletz (talk | contribs) (TODO)