00001 /* 00002 * PSP Software Development Kit - http://www.pspdev.org 00003 * ----------------------------------------------------------------------- 00004 * Licensed under the BSD license, see LICENSE in PSPSDK root for details. 00005 * 00006 * psputility_osk.h - Definitions and Functions for OSK section of 00007 * the pspUtility library 00008 * 00009 * Copyright (c) 2006 McZonk 00010 * 00011 * $Id: psputility_osk.h 1888 2006-05-01 08:47:04Z tyranid $ 00012 */ 00013 #ifndef PSPOSK_H 00014 #define PSPOSK_H 00015 00016 #ifdef __cplusplus 00017 extern "C" { 00018 #endif 00019 00020 #include <psptypes.h> 00021 00025 typedef enum 00026 { 00027 PSP_OSK_NONE = 0, 00028 PSP_OSK_INIT, 00029 PSP_OSK_VISIBLE, 00030 PSP_OSK_QUIT, 00031 PSP_OSK_FINISHED 00032 } SceOskState; 00033 00037 typedef struct _SceUtilityOskData 00038 { 00039 int unk_00; 00040 int unk_04; 00041 int language; 00042 int unk_12; 00043 int unk_16; 00044 int lines; 00045 int unk_24; 00046 unsigned short* desc; 00047 unsigned short* intext; 00048 int outtextlength; 00049 unsigned short* outtext; 00050 int rc; 00051 int outtextlimit; 00052 } SceUtilityOskData; 00053 00057 typedef struct _SceUtilityOskParams 00058 { 00059 unsigned int size; 00060 int language; 00061 int buttonswap; 00062 int unk_12; // set 17 00063 int unk_16; // set 19 00064 int unk_20; // set 18 00065 int unk_24; // set 16 00066 int rc; 00067 int unk_32; 00068 int unk_36; 00069 int unk_40; 00070 int unk_44; 00071 int unk_48; // set 1, if 0 nothing happens, if 2 crash ... 00072 SceUtilityOskData* data; 00073 int unk_56; 00074 int unk_60; 00075 } SceUtilityOskParams; 00076 00077 // it should be possible to choose the char set but i have no idea how 00078 // ... it is not language 00079 00086 int sceUtilityOskInitStart(SceUtilityOskParams* params); 00087 00092 int sceUtilityOskShutdownStart(void); 00093 00099 int sceUtilityOskUpdate(int n); 00100 00106 int sceUtilityOskGetStatus(void); 00107 00108 #ifdef __cplusplus 00109 } 00110 #endif 00111 00112 #endif