60

En attendant, des fonctions/const de zlib (je ne sais pas si ça nous servira, mais au moins on sait qu'on n'a pas besoin de regarder ces fonctions)
0x1192E8A8 inflate
0x1192FFE4 inflateEnd
0x11930054 inflateSetDictionary
0x11930158 inflateGetHeader
0x119301A0 syncsearch
0x11930204 inflateSync
0x1193033C inflateSyncPoint
0x1193038C inflateCopy
0x1192E760 updatewindow
0x11978E68 lenfix
0x11979668 distfix
0x1192E734 fixedtables
0x1192E724 inflateInit_
0x1192E614 inflateInit2_
0x1192E5BC inflatePrime
0x1192E538 inflateReset
0x1192E44C crc32_combine
0x1192E410 gf2_matrix_square
0x1192E3E4 gf2_matrix_times
0x1192E3A8 crc32
0x1192DC54 crc32_little
0x1192DF88 crc32_big
0x1192DC48 get_crc_table
0x11930F4C inflate_fast
0x11979A84 z_errmsg
0x11930B20 zError
0x11930B0C zlibVersion
0x11930B18 zlibCompileFlags
0x11976E68 crc_table
0x119304E8 inflate_table
0x11930B34 zcalloc
0x11930B3C zcfree
0x11930B54 adler32

61

Suivant les version de zlib, il y a des bugs connu qui permettent l'execution de code ^^
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

62

Bref, il faudrait déjà commencer par aller voir ce que retourne zlibVersion.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

63

zlibVersion:
11930b0c:	e59f0000 	ldr	r0, [pc, #0]	; 0x11930b14
11930b10:	e12fff1e 	bx	lr
11930b14:	11979a7c 	orrnes	r9, r7, ip, ror sl

avec
11979a7c:	2e322e31 	mrccs	14, 1, r2, cr2, cr1, {1}
11979a80:	00000033 	andeq	r0, r0, r3, lsr r0

("1.2.3" en little endian, avec padding pour aligner sur 32 bits)

Mais voir aussi les strings de ./17, il y a plus de deux semaines wink

zlibCompileFlags:
11930b18:	e3a00055 	mov	r0, #85	; 0x55
11930b1c:	e12fff1e 	bx	lr
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

64

Bah, si c'est bien la 1.2.3, c'est la version la plus récente, il n'y a pas de trous de sécurité connus.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

65

hwti (./59) :
J'espère que ça n'écrase pas ce qu'on a en local, en faisait des diffs pour réduire la taille ça semble pas mal

Ca merge bien (testé avec ./60 converti via une moulinette), par contre je ne connais pas le comportement en cas de collision.

66

Peut-être que ces sources peuvent donner quelques nouveaux points d'entrée (cliquer sur la flèche verte en haut pour d/ler) : http://www.pudn.com/downloads107/sourcecode/others/detail443165.html

[edit] intéressant ça aussi : http://www.pudn.com/downloads70/sourcecode/embed/detail251326.html
Avoir accès au .lib aurait été encore mieux.

67

pudn.com ne fonctionne pas pour moi (absence de résolution DNS, semblerait-il - pas pour DownForEveryoneOrJustMe), alors que le reste d'Internet semble OK. Bizarre.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

68

69

Nucleus je ne pense pas que ça nous soit si utile que ça, c'est très bas niveau.
J'ai accès à des sources/docs Nucleus aussi (un peu modifiées et non diffusables) au cas où.

70

C'est sûr, mais c'est toujours dans l'optique de mettre des noms à un maximum de chose (sauf si on estime qu'on ne descendra jamais si loin dans les couches ?)

En tout cas : 1181FF88 TCT_Protect (de tct.s de ./66)

71

Vous utilisez quoi dans IDA pour faire le pseudocode ?
avatar
Proud to be CAKE©®™


GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.

72

J'ai téléchargé une démo de FlashFX/Reliance/Datalight common library (doc + binaires)
Ce n'est pas la même version mais ça permet de trouver des symboles quand même, et la différence des binaires est impressionnante, le compilateur de TI est soit très mauvais, soit l'optimisation n'est partiellement désactivée.

73

Ils ont l'habitude de désactiver les optimisations, cf. les AMS 68k.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

74

Sans doute pour éviter les bugs d'optimisation liés à leur compilateur. tongue
Kevin > 4h47 du matin et toujours pas couché ? ^^
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

75

Il n' est pas comme nous...alien
gni

76

C'est pas comme si il devait se lever pour un taf le lendemain matin aussi...
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

77

Tu es légèrement injuste, dans la mesure où s'il ne travaillait pas, il aurait du mal à présenter les résultats des travaux auxquels il collabore à la même conférence que Flanker wink
Mais il est cependant un fait que Kevin a manifestement besoin de peu de sommeil (du moins, il en prend peu), et un job dont les horaires sont beaucoup plus flexibles que ceux de la majorité des autres jobs.
On est off-topic.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

78

hwti (./69) :
Nucleus je ne pense pas que ça nous soit si utile que ça, c'est très bas niveau.
J'ai accès à des sources/docs Nucleus aussi (un peu modifiées et non diffusables) au cas où.

Pour être plus précis, ça permettrait :
- De voir à partir de quel moment on entre dans ces couches basses en traçant des sous-fonctions au désassembleur
- De comprendre le layout mémoire
- De comprendre la gestion des interuptions
- De mettre la main sur les fonctions POSIX qui s'appuient dessus (pthread & co)

