############################################################################## # # # IAR ARM ANSI C/C++ Compiler V4.40A/W32 EVALUATION 28/Mar/2008 19:09:06 # # Copyright 1999-2005 IAR Systems. All rights reserved. # # # # Cpu mode = interwork # # Endian = little # # Stack alignment = 4 # # Source file = E:\Ivo\arm\IVOPLAY\MAINMENU.C # # Command line = E:\Ivo\arm\IVOPLAY\MAINMENU.C -D NEWSGOLD -lC # # E:\Ivo\arm\IVOPLAY\NewSGold\List\ -lA # # E:\Ivo\arm\IVOPLAY\NewSGold\List\ -o # # E:\Ivo\arm\IVOPLAY\NewSGold\Obj\ -s9 --no_cse # # --no_unroll --no_inline --no_code_motion --no_tbaa # # --no_clustering --no_scheduling --cpu_mode arm # # --endian little --cpu ARM926EJ-S --stack_align 4 # # --interwork -e --fpu None --dlib_config # # D:\arm\ARM\LIB\dl5tpainl8n.h -I D:\arm\ARM\INC\ # # List file = E:\Ivo\arm\IVOPLAY\NewSGold\List\MAINMENU.lst # # Object file = E:\Ivo\arm\IVOPLAY\NewSGold\Obj\MAINMENU.r79 # # # # # ############################################################################## E:\Ivo\arm\IVOPLAY\MAINMENU.C 1 #include "../inc/swilib.h" 2 #include "language.h" 3 #include "main.h" \ In segment DATA_C, align 1, align-sorted \ static char const __data pt[3] \ pt: \ 00000000 257400 DC8 "%t" 4 #include "spysok.h" 5 #include "conf_loader.h" 6 #include "mediafiles_base.h" 7 8 extern const char playerfolder[128]; 9 \ In segment CODE, align 4, keep-with-next 10 void About() 11 { \ About: \ 00000000 00402DE9 PUSH {LR} 12 ShowMSG(0,(int)LG_COPYRIGHT); \ 00000004 08109FE5 LDR R1,??About_0 ;; `?` \ 00000008 0000A0E3 MOV R0,#+0 \ 0000000C 480100EF SWI +328 13 } \ 00000010 0080BDE8 POP {PC} ;; return \ ??About_0: \ 00000014 ........ DC32 `?` 14 15 \ In segment CODE, align 4, keep-with-next 16 void CreateNewPlaylist() 17 { \ CreateNewPlaylist: \ 00000000 10402DE9 PUSH {R4,LR} 18 CLOSECURENTCSM(); \ 00000004 ........ _BLF CLOSECURENTCSM,??CLOSECURENTCSM??rA 19 WSHDR* w=AllocWS(128); \ 00000008 8000A0E3 MOV R0,#+128 \ 0000000C 250100EF SWI +293 \ 00000010 0040A0E1 MOV R4,R0 20 wsprintf(w,"%sivoplay.elf",playerfolder); \ 00000014 ........ LDR R2,??DataTable1 ;; playerfolder \ 00000018 1C109FE5 LDR R1,??CreateNewPlaylist_0 ;; `?` \ 0000001C 240100EF SWI +292 21 ExecuteFile(w,0,"1.new"); \ 00000020 18209FE5 LDR R2,??CreateNewPlaylist_0+0x4 ;; `?` \ 00000024 0010A0E3 MOV R1,#+0 \ 00000028 0400A0E1 MOV R0,R4 \ 0000002C 940000EF SWI +148 22 FreeWS(w); \ 00000030 0400A0E1 MOV R0,R4 \ 00000034 290100EF SWI +297 23 } \ 00000038 1080BDE8 POP {R4,PC} ;; return \ ??CreateNewPlaylist_0: \ 0000003C ........ DC32 `?` \ 00000040 ........ DC32 `?` \ In segment DATA_Z, align 4, align-sorted 24 IPC_REQ JaLiuBlIuJuliu; \ JaLiuBlIuJuliu: \ 00000000 DS8 12 \ In segment CODE, align 4, keep-with-next 25 void JaLiuBLiuPYVo() 26 { \ JaLiuBLiuPYVo: \ 00000000 00402DE9 PUSH {LR} 27 JaLiuBlIuJuliu.name_from="Ivoplay"; \ 00000004 3C009FE5 LDR R0,??JaLiuBLiuPYVo_0 ;; JaLiuBlIuJuliu + 4 \ 00000008 3C109FE5 LDR R1,??JaLiuBLiuPYVo_0+0x4 ;; `?` \ 0000000C 001080E5 STR R1,[R0, #+0] 28 JaLiuBlIuJuliu.name_to="control_panel|add_point|Ivoplay|0:\\Zbin\\Ivoplay\\menu\\playlist.png|"; \ 00000010 38009FE5 LDR R0,??JaLiuBLiuPYVo_0+0x8 ;; JaLiuBlIuJuliu \ 00000014 38109FE5 LDR R1,??JaLiuBLiuPYVo_0+0xC ;; `?` \ 00000018 001080E5 STR R1,[R0, #+0] 29 JaLiuBlIuJuliu.data=0; \ 0000001C 34009FE5 LDR R0,??JaLiuBLiuPYVo_0+0x10 ;; JaLiuBlIuJuliu + 8 \ 00000020 0010A0E3 MOV R1,#+0 \ 00000024 001080E5 STR R1,[R0, #+0] 30 GBS_SendMessage(MMI_CEPID,MSG_IPC,0,&JaLiuBlIuJuliu); \ 00000028 20309FE5 LDR R3,??JaLiuBLiuPYVo_0+0x8 ;; JaLiuBlIuJuliu \ 0000002C 0020A0E3 MOV R2,#+0 \ 00000030 B010A0E3 MOV R1,#+176 \ 00000034 DE1C81E3 ORR R1,R1,#0xDE00 \ 00000038 0900A0E3 MOV R0,#+9 \ 0000003C 420C80E3 ORR R0,R0,#0x4200 \ 00000040 000100EF SWI +256 31 } \ 00000044 0080BDE8 POP {PC} ;; return \ ??JaLiuBLiuPYVo_0: \ 00000048 ........ DC32 JaLiuBlIuJuliu + 4 \ 0000004C ........ DC32 `?` \ 00000050 ........ DC32 JaLiuBlIuJuliu \ 00000054 ........ DC32 `?` \ 00000058 ........ DC32 JaLiuBlIuJuliu + 8 32 \ In segment CODE, align 4, keep-with-next 33 void Cleaner() 34 { \ Cleaner: \ 00000000 10402DE9 PUSH {R4,LR} 35 WSHDR* w=AllocWS(128); \ 00000004 8000A0E3 MOV R0,#+128 \ 00000008 250100EF SWI +293 \ 0000000C 0040A0E1 MOV R4,R0 36 wsprintf(w,"%scleaner.elf",playerfolder); \ 00000010 ........ LDR R2,??DataTable1 ;; playerfolder \ 00000014 20109FE5 LDR R1,??Cleaner_0+0x4 ;; `?` \ 00000018 240100EF SWI +292 37 ExecuteFile(w,0,""); \ 0000001C 052F8FE2 ADR R2,??Cleaner_0 ;; "" \ 00000020 0010A0E3 MOV R1,#+0 \ 00000024 0400A0E1 MOV R0,R4 \ 00000028 940000EF SWI +148 38 FreeWS(w); \ 0000002C 0400A0E1 MOV R0,R4 \ 00000030 290100EF SWI +297 39 } \ 00000034 1080BDE8 POP {R4,PC} ;; return \ ??Cleaner_0: \ 00000038 00000000 DC8 "",+0,+0,+0 \ 0000003C ........ DC32 `?` 40 \ In segment DATA_Z, align 4, align-sorted 41 CSM_RAM *data; \ `data`: \ 00000000 DS8 4 \ In segment DATA_Z, align 4, align-sorted 42 int MainMenu_ID; \ MainMenu_ID: \ 00000000 DS8 4 43 \ In segment DATA_I, align 4, align-sorted 44 int icon_mediateka[] = {(int)"0:\\Zbin\\Ivoplay\\menu\\mediateka.png",0}; \ icon_mediateka: \ 00000000 DS8 8 \ 00000008 REQUIRE `?` \ In segment DATA_I, align 4, align-sorted 45 int icon_playlist[] = {(int)"0:\\Zbin\\Ivoplay\\menu\\playlist.png",0}; \ icon_playlist: \ 00000000 DS8 8 \ 00000008 REQUIRE `?` \ In segment DATA_I, align 4, align-sorted 46 int icon_new_playlist[] = {(int)"0:\\Zbin\\Ivoplay\\menu\\new_playlist.png",0}; \ icon_new_playlist: \ 00000000 DS8 8 \ 00000008 REQUIRE `?` \ In segment DATA_I, align 4, align-sorted 47 int icon_about[] = {(int)"0:\\Zbin\\Ivoplay\\menu\\about.png",0}; \ icon_about: \ 00000000 DS8 8 \ 00000008 REQUIRE `?` 48 49 50 51 #define NUMITEMS 5 52 \ In segment CODE, align 4, keep-with-next 53 static void patch_header(const HEADER_DESC* head) 54 { \ patch_header: \ 00000000 10402DE9 PUSH {R4,LR} \ 00000004 0040A0E1 MOV R4,R0 55 ((HEADER_DESC*)head)->rc.x=0; \ 00000008 0000A0E3 MOV R0,#+0 \ 0000000C B000C4E1 STRH R0,[R4, #+0] 56 ((HEADER_DESC*)head)->rc.y=YDISP; \ 00000010 B200C4E1 STRH R0,[R4, #+2] 57 ((HEADER_DESC*)head)->rc.x2=ScreenW()-1; \ 00000014 888100EF SWI +33160 \ 00000018 010040E2 SUB R0,R0,#+1 \ 0000001C B400C4E1 STRH R0,[R4, #+4] 58 ((HEADER_DESC*)head)->rc.y2=HeaderH()-1+YDISP; \ 00000020 8A8100EF SWI +33162 \ 00000024 010040E2 SUB R0,R0,#+1 \ 00000028 B600C4E1 STRH R0,[R4, #+6] 59 } \ 0000002C 1080BDE8 POP {R4,PC} ;; return 60 61 62 \ In segment DATA_C, align 4, align-sorted 63 static const HEADER_DESC menuhdr={0,0,0,0,NULL,(int)LG_MENU,LGP_NULL}; \ menuhdr: \ 00000000 000000000000 DC16 0, 0, 0, 0 \ 0000 \ 00000008 00000000.... DC32 0H, `?`, 2147483647 \ ....FFFFFF7F 64 \ In segment DATA_C, align 4, align-sorted 65 static const int mmenusoftkeys[]={0,1,2}; \ mmenusoftkeys: \ 00000000 000000000100 DC32 0, 1, 2 \ 000002000000 66 \ In segment DATA_C, align 4, align-sorted 67 static const char * const menutexts[NUMITEMS]= \ menutexts: \ 00000000 ........ DC32 `?` \ 00000010 ........ DC32 `?` 77 { 78 (void *)CreateMenuLibrary, 79 (void *)CreateMenuFindPlaylist, 80 (void *)CreateNewPlaylist, 81 (void *)About, 82 (void *)CreateBaseOfMediafiles, 83 }; 84 \ In segment DATA_C, align 4, align-sorted 85 static const SOFTKEY_DESC mmenu_sk[]= \ mmenu_sk: \ 00000000 18000000 DC16 24, 0 \ 00000004 ........ DC32 `?` \ 00000008 01000000 DC16 1, 0 \ 0000000C ........ DC32 `?` \ 00000010 3D000000 DC16 61, 0 \ 00000014 FBC0FF7F DC32 2147467515 86 { 87 {0x0018,0x0000,(int)LG_SELECT}, 88 {0x0001,0x0000,(int)LG_CLOSE}, 89 {0x003D,0x0000,(int)LGP_DOIT_PIC} 90 }; 91 \ In segment DATA_C, align 4, align-sorted 92 static const SOFTKEYSTAB mmenu_skt= \ mmenu_skt: \ 00000000 ........0000 DC32 mmenu_sk, 0 \ 0000 93 { 94 mmenu_sk,0 95 }; 96 \ In segment CODE, align 4, keep-with-next 97 void tmenu_ghook(void *data, int cmd) 98 { \ tmenu_ghook: \ 00000000 00402DE9 PUSH {LR} 99 //PNGTOP_DESC *pltop=PNG_TOP(); 100 if (cmd==9) 101 { 102 //pltop->dyn_pltop=NULL; 103 } 104 if (cmd==0x0A) \ 00000004 0A0051E3 CMP R1,#+10 \ 00000008 0080BD18 POPNE {PC} 105 { 106 //pltop->dyn_pltop=XStatusesImgList; 107 DisableIDLETMR(); \ 0000000C 7F0100EF SWI +383 108 } 109 } \ 00000010 0080BDE8 POP {PC} ;; return 110 //static int icon_array[2]; 111 \ In segment CODE, align 4, keep-with-next 112 static void menuitemhandler(void *data, int curitem, void *unk) 113 { \ menuitemhandler: \ 00000000 F0402DE9 PUSH {R4-R7,LR} \ 00000004 0040A0E1 MOV R4,R0 \ 00000008 0150A0E1 MOV R5,R1 114 WSHDR *ws; 115 void *item=AllocMenuItem(data); \ 0000000C 970100EF SWI +407 \ 00000010 0060A0E1 MOV R6,R0 116 ws=AllocMenuWS(data,strlen(menutexts[curitem])); \ 00000014 88009FE5 LDR R0,??menuitemhandler_1 ;; menutexts \ 00000018 050190E7 LDR R0,[R0, +R5, LSL #+2] \ 0000001C 1B0000EF SWI +27 \ 00000020 0010A0E1 MOV R1,R0 \ 00000024 0400A0E1 MOV R0,R4 \ 00000028 980100EF SWI +408 \ 0000002C 0070A0E1 MOV R7,R0 117 wsprintf(ws,pt,menutexts[curitem]); \ 00000030 6C009FE5 LDR R0,??menuitemhandler_1 ;; menutexts \ 00000034 052190E7 LDR R2,[R0, +R5, LSL #+2] \ 00000038 68109FE5 LDR R1,??menuitemhandler_1+0x4 ;; pt \ 0000003C 0700A0E1 MOV R0,R7 \ 00000040 240100EF SWI +292 118 switch(curitem) \ 00000044 0500A0E1 MOV R0,R5 \ 00000048 040050E3 CMP R0,#+4 \ 0000004C 0E00008A BHI ??menuitemhandler_2 \ 00000050 011F8FE2 ADR R1,??menuitemhandler_0 \ 00000054 0010D1E7 LDRB R1,[R1, R0] \ 00000058 01F18FE0 ADD PC,PC,R1, LSL #+2 \ ??menuitemhandler_0: \ 0000005C 01030507 DC8 +1,+3,+5,+7 \ 00000060 01000000 DC8 +1,+0,+0,+0 119 { 120 case 0: 121 SetMenuItemIconArray(data,item,icon_mediateka); \ ??menuitemhandler_3: \ 00000064 40209FE5 LDR R2,??menuitemhandler_1+0x8 ;; icon_mediateka \ 00000068 040000EA B ??menuitemhandler_4 122 break; 123 case 1: 124 SetMenuItemIconArray(data,item,icon_playlist); \ ??menuitemhandler_5: \ 0000006C 3C209FE5 LDR R2,??menuitemhandler_1+0xC ;; icon_playlist \ 00000070 020000EA B ??menuitemhandler_4 125 break; 126 case 2: 127 SetMenuItemIconArray(data,item,icon_new_playlist); \ ??menuitemhandler_6: \ 00000074 38209FE5 LDR R2,??menuitemhandler_1+0x10 ;; icon_new_playlist \ 00000078 000000EA B ??menuitemhandler_4 128 break; 129 case 3: 130 SetMenuItemIconArray(data,item,icon_about); \ ??menuitemhandler_7: \ 0000007C 34209FE5 LDR R2,??menuitemhandler_1+0x14 ;; icon_about \ ??menuitemhandler_4: \ 00000080 0610A0E1 MOV R1,R6 \ 00000084 0400A0E1 MOV R0,R4 \ 00000088 990100EF SWI +409 131 break; 132 case 4: 133 SetMenuItemIconArray(data,item,icon_mediateka); 134 break; 135 } 136 SetMenuItemText(data, item, ws, curitem); \ ??menuitemhandler_2: \ 0000008C 0530A0E1 MOV R3,R5 \ 00000090 0720A0E1 MOV R2,R7 \ 00000094 0610A0E1 MOV R1,R6 \ 00000098 0400A0E1 MOV R0,R4 \ 0000009C 9A0100EF SWI +410 137 } \ 000000A0 F080BDE8 POP {R4-R7,PC} ;; return \ ??menuitemhandler_1: \ 000000A4 ........ DC32 menutexts \ 000000A8 ........ DC32 pt \ 000000AC ........ DC32 icon_mediateka \ 000000B0 ........ DC32 icon_playlist \ 000000B4 ........ DC32 icon_new_playlist \ 000000B8 ........ DC32 icon_about 138 \ In segment CODE, align 4, keep-with-next 139 static int tmenu_keyhook(void *data, GUI_MSG *msg) 140 { \ tmenu_keyhook: \ 00000000 10402DE9 PUSH {R4,LR} \ 00000004 0040A0E1 MOV R4,R0 141 if ((msg->keys==0x18)||(msg->keys==0x3D)) \ 00000008 F200D1E1 LDRSH R0,[R1, #+2] \ 0000000C 180050E3 CMP R0,#+24 \ 00000010 3D005013 CMPNE R0,#+61 \ 00000014 0900001A BNE ??tmenu_keyhook_0 142 { 143 ((void (*)(void))(menuprocs[GetCurMenuItem(data)]))(); \ 00000018 0400A0E1 MOV R0,R4 \ 0000001C 8F0100EF SWI +399 \ 00000020 20109FE5 LDR R1,??tmenu_keyhook_1 ;; menuprocs \ 00000024 000191E7 LDR R0,[R1, +R0, LSL #+2] \ 00000028 30FF2FE1 BLX R0 144 if (GetCurMenuItem(data)==2) {return(1);} \ 0000002C 0400A0E1 MOV R0,R4 \ 00000030 8F0100EF SWI +399 \ 00000034 020050E3 CMP R0,#+2 \ 00000038 0100A003 MOVEQ R0,#+1 \ 0000003C 1080BD08 POPEQ {R4,PC} 145 } 146 return(0); \ ??tmenu_keyhook_0: \ 00000040 0000A0E3 MOV R0,#+0 \ 00000044 1080BDE8 POP {R4,PC} ;; return \ ??tmenu_keyhook_1: \ 00000048 ........ DC32 menuprocs 147 } 148 149 \ In segment DATA_C, align 4, align-sorted 150 static const MENU_DESC tmenu= \ tmenu: \ 00000000 08000000.... DC32 8, tmenu_keyhook, tmenu_ghook, 0H, mmenusoftkeys, mmenu_skt, 17 \ ............ \ 00000000.... \ ............ \ 11000000 \ 0000001C ........0000 DC32 menuitemhandler, 0H, 0H, 5 \ 000000000000 \ 05000000 151 { 152 8,tmenu_keyhook,tmenu_ghook,NULL, 153 mmenusoftkeys, 154 &mmenu_skt, 155 0x11,//MENU_FLAG, 156 menuitemhandler, 157 NULL,//menuitems, 158 NULL,//menuprocs, 159 NUMITEMS 160 }; 161 \ In segment CODE, align 4, keep-with-next 162 void CloseMAINMENU() 163 { \ CloseMAINMENU: \ 00000000 00402DE9 PUSH {LR} 164 GeneralFunc_flag1 (MainMenu_ID,1); \ 00000004 0110A0E3 MOV R1,#+1 \ 00000008 ........ LDR R0,??DataTable3 ;; MainMenu_ID \ 0000000C 000090E5 LDR R0,[R0, #+0] \ 00000010 3D0100EF SWI +317 165 } \ 00000014 0080BDE8 POP {PC} ;; return 166 \ In segment CODE, align 4, keep-with-next 167 void ShowMainMenu() 168 { \ ShowMainMenu: \ 00000000 00402DE9 PUSH {LR} 169 patch_header(&menuhdr); \ 00000004 3C009FE5 LDR R0,??ShowMainMenu_0 ;; menuhdr \ 00000008 ........ BL patch_header 170 MainMenu_ID=CreateMenu(0,0,&tmenu,&menuhdr,0,NUMITEMS,0,0); \ 0000000C 0000A0E3 MOV R0,#+0 \ 00000010 01002DE9 PUSH {R0} \ 00000014 01002DE9 PUSH {R0} \ 00000018 0500A0E3 MOV R0,#+5 \ 0000001C 01002DE9 PUSH {R0} \ 00000020 0000A0E3 MOV R0,#+0 \ 00000024 01002DE9 PUSH {R0} \ 00000028 18309FE5 LDR R3,??ShowMainMenu_0 ;; menuhdr \ 0000002C 18209FE5 LDR R2,??ShowMainMenu_0+0x4 ;; tmenu \ 00000030 0010A0E3 MOV R1,#+0 \ 00000034 520100EF SWI +338 \ 00000038 ........ LDR R1,??DataTable3 ;; MainMenu_ID \ 0000003C 000081E5 STR R0,[R1, #+0] 171 } \ 00000040 10D08DE2 ADD SP,SP,#+16 ;; stack cleaning \ 00000044 0080BDE8 POP {PC} ;; return \ ??ShowMainMenu_0: \ 00000048 ........ DC32 menuhdr \ 0000004C ........ DC32 tmenu \ In segment CODE, align 4, keep-with-next \ ??DataTable1: \ 00000000 ........ DC32 playerfolder \ In segment CODE, align 4, keep-with-next \ ??DataTable3: \ 00000000 ........ DC32 MainMenu_ID \ In segment DATA_ID, align 4, align-sorted \ `?`: \ 00000000 ........0000 DC32 `?_1`, 0 \ 0000 \ In segment DATA_ID, align 4, align-sorted \ `?`: \ 00000000 ........0000 DC32 `?_2`, 0 \ 0000 \ In segment DATA_ID, align 4, align-sorted \ `?`: \ 00000000 ........0000 DC32 `?`, 0 \ 0000 \ In segment DATA_ID, align 4, align-sorted \ `?`: \ 00000000 ........0000 DC32 `?_3`, 0 \ 0000 \ In segment DATA_ID, align 4, align-sorted \ `?`: \ 00000000 ............ DC32 CreateMenuLibrary, CreateMenuFindPlaylist, CreateNewPlaylist \ ............ \ 0000000C ............ DC32 About, CreateBaseOfMediafiles \ .... \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 303A5C5A6269 DC8 "0:\\Zbin\\Ivoplay\\menu\\new_playlist.png" \ 6E5C49766F70 \ 6C61795C6D65 \ 6E755C6E6577 \ 5F706C61796C \ 6973742E706E \ 6700 \ 00000026 0000 DC8 0, 0 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 CCE5EDFE00 DC8 "\314\345\355\376" \ 00000005 000000 DC8 0, 0, 0 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 CEE120FDEBFC DC8 "\316\341 \375\353\374\364\345..." \ F4E52E2E2E00 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 C2FBE1EEF000 DC8 "\302\373\341\356\360" \ 00000006 0000 DC8 0, 0 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 C7E0EAF0FBF2 DC8 "\307\340\352\360\373\362\374" \ FC00 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 49766F706C61 DC8 49H, 76H, 6FH, 70H, 6CH, 61H, 79H, 0AH \ 790A \ 00000008 7620372E300A DC8 76H, 20H, 37H, 2EH, 30H, 0AH, 28H, 63H \ 2863 \ 00000010 292062792049 DC8 29H, 20H, 62H, 79H, 20H, 49H, 76H, 6FH \ 766F \ 00000018 0A2872292053 DC8 0AH, 28H, 72H, 29H, 20H, 53H, 54H, 41H \ 5441 \ 00000020 4C4B45525F37 DC8 4CH, 4BH, 45H, 52H, 5FH, 37H, 31H, 2CH \ 312C \ 00000028 204B72654E2C DC8 20H, 4BH, 72H, 65H, 4EH, 2CH, 20H, 44H \ 2044 \ 00000030 727569642C20 DC8 72H, 75H, 69H, 64H, 2CH, 20H, 66H, 65H \ 6665 \ 00000038 616E6F722C20 DC8 61H, 6EH, 6FH, 72H, 2CH, 20H, 28H, 53H \ 2853 \ 00000040 75446558292C DC8 75H, 44H, 65H, 58H, 29H, 2CH, 20H, 44H \ 2044 \ 00000048 6F6262793030 DC8 6FH, 62H, 62H, 79H, 30H, 30H, 37H, 2CH \ 372C \ 00000050 205468655F5A DC8 20H, 54H, 68H, 65H, 5FH, 5AH, 65H, 6EH \ 656E \ 00000058 00 DC8 0 \ 00000059 000000 DC8 0, 0, 0 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 257369766F70 DC8 "%sivoplay.elf" \ 6C61792E656C \ 6600 \ 0000000E 0000 DC8 0, 0 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 312E6E657700 DC8 "1.new" \ 00000006 0000 DC8 0, 0 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 49766F706C61 DC8 "Ivoplay" \ 7900 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 636F6E74726F DC8 63H, 6FH, 6EH, 74H, 72H, 6FH, 6CH, 5FH \ 6C5F \ 00000008 70616E656C7C DC8 70H, 61H, 6EH, 65H, 6CH, 7CH, 61H, 64H \ 6164 \ 00000010 645F706F696E DC8 64H, 5FH, 70H, 6FH, 69H, 6EH, 74H, 7CH \ 747C \ 00000018 49766F706C61 DC8 49H, 76H, 6FH, 70H, 6CH, 61H, 79H, 7CH \ 797C \ 00000020 303A5C5A6269 DC8 30H, 3AH, 5CH, 5AH, 62H, 69H, 6EH, 5CH \ 6E5C \ 00000028 49766F706C61 DC8 49H, 76H, 6FH, 70H, 6CH, 61H, 79H, 5CH \ 795C \ 00000030 6D656E755C70 DC8 6DH, 65H, 6EH, 75H, 5CH, 70H, 6CH, 61H \ 6C61 \ 00000038 796C6973742E DC8 79H, 6CH, 69H, 73H, 74H, 2EH, 70H, 6EH \ 706E \ 00000040 677C00 DC8 67H, 7CH, 0 \ 00000043 00 DC8 0 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 2573636C6561 DC8 "%scleaner.elf" \ 6E65722E656C \ 6600 \ 0000000E 0000 DC8 0, 0 \ In segment DATA_C, align 4, align-sorted \ `?_1`: \ 00000000 303A5C5A6269 DC8 "0:\\Zbin\\Ivoplay\\menu\\mediateka.png" \ 6E5C49766F70 \ 6C61795C6D65 \ 6E755C6D6564 \ 696174656B61 \ 2E706E6700 \ 00000023 00 DC8 0 \ In segment DATA_C, align 4, align-sorted \ `?_2`: \ 00000000 303A5C5A6269 DC8 "0:\\Zbin\\Ivoplay\\menu\\playlist.png" \ 6E5C49766F70 \ 6C61795C6D65 \ 6E755C706C61 \ 796C6973742E \ 706E6700 \ 00000022 0000 DC8 0, 0 \ In segment DATA_C, align 1, align-sorted \ 00000000 00 DC8 "" \ In segment DATA_C, align 4, align-sorted \ `?_3`: \ 00000000 303A5C5A6269 DC8 "0:\\Zbin\\Ivoplay\\menu\\about.png" \ 6E5C49766F70 \ 6C61795C6D65 \ 6E755C61626F \ 75742E706E67 \ 00 \ 0000001F 00 DC8 0 Maximum stack usage in bytes: Function CSTACK -------- ------ About 4 Cleaner 8 CloseMAINMENU 4 CreateNewPlaylist 8 JaLiuBLiuPYVo 4 ShowMainMenu 20 menuitemhandler 20 patch_header 8 tmenu_ghook 4 tmenu_keyhook 8 Segment part sizes: Function/Label Bytes -------------- ----- pt 3 About 24 CreateNewPlaylist 68 JaLiuBlIuJuliu 12 JaLiuBLiuPYVo 92 Cleaner 64 data 4 MainMenu_ID 4 icon_mediateka 8 icon_playlist 8 icon_new_playlist 8 icon_about 8 patch_header 48 menuhdr 20 mmenusoftkeys 12 menutexts 20 menuprocs 20 mmenu_sk 24 mmenu_skt 8 tmenu_ghook 20 menuitemhandler 188 tmenu_keyhook 76 tmenu 44 CloseMAINMENU 24 ShowMainMenu 80 ??DataTable1 4 ??DataTable3 4 ? 8 ? 8 ? 8 ? 8 ? 20 ? 40 ? 8 ? 12 ? 8 ? 8 ? 92 ? 16 ? 8 ? 8 ? 68 ? 16 ?_1 36 ?_2 36 ? 1 ?_3 32 Others 76 744 bytes in segment CODE 596 bytes in segment DATA_C 52 bytes in segment DATA_I 52 bytes in segment DATA_ID 20 bytes in segment DATA_Z 24 bytes in segment INITTAB 692 bytes of CODE memory (+ 76 bytes shared) 648 bytes of CONST memory 72 bytes of DATA memory Errors: none Warnings: none