Threads
From CloudModding OoT Wiki
OSThreads
Id | Name | Purpose | NTSC 1.0 |
---|---|---|---|
0 | PImgr | Peripheral Interface Manager | 80008A60 |
0 | VImgr | VI Manager | 80009F20 |
1 | idle | idle loop | 80006850 |
2 | fault | Crash Debugger | 80121290 |
3 | main | ? | 80007220 |
4 | graph | Game Thread | 8011DBE8 |
5 | sched | Scheduler | 8011D318 |
7 | padmgr | Controller Pad | 8011D580 |
10 | audio | Audio | 80120D60 |
18 | dmamgr | Direct Memory Addressing manager | 80007DD8 |
19 | irqmgr | Interrupt Request Manager | 8011DA00 |
Stack Reference Struct
Offset | Type | Description |
---|---|---|
0x00 | ptr | struct next? |
0x04 | ptr | struct prev? |
0x08 | ptr | stack low address (stack end) |
0x0C | ptr | stack high address (stack start) |
0x10 | u32 | stack initial value |
0x14 | u32 | unknown |
0x18 | str ptr | points to string containing the name? of the thread |
0x1C | ? | ? |
Stack Struct Locations
Addr | Name | Purpose | Next Ptr | Prev Ptr | Start | End | Init Val | Unknown | Str Ptr | Unknown |
---|---|---|---|---|---|---|---|---|---|---|
80006830 | boot | 80006E00 | 00000000 | 80006E20 | 80007220 | 00000000 | FFFFFFFF | 80006550 | 00000000 | |
80006E00 | idle | 80007BD0 | 80006830 | 80006A00 | 80006E00 | 00000000 | 00000100 | 80006558 | 00000000 | |
80007BD0 | main | 80007D20 | 80006E00 | 800073D0 | 80007BD0 | 00000000 | 00000400 | 80006560 | 00000000 | |
80007D20 | dmamgr | 80121C68 | 80007BD0 | 80007F88 | 80008488 | 00000000 | 00000100 | 800065E4 | 00000000 | |
80121C68 | fault | ? | 80120C18 | 80007D20 | 80121868 | 80121C68 | 00000000 | 00000100 | 8010970C | 00000000 |
80120C18 | irqmgr | interrupt request manager |
80120BB8 | 80121C68 | 80120698 | 80120B98 | 00000000 | 00000100 | 80108DF0 | 00000000 |
80120BF8 | padmgr | input | 80120B98 | 80120BD8 | 80120198 | 80120698 | 00000000 | 00000100 | 80108E08 | 00000000 |
80120BD8 | audio | 80120BF8 | 80120BB8 | 8011F998 | 80120198 | 00000000 | 00000100 | 80108E00 | 00000000 | |
80120BB8 | sched | scheduler? | 80120BD8 | 80120C18 | 8011F598 | 8011F998 | 00000000 | 00000100 | 80108DF8 | 00000000 |
80120B98 | graph | main game | 00000000 | 80120BF8 | 8011DD98 | 8011F598 | 00000000 | 00000100 | 80108E10 | 00000000 |
80120B98 //graph (main game thread) 80120BB8 //sched (scheduler?) 80120BD8 //audio 80120BF8 //padmgr (input) 80120C18 //irqmgr (interrupt request manager) 80121C68 //fault 80007D20 //dmamgr 80007BD0 //main 80006E00 //idle 80006830 //boot
Stack Struct Graph
graph <-> padmgr <-> audio <-> sched <-> irqmgr <-> fault <-> dmamgr <-> main <-> idle <-> boot