En voilà plusieurs :
	MakeName	(0X11800000,	"INT_Vectors");
	MakeName	(0X1181F1B4,	"INT_System_SP");
	MakeName	(0X1181F1BC,	"INT_First_Avail_Mem");
	MakeName	(0X1181F220,	"INT_Initialize");
	MakeName	(0X1181F280,	"INT_Vectors_Loaded");
	MakeName	(0X1181F28C,	"INT_Setup_Vector");
	MakeName	(0X1181F2CC,	"INT_Retrieve_Shell");
	MakeName	(0X1181F2DC,	"INT_Undef_Inst");
	MakeName	(0X1181F314,	"INT_Software");
	MakeName	(0X1181F350,	"INT_Prefetch_Abort");
	MakeName	(0X1181F390,	"INT_Data_Abort");
	MakeName	(0X1181F41C,	"INT_Reserved");
	MakeName	(0X1181F454,	"INT_IRQ_Shell");
	MakeName	(0X1181F55C,	"INT_C_Memory_Initialize");
	MakeName	(0X1181F56C,	"INT_ROM_Data_Copy");
	MakeName	(0X1181F598,	"INT_Clear_BSS");
	MakeName	(0X1181F5B4,	"INT_System_Initialize");
	MakeName	(0X1181F650,	"INT_HW_Memory_Initialize");
	MakeName	(0X1181F870,	"INT_Target_Initialize");
	MakeName	(0X1181F88C,	"INT_IRQ");
	MakeName	(0X1181F8B0,	"INT_FIQ");
	MakeName	(0X1181F8C0,	"INT_Interrupts_Initialize");
	MakeName	(0X1181F950,	"INT_Timer_Initialize");
	MakeName	(0X11987790,	"INT_IRQ_Vectors");
	MakeNameEx(0X1181F584, "INT_ROM_Vars_Copy", SN_LOCAL);
	MakeName	(0X11800050,	"Nucleus_Application_Initialize");
	MakeName	(0X11808C54,	"CSC_Place_On_List");
	MakeName	(0X11808C84,	"CSC_Priority_Place_On_List");
	MakeName	(0X11808D04,	"CSC_Remove_From_List");
	MakeName	(0X1181E170,	"TCC_Create_HISR");
	MakeName	(0X1181E248,	"TCC_Delete_Task");
	MakeName	(0X1181E2A0,	"TCC_Delete_HISR");
	MakeName	(0X1181E2F8,	"TCC_Reset_Task");
	MakeName	(0X1181E378,	"TCC_Resume_Task");
	MakeName	(0X1181E538,	"TCC_Create_Task");
	MakeName	(0X1181E6F8,	"TCC_Resume_Service");
	MakeName	(0X1181E778,	"TCC_Suspend_Task");
	MakeName	(0X1181E974,	"TCC_Terminate_Task");
	MakeName	(0X1181EAE4,	"TCC_Suspend_Service");
	MakeName	(0X1181EB34,	"TCC_Task_Timeout");
	MakeName	(0X1181EC10,	"TCC_Task_Sleep");
	MakeName	(0X1181EC60,	"TCC_Relinquish");
	MakeName	(0X1181ECDC,	"TCC_Time_Slice");
	MakeName	(0X1181ED70,	"TCC_Current_Task_Pointer");
	MakeName	(0X1181EDA0,	"TCC_Current_HISR_Pointer");
	MakeName	(0X1181EE2C,	"TCC_Signal_Shell");
	MakeName	(0X1181F008,	"TCC_Dispatch_LISR");
	MakeName	(0X1181F060,	"TCC_Register_LISR");
	MakeName	(0X1181FB78,	"TCT_Local_Control_Interrupts");
	MakeName	(0X1181FB9C,	"TCT_Restore_Interrupts");
	MakeName	(0X1181FBC0,	"TCT_Build_Task_Stack");
	MakeName	(0X1181FC6C,	"TCT_Build_HISR_Stack");
	MakeName	(0X1181FCE8,	"TCT_Build_Signal_Frame");
	MakeName	(0X1181FD58,	"TCT_Check_Stack");
	MakeName	(0X1181FDB4,	"TCT_Schedule");
	MakeName	(0X1181FE38,	"TCT_Control_To_Thread");
	MakeName	(0X1181FE90,	"TCT_Control_To_System");
	MakeName	(0X1181FF08,	"TCT_Signal_Exit");
	MakeName	(0X1181FF70,	"TCT_Current_Thread");
	MakeName	(0X1181FF7C,	"TCT_Set_Execute_Task");
	MakeName	(0X1181FF88,	"TCT_Protect");
	MakeName	(0X1181FFF0,	"TCT_Unprotect");
	MakeName	(0X11820044,	"TCT_Not_Protected");
	MakeName	(0X1182004C,	"TCT_Skip_Unprotect");
	MakeName	(0X11820050,	"TCT_Unprotect_Specific");
	MakeName	(0X118200E4,	"TCT_Set_Current_Protect");
	MakeName	(0X118200F8,	"TCT_Protect_Switch");
	MakeName	(0X11820140,	"TCT_Schedule_Protected");
	MakeName	(0X118201A0,	"TCT_Interrupt_Context_Save");
	MakeName	(0X118202B4,	"TCT_Interrupt_Context_Restore");
	MakeName	(0X11820300,	"TCT_Activate_HISR");
	MakeName	(0X11820390,	"TCT_HISR_Shell");
	MakeNameEx(0X1181FE2C, "TCT_Schedule_Thread", SN_LOCAL);
	MakeNameEx(0X1181FE6C, "TCT_No_Start_TS_1", SN_LOCAL);
	MakeNameEx(0X1181FE88, "TCT_Interrupt_Resume", SN_LOCAL);
	MakeNameEx(0X11820038, "TCT_Not_Waiting_Unpr", SN_LOCAL);
	MakeName	(0X1182049C,	"TMT_Set_Clock");
	MakeName	(0X118204A8,	"TMT_Retrieve_Clock");
	MakeName	(0X118204B4,	"TMT_Read_Timer");
	MakeName	(0X118204C0,	"TMT_Enable_Timer");
	MakeName	(0X118204D8,	"TMT_Adjust_Timer");
	MakeName	(0X118204FC,	"TMT_Disable_Timer");
	MakeName	(0X1182050C,	"TMT_Retrieve_TS_Task");
	MakeName	(0X11820518,	"TMT_Timer_Interrupt");
	MakeName	(0X118205A8,	"TMT_No_Time_Slice_Active");

Nucleus_Application_Initialize est une fonction haut-niveau spécifique Nspire basée sur un template de chargement d'application Nucleus.
INT_Vectors pointe sur une table d'interruptions ARM.

79

Concernant le layout mémoire, c'est choses là peuvent être intéressantes pour le comprendre :
ROM:1181F8E4 MOV R8, #0xA4000000 ; Copy vector table to address 0xA4000000
ROM:1181F1B4 INT_System_SP DCD 0xA4009F00
ROM:1181F25C BL INT_HW_Memory_Initialize
ROM:1181F260 BL INT_C_Memory_Initialize
ROM:1181F570 MOV R1, #ROM_DATA_START; 0x10000000

80

Comment arrives-tu à un tel niveau de désassemblage (noms des symboles?)
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

81

Même question, je me demande de quel chapeau tu sors les noms eek

Et sinon, j'espère que TI suit plus ou moins ce topic en s'en mordant férocement les kooyes trivil

