1 /*---------------------------------------------------------------------------*
2   Project:  Cafe
3   File:     OSLaunch.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 __OS_LAUNCH_H__
16 #define __OS_LAUNCH_H__
17 
18 #include <types.h>
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 
24 #define OS_ARGS_SIZE    4096    // Total single argv buffer size
25 #define OS_MAX_NUM_ARGS 32
26 
27 #define OSLAUNCH_TITLEID_INVALID  ((u64)-1)
28 #define OSLAUNCH_TITLEID_COLDBOOT ((u64)-2)
29 #define OSLAUNCH_TITLEID_SYSMENU  ((u64)-3)
30 
31 int OSLaunchTitlev(u64 titleId, u32 argc, char *argv[]);
32 int OSLaunchTitlel(u64 titleId, u32 argc, ... /*, const char* arg1, ...*/);
33 int OSLaunchTitleByPathv(const char* path, u32 pathLen, u32 argc, char *argv[]);
34 int OSLaunchTitleByPathl(const char* path, u32 pathLen, u32 argc, ... /*, const char* arg1, ...*/);
35 
36 int OSRestartGame(u32 argc, char *argv[]);
37 
38 void OSForceFullRelaunch(void);
39 
40 u32 __OSSetLaunchTimeout(u32 aTimeoutMs);
41 
42 #ifdef __cplusplus
43 }
44 #endif
45 
46 #endif // __OS_LAUNCH_H__
47 
48 
49 
50 
51 
52