pspsdk-1.0+beta2
crt0.c File Reference
#include <pspkerneltypes.h>
#include <pspmoduleinfo.h>
#include <pspthreadman.h>
#include <stdlib.h>
#include <string.h>
Include dependency graph for crt0.c:

Data Structures

struct  _library_entry

Macros

#define ARG_MAX   19
#define DEFAULT_THREAD_PRIORITY   32
#define DEFAULT_THREAD_ATTRIBUTE   PSP_THREAD_ATTR_USER
#define DEFAULT_THREAD_STACK_KB_SIZE   256
#define DEFAULT_MAIN_THREAD_NAME   "user_main"

Functions

int
sce_newlib_nocreate_thread_in_start 
__attribute__ ((weak))
void __psp_libc_init (int argc, char *argv[]) __attribute__((weak))
void _init (void)
void _fini (void)
int main (int argc, char *argv[])
void _main (SceSize args, void *argp)
 Main program thread.
int _start (SceSize args, void *argp)
 Startup thread.

Variables

const char * name
unsigned short version
unsigned short attribute
unsigned char entLen
unsigned char varCount
unsigned short funcCount
void * entrytable

Macro Definition Documentation

#define ARG_MAX   19

Referenced by _main().

#define DEFAULT_MAIN_THREAD_NAME   "user_main"

Referenced by _start().

#define DEFAULT_THREAD_ATTRIBUTE   PSP_THREAD_ATTR_USER

Referenced by _start().

#define DEFAULT_THREAD_PRIORITY   32

Referenced by _start().

#define DEFAULT_THREAD_STACK_KB_SIZE   256

Referenced by _start().

Function Documentation

int sce_newlib_nocreate_thread_in_start __attribute__ ( (weak)  )
void __psp_libc_init ( int  argc,
char *  argv[] 
)

Referenced by _main().

void _fini ( void  )

Referenced by _main().

void _init ( void  )

Referenced by _main(), and _start().

void _main ( SceSize  args,
void *  argp 
)

Main program thread.

Initializes runtime parameters and calls the program's main().

Parameters
args- Size (in bytes) of the argp parameter.
argp- Pointer to program arguments. Each argument is a NUL-terminated string.

References __psp_libc_init(), _fini(), ARG_MAX, atexit(), exit(), main(), NULL, and strlen().

Referenced by _start().

int _start ( SceSize  args,
void *  argp 
)

Startup thread.

Creates the main program thread based on variables defined by the program.

Parameters
args- Size (in bytes) of arguments passed to the program by the kernel.
argp- Pointer to arguments passed by the kernel.

References _init(), _main(), attribute, DEFAULT_MAIN_THREAD_NAME, DEFAULT_THREAD_ATTRIBUTE, DEFAULT_THREAD_PRIORITY, DEFAULT_THREAD_STACK_KB_SIZE, _scemoduleinfo::modattribute, module_info, NULL, PSP_THREAD_ATTR_USBWLAN, PSP_THREAD_ATTR_USER, PSP_THREAD_ATTR_VSH, sceKernelCreateThread(), and sceKernelStartThread().

int main ( int  argc,
char *  argv[] 
)

Variable Documentation

unsigned short attribute
unsigned char entLen
void* entrytable
unsigned short funcCount
const char* name
unsigned char varCount
unsigned short version