82

De son bonnet cyan oui
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

83

grin

Non sérieusement, ça m'intrigue.
- Les noms de fonctions seraient éventuellement contenus dans le code, comme des infos de débogage ? J'imagine alors qu'ils auraient déjà posté la liste.
- En traçant le code pour déterminer le comportement de chaque fonction ? J'y crois pas, faut trouver les points d'entrée, puis ya des noms qui ne coulent vraiment pas de source.

Je comprends pas, j'attends la lumière. grin

84

./82 cheeky

./80 ./81 : En comparant avec le code source C/asm du coeur de Nucleus de ./66.

85

Ok tout devient plus clair. smile
avatar
la Nature nous montre seulement la queue du lion. Mais je suis certain que le lion a qui elle appartient pense qu'il ne peut pas se révéler en une fois en raison de son immense taille.

- Fondateur de Ti-Gen -: http://www.tigen.org

- Membre du Groupe Orage Studio -: http://oragestudio.free.fr/

- Mon site perso -: http://tisofts.free.fr

Projets TI68K en cours:
GFA-Basic = http://www.tigen.org/gfabasic
Arkanoid.
PolySnd 3.0.

86

Quelques fonctions de lecture de certificats :
+       MakeName        (0X11832578,    "cert_11832578");
+       MakeName        (0X118325DC,    "cert_118325DC");
+       MakeName        (0X11832650,    "cert_11832650");
+       MakeName        (0X1192871C,    "cert_get_expected_devunit_field_400");
+       MakeName        (0X11928CC4,    "cert_get_field_size");
+       MakeName        (0X11928D80,    "cert_get_size_size");
+       MakeRptCmt      (0X11928DB8,    "cert size type");
+       MakeName        (0X11928DF4,    "cert_to_field_size");
+       MakeName        (0X11928ED4,    "cert_read_field_id");
+       MakeName        (0X11928F20,    "cert_next_field");
+       MakeName        (0X11928F9C,    "cert_find_field");
+       MakeName        (0X11929860,    "cert_check_signature");

Je suis pas à 100% sûr de cert_check_signature mais c'est très probable. Les clés intégrées à la calc serait dans la zone mémoire 0xCC000000.
Je n'ai pas le courage d'aller en finesse dans ROM:118018C8 load_devunit.cer.tns, mais a priori le fichier doit être signé et avoir un champ 0x400 correct.

Ces fonctions codées par TI ont l'air assez fragiles, un certificat mal formé doit pouvoir les malmener.

87

