############################################################################## # # # IAR ARM ANSI C/C++ Compiler V4.40A/W32 EVALUATION 28/Mar/2008 19:09:09 # # Copyright 1999-2005 IAR Systems. All rights reserved. # # # # Cpu mode = interwork # # Endian = little # # Stack alignment = 4 # # Source file = E:\Ivo\arm\IVOPLAY\mediafiles.c # # Command line = E:\Ivo\arm\IVOPLAY\mediafiles.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\mediafiles.lst # # Object file = E:\Ivo\arm\IVOPLAY\NewSGold\Obj\mediafiles.r79 # # # # # ############################################################################## E:\Ivo\arm\IVOPLAY\mediafiles.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" \ In segment DATA_C, align 1, align-sorted \ static char const __data pp[1] \ pp: \ 00000000 00 DC8 "" 4 #include "mainmenu.h" 5 #include "conf_loader.h" 6 7 extern const char playerfolder[128]; 8 \ In segment DATA_Z, align 4, align-sorted 9 int curent=0,select_art=0,select_alb=0,select_tra=0,max_art,max_alb,max_tra; \ curent: \ 00000000 DS8 4 \ In segment DATA_Z, align 4, align-sorted \ select_art: \ 00000000 DS8 4 \ In segment DATA_Z, align 4, align-sorted \ select_alb: \ 00000000 DS8 4 \ In segment DATA_Z, align 4, align-sorted \ select_tra: \ 00000000 DS8 4 \ In segment DATA_Z, align 4, align-sorted \ max_art: \ 00000000 DS8 4 \ In segment DATA_Z, align 4, align-sorted \ max_alb: \ 00000000 DS8 4 \ In segment DATA_Z, align 4, align-sorted \ max_tra: \ 00000000 DS8 4 \ In segment DATA_I, align 4, align-sorted 10 int ToView=1; \ ToView: \ 00000000 DS8 4 \ 00000004 REQUIRE `?` \ In segment DATA_Z, align 4, align-sorted 11 char masyv[30000]; \ masyv: \ 00000000 DS8 30000 12 typedef struct 13 { 14 char c[30]; 15 int i; 16 }p; \ In segment DATA_Z, align 4, align-sorted 17 p artists[50],albums[50],tracks[200]; \ artists: \ 00000000 DS8 1800 \ In segment DATA_Z, align 4, align-sorted \ albums: \ 00000000 DS8 1800 \ In segment DATA_Z, align 4, align-sorted \ tracks: \ 00000000 DS8 7200 \ In segment DATA_C, align 4, align-sorted 18 const RECT Canvas3={0,0,131,175}; \ Canvas3: \ 00000000 000000008300 DC16 0, 0, 131, 175 \ AF00 \ In segment DATA_Z, align 4, align-sorted 19 int GUI2; \ GUI2: \ 00000000 DS8 4 \ In segment CODE, align 4, keep-with-next 20 void OnRedraw4(MAIN_GUI *data) // OnRedraw 21 { \ OnRedraw4: \ 00000000 F04F2DE9 PUSH {R4-R11,LR} \ 00000004 04D04DE2 SUB SP,SP,#+4 22 WSHDR* a=AllocWS(128); \ 00000008 8000A0E3 MOV R0,#+128 \ 0000000C 250100EF SWI +293 \ 00000010 0040A0E1 MOV R4,R0 23 WSHDR* b=AllocWS(128); \ 00000014 8000A0E3 MOV R0,#+128 \ 00000018 250100EF SWI +293 \ 0000001C 0050A0E1 MOV R5,R0 24 DrawImg(0,0,(int)GetFon()); \ 00000020 ........ _BLF GetFon,??GetFon??rA \ 00000024 0020A0E1 MOV R2,R0 \ 00000028 0010A0E3 MOV R1,#+0 \ 0000002C 0000A0E3 MOV R0,#+0 \ 00000030 230000EF SWI +35 25 switch(ToView) \ 00000034 ........ LDR R0,??DataTable0 ;; ToView \ 00000038 000090E5 LDR R0,[R0, #+0] \ 0000003C 010050E2 SUBS R0,R0,#+1 \ 00000040 0400000A BEQ ??OnRedraw4_0 \ 00000044 010050E2 SUBS R0,R0,#+1 \ 00000048 8A00000A BEQ ??OnRedraw4_1 \ 0000004C 010050E2 SUBS R0,R0,#+1 \ 00000050 1301000A BEQ ??OnRedraw4_2 \ 00000054 C70100EA B ??OnRedraw4_3 26 { 27 case 1: 28 { 29 int bottom,top; 30 if (max_art>9) \ ??OnRedraw4_0: \ 00000058 ........ LDR R0,??DataTable9 ;; max_art \ 0000005C 000090E5 LDR R0,[R0, #+0] \ 00000060 0A0050E3 CMP R0,#+10 \ 00000064 140000BA BLT ??OnRedraw4_4 31 { 32 if((select_art-4)>=0){top=select_art-4;}else{top=0;} \ 00000068 ........ LDR R0,??DataTable21 ;; select_art \ 0000006C 000090E5 LDR R0,[R0, #+0] \ 00000070 040050E2 SUBS R0,R0,#+4 \ 00000074 0300004A BMI ??OnRedraw4_5 \ 00000078 ........ LDR R0,??DataTable21 ;; select_art \ 0000007C 000090E5 LDR R0,[R0, #+0] \ 00000080 047040E2 SUB R7,R0,#+4 \ 00000084 000000EA B ??OnRedraw4_6 \ ??OnRedraw4_5: \ 00000088 0070A0E3 MOV R7,#+0 33 if (top+10max_art) \ 00000090 ........ LDR R0,??DataTable9 ;; max_art \ 00000094 000090E5 LDR R0,[R0, #+0] \ 00000098 060050E1 CMP R0,R6 \ 0000009C 0B0000AA BGE ??OnRedraw4_7 36 { 37 while (bottom!=max_art) {bottom--;top--;} \ ??OnRedraw4_8: \ 000000A0 ........ LDR R0,??DataTable9 ;; max_art \ 000000A4 000090E5 LDR R0,[R0, #+0] \ 000000A8 000056E1 CMP R6,R0 \ 000000AC 0700000A BEQ ??OnRedraw4_7 \ 000000B0 016046E2 SUB R6,R6,#+1 \ 000000B4 017047E2 SUB R7,R7,#+1 \ 000000B8 F8FFFFEA B ??OnRedraw4_8 38 } 39 } 40 else 41 { 42 top=0; \ ??OnRedraw4_4: \ 000000BC 0070A0E3 MOV R7,#+0 43 bottom=max_art; \ 000000C0 ........ LDR R0,??DataTable9 ;; max_art \ 000000C4 006090E5 LDR R6,[R0, #+0] 44 } 45 int bkcolor=23; 46 if (max_art!=0) \ 000000C8 000056E3 CMP R6,#+0 \ 000000CC 4B00000A BEQ ??OnRedraw4_9 47 { 48 for (int i=top;i` \ 00000220 0400A0E1 MOV R0,R4 \ 00000224 240100EF SWI +292 72 DrawString(a,1,3,128,176,7,TEXT_ALIGNRIGHT,GetPaletteAdrByColorIndex(GetKatalogfontcolour()),GetPaletteAdrByColorIndex(23)); \ 00000228 1700A0E3 MOV R0,#+23 \ 0000022C 2E0100EF SWI +302 \ 00000230 0060A0E1 MOV R6,R0 \ 00000234 ........ _BLF GetKatalogfontcolour,??GetKatalogfontcolour??rA \ 00000238 2E0100EF SWI +302 \ 0000023C 40002DE9 PUSH {R6} \ 00000240 01002DE9 PUSH {R0} \ 00000244 0400A0E3 MOV R0,#+4 \ 00000248 01002DE9 PUSH {R0} \ 0000024C 0700A0E3 MOV R0,#+7 \ 00000250 01002DE9 PUSH {R0} \ 00000254 B000A0E3 MOV R0,#+176 \ 00000258 01002DE9 PUSH {R0} \ 0000025C 8030A0E3 MOV R3,#+128 \ 00000260 0320A0E3 MOV R2,#+3 \ 00000264 0110A0E3 MOV R1,#+1 \ 00000268 0400A0E1 MOV R0,R4 \ 0000026C 4C0100EF SWI +332 73 wsprintf(a,pt,LG_ARTISTS); \ 00000270 20259FE5 LDR R2,??OnRedraw4_13+0x8 ;; `?9) \ ??OnRedraw4_1: \ 00000278 ........ LDR R0,??DataTable83 ;; max_alb \ 0000027C 000090E5 LDR R0,[R0, #+0] \ 00000280 0A0050E3 CMP R0,#+10 \ 00000284 140000BA BLT ??OnRedraw4_17 86 { 87 if((select_alb-4)>=0){top=select_alb-4;}else{top=0;} \ 00000288 ........ LDR R0,??DataTable115 ;; select_alb \ 0000028C 000090E5 LDR R0,[R0, #+0] \ 00000290 040050E2 SUBS R0,R0,#+4 \ 00000294 0300004A BMI ??OnRedraw4_18 \ 00000298 ........ LDR R0,??DataTable115 ;; select_alb \ 0000029C 000090E5 LDR R0,[R0, #+0] \ 000002A0 047040E2 SUB R7,R0,#+4 \ 000002A4 000000EA B ??OnRedraw4_19 \ ??OnRedraw4_18: \ 000002A8 0070A0E3 MOV R7,#+0 88 if (top+10max_alb) \ 000002B0 ........ LDR R0,??DataTable83 ;; max_alb \ 000002B4 000090E5 LDR R0,[R0, #+0] \ 000002B8 060050E1 CMP R0,R6 \ 000002BC 0B0000AA BGE ??OnRedraw4_20 91 { 92 while (bottom!=max_alb) {bottom--;top--;} \ ??OnRedraw4_21: \ 000002C0 ........ LDR R0,??DataTable83 ;; max_alb \ 000002C4 000090E5 LDR R0,[R0, #+0] \ 000002C8 000056E1 CMP R6,R0 \ 000002CC 0700000A BEQ ??OnRedraw4_20 \ 000002D0 016046E2 SUB R6,R6,#+1 \ 000002D4 017047E2 SUB R7,R7,#+1 \ 000002D8 F8FFFFEA B ??OnRedraw4_21 93 } 94 } 95 else 96 { 97 top=0; \ ??OnRedraw4_17: \ 000002DC 0070A0E3 MOV R7,#+0 98 bottom=max_alb; \ 000002E0 ........ LDR R0,??DataTable83 ;; max_alb \ 000002E4 006090E5 LDR R6,[R0, #+0] 99 } 100 int bkcolor=23; 101 if (max_alb!=0) \ 000002E8 000056E3 CMP R6,#+0 \ 000002EC 4B00000A BEQ ??OnRedraw4_22 102 { 103 for (int i=top;i` \ 00000440 0400A0E1 MOV R0,R4 \ 00000444 240100EF SWI +292 127 DrawString(a,1,3,128,176,7,TEXT_ALIGNRIGHT,GetPaletteAdrByColorIndex(GetKatalogfontcolour()),GetPaletteAdrByColorIndex(23)); \ 00000448 1700A0E3 MOV R0,#+23 \ 0000044C 2E0100EF SWI +302 \ 00000450 0060A0E1 MOV R6,R0 \ 00000454 ........ _BLF GetKatalogfontcolour,??GetKatalogfontcolour??rA \ 00000458 2E0100EF SWI +302 \ 0000045C 40002DE9 PUSH {R6} \ 00000460 01002DE9 PUSH {R0} \ 00000464 0400A0E3 MOV R0,#+4 \ 00000468 01002DE9 PUSH {R0} \ 0000046C 0700A0E3 MOV R0,#+7 \ 00000470 01002DE9 PUSH {R0} \ 00000474 B000A0E3 MOV R0,#+176 \ 00000478 01002DE9 PUSH {R0} \ 0000047C 8030A0E3 MOV R3,#+128 \ 00000480 0320A0E3 MOV R2,#+3 \ 00000484 0110A0E3 MOV R1,#+1 \ 00000488 0400A0E1 MOV R0,R4 \ 0000048C 4C0100EF SWI +332 128 wsprintf(a,pt,artists[select_art].c); \ 00000490 ........ LDR R0,??DataTable21 ;; select_art \ 00000494 000090E5 LDR R0,[R0, #+0] \ 00000498 2410A0E3 MOV R1,#+36 \ 0000049C ........ LDR R2,??DataTable63 ;; artists \ 000004A0 890000EA B ??OnRedraw4_28 129 DrawString(a,1,3,90,15,FONT_SMALL_BOLD,TEXT_ALIGNLEFT,GetPaletteAdrByColorIndex(GetKatalogfontcolour()),GetPaletteAdrByColorIndex(23)); 130 //wsprintf(wss.ws1,pt,LG_REMOVE); 131 //DrawString(wss.ws1,1,163,130,176,7,TEXT_ALIGNLEFT,GetPaletteAdrByColorIndex(katalogfontcolour),GetPaletteAdrByColorIndex(23)); 132 //wsprintf(wss.ws1,pt,LG_ADD); 133 //DrawString(wss.ws1,1,163,130,176,7,TEXT_ALIGNRIGHT,GetPaletteAdrByColorIndex(katalogfontcolour),GetPaletteAdrByColorIndex(23)); 134 DrawLine(0,17,132,17,0,GetPaletteAdrByColorIndex(GetKatalogfontcolour())); 135 DrawLine(92,17,92,0,0,GetPaletteAdrByColorIndex(GetKatalogfontcolour())); 136 }break; 137 case 3: 138 { 139 int bottom,top; 140 if (max_tra>9) \ ??OnRedraw4_2: \ 000004A4 ........ LDR R0,??DataTable127 ;; max_tra \ 000004A8 000090E5 LDR R0,[R0, #+0] \ 000004AC 0A0050E3 CMP R0,#+10 \ 000004B0 140000BA BLT ??OnRedraw4_29 141 { 142 if((select_tra-4)>=0){top=select_tra-4;}else{top=0;} \ 000004B4 ........ LDR R0,??DataTable122 ;; select_tra \ 000004B8 000090E5 LDR R0,[R0, #+0] \ 000004BC 040050E2 SUBS R0,R0,#+4 \ 000004C0 0300004A BMI ??OnRedraw4_30 \ 000004C4 ........ LDR R0,??DataTable122 ;; select_tra \ 000004C8 000090E5 LDR R0,[R0, #+0] \ 000004CC 047040E2 SUB R7,R0,#+4 \ 000004D0 000000EA B ??OnRedraw4_31 \ ??OnRedraw4_30: \ 000004D4 0070A0E3 MOV R7,#+0 143 if (top+10max_tra) \ 000004DC ........ LDR R0,??DataTable127 ;; max_tra \ 000004E0 000090E5 LDR R0,[R0, #+0] \ 000004E4 060050E1 CMP R0,R6 \ 000004E8 0B0000AA BGE ??OnRedraw4_32 146 { 147 while (bottom!=max_tra) {bottom--;top--;} \ ??OnRedraw4_33: \ 000004EC ........ LDR R0,??DataTable127 ;; max_tra \ 000004F0 000090E5 LDR R0,[R0, #+0] \ 000004F4 000056E1 CMP R6,R0 \ 000004F8 0700000A BEQ ??OnRedraw4_32 \ 000004FC 016046E2 SUB R6,R6,#+1 \ 00000500 017047E2 SUB R7,R7,#+1 \ 00000504 F8FFFFEA B ??OnRedraw4_33 148 } 149 } 150 else 151 { 152 top=0; \ ??OnRedraw4_29: \ 00000508 0070A0E3 MOV R7,#+0 153 bottom=max_tra; \ 0000050C ........ LDR R0,??DataTable127 ;; max_tra \ 00000510 006090E5 LDR R6,[R0, #+0] 154 } 155 int bkcolor=23; 156 if (max_tra!=0) \ 00000514 000056E3 CMP R6,#+0 \ 00000518 4B00000A BEQ ??OnRedraw4_34 157 { 158 for (int i=top;i` \ 0000066C 0400A0E1 MOV R0,R4 \ 00000670 240100EF SWI +292 182 DrawString(a,1,3,128,176,7,TEXT_ALIGNRIGHT,GetPaletteAdrByColorIndex(GetKatalogfontcolour()),GetPaletteAdrByColorIndex(23)); \ 00000674 1700A0E3 MOV R0,#+23 \ 00000678 2E0100EF SWI +302 \ 0000067C 0060A0E1 MOV R6,R0 \ 00000680 ........ _BLF GetKatalogfontcolour,??GetKatalogfontcolour??rA \ 00000684 2E0100EF SWI +302 \ 00000688 40002DE9 PUSH {R6} \ 0000068C 01002DE9 PUSH {R0} \ 00000690 0400A0E3 MOV R0,#+4 \ 00000694 01002DE9 PUSH {R0} \ 00000698 0700A0E3 MOV R0,#+7 \ 0000069C 01002DE9 PUSH {R0} \ 000006A0 B000A0E3 MOV R0,#+176 \ 000006A4 01002DE9 PUSH {R0} \ 000006A8 8030A0E3 MOV R3,#+128 \ 000006AC 0320A0E3 MOV R2,#+3 \ 000006B0 0110A0E3 MOV R1,#+1 \ 000006B4 0400A0E1 MOV R0,R4 \ 000006B8 4C0100EF SWI +332 183 wsprintf(a,pt,albums[select_alb].c); \ 000006BC ........ LDR R0,??DataTable115 ;; select_alb \ 000006C0 000090E5 LDR R0,[R0, #+0] \ 000006C4 2410A0E3 MOV R1,#+36 \ 000006C8 ........ LDR R2,??DataTable116 ;; albums \ ??OnRedraw4_28: \ 000006CC 912022E0 MLA R2,R1,R0,R2 \ ??OnRedraw4_16: \ 000006D0 B8109FE5 LDR R1,??OnRedraw4_13 ;; pt \ 000006D4 0400A0E1 MOV R0,R4 \ 000006D8 240100EF SWI +292 184 DrawString(a,1,3,90,15,FONT_SMALL_BOLD,TEXT_ALIGNLEFT,GetPaletteAdrByColorIndex(GetKatalogfontcolour()),GetPaletteAdrByColorIndex(23)); \ 000006DC 1700A0E3 MOV R0,#+23 \ 000006E0 2E0100EF SWI +302 \ 000006E4 0060A0E1 MOV R6,R0 \ 000006E8 ........ _BLF GetKatalogfontcolour,??GetKatalogfontcolour??rA \ 000006EC 2E0100EF SWI +302 \ 000006F0 40002DE9 PUSH {R6} \ 000006F4 01002DE9 PUSH {R0} \ 000006F8 0100A0E3 MOV R0,#+1 \ 000006FC 01002DE9 PUSH {R0} \ 00000700 0C00A0E3 MOV R0,#+12 \ 00000704 01002DE9 PUSH {R0} \ 00000708 0F00A0E3 MOV R0,#+15 \ 0000070C 01002DE9 PUSH {R0} \ 00000710 5A30A0E3 MOV R3,#+90 \ 00000714 0320A0E3 MOV R2,#+3 \ 00000718 0110A0E3 MOV R1,#+1 \ 0000071C 0400A0E1 MOV R0,R4 \ 00000720 4C0100EF SWI +332 \ 00000724 2CD08DE2 ADD SP,SP,#+44 ;; stack cleaning 185 //wsprintf(wss.ws1,pt,LG_REMOVE); 186 //DrawString(wss.ws1,1,163,130,176,7,TEXT_ALIGNLEFT,GetPaletteAdrByColorIndex(katalogfontcolour),GetPaletteAdrByColorIndex(23)); 187 //wsprintf(wss.ws1,pt,LG_ADD); 188 //DrawString(wss.ws1,1,163,130,176,7,TEXT_ALIGNRIGHT,GetPaletteAdrByColorIndex(katalogfontcolour),GetPaletteAdrByColorIndex(23)); 189 DrawLine(0,17,132,17,0,GetPaletteAdrByColorIndex(GetKatalogfontcolour())); \ 00000728 ........ _BLF GetKatalogfontcolour,??GetKatalogfontcolour??rA \ 0000072C 2E0100EF SWI +302 \ 00000730 01002DE9 PUSH {R0} \ 00000734 0000A0E3 MOV R0,#+0 \ 00000738 01002DE9 PUSH {R0} \ 0000073C 1130A0E3 MOV R3,#+17 \ 00000740 8420A0E3 MOV R2,#+132 \ 00000744 1110A0E3 MOV R1,#+17 \ 00000748 B30100EF SWI +435 190 DrawLine(92,17,92,0,0,GetPaletteAdrByColorIndex(GetKatalogfontcolour())); \ 0000074C ........ _BLF GetKatalogfontcolour,??GetKatalogfontcolour??rA \ 00000750 2E0100EF SWI +302 \ 00000754 01002DE9 PUSH {R0} \ 00000758 0000A0E3 MOV R0,#+0 \ 0000075C 01002DE9 PUSH {R0} \ 00000760 0030A0E1 MOV R3,R0 \ 00000764 5C20A0E3 MOV R2,#+92 \ 00000768 1110A0E3 MOV R1,#+17 \ 0000076C 0200A0E1 MOV R0,R2 \ 00000770 B30100EF SWI +435 \ 00000774 10D08DE2 ADD SP,SP,#+16 ;; stack cleaning 191 }break; 192 } 193 FreeWS(a); \ ??OnRedraw4_3: \ 00000778 0400A0E1 MOV R0,R4 \ 0000077C 290100EF SWI +297 194 FreeWS(b); \ 00000780 0500A0E1 MOV R0,R5 \ 00000784 290100EF SWI +297 195 } \ 00000788 04D08DE2 ADD SP,SP,#+4 ;; stack cleaning \ 0000078C F08FBDE8 POP {R4-R11,PC} ;; return \ ??OnRedraw4_13: \ 00000790 ........ DC32 pt \ 00000794 ........ DC32 `?` \ 00000798 ........ DC32 `?gbsmsg->msg==KEY_DOWN) \ 00000008 040091E5 LDR R0,[R1, #+4] \ 0000000C 040090E5 LDR R0,[R0, #+4] \ 00000010 9320A0E3 MOV R2,#+147 \ 00000014 402F82E3 ORR R2,R2,#0x100 \ 00000018 020050E1 CMP R0,R2 \ 0000001C E501001A BNE ??MenuKeys3_1 199 { 200 switch(msg->gbsmsg->submess) \ 00000020 040091E5 LDR R0,[R1, #+4] \ 00000024 080090E5 LDR R0,[R0, #+8] \ 00000028 040040E2 SUB R0,R0,#+4 \ 0000002C 380050E3 CMP R0,#+56 \ 00000030 E001008A BHI ??MenuKeys3_1 \ 00000034 021F8FE2 ADR R1,??MenuKeys3_0 \ 00000038 8000A0E1 MOV R0,R0, LSL #+1 \ 0000003C B01091E1 LDRH R1,[R1, R0] \ 00000040 01F18FE0 ADD PC,PC,R1, LSL #+2 \ ??MenuKeys3_0: \ 00000044 1C00DC01DC01 DC16 +28,+476,+476,+476 \ DC01 \ 0000004C DC01DC01DC01 DC16 +476,+476,+476,+476 \ DC01 \ 00000054 1C00DC01DC01 DC16 +28,+476,+476,+476 \ DC01 \ 0000005C DC01DC01DC01 DC16 +476,+476,+476,+476 \ DC01 \ 00000064 DC01DC01DC01 DC16 +476,+476,+476,+476 \ DC01 \ 0000006C DC01DC017B00 DC16 +476,+476,+123,+476 \ DC01 \ 00000074 DC01DC01DC01 DC16 +476,+476,+476,+476 \ DC01 \ 0000007C DC01DC01DC01 DC16 +476,+476,+476,+476 \ DC01 \ 00000084 DC01DC01DC01 DC16 +476,+476,+476,+476 \ DC01 \ 0000008C DC01DC01DC01 DC16 +476,+476,+476,+476 \ DC01 \ 00000094 DC01DC01DC01 DC16 +476,+476,+476,+476 \ DC01 \ 0000009C DC01DC012500 DC16 +476,+476,+37,+476 \ DC01 \ 000000A4 DC017B00DC01 DC16 +476,+123,+476,+476 \ DC01 \ 000000AC 4C00DC01DC01 DC16 +76,+476,+476,+37 \ 2500 \ 000000B4 4C000000 DC16 +76,+0 201 { 202 case RED_BUTTON:case RIGHT_SOFT: 203 { 204 ToView--; \ ??MenuKeys3_2: \ 000000B8 ........ LDR R0,??DataTable131 ;; ToView \ 000000BC ........ LDR R1,??DataTable131 ;; ToView \ 000000C0 001091E5 LDR R1,[R1, #+0] \ 000000C4 011041E2 SUB R1,R1,#+1 \ 000000C8 001080E5 STR R1,[R0, #+0] 205 if (!ToView) return(1); \ 000000CC 000051E3 CMP R1,#+0 \ 000000D0 3B01001A BNE ??MenuKeys3_3 \ 000000D4 0100A0E3 MOV R0,#+1 \ 000000D8 3B0100EA B ??MenuKeys3_4 206 REDRAW(); 207 }break; 208 case UP_BUTTON:case'2': 209 { 210 switch(ToView) \ ??MenuKeys3_5: \ 000000DC ........ LDR R0,??DataTable131 ;; ToView \ 000000E0 000090E5 LDR R0,[R0, #+0] \ 000000E4 010050E2 SUBS R0,R0,#+1 \ 000000E8 0400000A BEQ ??MenuKeys3_6 \ 000000EC 010050E2 SUBS R0,R0,#+1 \ 000000F0 0E00000A BEQ ??MenuKeys3_7 \ 000000F4 010050E2 SUBS R0,R0,#+1 \ 000000F8 1500000A BEQ ??MenuKeys3_8 \ 000000FC 300100EA B ??MenuKeys3_3 211 { 212 case 1: 213 { 214 select_art--; \ ??MenuKeys3_6: \ 00000100 ........ LDR R0,??DataTable86 ;; select_art \ 00000104 ........ LDR R1,??DataTable86 ;; select_art \ 00000108 001091E5 LDR R1,[R1, #+0] \ 0000010C 011041E2 SUB R1,R1,#+1 \ 00000110 001080E5 STR R1,[R0, #+0] 215 if (select_art==-1) \ 00000114 010071E3 CMN R1,#+1 \ 00000118 2901001A BNE ??MenuKeys3_3 216 { 217 select_art=max_art-1; \ 0000011C ........ LDR R1,??DataTable135 ;; max_art \ ??MenuKeys3_9: \ 00000120 001091E5 LDR R1,[R1, #+0] \ 00000124 011041E2 SUB R1,R1,#+1 \ ??MenuKeys3_10: \ 00000128 001080E5 STR R1,[R0, #+0] 218 } 219 }break; \ ??MenuKeys3_11: \ 0000012C 240100EA B ??MenuKeys3_3 220 case 2: 221 { 222 select_alb--; \ ??MenuKeys3_7: \ 00000130 ........ LDR R0,??DataTable115 ;; select_alb \ 00000134 ........ LDR R1,??DataTable115 ;; select_alb \ 00000138 001091E5 LDR R1,[R1, #+0] \ 0000013C 011041E2 SUB R1,R1,#+1 \ 00000140 001080E5 STR R1,[R0, #+0] 223 if (select_alb==-1) \ 00000144 010071E3 CMN R1,#+1 \ 00000148 1D01001A BNE ??MenuKeys3_3 224 { 225 select_alb=max_alb-1; \ 0000014C ........ LDR R1,??DataTable83 ;; max_alb \ 00000150 F2FFFFEA B ??MenuKeys3_9 226 } 227 }break; 228 case 3: 229 { 230 select_tra--; \ ??MenuKeys3_8: \ 00000154 ........ LDR R0,??DataTable122 ;; select_tra \ 00000158 ........ LDR R1,??DataTable122 ;; select_tra \ 0000015C 001091E5 LDR R1,[R1, #+0] \ 00000160 011041E2 SUB R1,R1,#+1 \ 00000164 001080E5 STR R1,[R0, #+0] 231 if (select_tra==-1) \ 00000168 010071E3 CMN R1,#+1 \ 0000016C 1401001A BNE ??MenuKeys3_3 232 { 233 select_tra=max_tra-1; \ 00000170 ........ LDR R1,??DataTable127 ;; max_tra \ 00000174 E9FFFFEA B ??MenuKeys3_9 234 } 235 }break; 236 } 237 REDRAW(); 238 }break; 239 case DOWN_BUTTON:case'8': 240 { 241 switch(ToView) \ ??MenuKeys3_12: \ 00000178 ........ LDR R0,??DataTable131 ;; ToView \ 0000017C 000090E5 LDR R0,[R0, #+0] \ 00000180 010050E2 SUBS R0,R0,#+1 \ 00000184 0400000A BEQ ??MenuKeys3_13 \ 00000188 010050E2 SUBS R0,R0,#+1 \ 0000018C 0F00000A BEQ ??MenuKeys3_14 \ 00000190 010050E2 SUBS R0,R0,#+1 \ 00000194 1900000A BEQ ??MenuKeys3_15 \ 00000198 090100EA B ??MenuKeys3_3 242 { 243 case 1: 244 { 245 select_art++; \ ??MenuKeys3_13: \ 0000019C ........ LDR R0,??DataTable86 ;; select_art \ 000001A0 ........ LDR R1,??DataTable86 ;; select_art \ 000001A4 001091E5 LDR R1,[R1, #+0] \ 000001A8 011081E2 ADD R1,R1,#+1 \ 000001AC 001080E5 STR R1,[R0, #+0] 246 if (select_art==max_art) \ 000001B0 0100A0E1 MOV R0,R1 \ 000001B4 ........ LDR R1,??DataTable135 ;; max_art \ 000001B8 001091E5 LDR R1,[R1, #+0] \ 000001BC 010050E1 CMP R0,R1 \ 000001C0 FF00001A BNE ??MenuKeys3_3 247 { 248 select_art=0; \ 000001C4 ........ LDR R0,??DataTable86 ;; select_art \ ??MenuKeys3_16: \ 000001C8 0010A0E3 MOV R1,#+0 \ 000001CC D5FFFFEA B ??MenuKeys3_10 249 } 250 }break; 251 case 2: 252 { 253 select_alb++; \ ??MenuKeys3_14: \ 000001D0 ........ LDR R0,??DataTable115 ;; select_alb \ 000001D4 ........ LDR R1,??DataTable115 ;; select_alb \ 000001D8 001091E5 LDR R1,[R1, #+0] \ 000001DC 011081E2 ADD R1,R1,#+1 \ 000001E0 001080E5 STR R1,[R0, #+0] 254 if (select_alb==max_alb) \ 000001E4 0100A0E1 MOV R0,R1 \ 000001E8 ........ LDR R1,??DataTable83 ;; max_alb \ 000001EC 001091E5 LDR R1,[R1, #+0] \ 000001F0 010050E1 CMP R0,R1 \ 000001F4 F200001A BNE ??MenuKeys3_3 255 { 256 select_alb=0; \ 000001F8 ........ LDR R0,??DataTable115 ;; select_alb \ 000001FC F1FFFFEA B ??MenuKeys3_16 257 } 258 }break; 259 case 3: 260 { 261 select_tra++; \ ??MenuKeys3_15: \ 00000200 ........ LDR R0,??DataTable122 ;; select_tra \ 00000204 ........ LDR R1,??DataTable122 ;; select_tra \ 00000208 001091E5 LDR R1,[R1, #+0] \ 0000020C 011081E2 ADD R1,R1,#+1 \ 00000210 001080E5 STR R1,[R0, #+0] 262 if (select_tra==max_tra) \ 00000214 0100A0E1 MOV R0,R1 \ 00000218 ........ LDR R1,??DataTable127 ;; max_tra \ 0000021C 001091E5 LDR R1,[R1, #+0] \ 00000220 010050E1 CMP R0,R1 \ 00000224 E600001A BNE ??MenuKeys3_3 263 { 264 select_tra=0; \ 00000228 ........ LDR R0,??DataTable122 ;; select_tra \ 0000022C 0010A0E3 MOV R1,#+0 \ 00000230 BCFFFFEA B ??MenuKeys3_10 265 } 266 }break; 267 } 268 REDRAW(); 269 }break; 270 case ENTER_BUTTON:case'5': 271 if (ToView==1) \ ??MenuKeys3_17: \ 00000234 ........ LDR R0,??DataTable131 ;; ToView \ 00000238 000090E5 LDR R0,[R0, #+0] \ 0000023C 010050E3 CMP R0,#+1 \ 00000240 7200001A BNE ??MenuKeys3_18 272 { 273 curent=0; \ 00000244 ........ LDR R0,??DataTable147 ;; curent \ 00000248 0010A0E3 MOV R1,#+0 \ 0000024C 001080E5 STR R1,[R0, #+0] 274 char album[30]; 275 for (int i=artists[select_art].i+2;i` \ 000002A8 04008DE2 ADD R0,SP,#+4 \ 000002AC 160000EF SWI +22 281 i++; \ 000002B0 014084E2 ADD R4,R4,#+1 282 } \ ??MenuKeys3_21: \ 000002B4 0000D5E5 LDRB R0,[R5, #+0] \ 000002B8 0D0050E3 CMP R0,#+13 \ 000002BC 0700000A BEQ ??MenuKeys3_23 \ 000002C0 ........ LDR R0,??DataTable86 ;; select_art \ 000002C4 000090E5 LDR R0,[R0, #+0] \ 000002C8 2410A0E3 MOV R1,#+36 \ 000002CC ........ LDR R2,??DataTable63 ;; artists \ 000002D0 912020E0 MLA R0,R1,R0,R2 \ 000002D4 440090E5 LDR R0,[R0, #+68] \ 000002D8 000054E1 CMP R4,R0 \ 000002DC EEFFFFBA BLT ??MenuKeys3_22 283 284 if (strcmp(albums[curent-1].c,album)) \ ??MenuKeys3_23: \ 000002E0 04108DE2 ADD R1,SP,#+4 \ 000002E4 ........ LDR R0,??DataTable147 ;; curent \ 000002E8 000090E5 LDR R0,[R0, #+0] \ 000002EC 2420A0E3 MOV R2,#+36 \ 000002F0 ........ LDR R3,??DataTable116 ;; albums \ 000002F4 923020E0 MLA R0,R2,R0,R3 \ 000002F8 240040E2 SUB R0,R0,#+36 \ 000002FC 190000EF SWI +25 \ 00000300 000050E3 CMP R0,#+0 \ 00000304 1100000A BEQ ??MenuKeys3_24 285 { 286 sprintf(albums[curent].c,album); \ 00000308 04108DE2 ADD R1,SP,#+4 \ 0000030C ........ LDR R0,??DataTable147 ;; curent \ 00000310 000090E5 LDR R0,[R0, #+0] \ 00000314 2420A0E3 MOV R2,#+36 \ 00000318 ........ LDR R3,??DataTable116 ;; albums \ 0000031C 923020E0 MLA R0,R2,R0,R3 \ 00000320 160000EF SWI +22 287 albums[curent].i=i; \ 00000324 ........ LDR R0,??DataTable147 ;; curent \ 00000328 000090E5 LDR R0,[R0, #+0] \ 0000032C 2410A0E3 MOV R1,#+36 \ 00000330 ........ LDR R2,??DataTable116 ;; albums \ 00000334 912020E0 MLA R0,R1,R0,R2 \ 00000338 204080E5 STR R4,[R0, #+32] 288 curent++; \ 0000033C ........ LDR R0,??DataTable147 ;; curent \ 00000340 ........ LDR R1,??DataTable147 ;; curent \ 00000344 001091E5 LDR R1,[R1, #+0] \ 00000348 011081E2 ADD R1,R1,#+1 \ 0000034C 001080E5 STR R1,[R0, #+0] 289 } 290 for (int j=0;j<3;j++) \ ??MenuKeys3_24: \ 00000350 0300A0E3 MOV R0,#+3 \ 00000354 2420A0E3 MOV R2,#+36 \ 00000358 ........ LDR R3,??DataTable63 ;; artists 291 { 292 i++; \ ??MenuKeys3_25: \ 0000035C 014084E2 ADD R4,R4,#+1 293 while ((masyv[i]!=0x0D)&&(i` \ 00000484 04008DE2 ADD R0,SP,#+4 \ 00000488 160000EF SWI +22 317 i++; \ 0000048C 014084E2 ADD R4,R4,#+1 318 } \ ??MenuKeys3_30: \ 00000490 0000D5E5 LDRB R0,[R5, #+0] \ 00000494 0D0050E3 CMP R0,#+13 \ 00000498 0700000A BEQ ??MenuKeys3_32 \ 0000049C ........ LDR R0,??DataTable115 ;; select_alb \ 000004A0 000090E5 LDR R0,[R0, #+0] \ 000004A4 2410A0E3 MOV R1,#+36 \ 000004A8 ........ LDR R2,??DataTable116 ;; albums \ 000004AC 912020E0 MLA R0,R1,R0,R2 \ 000004B0 440090E5 LDR R0,[R0, #+68] \ 000004B4 000054E1 CMP R4,R0 \ 000004B8 EEFFFFBA BLT ??MenuKeys3_31 319 320 //if (strcmp(tracks[curent-1].c,track)) 321 { 322 sprintf(tracks[curent].c,track); \ ??MenuKeys3_32: \ 000004BC 04108DE2 ADD R1,SP,#+4 \ 000004C0 ........ LDR R0,??DataTable147 ;; curent \ 000004C4 000090E5 LDR R0,[R0, #+0] \ 000004C8 2420A0E3 MOV R2,#+36 \ 000004CC ........ LDR R3,??DataTable114 ;; tracks \ 000004D0 923020E0 MLA R0,R2,R0,R3 \ 000004D4 160000EF SWI +22 323 tracks[curent].i=i; \ 000004D8 ........ LDR R0,??DataTable147 ;; curent \ 000004DC 000090E5 LDR R0,[R0, #+0] \ 000004E0 2410A0E3 MOV R1,#+36 \ 000004E4 ........ LDR R2,??DataTable114 ;; tracks \ 000004E8 912020E0 MLA R0,R1,R0,R2 \ 000004EC 204080E5 STR R4,[R0, #+32] 324 curent++; \ 000004F0 ........ LDR R0,??DataTable147 ;; curent \ 000004F4 ........ LDR R1,??DataTable147 ;; curent \ 000004F8 001091E5 LDR R1,[R1, #+0] \ 000004FC 011081E2 ADD R1,R1,#+1 \ 00000500 001080E5 STR R1,[R0, #+0] 325 } 326 327 for (int j=0;j<3;j++) \ 00000504 0300A0E3 MOV R0,#+3 \ 00000508 2420A0E3 MOV R2,#+36 \ 0000050C ........ LDR R3,??DataTable116 ;; albums 328 { 329 i++; \ ??MenuKeys3_33: \ 00000510 014084E2 ADD R4,R4,#+1 330 while ((masyv[i]!=0x0D)&&(i` \ 000005EC 890F8DE2 ADD R0,SP,#+548 \ 000005F0 160000EF SWI +22 352 if ((f=fopen(way, A_WriteOnly+A_Create, P_WRITE, & err ))!=-1) \ 000005F4 0D30A0E1 MOV R3,SP \ 000005F8 402FA0E3 MOV R2,#+256 \ 000005FC 011082E3 ORR R1,R2,#0x1 \ 00000600 890F8DE2 ADD R0,SP,#+548 \ 00000604 0A0000EF SWI +10 \ 00000608 0040A0E1 MOV R4,R0 \ 0000060C 010074E3 CMN R4,#+1 \ 00000610 5E00000A BEQ ??MenuKeys3_36 353 { 354 sprintf(shliah,"%c%c%c\r\n",max_tra,1,select_tra); \ 00000614 ........ LDR R0,??DataTable122 ;; select_tra \ 00000618 000090E5 LDR R0,[R0, #+0] \ 0000061C 01002DE9 PUSH {R0} \ 00000620 0130A0E3 MOV R3,#+1 \ 00000624 ........ LDR R0,??DataTable127 ;; max_tra \ 00000628 002090E5 LDR R2,[R0, #+0] \ 0000062C 98119FE5 LDR R1,??MenuKeys3_35+0x8 ;; `?` \ 00000630 4A0F8DE2 ADD R0,SP,#+296 \ 00000634 160000EF SWI +22 355 fwrite(f,shliah,5,&err); \ 00000638 04308DE2 ADD R3,SP,#+4 \ 0000063C 0520A0E3 MOV R2,#+5 \ 00000640 4A1F8DE2 ADD R1,SP,#+296 \ 00000644 0400A0E1 MOV R0,R4 \ 00000648 0C0000EF SWI +12 356 for (i=0;i` \ 0000066C 490F8DE2 ADD R0,SP,#+292 \ 00000670 160000EF SWI +22 363 j++; \ 00000674 017087E2 ADD R7,R7,#+1 364 } \ ??MenuKeys3_39: \ 00000678 ........ LDR R0,??DataTable149 ;; masyv \ 0000067C 0000D7E7 LDRB R0,[R7, +R0] \ 00000680 0D0050E3 CMP R0,#+13 \ 00000684 0200000A BEQ ??MenuKeys3_40 \ 00000688 240096E5 LDR R0,[R6, #+36] \ 0000068C 000057E1 CMP R7,R0 \ 00000690 F1FFFFBA BLT ??MenuKeys3_38 365 char s[256]=""; \ ??MenuKeys3_40: \ 00000694 24008DE2 ADD R0,SP,#+36 \ 00000698 0010A0E3 MOV R1,#+0 \ 0000069C 402FA0E3 MOV R2,#+256 \ ??MenuKeys3_41: \ 000006A0 042052E2 SUBS R2,R2,#+4 \ 000006A4 021080E7 STR R1,[R0, R2] \ 000006A8 FCFFFF1A BNE ??MenuKeys3_41 366 char *y=strrchr(shliah,'\\')+1; \ 000006AC 5C10A0E3 MOV R1,#+92 \ 000006B0 490F8DE2 ADD R0,SP,#+292 \ 000006B4 170100EF SWI +279 \ 000006B8 017080E2 ADD R7,R0,#+1 367 strncpy(s,shliah,y-shliah); \ 000006BC 490F8DE2 ADD R0,SP,#+292 \ 000006C0 002047E0 SUB R2,R7,R0 \ 000006C4 491F8DE2 ADD R1,SP,#+292 \ 000006C8 24008DE2 ADD R0,SP,#+36 \ 000006CC 160100EF SWI +278 368 s[y-shliah]='\0'; \ 000006D0 490F8DE2 ADD R0,SP,#+292 \ 000006D4 000047E0 SUB R0,R7,R0 \ 000006D8 24108DE2 ADD R1,SP,#+36 \ 000006DC 0020A0E3 MOV R2,#+0 \ 000006E0 0120C0E7 STRB R2,[R0, +R1] 369 sprintf(y,"%s\r\n",y); \ 000006E4 0720A0E1 MOV R2,R7 \ 000006E8 E4109FE5 LDR R1,??MenuKeys3_35+0x10 ;; `?` \ 000006EC 0700A0E1 MOV R0,R7 \ 000006F0 160000EF SWI +22 370 fwrite(f,s,strlen(s),&err); \ 000006F4 24008DE2 ADD R0,SP,#+36 \ 000006F8 1B0000EF SWI +27 \ 000006FC 0020A0E1 MOV R2,R0 \ 00000700 0D30A0E1 MOV R3,SP \ 00000704 24108DE2 ADD R1,SP,#+36 \ 00000708 0400A0E1 MOV R0,R4 \ 0000070C 0C0000EF SWI +12 371 fwrite(f,"*",1,&err); \ 00000710 0D30A0E1 MOV R3,SP \ 00000714 0120A0E3 MOV R2,#+1 \ 00000718 291F8FE2 ADR R1,??MenuKeys3_35 ;; "*" \ 0000071C 0400A0E1 MOV R0,R4 \ 00000720 0C0000EF SWI +12 372 fwrite(f,y,strlen(y),&err); \ 00000724 0700A0E1 MOV R0,R7 \ 00000728 1B0000EF SWI +27 \ 0000072C 0D30A0E1 MOV R3,SP \ 00000730 0020A0E1 MOV R2,R0 \ 00000734 0710A0E1 MOV R1,R7 \ 00000738 0400A0E1 MOV R0,R4 \ 0000073C 0C0000EF SWI +12 \ 00000740 015085E2 ADD R5,R5,#+1 \ 00000744 246086E2 ADD R6,R6,#+36 \ ??MenuKeys3_37: \ 00000748 ........ LDR R0,??DataTable127 ;; max_tra \ 0000074C 000090E5 LDR R0,[R0, #+0] \ 00000750 000055E1 CMP R5,R0 \ 00000754 050000AA BGE ??MenuKeys3_42 \ 00000758 000096E5 LDR R0,[R6, #+0] \ 0000075C 027080E2 ADD R7,R0,#+2 \ 00000760 ........ LDR R1,??DataTable134 ;; pp \ 00000764 490F8DE2 ADD R0,SP,#+292 \ 00000768 160000EF SWI +22 \ 0000076C C1FFFFEA B ??MenuKeys3_39 373 } 374 sprintf(shliah,"%sivoplay.elf",playerfolder); \ ??MenuKeys3_42: \ 00000770 ........ LDR R2,??DataTable132 ;; playerfolder \ 00000774 5C109FE5 LDR R1,??MenuKeys3_35+0x14 ;; `?` \ 00000778 490F8DE2 ADD R0,SP,#+292 \ 0000077C 160000EF SWI +22 375 main(shliah,way); \ 00000780 891F8DE2 ADD R1,SP,#+548 \ 00000784 490F8DE2 ADD R0,SP,#+292 \ 00000788 ........ _BLF main,??main??rA \ 0000078C 010000EA B ??MenuKeys3_43 376 /*CLOSECURENTCSM(); 377 WSHDR* w=AllocWS(128); 378 wsprintf(w,"%sivoplay.elf",playerfolder); 379 ExecuteFile(w,0,way); 380 FreeWS(w);*/ 381 } 382 else 383 { 384 Message(LG_CANT_CREATE_FILE); \ ??MenuKeys3_36: \ 00000790 44009FE5 LDR R0,??MenuKeys3_35+0x18 ;; `?` \ 000007CC ........ DC32 `?` \ 000007D0 ........ DC32 tracks + 32 \ 000007D4 ........ DC32 `?` \ 000007D8 ........ DC32 `?` \ 000007DC ........ DC32 `?` \ 00000020 DA0F8DE2 ADD R0,SP,#+872 \ 00000024 160000EF SWI +22 423 f=fopen(name, A_ReadOnly, P_READ, & err ); \ 00000028 0D30A0E1 MOV R3,SP \ 0000002C 8020A0E3 MOV R2,#+128 \ 00000030 0010A0E3 MOV R1,#+0 \ 00000034 DA0F8DE2 ADD R0,SP,#+872 \ 00000038 0A0000EF SWI +10 \ 0000003C 0040A0E1 MOV R4,R0 424 if (f!=-1) \ 00000040 010074E3 CMN R4,#+1 \ 00000044 1C00000A BEQ ??ViewFiles_1 425 { 426 DIR_ENTRY de; 427 FindFirstFile(&de,name,&err); \ 00000048 0D20A0E1 MOV R2,SP \ 0000004C DA1F8DE2 ADD R1,SP,#+872 \ 00000050 24008DE2 ADD R0,SP,#+36 \ 00000054 6B0000EF SWI +107 428 fread(f,masyv,de.file_size,&err); \ 00000058 0D30A0E1 MOV R3,SP \ 0000005C 4C209DE5 LDR R2,[SP, #+76] \ 00000060 ........ LDR R1,??DataTable149 ;; masyv \ 00000064 0400A0E1 MOV R0,R4 \ 00000068 0B0000EF SWI +11 429 sprintf(artist,pp); \ 0000006C ........ LDR R1,??DataTable134 ;; pp \ 00000070 04008DE2 ADD R0,SP,#+4 \ 00000074 160000EF SWI +22 430 for (int i=0;igui.canvas=(void *)(&Canvas3); \ 000000DC 34019FE5 LDR R0,??ViewFiles_0+0x8 ;; Canvas3 \ 000000E0 000084E5 STR R0,[R4, #+0] 462 main_gui->gui.flag30=2; \ 000000E4 0200A0E3 MOV R0,#+2 \ 000000E8 300084E5 STR R0,[R4, #+48] 463 main_gui->gui.methods=(void *)gui_methods4; \ 000000EC 28019FE5 LDR R0,??ViewFiles_0+0xC ;; gui_methods4 \ 000000F0 040084E5 STR R0,[R4, #+4] 464 main_gui->gui.item_ll.data_mfree=(void (*)(void *))mfree_adr(); \ 000000F4 158000EF SWI +32789 \ 000000F8 200084E5 STR R0,[R4, #+32] 465 GUI2=CreateGUI(main_gui); \ 000000FC 0400A0E1 MOV R0,R4 \ 00000100 370100EF SWI +311 \ 00000104 ........ LDR R1,??DataTable138 ;; GUI2 \ 00000108 000081E5 STR R0,[R1, #+0] 466 return(0); \ 0000010C 0000A0E3 MOV R0,#+0 \ 00000110 A8D08DE2 ADD SP,SP,#+168 ;; stack cleaning \ 00000114 40DE8DE2 ADD SP,SP,#+1024 \ 00000118 7080BDE8 POP {R4-R6,PC} ;; return \ ??ViewFiles_4: \ 0000011C ........ LDRB R3,[R6], #+1 \ 00000120 04208DE2 ADD R2,SP,#+4 \ 00000124 ........ LDR R1,??DataTable139 ;; `?` \ 00000128 04008DE2 ADD R0,SP,#+4 \ 0000012C 160000EF SWI +22 \ 00000130 015085E2 ADD R5,R5,#+1 \ ??ViewFiles_5: \ 00000134 0000D6E5 LDRB R0,[R6, #+0] \ 00000138 0D0050E3 CMP R0,#+13 \ 0000013C 0200000A BEQ ??ViewFiles_6 \ 00000140 4C009DE5 LDR R0,[SP, #+76] \ 00000144 000055E1 CMP R5,R0 \ 00000148 F3FFFF3A BCC ??ViewFiles_4 \ ??ViewFiles_6: \ 0000014C 04108DE2 ADD R1,SP,#+4 \ 00000150 ........ LDR R0,??DataTable147 ;; curent \ 00000154 000090E5 LDR R0,[R0, #+0] \ 00000158 2420A0E3 MOV R2,#+36 \ 0000015C ........ LDR R3,??DataTable145 ;; artists \ 00000160 923020E0 MLA R0,R2,R0,R3 \ 00000164 240040E2 SUB R0,R0,#+36 \ 00000168 190000EF SWI +25 \ 0000016C 000050E3 CMP R0,#+0 \ 00000170 1100000A BEQ ??ViewFiles_7 \ 00000174 04108DE2 ADD R1,SP,#+4 \ 00000178 ........ LDR R0,??DataTable147 ;; curent \ 0000017C 000090E5 LDR R0,[R0, #+0] \ 00000180 2420A0E3 MOV R2,#+36 \ 00000184 ........ LDR R3,??DataTable145 ;; artists \ 00000188 923020E0 MLA R0,R2,R0,R3 \ 0000018C 160000EF SWI +22 \ 00000190 ........ LDR R0,??DataTable147 ;; curent \ 00000194 000090E5 LDR R0,[R0, #+0] \ 00000198 2410A0E3 MOV R1,#+36 \ 0000019C ........ LDR R2,??DataTable145 ;; artists \ 000001A0 912020E0 MLA R0,R1,R0,R2 \ 000001A4 205080E5 STR R5,[R0, #+32] \ 000001A8 ........ LDR R0,??DataTable147 ;; curent \ 000001AC ........ LDR R1,??DataTable147 ;; curent \ 000001B0 001091E5 LDR R1,[R1, #+0] \ 000001B4 011081E2 ADD R1,R1,#+1 \ 000001B8 001080E5 STR R1,[R0, #+0] \ ??ViewFiles_7: \ 000001BC 0300A0E3 MOV R0,#+3 \ ??ViewFiles_8: \ 000001C0 015085E2 ADD R5,R5,#+1 \ 000001C4 ........ LDR R1,??DataTable149 ;; masyv \ 000001C8 0110D5E7 LDRB R1,[R5, +R1] \ 000001CC 0D0051E3 CMP R1,#+13 \ 000001D0 0200000A BEQ ??ViewFiles_9 \ 000001D4 4C109DE5 LDR R1,[SP, #+76] \ 000001D8 010055E1 CMP R5,R1 \ 000001DC F7FFFF3A BCC ??ViewFiles_8 \ ??ViewFiles_9: \ 000001E0 010050E2 SUBS R0,R0,#+1 \ 000001E4 F5FFFF1A BNE ??ViewFiles_8 \ 000001E8 025085E2 ADD R5,R5,#+2 \ ??ViewFiles_2: \ 000001EC 4C009DE5 LDR R0,[SP, #+76] \ 000001F0 000055E1 CMP R5,R0 \ 000001F4 A3FFFF2A BCS ??ViewFiles_3 \ 000001F8 041F8FE2 ADR R1,??ViewFiles_0 ;; "" \ 000001FC 04008DE2 ADD R0,SP,#+4 \ 00000200 160000EF SWI +22 \ 00000204 ........ LDR R0,??DataTable149 ;; masyv \ 00000208 006085E0 ADD R6,R5,R0 \ 0000020C C8FFFFEA B ??ViewFiles_5 \ ??ViewFiles_0: \ 00000210 00000000 DC8 "",+0,+0,+0 \ 00000214 ........ DC32 `?` \ 00000218 ........ DC32 Canvas3 \ 0000021C ........ DC32 gui_methods4 467 } \ In segment CODE, align 4, keep-with-next \ ??DataTable0: \ 00000000 ........ DC32 ToView \ In segment CODE, align 4, keep-with-next \ ??DataTable9: \ 00000000 ........ DC32 max_art \ In segment CODE, align 4, keep-with-next \ ??DataTable21: \ 00000000 ........ DC32 select_art \ In segment CODE, align 4, keep-with-next \ ??DataTable63: \ 00000000 ........ DC32 artists \ In segment CODE, align 4, keep-with-next \ ??DataTable83: \ 00000000 ........ DC32 max_alb \ In segment CODE, align 4, keep-with-next \ ??DataTable86: \ 00000000 ........ DC32 select_art \ In segment CODE, align 4, keep-with-next \ ??DataTable114: \ 00000000 ........ DC32 tracks \ In segment CODE, align 4, keep-with-next \ ??DataTable115: \ 00000000 ........ DC32 select_alb \ In segment CODE, align 4, keep-with-next \ ??DataTable116: \ 00000000 ........ DC32 albums \ In segment CODE, align 4, keep-with-next \ ??DataTable122: \ 00000000 ........ DC32 select_tra \ In segment CODE, align 4, keep-with-next \ ??DataTable127: \ 00000000 ........ DC32 max_tra \ In segment CODE, align 4, keep-with-next \ ??DataTable131: \ 00000000 ........ DC32 ToView \ In segment CODE, align 4, keep-with-next \ ??DataTable132: \ 00000000 ........ DC32 playerfolder \ In segment CODE, align 4, keep-with-next \ ??DataTable134: \ 00000000 ........ DC32 pp \ In segment CODE, align 4, keep-with-next \ ??DataTable135: \ 00000000 ........ DC32 max_art \ In segment CODE, align 4, keep-with-next \ ??DataTable138: \ 00000000 ........ DC32 GUI2 \ In segment CODE, align 4, keep-with-next \ ??DataTable139: \ 00000000 ........ DC32 `?` \ In segment CODE, align 4, keep-with-next \ ??DataTable145: \ 00000000 ........ DC32 artists \ In segment CODE, align 4, keep-with-next \ ??DataTable147: \ 00000000 ........ DC32 curent \ In segment CODE, align 4, keep-with-next \ ??DataTable149: \ 00000000 ........ DC32 masyv \ In segment DATA_ID, align 4, align-sorted \ `?`: \ 00000000 01000000 DC32 1 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 256925632569 DC8 "%i%c%i" \ 00 \ 00000007 00 DC8 0 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 2573256300 DC8 "%s%c" \ 00000005 000000 DC8 0, 0, 0 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 25736D656469 DC8 "%smedia.ipl" \ 612E69706C00 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 256325632563 DC8 "%c%c%c\015\012" \ 0D0A00 \ 00000009 000000 DC8 0, 0, 0 \ In segment DATA_C, align 4, align-sorted \ 00000000 00 DC8 "" \ 00000001 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 00000011 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 00000021 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 00000031 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 00000041 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 00000051 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 00000061 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 00000071 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 00000081 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 00000091 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 000000A1 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 000000B1 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 000000C1 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 000000D1 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 000000E1 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 00000000 \ 000000F1 000000000000 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 \ 000000000000 \ 000000 \ In segment DATA_C, align 4, align-sorted \ `?`: \ 00000000 25730D0A00 DC8 "%s\015\012" \ 00000005 000000 DC8 0, 0, 0 \ In segment DATA_C, align 1, align-sorted \ 00000000 2A00 DC8 "*" \ 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 25736D656469 DC8 "%smediafiiles.txt" \ 616669696C65 \ 732E74787400 \ 00000012 0000 DC8 0, 0 \ In segment DATA_C, align 1, align-sorted \ 00000000 00 DC8 "" Maximum stack usage in bytes: Function CSTACK -------- ------ MenuKeys3 828 OnRedraw4 84 ViewFiles 1208 Segment part sizes: Function/Label Bytes -------------- ----- pt 3 pp 1 curent 4 select_art 4 select_alb 4 select_tra 4 max_art 4 max_alb 4 max_tra 4 ToView 4 masyv 30000 artists 1800 albums 1800 tracks 7200 Canvas3 8 GUI2 4 OnRedraw4 1948 MenuKeys3 2016 gui_methods4 44 ViewFiles 544 ??DataTable0 4 ??DataTable9 4 ??DataTable21 4 ??DataTable63 4 ??DataTable83 4 ??DataTable86 4 ??DataTable114 4 ??DataTable115 4 ??DataTable116 4 ??DataTable122 4 ??DataTable127 4 ??DataTable131 4 ??DataTable132 4 ??DataTable134 4 ??DataTable135 4 ??DataTable138 4 ??DataTable139 4 ??DataTable145 4 ??DataTable147 4 ??DataTable149 4 ? 4 ? 8 ? 8 ? 12 ? 12 ? 256 ? 8 ? 2 ? 16 ? 20 ?_1 1 Others 108 4 672 bytes in segment CODE 439 bytes in segment DATA_C 4 bytes in segment DATA_I 4 bytes in segment DATA_ID 40 832 bytes in segment DATA_Z 24 bytes in segment INITTAB 4 588 bytes of CODE memory (+ 108 bytes shared) 443 bytes of CONST memory 40 836 bytes of DATA memory Errors: none Warnings: none