Tony Hawk's Pro Skater
Jump to navigation
Jump to search
Data structures/enumerations
typedef struct { float xscale, yscale; u32 xpos, ypos; } print_info; typedef enum { align_left = 0, align_right = 1, align_center = 2 } text_align; typedef enum { valign_bottom = 0, valign_top = 1, valign_center = 2 }text_valign;
Functions
/* 0x800057E4 */
int sprintf(char *dst, char *fmt, ...)
/* 0x8000574C */
int strlen(char *str)
memset = 0x8009F240
/* 0x800B2A6C */
screen_print(print_info *info, char *str, float, float, float, text_align, text_valign, float, u32, u32, u32, u32, float)
/* 80001330 - NOTE: This function was hand written. All standard register usage is ignored.*/
decompress_ERZ(void *src, void *dst);
Library Functions
0x800004c0,__libm_qnan_f 0x80000570,__osRcpImTable 0x800018c0,__cosf/fcos/cosf 0x80001a30,guMtxF2L 0x80001b30,guMtxIdentF 0x80001bb8,guMtxIdent 0x80001be8,guMtxL2F 0x80001ca0,__sinf/fsin/sinf 0x80002a90,__osGetSR 0x80002aa0,osInvalICache 0x80002b20,osSetIntMask 0x80002bc0,__osSetFpcCsr 0x80002bd0,__osSetSR 0x80002be0,osMapTLBRdb 0x80002c40,osWritebackDCache 0x80002cc0,osDestroyThread 0x80002dc0,__osDisableInt 0x80002de0,__osRestoreInt 0x80002e00,osSetEventMesg 0x80002e70,__osDequeueThread 0x80002eb0,osAiSetFrequency 0x80003010,osViBlack 0x800031c0,__osViSwapContext 0x80003520,osVirtualToPhysical 0x800035a0,__osProbeTLB 0x80003660,__osSiRawReadIo 0x80003660,__osSpRawReadIo 0x800036b0,__osSiDeviceBusy 0x800036e0,__osSpRawWriteIo 0x800036e0,__osSiRawWriteIo 0x80003730,osPiRawReadIo 0x800043d0,osCreateThread 0x80004520,osGetThreadPri 0x80004540,osSetThreadPri 0x80004620,osStartThread 0x80004770,osPiRawStartDma 0x80004ed0,osRecvMesg 0x80005010,__osResetGlobalIntMask 0x80005070,osSendMesg 0x800051c0,__osSetGlobalIntMask 0x80005210,osYieldThread 0x80005260,osEPiRawReadIo 0x800052b0,osEPiRawWriteIo 0x800053c0,bzero/_bzero/blkclr/_blkclr 0x80005460,__ull_rshift 0x8000548c,__ull_rem 0x800054c8,__ull_div 0x80005504,__ll_lshift 0x80005530,__ll_rem 0x8000556c,__ll_div 0x800055c8,__ll_mul 0x800055f8,__ull_divremi 0x80005658,__ll_mod 0x800056f4,__ll_rshift 0x80005720,memcpy 0x8000574c,strlen 0x80005774,strchr 0x800057c0,sprintf 0x80006500,_Litob 0x800067a0,lldiv 0x800068a0,ldiv 0x80006930,_Ldtob 0x800073f0,sqrtf 0x80007400,osGetCount 0x80007410,osContStartQuery 0x80007494,osContGetQuery 0x800074c0,__osSiRawStartDma 0x80007570,osInvalDCache 0x800076e0,osContInit 0x800078d8,__osContGetInitData 0x800079a8,__osPackRequestData 0x80007aa0,osGetTime 0x80007b30,osSetTimer 0x80008010,__osSetCompare 0x80008020,osPfsIsPlug 0x800081c0,__osPfsRequestData 0x800082bc,__osPfsGetInitData 0x80008990,__osContAddressCrc 0x80008a40,__osContDataCrc 0x80008b10,__osSumcalc 0x80008b6c,__osIdCheckSum 0x80008bd4,__osRepairPackId 0x80008fec,__osCheckPackId 0x80009184,__osGetId 0x800093e0,__osCheckId 0x800094dc,__osPfsRWInode 0x800097fc,__osPfsSelectBank 0x80009bf0,osPfsChecker 0x8000a2b4,corrupted_init 0x8000a468,corrupted 0x8000ad80,osGetThreadId 0x8000ada0,osStopThread 0x8000ae60,osViSetYScale 0x8000aec0,osWritebackDCacheAll 0x8000aef0,__osSpSetPc 0x8000b220,__osSpDeviceBusy 0x8000b250,__osSpSetStatus 0x8000b260,__osSpRawStartDma 0x8000b2f0,osSpTaskYield 0x8000b310,osSpTaskYielded 0x8000b390,__osSpGetStatus 0x8000b3a0,osViGetCurrentFramebuffer 0x8000b3a0,osViGetNextFramebuffer 0x8000b3e0,osCreateViManager 0x8000b740,__osViGetCurrentContext 0x8000b740,__osViGetNextContext 0x8000b740,__osGetCurrFaultedThread 0x8000b740,osPiGetDeviceType 0x8000b740,__osGetActiveQueue 0x8000b750,osViSetEvent 0x8000b7c0,osViSetMode 0x8000b830,osViSwapBuffer 0x8000b880,bcopy/_bcopy 0x8000bb90,osViSetSpecialFeatures 0x8000bd50,osContStartReadData 0x8000be14,osContGetReadData 0x8000bfb0,__osGetFpcCsr 0x8000bfc0,osJamMesg 0x8000c110,alUnlink 0x8000c140,alLink 0x8000c164,alClose 0x8000c19c,alInit 0x8000c1d8,_timeToSamples 0x8000c230,_freePVoice 0x8000c268,_collectPVoices 0x8000c2c8,__freeParam 0x8000c2e0,__allocParam 0x8000c318,alAudioFrame 0x8000c5b0,alSynNew 0x8000c8b0,alSaveNew 0x8000c8f4,alMainBusNew 0x8000c948,alAuxBusNew 0x8000c99c,alResampleNew 0x8000ca24,alLoadNew 0x8000cacc,alEnvmixerNew 0x8000cb70,init_lpfilter 0x8000cc10,alFxNew 0x8000d050,alLoadParam 0x8000d224,alRaw16Pull 0x8000d6fc,alAdpcmPull 0x8000dba0,alAuxBusParam 0x8000dbd0,alAuxBusPull 0x8000dcb0,_ldexpf 0x8000dcd8,_frexpf 0x8000ddc4,alEnvmixerParam 0x8000e3bc,alEnvmixerPull 0x8000fe20,osAiGetLength 0x8000fe30,alHeapInit 0x8000fe70,osPfsAllocateFile 0x800102f4,__osPfsDeclearPage 0x80010620,osPfsDeleteFile 0x80010900,__osPfsReleasePages 0x80010b38,__osBlockSum 0x80010c30,osPfsReadWriteFile 0x80011130,osPfsFileState 0x80011420,osPfsFindFile 0x800115e0,osPfsFreeBlocks 0x80011730,osPfsNumFiles 0x80011dd0,osViModeNtscLpn1 0x80011e20,osViModeNtscLpf1 0x80011ec0,osViModeNtscLaf1 0x80011f10,osViModeNtscLpn2 0x80011f60,osViModeNtscLpf2 0x80011fb0,osViModeNtscLan2 0x80012000,osViModeNtscLaf2 0x80012050,osViModeNtscHpn1 0x800120a0,osViModeNtscHpf1 0x800120f0,osViModeNtscHan1 0x80012140,osViModeNtscHaf1 0x80012190,osViModeNtscHpn2 0x800121e0,osViModeNtscHpf2 0x80012690,osViModeMpalLpn1 0x800126e0,osViModeMpalLpf1 0x80012780,osViModeMpalLaf1 0x800127d0,osViModeMpalLpn2 0x80012820,osViModeMpalLpf2 0x80012870,osViModeMpalLan2 0x800128c0,osViModeMpalLaf2 0x80012910,osViModeMpalHpn1 0x80012960,osViModeMpalHpf1 0x800129b0,osViModeMpalHan1 0x80012a00,osViModeMpalHaf1 0x80012a50,osViModeMpalHpn2 0x80012aa0,osViModeMpalHpf2
Printing Example
/* jal @ 0x800BF4E4 during startup */ print_info *info_1 =(print_info*) /* 0x800D26AC */ { 0.8, 1.0, 8, 51 }; char *message = "expansion pack found."; /* 0x80021868 */ screen_print(info_1, message, 320.0, 245.0, 1.2, align_center, valign_top, 1.0, 255, 0, 1, 1, 512.0); /* jal @ 0x80029F90 during startup */ print_info *info_2 = (print_info*)/* 0x80172234 */ { 0.7, 1.2, 12, 39 }; char *copyright = "copyright 1999, 2000 activision, inc.\n\n\ activision is a registered trademark of activision, inc.\n\ neversoft is a registered trademark of jcm production, inc.\n\ edge of reality is a registered trademark\n of edge reality, inc. all rights reserved."; /* 0x80018FA4 */ screen_print(info_2, copyright, 320.0, 330.0, 1.2, align_center, valign_bottom, 0.0, 0, 100, 0, 1, 0.0);