Quelques symboles Nucleus et libc en plus, une majorité des fonctions FlashFX et une partie des fonctions de Reliance.
Il y a peut être quelques erreurs pour flashfx/reliance car je n'ai pas la même versions.
NU_Open/NU_Close/... on été nommnées d'après flashfx/reliance, ça ne correspond pas forcément à des sources Nucleus mais ce sont bien des fonctions en dessous de la libc.
Je ne sais pas pourquoi il y a plusieurs fonctions de division du compilateur (__rt_udiv, __rt_udiv_2 et __rt_udiv_3).

	MakeName	(0X11807D58,	"DMC_Deallocate_Memory");
	MakeName	(0X11808288,	"ERC_System_Error");
	MakeName	(0X118086C0,	"SMC_Create_Semaphore");
	MakeName	(0X11808774,	"SMC_Delete_Semaphore");
	MakeName	(0X11808850,	"SMC_Obtain_Semaphore");
	MakeName	(0X11808928,	"SMC_Release_Semaphore");
	MakeName	(0X118089A8,	"SMC_Cleanup");
	MakeName	(0X1185BDD8,	"NU_Open");
	MakeName	(0X1185BE70,	"NU_Close");
	MakeName	(0X1185BED8,	"NU_Read");
	MakeName	(0X1185BF44,	"NU_Write");
	MakeName	(0X1185BFB0,	"NU_Seek");
	MakeName	(0X1185C024,	"NU_Delete");
	MakeName	(0X1185C148,	"NU_Flush");
	MakeName	(0X1185F59C,	"FlashFXDriverInitialize");
	MakeName	(0X1185F67C,	"FfxDriverDeviceCreate");
	MakeName	(0X1185F728,	"FlashFXDiskCreate");
	MakeName	(0X1185F848,	"FlashFXGetDiskHandle");
	MakeName	(0X1185F8F0,	"FfxProjMain");
	MakeName	(0X1185FC34,	"FfxDriverDeviceSettings");
	MakeName	(0X1185FE0C,	"FfxDriverDiskCreate");
	MakeName	(0X11860348,	"FfxDriverDiskDestroy");
	MakeName	(0X11860484,	"FfxDriverDiskSettings");
	MakeName	(0X11860574,	"FfxDriverDiskCompSettings");
	MakeName	(0X11860750,	"FfxDriverCreate");
	MakeName	(0X11860870,	"FfxDriverDestroy");
	MakeName	(0X11860944,	"FfxDriverSectorWrite");
	MakeName	(0X11860B20,	"FfxDriverWritePages");
	MakeName	(0X11860C60,	"FfxDriverLock");
	MakeName	(0X11860CC8,	"FfxDriverUnlock");
	MakeName	(0X11860D0C,	"FfxDriverReadAheadCreate");
	MakeName	(0X11860E54,	"FfxDriverReadAheadDestroy");
	MakeName	(0X11860EBC,	"FfxDriverReadAheadInvalidate");
	MakeName	(0X11861250,	"FfxDriverVbfCreate");
	MakeName	(0X118616BC,	"FfxDriverVbfDestroy");
	MakeName	(0X11861A98,	"vbfread");
	MakeName	(0X11861F44,	"vbfwrite");
	MakeName	(0X11861FCC,	"vbfdiscard");
	MakeName	(0X11862308,	"vbfclientsize");
	MakeName	(0X11862364,	"FfxVbfDiskInfo");
	MakeName	(0X118624C0,	"FfxVbfReadPages");
	MakeName	(0X11862624,	"FfxVbfWritePages");
	MakeName	(0X11862A54,	"FfxVbfCompact");
	MakeName	(0X11862D18,	"FooFFXVbfBarl915");
	MakeName	(0X11862DB0,	"FooFFXVbfBarl717");
	MakeName	(0X11862F60,	"FooFFXVbfBarl825");
	MakeName	(0X11863004,	"FooFFXVbfBarl985");
	MakeName	(0X118630B0,	"FfxVbfCreate");
	MakeName	(0X118634C0,	"param_R1");
	MakeName	(0X118634C4,	"FfxVbfDestroy");
	MakeName	(0X118635EC,	"FfxVbfHandle");
	MakeName	(0X11863670,	"FooFFXVbfBarl569");
	MakeName	(0X118639C8,	"FooFFXVbfBarl563");
	MakeName	(0X11863AE8,	"FooFFXVbfBarl533");
	MakeName	(0X11863C1C,	"FooFFXVbfBarl247");
	MakeName	(0X11863D20,	"FooFFXVbfBarl228");
	MakeName	(0X11863E14,	"FooFFXVbfBarl1231");
	MakeName	(0X11864108,	"FooFFXVbfBarl1093");
	MakeName	(0X11865418,	"FooFFXVbfBarl287");
	MakeName	(0X11866958,	"FooFFXVbfBarl309");
	MakeName	(0X118669A0,	"FooFFXVbfBarl476");
	MakeName	(0X11866A68,	"FooFFXVbfBarl301");
	MakeName	(0X11866AC4,	"FooFFXVbfBarl583");
	MakeName	(0X11868700,	"FooFFXVbfBarl341");
	MakeName	(0X11869E24,	"FfxDevCreate");
	MakeName	(0X1186A3BC,	"FfxDevHandle");
	MakeName	(0X1186A40C,	"FfxDevInfo");
	MakeName	(0X1186A5C0,	"FfxDevIORequest");
	MakeName	(0X1186B400,	"FfxFmlCreate");
	MakeName	(0X1186B7DC,	"FfxFmlDestroy");
	MakeName	(0X1186B930,	"FfxFmlHandle");
	MakeName	(0X1186B980,	"FfxFmlDeviceInfo");
	MakeName	(0X1186BB68,	"FfxFmlDiskInfo");
	MakeName	(0X1186BD20,	"FfxFmlIORequest");
	MakeName	(0X1186C144,	"EraseBlocks");
	MakeName	(0X1186CAE0,	"FfxHookAccessEnd");
	MakeName	(0X1186CB3C,	"FfxHookDeviceCreate");
	MakeName	(0X1186CC18,	"FfxHookDeviceDestroy");
	MakeName	(0X1186CC40,	"FfxHookDiskCreate");
	MakeName	(0X1186CD3C,	"FfxHookDiskDestroy");
	MakeName	(0X1186CD64,	"FfxHookDriverCreate");
	MakeName	(0X1186CD88,	"FfxHookDriverDestroy");
	MakeName	(0X1186CDA4,	"FfxHookOptionGet");
	MakeName	(0X1186CEAC,	"FfxGetPhysicalDiskParams");
	MakeName	(0X1186D054,	"FfxCalcPhysicalDiskParams");
	MakeName	(0X1186D0F4,	"FfxMBRLoadPartitions");
	MakeName	(0X1186D368,	"FfxMBRMovePTE");
	MakeName	(0X1186D4B8,	"FfxVSprintf");
	MakeName	(0X1186DAD8,	"FfxPrintf");
	MakeName	(0X1186DB48,	"FfxSPrintf");
	MakeName	(0X1186DB90,	"FfxSignOn");
	MakeName	(0X1186DBE4,	"FfxRelGetLogicalDiskSize");
	MakeName	(0X1186DCE0,	"FfxDclAtoI");
	MakeName	(0X1186DD0C,	"FfxDclAtoL");
	MakeName	(0X1186DDF4,	"FfxDclMemCpy");
	MakeName	(0X1186DE74,	"FfxDclVPrintf");
	MakeName	(0X1186DF00,	"FfxDclPrintf");
	MakeName	(0X1186DF40,	"FfxDclVSNPrintf");
	MakeName	(0X1186EDF8,	"FfxDclSNPrintf");
	MakeName	(0X1186EE48,	"FfxDclStrLen");
	MakeName	(0X1186EEA0,	"FfxDclULLtoA");
	MakeName	(0X1186F080,	"FfxDclULtoA");
	MakeName	(0X1186F234,	"FfxDclOsSleep");
	MakeName	(0X1186F29C,	"FfxDclAssertFired");
	MakeName	(0X1186F30C,	"FfxDclLogOpen");
	MakeName	(0X1186F4A0,	"FfxDclLogFlush");
	MakeName	(0X1186F5D0,	"FfxDclLogClose");
	MakeName	(0X1186F780,	"OutputString");
	MakeName	(0X1186F930,	"WriteLogData");
	MakeName	(0X1186FB28,	"FfxDclMemAlloc");
	MakeName	(0X1186FB84,	"FfxDclMemFree");
	MakeName	(0X1186FBB0,	"FfxDclMemAllocZero");
	MakeName	(0X1186FC1C,	"FfxDclMemStatsQuery");
	MakeName	(0X1186FC50,	"FfxDclMutexAcquire");
	MakeName	(0X1186FCBC,	"FfxDclMutexCreate");
	MakeName	(0X1186FD7C,	"FfxDclMutexDestroy");
	MakeName	(0X1186FDDC,	"FfxDclMutexRecreate");
	MakeName	(0X1186FE94,	"FfxDclMutexRelease");
	MakeName	(0X1186FF00,	"FfxDclOutputFunction");
	MakeName	(0X1186FF60,	"FfxDclOutputString");
	MakeName	(0X1186FFA8,	"FfxDclSemaphoreAcquire");
	MakeName	(0X118700DC,	"FfxDclSemaphoreDestroy");
	MakeName	(0X118701A8,	"FfxDclSemaphoreStatsQuery");
	MakeName	(0X118701DC,	"FfxDclTimerSet");
	MakeName	(0X11870284,	"FfxDclTimerExpired");
	MakeName	(0X1187035C,	"FfxDclTimerElapsed");
	MakeName	(0X118703AC,	"FfxDclTimeStamp");
	MakeName	(0X118703C8,	"FfxDclTimePassed");
	MakeName	(0X11870464,	"update_timer");
	MakeName	(0X11870584,	"FfxDriverCompactionInit");
	MakeName	(0X118707EC,	"FfxDriverCompactionDeinit");
	MakeName	(0X11870948,	"FfxDriverCompactionSuspend");
	MakeName	(0X11870A18,	"FfxDriverCompactionResume");
	MakeName	(0X11870BC4,	"FfxDriverDiskFormat");
	MakeName	(0X11870F04,	"FfxDriverWriteMBR");
	MakeName	(0X11871070,	"FfxDriverOptionGet");
	MakeName	(0X1187132C,	"FfxDriverDiskCalcParams");
	MakeName	(0X11871460,	"FfxMediaMgrInstanceCreate");
	MakeName	(0X11871644,	"FfxMediaMgrInstanceDestroy");
	MakeName	(0X11871B6C,	"FfxMediaMgrCalcEUHDataUnitBlocks");
	MakeName	(0X11873350,	"FfxMMNorCalcEUHDataUnitBlocks");
	MakeName	(0X11873384,	"FfxMMNorDeviceInit");
	MakeName	(0X11873438,	"FfxVbfFormat");
	MakeName	(0X118737C0,	"FooFFXVbfBarl1105");
	MakeName	(0X11878570,	"FfxCalculateCHS");
	MakeName	(0X11878734,	"FfxMBRBuild");
	MakeName	(0X118789DC,	"FfxFmlOldErase");
	MakeName	(0X11878AA8,	"FfxFmlOldRead");
	MakeName	(0X11878D2C,	"FfxFmlOldWrite");
	MakeName	(0X11878EF4,	"FfxDclStrCpy");
	MakeName	(0X11878F64,	"FfxDclOsFileOpen");
	MakeName	(0X11879154,	"FfxDclOsFileClose");
	MakeName	(0X118791C8,	"FfxDclOsFileEOF");
	MakeName	(0X11879280,	"FfxDclOsFileFlush");
	MakeName	(0X118792F4,	"FfxDclOsFileSeek");
	MakeName	(0X118793C8,	"FfxDclOsFileTell");
	MakeName	(0X11879500,	"FfxDclOsFileRead");
	MakeName	(0X118795BC,	"FfxDclOsFileWrite");
	MakeName	(0X11879678,	"FfxDclOsFileDelete");
	MakeName	(0X1187A118,	"FfxDclOsMemAlloc");
	MakeName	(0X1187A190,	"FfxDclOsMemFree");
	MakeName	(0X1187A1F8,	"FfxDclOsMutexAcquire");
	MakeName	(0X1187A224,	"FfxDclOsMutexCreate");
	MakeName	(0X1187A25C,	"FfxDclOsMutexDestroy");
	MakeName	(0X1187A288,	"FfxDclOsMutexInfo");
	MakeName	(0X1187A2D0,	"FfxDclOsMutexRelease");
	MakeName	(0X1187A3CC,	"FfxDclOsSemaphoreAcquire");
	MakeName	(0X1187A424,	"FfxDclOsSemaphoreCreate");
	MakeName	(0X1187A48C,	"FfxDclOsSemaphoreDestroy");
	MakeName	(0X1187A4E0,	"FfxDclOsSemaphoreInfo");
	MakeName	(0X1187A520,	"FfxDclOsSemaphoreRelease");
	MakeName	(0X1187A574,	"FfxDclOsThreadAttrCreate");
	MakeName	(0X1187A5DC,	"FfxDclOsThreadAttrDestroy");
	MakeName	(0X1187A600,	"FfxDclOsThreadAttrSetPriority");
	MakeName	(0X1187A780,	"nucleus_thread_startup");
	MakeName	(0X1187A7BC,	"FfxDclOsThreadCreate");
	MakeName	(0X1187A914,	"FfxDclOsThreadDestroy");
	MakeName	(0X1187A990,	"FfxDclOsThreadTerminate");
	MakeName	(0X1187A9DC,	"FfxDclOsThreadWait");
	MakeName	(0X1187AAF4,	"FfxDclOsTickCount");
	MakeName	(0X1187AB10,	"FfxDclOsTickModulus");
	MakeName	(0X1187AB28,	"FfxDclOsTickResolution");
	MakeName	(0X1187AB48,	"ValidateDateTime");
	MakeName	(0X1187AC4C,	"FfxDclDateTimeString");
	MakeName	(0X1187AD60,	"FfxDclDateTimeDecode");
	MakeName	(0X1187B418,	"FfxOsOptionGet");
	MakeName	(0X1187B4A0,	"FfxOptionGet");
	MakeName	(0X1187F360,	"ecccalccode");
	MakeName	(0X118814F8,	"FfxDclStrChr");
	MakeName	(0X1188158C,	"Clock_Timer_Service");
	MakeName	(0X118815C0,	"FfxDclOsGetDateTime");
	MakeName	(0X1189C748,	"RelFfxDclMemCpy");
	MakeName	(0X1189C7C8,	"RelDclVSNPrintf");
	MakeName	(0X1189D680,	"RelDclSNPrintf");
	MakeName	(0X1189D6D0,	"RelDclStrLen");
	MakeName	(0X1189DABC,	"Clock_Timer_Service_rel");
	MakeName	(0X1189DAF0,	"RelDclOsGetDateTime");
	MakeName	(0X1189DD64,	"RelDclLogOpen");
	MakeName	(0X1189DEF8,	"RelDclLogFlush");
	MakeName	(0X1189E028,	"RelDclLogClose");
	MakeName	(0X1189E1D8,	"OutputString_rel");
	MakeName	(0X1189E388,	"WriteLogData_rel");
	MakeName	(0X1189E580,	"RelDclMemAlloc");
	MakeName	(0X1189E5DC,	"RelDclMemFree");
	MakeName	(0X1189E958,	"RelDclOutputFunction");
	MakeName	(0X1189E9B8,	"RelDclOutputString");
	MakeName	(0X118A1988,	"RelDclAtoI");
	MakeName	(0X118A19B4,	"RelDclAtoL");
	MakeName	(0X118A1A9C,	"RelDclVPrintf");
	MakeName	(0X118A1B28,	"RelDclPrintf");
	MakeName	(0X118A1B68,	"RelDclStrCpy");
	MakeName	(0X118A1BD8,	"RelDclOsFileOpen");
	MakeName	(0X118A1DC8,	"RelDclOsFileClose");
	MakeName	(0X118A1E3C,	"RelDclOsFileEOF");
	MakeName	(0X118A1EF4,	"RelDclOsFileFlush");
	MakeName	(0X118A1F68,	"RelDclOsFileSeek");
	MakeName	(0X118A203C,	"RelDclOsFileTell");
	MakeName	(0X118A2174,	"RelDclOsFileRead");
	MakeName	(0X118A2230,	"RelDclOsFileWrite");
	MakeName	(0X118A22EC,	"RelDclOsFileDelete");
	MakeName	(0X118A2D8C,	"RelDclOsMemAlloc");
	MakeName	(0X118A2E04,	"RelDclOsMemFree");
	MakeName	(0X118A31E8,	"RelDclOsSleep");
	MakeName	(0X118A4DF8,	"exec_fsiotest");
	MakeName	(0X118A5538,	"RelDclDateTimeDecode");
	MakeName	(0X118A5930,	"RelDclDateTimeEncode");
	MakeName	(0X118A5BF0,	"RelDclSignOn");
	MakeName	(0X118A5C34,	"RelDclTimerSet");
	MakeName	(0X118A5CDC,	"RelDclTimerExpired");
	MakeName	(0X118A5DB4,	"RelDclTimerElapsed");
	MakeName	(0X118A5E04,	"RelDclTimeStamp");
	MakeName	(0X118A5E20,	"RelDclTimePassed");
	MakeName	(0X118A5EBC,	"update_timer_rel");
	MakeName	(0X118A7AB8,	"RelDclStrCat");
	MakeName	(0X118A7B14,	"RelDclStrChr");
	MakeName	(0X118A7C50,	"RelDclStrICmp");
	MakeName	(0X118A7D40,	"RelDclStrNICmp");
	MakeName	(0X118A7E90,	"RelDclOsTickCount");
	MakeName	(0X118A7EAC,	"RelDclOsTickModulus");
	MakeName	(0X118A7EC4,	"RelDclOsTickResolution");
	MakeName	(0X118A7EE0,	"RelDclTestFSIOMain");
	MakeName	(0X118A80E0,	"ShowHelp");
	MakeName	(0X118A8298,	"glb_118A8298");
	MakeName	(0X118A8D80,	"StressFill");
	MakeName	(0X118A8F28,	"RandomRead");
	MakeName	(0X118A93D8,	"RandomWrite");
	MakeName	(0X118A9950,	"RandomExtends");
	MakeName	(0X118A9DCC,	"GetFragPerf");
	MakeName	(0X118AA594,	"GetSmallFileIOPerf");
	MakeName	(0X118AAA7C,	"TestCreateAndDelete");
	MakeName	(0X118AABA0,	"CreateFileSet");
	MakeName	(0X118AACA4,	"FileCreate");
	MakeName	(0X118AAE40,	"VerifyFileSet");
	MakeName	(0X118AAF3C,	"VerifyFile");
	MakeName	(0X118AB0F0,	"DeleteFileSet");
	MakeName	(0X118AB228,	"FileDelete");
	MakeName	(0X118AB2B8,	"RunTests");
	MakeName	(0X118ABA0C,	"CreateTempFile");
	MakeName	(0X118ABB04,	"CloseAndDeleteFile");
	MakeName	(0X118ABBA4,	"SequentialRead");
	MakeName	(0X118ABF34,	"SequentialWrite");
	MakeName	(0X118AC2B4,	"SequentialRewrite");
	MakeName	(0X118AC638,	"SequentialTestInit");
	MakeName	(0X118AC87C,	"WriteFileData");
	MakeName	(0X118AC948,	"ReadFileData");
	MakeName	(0X118AC9E0,	"AppSleep");
	MakeName	(0X118ACA5C,	"GetKBPerSecond");
	MakeName	(0X118ACB70,	"OpenFile");
	MakeName	(0X118ACBF8,	"RelDclTestMain");
	MakeName	(0X118ACDB4,	"ProcessParameters");
	MakeName	(0X118AD00C,	"TestDataTypes");
	MakeName	(0X118AD570,	"GeneralTests");
	MakeName	(0X118AD948,	"TestSleep");
	MakeName	(0X118ADA24,	"TestHamming");
	MakeName	(0X118ADE28,	"HammingburgerHelper");
	MakeName	(0X118AE068,	"RelDclTestPath");
	MakeName	(0X118AE254,	"RelDclArgCount");
	MakeName	(0X118AE2FC,	"RelDclArgRetrieve");
	MakeName	(0X118AE4A4,	"EatWhiteSpace_Rel");
	MakeName	(0X118AE50C,	"FindArgLen_Rel");
	MakeName	(0X118AE61C,	"RelDclHammingCalculate");
	MakeName	(0X118AE70C,	"RelDclHammingCorrect");
	MakeName	(0X118AE7EC,	"RelDclAbsolutePath");
	MakeName	(0X118EC240,	"RelDclRand");
	MakeName	(0X118EC2D8,	"RelDclStrNCpy");
	MakeName	(0X118EC398,	"RelDclTest64BitMath");
	MakeName	(0X118EC55C,	"TestUint64IsEqualUint64");
	MakeName	(0X118EC750,	"TestUint64AssignUint16");
	MakeName	(0X118EC8A8,	"TestUint64AssignUint32");
	MakeName	(0X118EC9F0,	"TestUint64AssignUint64");
	MakeName	(0X118ECB54,	"TestUint64AddUint16");
	MakeName	(0X118ECD7C,	"TestUint64AddUint32");
	MakeName	(0X118ECFB0,	"TestUint64AddUint64");
	MakeName	(0X118ED32C,	"TestUint64SubUint16");
	MakeName	(0X118ED554,	"TestUint64SubUint32");
	MakeName	(0X118ED780,	"TestUint64SubUint64");
	MakeName	(0X118ED9F4,	"TestUint64MulUint16");
	MakeName	(0X118EDC38,	"TestUint64MulUint32");
	MakeName	(0X118EDE80,	"TestUint64DivUint32");
	MakeName	(0X118EE0B0,	"RelDclTestDateTime");
	MakeName	(0X118EE2D0,	"RelDclTestByteOrder");
	MakeName	(0X118FBDA4,	"DMS_Allocate_Aligned_Memory");
	MakeName	(0X118FC224,	"DMCE_Deallocate_Memory");
	MakeName	(0X118FDCDC,	"SMCE_Create_Semaphore");
	MakeName	(0X118FDD3C,	"SMCE_Delete_Semaphore");
	MakeName	(0X118FDD74,	"SMCE_Obtain_Semaphore");
	MakeName	(0X118FDDE0,	"SMCE_Release_Semaphore");
	MakeName	(0X118FDEEC,	"TCCE_Create_Task");
	MakeName	(0X118FE034,	"TCCE_Delete_Task");
	MakeName	(0X118FE104,	"TCCE_Terminate_Task");
	MakeName	(0X118FE19C,	"TCCE_Relinquish");
	MakeName	(0X118FE1C8,	"TCCE_Task_Sleep");
	MakeName	(0X118FE1FC,	"TCCE_Suspend_Error");
	MakeName	(0X118FE39C,	"TCFE_Task_Information");
	MakeName	(0X118FEB2C,	"TMSE_Create_Timer");
	MakeName	(0X119031F8,	"isspace");
	MakeName	(0X11903B88,	"FfxDclStrICmp");
	MakeName	(0X11903C78,	"FfxDclStrNICmp");
	MakeName	(0X11905CD0,	"FfxDclSignOn");
	MakeName	(0X11905D14,	"FlashFXTestFMSL");
	MakeName	(0X11905D68,	"FlashFXStressMT");
	MakeName	(0X11905DBC,	"FlashFXTestVBF");
	MakeName	(0X11905E10,	"FlashFXCheck");
	MakeName	(0X11905E64,	"FlashFXDump");
	MakeName	(0X11905EB8,	"FlashFXImage");
	MakeName	(0X11905F0C,	"FlashFXDiskInfo");
	MakeName	(0X11905F60,	"FlashFxRemount");
	MakeName	(0X11905FB4,	"FfxToolFramework");
	MakeName	(0X1190625C,	"FfxCheckUnits");
	MakeName	(0X119063C4,	"glb_119063C4");
	MakeName	(0X11906448,	"VerifyUnit");
	MakeName	(0X11906608,	"StressUnit");
	MakeName	(0X11906BC0,	"IdentifyandTestSpareUnit");
	MakeName	(0X11906DFC,	"CheckSpareUnits");
	MakeName	(0X11906E44,	"FfxDiskInfo");
	MakeName	(0X11906FF0,	"ShowUsage");
	MakeName	(0X1190707C,	"ReportOemInfo");
	MakeName	(0X119073EC,	"ReportVBFInfo");
	MakeName	(0X119078D4,	"MediaCheck");
	MakeName	(0X119079BC,	"ReportFlashFXConfigInfo");
	MakeName	(0X11908258,	"FfxDump");
	MakeName	(0X11908A24,	"glb_11908A24");
	MakeName	(0X119099EC,	"glb_119099EC");
	MakeName	(0X11909AAC,	"FfxImage");
	MakeName	(0X11909F00,	"ReadImage");
	MakeName	(0X1190A298,	"WriteImage");
	MakeName	(0X1190A880,	"glb_1190A880");
	MakeName	(0X1190AD54,	"glb_1190AD54");
	MakeName	(0X1190AEF4,	"FfxRemount");
	MakeName	(0X1190B05C,	"sub_1190B05C");
	MakeName	(0X1190B188,	"FfxTestFMSL");
	MakeName	(0X1190B2E0,	"TestFMSL");
	MakeName	(0X1190B7B4,	"VerifyZoneSize");
	MakeName	(0X1190BB98,	"BlockWrites");
	MakeName	(0X1190C478,	"ButterflyWrites");
	MakeName	(0X1190C5DC,	"IntensiveWrites");
	MakeName	(0X1190C978,	"ExtensiveWrites");
	MakeName	(0X1190CCE4,	"Performance");
	MakeName	(0X1190CFC4,	"EraseMedia");
	MakeName	(0X1190D100,	"ReadEraseAndVerify");
	MakeName	(0X1190D430,	"EraseAndVerify");
	MakeName	(0X1190D670,	"GetReadPerform");
	MakeName	(0X1190D79C,	"GetWritePerform");
	MakeName	(0X1190D984,	"GetErasePerform");
	MakeName	(0X1190DB10,	"BitWriteAndVerify");
	MakeName	(0X1190DC40,	"WriteAndVerify");
	MakeName	(0X1190DD58,	"ReadAndVerify");
	MakeName	(0X1190DE7C,	"Verify");
	MakeName	(0X1190E0D4,	"FillBuffer");
	MakeName	(0X1190E2EC,	"FfxDclRand_call");
	MakeName	(0X1190E314,	"SetSwitches");
	MakeName	(0X1190E5A0,	"glb_1190E5A0");
	MakeName	(0X1190E624,	"FfxStressMT");
	MakeName	(0X1190E88C,	"drivethread");
	MakeName	(0X1190EA1C,	"drivesetup");
	MakeName	(0X1190EC10,	"drivestart");
	MakeName	(0X1190F0FC,	"TestMount");
	MakeName	(0X1190F270,	"testthread");
	MakeName	(0X1190F3C4,	"TestRead");
	MakeName	(0X1190F534,	"TestWrite");
	MakeName	(0X1190F66C,	"glb_1190F66C");
	MakeName	(0X1190F7F0,	"VerifyBlocks");
	MakeName	(0X1190FA5C,	"ReadBlocks");
	MakeName	(0X1190FE50,	"DiscardBlocks");
	MakeName	(0X1190FF1C,	"RandomRange");
	MakeName	(0X1190FFDC,	"ParseTestProbabilities");
	MakeName	(0X11910210,	"randval");
	MakeName	(0X119102E8,	"SetBlockSequence");
	MakeName	(0X119103D4,	"ClaimOwnership");
	MakeName	(0X11910560,	"ReleaseOwnership");
	MakeName	(0X11910720,	"glb_11910720");
	MakeName	(0X11910F74,	"glb_11910F74");
	MakeName	(0X11911098,	"FfxTestVBF");
	MakeName	(0X11911350,	"glb_11911350");
	MakeName	(0X119116E0,	"TestVbfLayer");
	MakeName	(0X11911C54,	"FormatPartition");
	MakeName	(0X11911D24,	"RemountVBF");
	MakeName	(0X11911DC4,	"TestPartitionInfo");
	MakeName	(0X11912060,	"TestSmallBlocks");
	MakeName	(0X11912434,	"TestBigBlocks");
	MakeName	(0X11912684,	"TestUnitInfo");
	MakeName	(0X11912A94,	"TestHugeBlocks");
	MakeName	(0X11913044,	"TestRegionBoundaries");
	MakeName	(0X119134F8,	"TestExercise");
	MakeName	(0X11913878,	"TestDiscard");
	MakeName	(0X11913EFC,	"TestDiscardSet");
	MakeName	(0X119145B0,	"TestCompaction");
	MakeName	(0X1191468C,	"TestErrors");
	MakeName	(0X119148F8,	"Benchmark");
	MakeName	(0X119149C0,	"glb_119149C0");
	MakeName	(0X11914C00,	"glb_11914C00");
	MakeName	(0X11914D60,	"GetDiscardPerform");
	MakeName	(0X1191508C,	"TestFillDisk");
	MakeName	(0X11916490,	"SerializeBuffer");
	MakeName	(0X119165C0,	"ValidateSerializedBuffer");
	MakeName	(0X11916748,	"FillPattern");
	MakeName	(0X119167DC,	"FfxDclRand");
	MakeName	(0X11916874,	"FfxDclStrNCpy");
	MakeName	(0X11916978,	"FfxDclArgCount");
	MakeName	(0X11916A20,	"FfxDclArgRetrieve");
	MakeName	(0X11916B14,	"FfxDclArgClear");
	MakeName	(0X11916BC8,	"EatWhiteSpace");
	MakeName	(0X11916C30,	"FindArgLen");
	MakeName	(0X11916D40,	"FfxDclSystemStatsDisplay");
	MakeName	(0X119171AC,	"FfxDclMemStatsDisplay");
	MakeName	(0X119172B4,	"FfxDclSemaphoreStatsDisplay");
	MakeName	(0X1191743C,	"FfxGetDriveFormatString");
	MakeName	(0X11917458,	"FfxParseDriveNumber");
	MakeName	(0X119175FC,	"FfxDriverGetConfigInfo");
	MakeName	(0X11917790,	"FfxVbfTestRegionMountPerf");
	MakeName	(0X119178B0,	"FfxVbfDiskMetrics");
	MakeName	(0X11917A28,	"FfxVbfUnitMetrics");
	MakeName	(0X1191AD60,	"FfxDclHexDump");
	MakeName	(0X1191B1D0,	"FfxDclSystemStatsQuery");
	MakeName	(0X1191B3CC,	"FfxDecodeIOStatus");
	MakeName	(0X11923094,	"strtoul");
	MakeName	(0X11923600,	"__rt_udiv_2");
	MakeName	(0X11923740,	"__rt_udiv_3");
	MakeName	(0X11923758,	"__rt_udiv");
	MakeName	(0X11923824,	"__rt_sdiv");
	MakeName	(0X11924A98,	"_ll_udiv");
	MakeName	(0X11956DA0,	"FooFFXBbmBarl1102");
	MakeName	(0X11996BA4,	"szCmdName");
	MakeName	(0X1199C7DC,	"hLogCurrent");
	MakeName	(0X1199C7E0,	"ulTickResolution");
	MakeName	(0X1199C7F8,	"gfClockInitialized");
	MakeName	(0X1199C8F8,	"gfClockInitialized_rel");
	MakeName	(0X1199C944,	"hLogCurrent_rel");
	MakeName	(0X1199CB5C,	"ulTickResolution_rel");
	MakeName	(0X119A3250,	"pMutexSync");
	MakeName	(0X119A32A4,	"ulSerialNumber_SerializeBuffer_0");
	MakeName	(0X119BF500,	"SMD_Created_Semaphores_List");
	MakeName	(0X119BF508,	"SMD_List_Protect");
	MakeName	(0X119BF510,	"SMD_Total_Semaphores");
	MakeName	(0X119CCE98,	"TCD_System_Protect");
	MakeName	(0X119CD2C4,	"TCT_Current_Thread1");
	MakeName	(0X119FC1C8,	"pDI");
	MakeNameEx(0X1181FD84, "TCT_Stack_Range_Error", SN_LOCAL);
	MakeNameEx(0X1181FD8C, "TCT_Stack_Range_Okay", SN_LOCAL);
	MakeNameEx(0X1181FDA0, "TCT_No_Stack_Error", SN_LOCAL);
	MakeNameEx(0X1181FDAC, "TCT_Skip_Stack_Check", SN_LOCAL);
	MakeNameEx(0X1187051C, "initialize", SN_LOCAL);
	MakeNameEx(0X118A5F74, "initialize", SN_LOCAL);
	MakeNameEx(0X118A8298, "SetSwitches", SN_LOCAL);
	MakeNameEx(0X119063C4, "ShowUsage", SN_LOCAL);
	MakeNameEx(0X11908A24, "SetSwitches", SN_LOCAL);
	MakeNameEx(0X119099EC, "ShowUsage", SN_LOCAL);
	MakeNameEx(0X1190A880, "ProcessParameters", SN_LOCAL);
	MakeNameEx(0X1190AD54, "ShowUsage", SN_LOCAL);
	MakeNameEx(0X1190B05C, "ShowUsage", SN_LOCAL);
	MakeNameEx(0X1190E5A0, "ShowUsage", SN_LOCAL);
	MakeNameEx(0X1190F66C, "TestDiscard", SN_LOCAL);
	MakeNameEx(0X11910720, "SetSwitches", SN_LOCAL);
	MakeNameEx(0X11910F74, "ShowUsage", SN_LOCAL);
	MakeNameEx(0X11911350, "SetSwitches", SN_LOCAL);
	MakeNameEx(0X119149C0, "GetWritePerform", SN_LOCAL);
	MakeNameEx(0X11914C00, "GetReadPerform", SN_LOCAL);

