1 /*---------------------------------------------------------------------------*
2   Project:  Cafe
3   File:     ppc_upid.h
4 
5   Copyright (C) Nintendo.  All rights reserved.
6 
7   These coded instructions, statements, and computer programs contain
8   proprietary information of Nintendo of America Inc. and/or Nintendo
9   Company Ltd., and are protected by Federal copyright law.  They may
10   not be disclosed to third parties or copied or duplicated in any form,
11   in whole or in part, without the prior written consent of Nintendo.
12 
13  *---------------------------------------------------------------------------*/
14 
15 #ifndef __PPC_UPID_H__
16 #define __PPC_UPID_H__
17 
18 // Untyped assembly UPIDs.
19 // Illegal to use in C or C++ code.
20 #define ASM_UPID_ERROR_VALUE    0xFFFFFFFF
21 #define ASM_UPID_Kernel         0
22 #define ASM_UPID_Root           1
23 #define ASM_UPID_CafeMenu       2
24 #define ASM_UPID_CafeTV         3
25 #define ASM_UPID_EManual        4
26 #define ASM_UPID_HomeButtonMenu 5
27 #define ASM_UPID_ErrorDisplay   6
28 #define ASM_UPID_MiniMiiverse   7
29 #define ASM_UPID_Browser        8
30 #define ASM_UPID_Miiverse       9
31 #define ASM_UPID_EShop          10
32 #define ASM_UPID_FLV            11
33 #define ASM_UPID_DownloadMgr    12
34 #define ASM_UPID_Reserved13     13
35 #define ASM_UPID_Reserved14     14
36 #define ASM_UPID_Game           15
37 
38 #ifndef _ASSEMBLER
39 
40 #ifdef __cplusplus
41 extern "C" {
42 #endif
43 
44 
45 /*
46  * PPC Unique Process ID (UPID)
47  *
48  * Any given PPC process with a RAMPID can (potentially) have a different
49  * UPID to allow for many, many overlay IDs.
50  *
51  * --- IMPORTANT ---
52  * Illegal to use as an index. Ever.
53  * --- IMPORTANT ---
54  */
55 typedef struct UPID__ *UPID;
56 
57 #define UPID_ERROR_VALUE    ((UPID) -1)
58 #define UPID_Kernel         ((UPID) 0)
59 #define UPID_Root           ((UPID) 1)
60 #define UPID_CafeMenu       ((UPID) 2)
61 #define UPID_CafeTV         ((UPID) 3)
62 #define UPID_EManual        ((UPID) 4)
63 #define UPID_HomeButtonMenu ((UPID) 5)
64 #define UPID_ErrorDisplay   ((UPID) 6)
65 #define UPID_MiniMiiverse   ((UPID) 7)
66 #define UPID_Browser        ((UPID) 8)
67 #define UPID_Miiverse       ((UPID) 9)
68 #define UPID_EShop          ((UPID) 10)
69 #define UPID_FLV            ((UPID) 11)
70 #define UPID_DownloadMgr    ((UPID) 12)
71 #define UPID_Reserved13     ((UPID) 13)
72 #define UPID_Reserved14     ((UPID) 14)
73 #define UPID_Game           ((UPID) 15)
74 
75 #define UPID_MintU          ((UPID) 16)
76 #define UPID_CabinetU       ((UPID) 17)
77 
78 #define UPID_TestOverlay    ((UPID) 31)
79 
80 
81 #ifdef __cplusplus
82 }
83 #endif
84 #endif // _ASSEMBLER
85 #endif // __PPC_UPID_H__
86 
87 
88