https://bitbucket.org/coutts/5dplus
Tip revision: 0d7cbec6dea8a278a468d89a5bf23bf5670a3172 authored by Coutts on 21 June 2012, 12:32:49 UTC
Fix font sizes (thanks Alex!) and fixed problem of bmp_buffer moving around, using a pointer to the bmp_vram now instead of the raw address. Also testing ML menu with skeleton shoot menu, not working yet though.
Fix font sizes (thanks Alex!) and fixed problem of bmp_buffer moving around, using a pointer to the bmp_vram now instead of the raw address. Also testing ML menu with skeleton shoot menu, not working yet though.
Tip revision: 0d7cbec
funclist.S
/*##################################################################################
# #
# _____ _ _ #
# | ___| | | | | #
# |___ \ __| |_ __ | |_ _ ___ #
# \ \/ _` | '_ \| | | | / __| #
# /\__/ / (_| | |_) | | |_| \__ \ #
# \____/ \__,_| .__/|_|\__,_|___/ #
# | | #
# |_| #
# #
#################################################################################*/
/* ##
## These are stubs found in the 5d.111 firmware. ##
## They are verified by hand to be correct. ##
## ##
## - Coutts ##
## ##
## ##
##########################################################*/
.text
.org 0
#define DEF(n,a) \
.globl n; n = a
#define NSTUB(addr,name) \
.global name; \
name = addr
#define NHSTUB(name, addr)\
.globl name ;\
name: ;\
ldr pc, = addr
#define STUB(addr)\
.globl sub_ ## addr ;\
sub_ ## addr: ;\
ldr pc, =0x ## addr
//canon_data_src = (void*)0xFFB5CAD0; This is the address of the "Startofdata"-4 string on the firmware
//canon_data_dst = (void*)0x1900; This is where the boot data is copiedduring firmware update "MEMBASEADDR"
//canon_data_len = 0x11229; This is the length of data from "Startofdata" to the end of the firmware dump
// canon_bss_start = (void*)0x12B29; = (canon_data_len + MEMBASEADDR) 0x11229 + 0x1900, just after data
//canon_bss_len = 0x2EF50 - 0x12B29; The original address of h_usrKernelInit - bss start (MEMISOSTART - ( canon_bss_start)
//~ Memory Management
NSTUB(0xFFB2F664, AllocateMemory)
NSTUB(0xFFB2F680, FreeMemory)
NSTUB(0xFFB2A56C, allocate_dma_memory)
NSTUB(0xFFB2A5B0, free_dma_memory)
NSTUB(0xFFB2F750, GetMemoryInformation)
//---------------------
NSTUB(0xFF8191A0, NotifyGUIEvent)
DEF(dword_FFB5CAD0, 0xFFB5CAD0)
DEF(sub_FFB18B40, 0xFFB18B40)
DEF(sub_FF893EE8, 0xFF893EE8)
NSTUB(0xFF8946A8, sht_regread)
NSTUB(0xFFB127B0, call)
NSTUB(0xFFB211DC, vsnprintf)
NSTUB(0xFF86F01C, EndGuiInit)
NSTUB(0xFF81800C, gui_massive_event_loop)
NSTUB(0xFF818D98, gui_massive_event_loop2)
NSTUB(0xFFB167C0, unknown_gui_function)
NSTUB(0xFF818B7C, GUI_ChangeMode)
NSTUB(0xFF818F70, other_gui_post_event)
NSTUB(0xFFB18430, give_semaphore)
NSTUB(0xFFAB8710, PROPAD_InitializeFixData)
NSTUB(0xFFAB81C0, PROPAD_InitializeCustomData)
NSTUB(0xFFAB8804, PROPAD_InitializeRingData)
NSTUB(0xFF810FF4, aStartup_0)
NSTUB(0xFF812070, startupPropAdminMain)
NSTUB(0xFF811730, startupPrepareCapture)
NSTUB(0xFF8119D8, startupPrepareDevelop)
NSTUB(0xFF811C50, startupPreparePlayback)
NSTUB(0xFF8120D0, startupInitializeComplete)
NSTUB(0xFF811EE0, startupCompleteCallback)
DEF(loc_FF810054, 0xFF810054)
DEF(loc_FF810100, 0xFF810100)
DEF(loc_FF810138, 0xFF810138)
DEF(loc_FF810158, 0xFF810158)
DEF(loc_FF8101A4, 0xFF8101A4)
DEF(loc_FF8101D4, 0xFF8101D4)
DEF(loc_FF81020C, 0xFF81020C)
DEF(sub_FF8102B0, 0xFF8102B0)
DEF(unk_FFB5CAD0, 0xFFB5CAD0)
DEF(sub_FF810318, 0xFF810318)
DEF(sub_FF810E84, 0xFF810E84)
DEF(sub_FFB45FCC, 0xFFB45FCC)
DEF(sub_FFB35004, 0xFFB35004)
DEF(sub_FF810764, 0xFF810764)
DEF(sub_FF810A64, 0xFF810A64)
DEF(sub_FFB464CC, 0xFFB464CC)
DEF(sub_FFB56278, 0xFFB56278)
DEF(sub_FFB51D30, 0xFFB51D30)
DEF(sub_FFB5ADF8, 0xFFB5ADF8)
DEF(sub_FF8108C0, 0xFF8108C0)
DEF(sub_FFB534B8, 0xFFB534B8)
DEF(sub_FF810F14, 0xFF810F14)
DEF(sub_FFB4B664, 0xFFB4B664)
DEF(sub_FFB4C0DC, 0xFFB4C0DC)
DEF(sub_FF810B60, 0xFF810B60)
DEF(sub_FF810A38, 0xFF810A38)
DEF(sub_FF810F58, 0xFF810F58)
DEF(sub_FF810F3C, 0xFF810F3C)
DEF(sub_FF810F84, 0xFF810F84)
DEF(sub_FFB33DFC, 0xFFB33DFC)
DEF(sub_FFB48728, 0xFFB48728)
DEF(sub_FFB2B114, 0xFFB2B114)
DEF(sub_FFB10D68, 0xFFB10D68)
DEF(sub_FFB291AC, 0xFFB291AC)
DEF(sub_FFB2F5CC, 0xFFB2F5CC)
DEF(sub_FFB18668, 0xFFB18668)
DEF(sub_FFB2D814, 0xFFB2D814)
DEF(sub_FFB189A4, 0xFFB189A4)
DEF(sub_FFB1FA38, 0xFFB1FA38)
DEF(sub_FFB12828, 0xFFB12828)
DEF(sub_FFB2A3E0, 0xFFB2A3E0)
DEF(sub_FFB14C44, 0xFFB14C44)
DEF(sub_FFB1FDAC, 0xFFB1FDAC)
DEF(sub_FFB136CC, 0xFFB136CC)
DEF(sub_FFB1DC44, 0xFFB1DC44)
DEF(sub_FFB1C004, 0xFFB1C004)
DEF(sub_FFB14F6C, 0xFFB14F6C)
DEF(sub_FFB29918, 0xFFB29918)
DEF(sub_FFB2979C, 0xFFB2979C)
DEF(sub_FFB2DA7C, 0xFFB2DA7C)
DEF(sub_FFB110BC, 0xFFB110BC)
DEF(sub_FFB2CB40, 0xFFB2CB40)
DEF(sub_FFB2DBFC, 0xFFB2DBFC)
DEF(sub_FFB2DC58, 0xFFB2DC58)
DEF(sub_FFB291E8, 0xFFB291E8)
DEF(sub_FFB20534, 0xFFB20534)
DEF(sub_FFB20A5C, 0xFFB20A5C)
DEF(sub_FF812018, 0xFF812018)
DEF(sub_FFB2DAF4, 0xFFB2DAF4)
DEF(off_FF810FF4, 0xFF810FF4)
DEF(sub_FFB16D84, 0xFFB16D84)
DEF(loc_FF8111C0, 0xFF8111C0)
DEF(sub_FFB20698, 0xFFB20698)
DEF(loc_FF81121C, 0xFF81121C)
DEF(sub_FF81138C, 0xFF81138C)
DEF(loc_FF8111F8, 0xFF8111F8)
DEF(sub_FF8B7DB0, 0xFF8B7DB0)
DEF(sub_FFB207B8, 0xFFB207B8)
DEF(sub_FFB2AD78, 0xFFB2AD78)
DEF(sub_FFB22394, 0xFFB22394)
DEF(aRomReady, 0xFF811000)
DEF(aStartupErrorCr, 0xFF81100C)
DEF(aStartupError_0, 0xFF811038)
DEF(aIcuFirmwareVer, 0xFF811060)
NSTUB(0xFF815108, canon_gui_main_task)
DEF(aK213, 0xFF811078)
NSTUB(0xFFB20698, DebugMsg)
NSTUB(0xFFB091D0, TurnOnDisplay)
NSTUB(0xFFB09530, TurnOffDisplay)
NSTUB(0xFFB20E8C, dmstore)
NSTUB(0xFFB20F30, dmprint)
NSTUB(0xFFAB8710, PROPAD_InitializeFixData)
NSTUB(0xFFAB81C0, PROPAD_InitializeCustomData)
NSTUB(0xFFAB8804, PROPAD_InitializeRingData)
DEF(sub_FFABBB8C, 0xFFABBB8)
DEF(sub_FFAB3430, 0xFFAB3430)
NSTUB(0xFF969054, FM_Initialize)
NSTUB(0xFF8B2428, EM_Initialize)
NSTUB(0xFF812308, GM_Initialize)
NSTUB(0xFF98430C, CreateMainHeap)
NSTUB(0xFFAB3D44, prop_request_change)
NSTUB(0xFFB170FC, msg_queue_receive)
DEF(sub_FF8B52D4, 0xFF8B52D4)
DEF(sub_FF8B6194, 0xFF8B6194)
DEF(sub_FF8B6248, 0xFF8B6248)
DEF(sub_FF811730, 0xFF811730)
DEF(sub_FF8119D8, 0xFF8119D8)
DEF(sub_FF811C50, 0xFF811C50)
DEF(sub_FF8120D0, 0xFF8120D0)
DEF(sub_FF8121CC, 0xFF8121CC)
DEF(aStartupStartup, 0xFF811284)
DEF(aStartup_0, 0xFF810FF4)
NSTUB(0xFF812070, startupPropAdminMain)
DEF(sub_FF811EE0, 0xFF811EE0)
DEF(aStartupErrorPr, 0xFF8112A4)
DEF(aStartupErrorFm, 0xFF8112CC)
DEF(aStartupErrorEm, 0xFF8112F0)
DEF(aStartupErrorGm, 0xFF811314)
DEF(aStartupErrorRe, 0xFF811360)
DEF(aStartupErrorUn, 0xFF811338)
NSTUB(0xFF8B52D4, GetFileCacheItem)
NSTUB(0xFF8B6194, RemoveFileCacheItem)
NSTUB(0xFF8B6248, AllocateFileCacheItem)
NSTUB(0xFF81090C, sysToMonitor)
NSTUB(0xFFB112DC, LoadCalendarFromRTC)
NSTUB(0xFFA2FE80, TransferNormalScreen)
NSTUB(0xFFA2FF34, TransferUpsideDownScreen)
NSTUB(0xFFA2FFEC, TransferMirrorScreen)
NSTUB(0xFFA300B0, TransferRotateScreen)
NSTUB(0xFFB2180C, OpenLogFile);
NSTUB(0xFFB20880, CloseLogFile);
NSTUB(0xFFB2DC58, DisablePowerSave);
NSTUB(0xFFB2DCE8, EnablePowerSave);
NSTUB(0xFFB19194, AttachTask);
NSTUB(0xFFB19670, ChangeTaskPriority);
NSTUB(0xFFB18B40, CreateTask);
NSTUB(0xFFB18D44, DeleteTask);
NSTUB(0xFFB19350, DetachTask);
NSTUB(0xFFB18F00, ExitTask);
NSTUB(0xFFB19564, GetSelfTaskHandle);
NSTUB(0xFFB19700, QueryTaskByName); //~ returns pointer to task structure by searching task name
NSTUB(0xFFB187F4, msleep);
NSTUB(0xFFB19040, SuspendTask);
NSTUB(0xFFB47218, errnoOfTaskGet);
NSTUB(0xFFB47260, errnoOfTaskSet);
NSTUB(0xFFB5AE94, eventTaskShow);
NSTUB(0xFFB473F8, excTask);
NSTUB(0xFFB5BB04, taskArgsGet);
NSTUB(0xFFB5BADC, taskArgsSet);
NSTUB(0xFFB57E60, taskCreat);
NSTUB(0xFFB4F768, taskCreateHookAdd);
NSTUB(0xFFB57610, taskDelay);
NSTUB(0xFFB575E0, taskDelete);
NSTUB(0xFFB4F6A4, taskDeleteHookAdd);
NSTUB(0xFFB56D8C, taskDestroy);
NSTUB(0xFFB4F5BC, taskHookInit);
NSTUB(0xFFB5618C, taskIdDefault);
NSTUB(0xFFB561F0, taskIdListGet);
NSTUB(0xFFB585C4, taskIdListSort);
NSTUB(0xFFB58490, taskInfoGet);
NSTUB(0xFFB579D4, taskInit);
NSTUB(0xFFB561A0, taskIsReady);
NSTUB(0xFFB561CC, taskIsSuspended);
NSTUB(0xFFB56278, taskLibInit);
NSTUB(0xFFB568AC, taskLock);
NSTUB(0xFFB560E8, taskName);
NSTUB(0xFFB5610C, taskNameToId);
NSTUB(0xFFB56038, taskOptionsGet);
NSTUB(0xFFB55F7C, taskOptionsSet);
NSTUB(0xFFB58988, taskOptionsString);
NSTUB(0xFFB57968, taskPriorityGet);
NSTUB(0xFFB56694, taskPrioritySet);
NSTUB(0xFFB56068, taskRegsGet);
NSTUB(0xFFB5BA9C, taskRegsInit);
NSTUB(0xFFB560B8, taskRegsSet);
NSTUB(0xFFB58648, taskRegsShow);
NSTUB(0xFFB58088, taskRestart);
NSTUB(0xFFB564CC, taskResume);
NSTUB(0xFFB56ABC, taskSafe);
NSTUB(0xFFB58A78, taskShow);
NSTUB(0xFFB58458, taskShowInit);
NSTUB(0xFFB57FFC, taskSpawn);
NSTUB(0xFFB5798C, taskStackAllot);
NSTUB(0xFFB58720, taskStatusString);
NSTUB(0xFFB562F8, taskSuspend);
NSTUB(0xFFB4F5D8, taskSwapHookAdd);
NSTUB(0xFFB4F8A8, taskSwapHookAttach);
NSTUB(0xFFB4F638, taskSwapHookDelete);
NSTUB(0xFFB4FA18, taskSwapHookDetach);
NSTUB(0xFFB5790C, taskTcb);
NSTUB(0xFFB57600, taskTerminate);
NSTUB(0xFFB577BC, taskUndelay);
NSTUB(0xFFB56954, taskUnlock);
NSTUB(0xFFB56BD4, taskUnsafe);
NSTUB(0xFFB4FC08, taskVarAdd);
NSTUB(0xFFB4FC5C, taskVarDelete);
NSTUB(0xFFB4FCD8, taskVarGet);
NSTUB(0xFFB4FD9C, taskVarInfo);
NSTUB(0xFFB4FAFC, taskVarInit);
NSTUB(0xFFB4FD38, taskVarSet);
NSTUB(0xFF811080, task_Startup);
NSTUB(0xFFB20534, DebugMenager);
NSTUB(0xFFB4A10C, open);
NSTUB(0xFFB49B98, write);
NSTUB(0xFFAE5B78, FIO_CloseFile);
NSTUB(0xFFAE5B2C, FIO_CreateFile);
NSTUB(0xFFAE5B1C, FIO_OpenFile);
NSTUB(0xFFAE5B54, FIO_ReadFile);
NSTUB(0xFFAE5B3C, FIO_RemoveFile);
NSTUB(0xFFAE5B60, FIO_SeekFile);
NSTUB(0xFFAE5B6C, FIO_WriteFile);
NSTUB(0xFFB1A1A4, FindName);
NSTUB(0xFFB1FA38, FlushWriteCache);
NSTUB(0xFFB486FC, printErr);
NSTUB(0xFFB48408, printExc);
NSTUB(0xFFB48728, printf);
NSTUB(0xFF9D6494, EventProcServerInit);
NSTUB(0xFFB17EA0, create_named_semaphore);
NSTUB(0xFFB16D84, msg_queue_create);
NSTUB(0xFFB1A0A8, CreateNameServiceExclusive);
NSTUB(0xFFB179D0, DeleteAllMessageQueues);
NSTUB(0xFFB16ED4, DeleteMessageQueue);
NSTUB(0xFFB1D8F0, DeletePublisher);
NSTUB(0xFFB18094, DeleteSemaphore);
NSTUB(0xFFB446FC, strcat);
NSTUB(0xFFB44728, strchr);
NSTUB(0xFFB4474C, strcmp);
NSTUB(0xFFB447F0, strcoll);
NSTUB(0xFFB448E0, strcpy);
NSTUB(0xFFB448FC, strcspn);
NSTUB(0xFFB45F60, strftime);
NSTUB(0xFFB44A44, strlen);
NSTUB(0xFFB44A5C, strncat);
NSTUB(0xFFB44AA8, strncmp);
NSTUB(0xFFB44AEC, strncpy);
NSTUB(0xFFB44B34, strpbrk);
NSTUB(0xFFB44B70, strrchr);
NSTUB(0xFFB44B98, strspn);
NSTUB(0xFFB44BCC, strstr);
NSTUB(0xFFB44C34, strtok_r);
NSTUB(0xFFB4444C, strtol);
NSTUB(0xFFB412C8, strupr);
NSTUB(0xFFB44DD4, strxfrm);
NSTUB(0xFFB51618, swab);
NSTUB(0xFFB431D0, scanf);
NSTUB(0xFFB4D854, reboot);
NSTUB(0xFFB4DB5C, pause);
NSTUB(0xFFB4CF18, memShow);
NSTUB(0xFFB4B774, memalign);
NSTUB(0xFFB445F4, memchr);
NSTUB(0xFFB44628, memcmp);
NSTUB(0xFFB44664, memcpy);
NSTUB(0xFFB44680, memmove);
NSTUB(0xFFB446DC, memset);
NSTUB(0xFFB45408, mktime);
NSTUB(0xFFB4CB08, malloc);
NSTUB(0xFFB4CB14, free);
NSTUB(0xFFB39A64, log);
NSTUB(0xFFB3A10C, log10);
NSTUB(0xFFB4B16C, logFdAdd);
NSTUB(0xFFB4B1C8, logFdDelete);
NSTUB(0xFFB4B24C, logFdSet);
NSTUB(0xFFB4B298, logInit);
NSTUB(0xFFB4B0B0, logMsg);
NSTUB(0xFFB4B524, logShow);
NSTUB(0xFFB4B400, logTask);
NSTUB(0xFFB4130C, longjmp);
NSTUB(0xFFB4A784, iosClose);
NSTUB(0xFFB4A6CC, iosCreate);
NSTUB(0xFFB4A704, iosDelete);
NSTUB(0xFFB4ACE8, iosDevAdd);
NSTUB(0xFFB4ACC0, iosDevDelete);
NSTUB(0xFFB4AC74, iosDevFind);
NSTUB(0xFFB4AFAC, iosDrvInstall);
NSTUB(0xFFB4AEA0, iosDrvRemove);
NSTUB(0xFFB4A554, iosFdFree);
NSTUB(0xFFB4AB24, iosFdNew);
NSTUB(0xFFB4A628, iosFdSet);
NSTUB(0xFFB4A470, iosFdValue);
NSTUB(0xFFB4AD78, iosInit);
NSTUB(0xFFB4AA0C, iosIoctl);
NSTUB(0xFFB4A740, iosOpen);
NSTUB(0xFFB4A854, iosRead);
NSTUB(0xFFB4A930, iosWrite);
NSTUB(0xFFB47534, fioFormatV);
NSTUB(0xFFB48810, fioRdString);
NSTUB(0xFFB487B4, fioRead);
NSTUB(0xFFB491F8, fioScanV);
NSTUB(0xFFB53304, eventClear);
NSTUB(0xFFB529BC, eventInit);
NSTUB(0xFFB529AC, eventLibInit);
NSTUB(0xFFB52A70, eventReceive);
NSTUB(0xFFB530F4, eventRsrcSend);
NSTUB(0xFFB5AF00, eventRsrcShow);
NSTUB(0xFFB52DD0, eventSend);
NSTUB(0xFFB53344, eventStart);
NSTUB(0xFFB529D0, eventTerminate);
NSTUB(0xFF8B7E48, binwrite);
NSTUB(0xFFB51774, bufAlloc);
NSTUB(0xFFB517BC, bufFree);
NSTUB(0xFFB51700, bufPoolInit);
NSTUB(0xFFB1828C, take_semaphore);
NSTUB(0xFFB1451C, TerminateHPTimerSystem);
NSTUB(0xFFB177D8, TryPostMessageQueue);
NSTUB(0xFFB173A4, TryReceiveMessageQueue);
NSTUB(0xFFB150E8, UnregisterInputCaptureHandler);
NSTUB(0xFFB1D9C4, UnregisterSubscriber);
NSTUB(0xFF82931C, VirtualHeadError);
NSTUB(0xFFB128F0, ShutdownEventProcedureService);
NSTUB(0xFFB1757C, msg_queue_post);
NSTUB(0xFF8B7E30, DisableBootDisk);
NSTUB(0xFF8B7E18, EnableBootDisk);
NSTUB(0xFFB20FD0, logstat);
NSTUB(0xFFB20E8C, dmstore);
NSTUB(0xFFB20F30, dmprint);
NSTUB(0xFFB20D94, oldgrep);
NSTUB(0xFFB20CBC, olddumpf);
NSTUB(0xFFB20C58, olddump);
NSTUB(0xFFB20D20, grep);
NSTUB(0xFFB20BF4, dumpf);
NSTUB(0xFFB20B90, dump);
NSTUB(0xFFB20B2C, dmstop);
NSTUB(0xFFB20AC8, dmstart);
NSTUB(0xFFB16C84, EnumHashTable);
NSTUB(0xFFB15774, DisconnectPulgenOutput);
NSTUB(0xFFB1A2CC, GetListOfName);
NSTUB(0xFFB1A380, GetListOfNameAndHandle);
NSTUB(0xFFB47204, GetErrorNumAddr);
NSTUB(0xFFB2B648, GetEventProcedureList);
NSTUB(0xFFB1A1D0, GetNameInformation);
NSTUB(0xFFB1FF74, GetSystemTime);
NSTUB(0xFFB30E14, InitSystemTimer);
NSTUB(0xFFB136CC, InitializeHPTimerSystem);
NSTUB(0xFFB16B98, InitializeHashTable);
NSTUB(0xFFB18668, InitializeKernel);
NSTUB(0xFFB2979C, InitializeSerialIO);
NSTUB(0xFFB1FDAC, InitializeTimerSystem);
NSTUB(0xFFB43E2C, abort);
NSTUB(0xFFB43E44, abs);
NSTUB(0xFFB37328, acos_);
NSTUB(0xFFB40474, armInitExceptionModes);
NSTUB(0xFFB44EC4, asctime);
NSTUB(0xFFB44EA4, asctime_r);
NSTUB(0xFFB377BC, asin_);
NSTUB(0xFFB380B8, atan2);
NSTUB(0xFFB37C80, atan_);
NSTUB(0xFFB43E58, atoi);
NSTUB(0xFFB43E64, atoi_0);
NSTUB(0xFFB33EB0, bcopy);
NSTUB(0xFFB34730, bfill);
NSTUB(0xFFB464CC, classLibInit);
NSTUB(0xFFB49AC8, close);
NSTUB(0xFFB4A100, creat);
NSTUB(0xFFB57578, exit);
NSTUB(0xFFB38D24, exp);
NSTUB(0xFFB413F4, fclose);
NSTUB(0xFFB416E4, fflush);
NSTUB(0xFFB35594, ffsLsb);
NSTUB(0xFFB35550, ffsMsb);
NSTUB(0xFFB41758, fgetc);
NSTUB(0xFFB417E0, fgetpos);
NSTUB(0xFFB41844, fgets);
NSTUB(0xFFB41978, fileno);
NSTUB(0xFFB3BAE0, floor);
NSTUB(0xFFB3BC70, fmod);
NSTUB(0xFFB41AFC, fopen);
NSTUB(0xFFB41B90, fprintf);
NSTUB(0xFFB41CB0, fputs);
NSTUB(0xFFB41D38, fread);
NSTUB(0xFFB42AC4, gets);
NSTUB(0xFFB4247C, ftell);
NSTUB(0xFFB4289C, fwrite);
NSTUB(0xFFB41E3C, freopen);
NSTUB(0xFFB39988, frexp);
NSTUB(0xFFB42024, fscanf);
NSTUB(0xFFB420CC, fseek);
NSTUB(0xFFB42470, fsetpos);
NSTUB(0xFFB46A74, fstat);
NSTUB(0xFFB5168C, index);
NSTUB(0xFFB534B8, create_init_task);
NSTUB(0xFFB53610, kernelTimeSlice);
NSTUB(0xFFB4CAF4, memAddToPool);
NSTUB(0xFFB4B664, memInit);
NSTUB(0xFFB4B5FC, memLibInit);
NSTUB(0xFFB4BE30, memPartAddToPool);
NSTUB(0xFFB4C7B0, memPartAlignedAlloc);
NSTUB(0xFFB4CA94, memPartAlloc);
NSTUB(0xFFB4C254, memPartBlockIsValid);
NSTUB(0xFFB4C174, memPartCreate);
NSTUB(0xFFB4C39C, memPartFree);
NSTUB(0xFFB4CF28, memPartInfoGet);
NSTUB(0xFFB4C054, memPartInit);
NSTUB(0xFFB4C0DC, memPartLibInit);
NSTUB(0xFFB4B67C, memPartOptionsSet);
NSTUB(0xFFB4B9E0, memPartRealloc);
NSTUB(0xFFB4CD08, memPartShow);
NSTUB(0xFFB53858, msgQCreate);
NSTUB(0xFFB5AFD8, msgQEvStart);
NSTUB(0xFFB5B134, msgQEvStop);
NSTUB(0xFFB536E8, msgQInit);
NSTUB(0xFFB53664, msgQLibInit);
NSTUB(0xFFB544EC, msgQNumMsgs);
NSTUB(0xFFB541BC, msgQReceive);
NSTUB(0xFFB53E40, msgQSend);
NSTUB(0xFFB42DE4, putchar);
NSTUB(0xFFB47020, putenv);
NSTUB(0xFFB42F38, puts);
NSTUB(0xFFB51FB0, qAdvance);
NSTUB(0xFFB52018, qCalibrate);
NSTUB(0xFFB51DE4, qCreate);
NSTUB(0xFFB51EF8, qDelete);
NSTUB(0xFFB52058, qEach);
NSTUB(0xFFB51C50, qFifoPut);
NSTUB(0xFFB51F50, qGet);
NSTUB(0xFFB51FD0, qGetExpired);
NSTUB(0xFFB52038, qInfo);
NSTUB(0xFFB51D30, qInit);
NSTUB(0xFFB5C434, qJobCreate);
NSTUB(0xFFB5C488, qJobDelete);
NSTUB(0xFFB5CA34, qJobEach);
NSTUB(0xFFB5C7B8, qJobGet);
NSTUB(0xFFB5C9E4, qJobInfo);
NSTUB(0xFFB5C3E4, qJobInit);
NSTUB(0xFFB5C4A4, qJobPut);
NSTUB(0xFFB5C474, qJobTerminate);
NSTUB(0xFFB51FF0, qKey);
NSTUB(0xFFB52138, qPriBMapCreate);
NSTUB(0xFFB52290, qPriBMapEach);
NSTUB(0xFFB5B5A0, qPriBMapGet);
NSTUB(0xFFB521D8, qPriBMapInfo);
NSTUB(0xFFB520B4, qPriBMapInit);
NSTUB(0xFFB5B534, qPriBMapPut);
NSTUB(0xFFB5B5B8, qPriBMapRemove);
NSTUB(0xFFB5219C, qPriBMapResort);
NSTUB(0xFFB524B8, qPriListCalibrate);
NSTUB(0xFFB52484, qPriListGetExpired);
NSTUB(0xFFB524D8, qPriListKey);
NSTUB(0xFFB52368, qPriListPut);
NSTUB(0xFFB523B0, qPriListPutFromTail);
NSTUB(0xFFB52418, qPriListResort);
NSTUB(0xFFB51F30, qPut);
NSTUB(0xFFB51F70, qRemove);
NSTUB(0xFFB51F90, qResort);
NSTUB(0xFFB51EC0, qTerminate);
NSTUB(0xFFB4D8CC, rebootHookAdd);
NSTUB(0xFFB49E5C, remove);
NSTUB(0xFFB4A114, rename);
NSTUB(0xFFB43108, rewind);
NSTUB(0xFFB516C0, rindex);
NSTUB(0xFF8102B0, romStart);
NSTUB(0xFF8B7CD8, update);
NSTUB(0xFF810A10, usrAppInit);
NSTUB(0xFF810A8C, cstart);
NSTUB(0xFF810ED8, usrInit);
NSTUB(0xFF810FA0, usrRoot);
NSTUB(0xFFB372B8, workQDoWork);
NSTUB(0xFFB5ADF8, workQInit);
NSTUB(0xFFB5AE1C, workQPanic);
NSTUB(0xFFB4836C, vsprintf);
NSTUB(0xFFB36BE8, vxTas);
NSTUB(0xFFB36C38, vxTaskEntry)
NSTUB(0xFFB45F8C, time);
NSTUB(0xFFB58DE4, tickGet);
NSTUB(0xFFB58DB8, tickSet);
NSTUB(0xFFB326D0, sysSerialChanGet);
NSTUB(0xFF810E84, sysStart);
NSTUB(0xFF81090C, sysToMonitor);
NSTUB(0xFFB29918, sysClockRateSet_100);
NSTUB(0xFF8107BC, sysHwInit2);
NSTUB(0xFF810764, sysHwInit);
NSTUB(0xFF8104C0, sysIntStackSplit);
NSTUB(0xFF8108C0, sysMemTop);
NSTUB(0xFF8109D0, sysProcNumGet);
NSTUB(0xFFB434A0, stdioInit);
NSTUB(0xFFB43234, setbuf);
NSTUB(0xFFB36BB0, setjmp);
NSTUB(0xFFB43290, setvbuf);
NSTUB(0xFFB31324, sysAuxClkDisable);
NSTUB(0xFFB313A0, sysAuxClkEnable);
NSTUB(0xFFB3120C, sysAuxClkInt);
NSTUB(0xFFB31170, sysAuxClkRateSet);
NSTUB(0xFFB30F38, sysClkConnect);
NSTUB(0xFFB30FAC, sysClkDisable);
NSTUB(0xFFB31028, sysClkEnable);
NSTUB(0xFFB30E70, sysClkInt);
NSTUB(0xFF8109E8, sysClkRateSet)
NSTUB(0xFFB546EC, semBCoreInit);
NSTUB(0xFFB547D0, semBCreate);
NSTUB(0xFFB548FC, semBGiveDefer);
NSTUB(0xFFB54778, semBInit);
NSTUB(0xFFB54674, semBLibInit);
NSTUB(0xFFB54AC8, semCCoreInit);
NSTUB(0xFFB54B8C, semCCreate);
NSTUB(0xFFB5B6B8, semCGive);
NSTUB(0xFFB54CAC, semCGiveDefer);
NSTUB(0xFFB54B34, semCInit);
NSTUB(0xFFB54A50, semCLibInit);
NSTUB(0xFFB54E80, semDestroy);
NSTUB(0xFFB5B220, semEvStart);
NSTUB(0xFFB5B39C, semEvStop);
NSTUB(0xFFB553C0, semIntRestrict);
NSTUB(0xFFB55378, semInvalid);
NSTUB(0xFFB54E00, semLibInit);
NSTUB(0xFFB55744, semMCoreInit);
NSTUB(0xFFB55804, semMCreate);
NSTUB(0xFFB5B784, semMGive);
NSTUB(0xFFB55928, semMGiveForce);
NSTUB(0xFFB55BF8, semMGiveKern);
NSTUB(0xFFB55794, semMInit);
NSTUB(0xFFB556F0, semMLibInit);
NSTUB(0xFFB55E24, semMPendQPut);
NSTUB(0xFFB5B8A4, semMTake);
NSTUB(0xFFB554A4, semQFlush);
NSTUB(0xFFB555C8, semQFlushDefer);
NSTUB(0xFFB553F0, semQInit);
NSTUB(0xFFB4293C, getc);
NSTUB(0xFFB42A00, getchar);
NSTUB(0xFFB4A204, getcwd);
NSTUB(0xFFB46FC4, getenv);