88

Un peu de posix et libc en plus, je ne suis pas sûr du coup, elles sont vite parcourues.
 MakeName        (0X11951D34,    "putc");
 MakeName        (0X11951DA0,    "puts");
 MakeName        (0X11854E38,    "isprint");
 MakeName        (0X11854E4C,    "calloc"); 
 MakeName        (0X11854F0C,    "printf");
 MakeName        (0X11854FF8,    "fprintf");
 MakeName        (0X11857100,    "atof");
 MakeName        (0X11859F5C,    "stat");

89

Wow, mais il fait quelle taille le boot 2 pour contenir tout ça? O_o

(et donc c'est tout l'OS dans la Flash NOR, et la NAND ne sert qu'au rootfs? si on peut comparer avec l'archi de Nucleus...)

90

squalyl (./89) :
Wow, mais il fait quelle taille le boot 2 pour contenir tout ça? O_o

(et donc c'est tout l'OS dans la Flash NOR, et la NAND ne sert qu'au rootfs? si on peut comparer avec l'archi de Nucleus...)


Dans 1.6Mo on peut caser pas mal de choses.
En fait il pourrait être bien plus petit si TI avait compilé avec l'optimisation, compilé la plupart en Thumb alors que tout est un ARM, évité les fonctions dupliquées (FfxDclXXXX = RelDclXXXX et c'est souvent la même chose que la libc).