////////////////////////////////////////////////////////////////////////////// // / // IAR ARM ANSI C/C++ Compiler V4.41A/W32 EVALUATION 14/Feb/2008 19:04:02 / // Copyright 1999-2005 IAR Systems. All rights reserved. / // / // Cpu mode = interwork / // Endian = little / // Stack alignment = 4 / // Source file = D:\Pasha\elf\_MY_PROJECT\AltIdleScr\main.c / // Command line = D:\Pasha\elf\_MY_PROJECT\AltIdleScr\main.c -D / // NEWSGLOD --preprocess D:\Pasha\elf\_MY_PROJECT\AltI / // dleScr\Release_ELKA\List\ -lC / // D:\Pasha\elf\_MY_PROJECT\AltIdleScr\Release_ELKA\Li / // st\ -lA D:\Pasha\elf\_MY_PROJECT\AltIdleScr\Release / // _ELKA\List\ -o D:\Pasha\elf\_MY_PROJECT\AltIdleScr\ / // Release_ELKA\Obj\ -s9 --no_unroll --cpu_mode arm / // --endian little --cpu ARM926EJ-S --stack_align 4 / // --interwork -e --fpu None --dlib_config / // "D:\Pasha\ARM_Embedded_Workbench\Embedded / // Workbench 4.0 Evaluation\ARM\LIB\dl5tpainl8n.h" -I / // "D:\Pasha\ARM_Embedded_Workbench\Embedded / // Workbench 4.0 Evaluation\ARM\INC\" / // --inline_threshold=2 / // List file = D:\Pasha\elf\_MY_PROJECT\AltIdleScr\Release_ELKA\Li / // st\main.s79 / // / // / ////////////////////////////////////////////////////////////////////////////// NAME main RTMODEL "StackAlign4", "USED" RTMODEL "__cpu_mode", "__pcs__interwork" RTMODEL "__data_model", "absolute" RTMODEL "__endian", "little" RTMODEL "__rt_version", "6" RSEG CSTACK:DATA:NOROOT(2) EXTERN ??div32_a PUBWEAK `?*?DATA_ID` MULTWEAK ??AddToFList??rT MULTWEAK ??BG1??rT MULTWEAK ??BG3??rT MULTWEAK ??CreateRootMenu??rT ??DataTable0 EQU 0 ??DataTable1 EQU 0 ??DataTable10 EQU 0 ??DataTable11 EQU 0 ??DataTable12 EQU 0 ??DataTable13 EQU 0 ??DataTable17 EQU 0 ??DataTable18 EQU 0 ??DataTable19 EQU 0 ??DataTable20 EQU 0 ??DataTable21 EQU 0 ??DataTable23 EQU 0 ??DataTable24 EQU 0 ??DataTable25 EQU 0 ??DataTable28 EQU 0 ??DataTable29 EQU 0 ??DataTable3 EQU 0 ??DataTable30 EQU 0 ??DataTable34 EQU 0 ??DataTable35 EQU 0 ??DataTable36 EQU 0 ??DataTable37 EQU 0 ??DataTable39 EQU 0 ??DataTable4 EQU 0 ??DataTable42 EQU 0 ??DataTable43 EQU 0 ??DataTable45 EQU 0 ??DataTable46 EQU 0 ??DataTable47 EQU 0 ??DataTable48 EQU 0 ??DataTable52 EQU 0 ??DataTable53 EQU 0 ??DataTable54 EQU 0 ??DataTable55 EQU 0 ??DataTable56 EQU 0 ??DataTable7 EQU 0 ??DataTable8 EQU 0 ??DataTable9 EQU 0 MULTWEAK ??DrawBG??rT MULTWEAK ??DrawBar??rT MULTWEAK ??DrawBattCap??rT MULTWEAK ??DrawBattExt??rT MULTWEAK ??DrawBattStd??rT MULTWEAK ??DrawBattVolt??rT MULTWEAK ??DrawClock??rT MULTWEAK ??DrawContur_h??rT MULTWEAK ??DrawContur_w??rT MULTWEAK ??DrawCross??rT MULTWEAK ??DrawDialogs??rT MULTWEAK ??DrawFreeMamory??rT MULTWEAK ??DrawFreeRam??rT MULTWEAK ??DrawIconBar??rT MULTWEAK ??DrawLineCross??rT MULTWEAK ??DrawMenu??rT MULTWEAK ??DrawName??rT MULTWEAK ??DrawNameContr??rT MULTWEAK ??DrawNameMenu??rT MULTWEAK ??DrawNetAdv??rT MULTWEAK ??DrawNetDb??rT MULTWEAK ??DrawNetExt??rT MULTWEAK ??DrawNetStd??rT MULTWEAK ??DrawPanel_h??rT MULTWEAK ??DrawPanel_w??rT MULTWEAK ??DrawPusk??rT MULTWEAK ??DrawStrChar??rT MULTWEAK ??DrawStrInt??rT MULTWEAK ??DrawSysBar??rT MULTWEAK ??DrawWorkDesc??rT MULTWEAK ??ElfKiller??rT MULTWEAK ??FindFLISTtByN??rT MULTWEAK ??FindFLISTtByNS??rT MULTWEAK ??FindFiles??rT MULTWEAK ??FindSizeInSubDir??rT MULTWEAK ??Free_FLIST??rT MULTWEAK ??GetFListN??rT MULTWEAK ??GetFoldersLevel??rT MULTWEAK ??LoadAllConfig??rT MULTWEAK ??LoadParamsConfig??rT MULTWEAK ??LoadParamsCrd??rT MULTWEAK ??LoadParamsMENU??rT MULTWEAK ??LoadParamsPanel??rT MULTWEAK ??OnKey??rT MULTWEAK ??OnRedraw??rT MULTWEAK ??QuitCallbackProc??rT MULTWEAK ??SaveNameMENU??rT MULTWEAK ??SaveNamePanel??rT MULTWEAK ??SaveParamsConfig??rT MULTWEAK ??SavePath??rT MULTWEAK ??SizeDir??rT MULTWEAK ??StartFileMenu??rT MULTWEAK ??StartFilePanel_h??rT MULTWEAK ??StartFilePanel_w??rT MULTWEAK ??StartFilePusk??rT MULTWEAK ??TimerProc??rT MULTWEAK ??UpdateCSMname??rT MULTWEAK ??atoi??rT MULTWEAK ??filelist_menu_ghook??rT MULTWEAK ??filelist_menu_iconhndl??rT MULTWEAK ??filelist_menu_onkey??rT MULTWEAK ??kill_data??rA MULTWEAK ??main??rT MULTWEAK ??maincsm_onclose??rT MULTWEAK ??maincsm_oncreate??rT MULTWEAK ??maincsm_onmessage??rT MULTWEAK ??method8??rT MULTWEAK ??method9??rT MULTWEAK ??onClose??rT MULTWEAK ??onCreate??rT MULTWEAK ??onFocus??rT MULTWEAK ??onUnfocus??rT MULTWEAK ??open_fm??rT MULTWEAK ??process??rT MULTWEAK ??processmenu??rT MULTWEAK ??rA??div32_a MULTWEAK ??shortcut??rT MULTWEAK ??start??rT MULTWEAK ??start_vibra??rT MULTWEAK ??stop_vibra??rT MULTWEAK ??strcmp_nocase??rT PUBWEAK ?init?tab?DATA_I PUBWEAK ?init?tab?DATA_Z PUBLIC AddToFList FUNCTION AddToFList,0203H LOCFRAME CSTACK, 20, STACK PUBLIC BG1 FUNCTION BG1,0201H LOCFRAME CSTACK, 8, STACK PUBLIC BG3 FUNCTION BG3,0201H LOCFRAME CSTACK, 8, STACK PUBLIC CreateRootMenu FUNCTION CreateRootMenu,0201H LOCFRAME CSTACK, 4, STACK PUBLIC Cross_x PUBLIC Cross_y PUBLIC DrawBG FUNCTION DrawBG,0201H LOCFRAME CSTACK, 40, STACK PUBLIC DrawBar FUNCTION DrawBar,0201H PUBLIC DrawBattCap FUNCTION DrawBattCap,0203H LOCFRAME CSTACK, 40, STACK PUBLIC DrawBattExt FUNCTION DrawBattExt,0203H LOCFRAME CSTACK, 12, STACK PUBLIC DrawBattStd FUNCTION DrawBattStd,0203H LOCFRAME CSTACK, 12, STACK PUBLIC DrawBattVolt FUNCTION DrawBattVolt,0203H LOCFRAME CSTACK, 40, STACK PUBLIC DrawClock FUNCTION DrawClock,0203H LOCFRAME CSTACK, 64, STACK PUBLIC DrawContur_h FUNCTION DrawContur_h,0603H LOCFRAME CSTACK, 24, STACK PUBLIC DrawContur_w FUNCTION DrawContur_w,0603H LOCFRAME CSTACK, 24, STACK PUBLIC DrawCross FUNCTION DrawCross,0203H LOCFRAME CSTACK, 48, STACK PUBLIC DrawDialogs FUNCTION DrawDialogs,0203H LOCFRAME CSTACK, 44, STACK PUBLIC DrawFreeMamory FUNCTION DrawFreeMamory,0203H LOCFRAME CSTACK, 84, STACK PUBLIC DrawFreeRam FUNCTION DrawFreeRam,0203H LOCFRAME CSTACK, 40, STACK PUBLIC DrawIconBar FUNCTION DrawIconBar,0201H LOCFRAME CSTACK, 12, STACK PUBLIC DrawLineCross FUNCTION DrawLineCross,0203H LOCFRAME CSTACK, 24, STACK PUBLIC DrawMamory PUBLIC DrawMenu FUNCTION DrawMenu,0603H LOCFRAME CSTACK, 52, STACK PUBLIC DrawName FUNCTION DrawName,0203H LOCFRAME CSTACK, 40, STACK PUBLIC DrawNameContr FUNCTION DrawNameContr,0201H LOCFRAME CSTACK, 4, STACK PUBLIC DrawNameMenu FUNCTION DrawNameMenu,0203H LOCFRAME CSTACK, 32, STACK PUBLIC DrawNetAdv FUNCTION DrawNetAdv,0203H LOCFRAME CSTACK, 48, STACK PUBLIC DrawNetDb FUNCTION DrawNetDb,0203H LOCFRAME CSTACK, 40, STACK PUBLIC DrawNetExt FUNCTION DrawNetExt,0203H LOCFRAME CSTACK, 24, STACK PUBLIC DrawNetStd FUNCTION DrawNetStd,0203H LOCFRAME CSTACK, 12, STACK PUBLIC DrawPanel_h FUNCTION DrawPanel_h,0601H LOCFRAME CSTACK, 40, STACK PUBLIC DrawPanel_w FUNCTION DrawPanel_w,0601H LOCFRAME CSTACK, 44, STACK PUBLIC DrawPusk FUNCTION DrawPusk,0203H LOCFRAME CSTACK, 80, STACK PUBLIC DrawPuskk PUBLIC DrawStrChar FUNCTION DrawStrChar,0203H LOCFRAME CSTACK, 40, STACK PUBLIC DrawStrInt FUNCTION DrawStrInt,0203H LOCFRAME CSTACK, 40, STACK PUBLIC DrawSysBar FUNCTION DrawSysBar,0201H PUBLIC DrawWorkDesc FUNCTION DrawWorkDesc,0201H LOCFRAME CSTACK, 8, STACK PUBLIC ElfKiller FUNCTION ElfKiller,0603H LOCFRAME CSTACK, 4, STACK PUBLIC FindFLISTtByN FUNCTION FindFLISTtByN,0203H LOCFRAME CSTACK, 8, STACK PUBLIC FindFLISTtByNS FUNCTION FindFLISTtByNS,0203H PUBLIC FindFiles FUNCTION FindFiles,0203H LOCFRAME CSTACK, 840, STACK PUBLIC FindSizeInSubDir FUNCTION FindSizeInSubDir,0203H LOCFRAME CSTACK, 272, STACK PUBLIC Free_FLIST FUNCTION Free_FLIST,0203H LOCFRAME CSTACK, 16, STACK PUBLIC GetFListN FUNCTION GetFListN,0201H PUBLIC GetFoldersLevel FUNCTION GetFoldersLevel,0203H PUBLIC IMG1 PUBLIC IMG2 PUBLIC IMG3 PUBLIC IMG4 PUBLIC IMG5 PUBLIC IMG6 PUBLIC IRDA PUBLIC LoadAllConfig FUNCTION LoadAllConfig,0201H PUBLIC LoadParamsConfig FUNCTION LoadParamsConfig,0201H LOCFRAME CSTACK, 10020, STACK PUBLIC LoadParamsCrd FUNCTION LoadParamsCrd,0201H LOCFRAME CSTACK, 10032, STACK PUBLIC LoadParamsMENU FUNCTION LoadParamsMENU,0201H LOCFRAME CSTACK, 32, STACK PUBLIC LoadParamsPanel FUNCTION LoadParamsPanel,0201H LOCFRAME CSTACK, 36, STACK PUBLIC MAINCSM PUBLIC MAINCSM_ID PUBLIC MAINGUI_ID PUBLIC MENU1_b PUBLIC MENU1_s PUBLIC MENU2_b PUBLIC MENU2_s PUBLIC MENU3_b PUBLIC MENU3_s PUBLIC MENU4_b PUBLIC MENU4_s PUBLIC MENU5_b PUBLIC MENU5_s PUBLIC MENU6_b PUBLIC MENU6_s PUBLIC NAME PUBLIC NAME2 PUBLIC NumOfItems PUBLIC NumOfItems2 PUBLIC OnKey FUNCTION OnKey,0603H LOCFRAME CSTACK, 40, STACK PUBLIC OnRedraw FUNCTION OnRedraw,0603H LOCFRAME CSTACK, 8, STACK PUBLIC Pusk PUBLIC QuitCallbackProc FUNCTION QuitCallbackProc,0603H PUBLIC Quit_Required PUBLIC RED PUBLIC SaveNameMENU FUNCTION SaveNameMENU,0201H PUBLIC SaveNamePanel FUNCTION SaveNamePanel,0201H PUBLIC SaveParamsConfig FUNCTION SaveParamsConfig,0201H LOCFRAME CSTACK, 10024, STACK PUBLIC SavePath FUNCTION SavePath,0203H LOCFRAME CSTACK, 4, STACK PUBLIC SizeDir FUNCTION SizeDir,0203H LOCFRAME CSTACK, 272, STACK PUBLIC StartFileMenu FUNCTION StartFileMenu,0203H LOCFRAME CSTACK, 4, STACK PUBLIC StartFilePanel_h FUNCTION StartFilePanel_h,0201H LOCFRAME CSTACK, 12, STACK PUBLIC StartFilePanel_w FUNCTION StartFilePanel_w,0201H LOCFRAME CSTACK, 16, STACK PUBLIC StartFilePusk FUNCTION StartFilePusk,0201H LOCFRAME CSTACK, 4, STACK PUBLIC TimerProc FUNCTION TimerProc,0603H LOCFRAME CSTACK, 4, STACK PUBLIC TypeLine PUBLIC UpdateCSMname FUNCTION UpdateCSMname,0203H LOCFRAME CSTACK, 4, STACK PUBLIC _percent_t PUBLIC atoi FUNCTION atoi,0203H PUBLIC back PUBLIC bg3img PUBLIC black PUBLIC config PUBLIC coord PUBLIC cr_y PUBLIC crd PUBLIC descmenu PUBLIC dir_size PUBLIC err PUBLIC filelist_HDR PUBLIC filelist_STRUCT PUBLIC filelist_menu_ghook FUNCTION filelist_menu_ghook,0603H LOCFRAME CSTACK, 12, STACK PUBLIC filelist_menu_iconhndl FUNCTION filelist_menu_iconhndl,0603H LOCFRAME CSTACK, 28, STACK PUBLIC filelist_menu_onkey FUNCTION filelist_menu_onkey,0603H LOCFRAME CSTACK, 16, STACK PUBLIC fl PUBLIC fltop PUBLIC fmenu_sk PUBLIC fmenu_skt PUBLIC fmenusoftkeys PUBLIC gui_methods PUBLIC header PUBLIC img_x PUBLIC img_y PUBLIC kdblock PUBLIC main FUNCTION main,0a03H LOCFRAME CSTACK, 48, STACK PUBLIC maincsm_name_body PUBLIC maincsm_onclose FUNCTION maincsm_onclose,0603H LOCFRAME CSTACK, 8, STACK PUBLIC maincsm_oncreate FUNCTION maincsm_oncreate,0603H LOCFRAME CSTACK, 16, STACK PUBLIC maincsm_onmessage FUNCTION maincsm_onmessage,0603H PUBLIC menu PUBLIC menu_tmr PUBLIC menu_x PUBLIC menu_y PUBLIC menucfg PUBLIC method8 FUNCTION method8,0603H PUBLIC method9 FUNCTION method9,0603H PUBLIC minus11 PUBLIC mnu PUBLIC moveclock PUBLIC mytmr PUBLIC name PUBLIC onClose FUNCTION onClose,0603H PUBLIC onCreate FUNCTION onCreate,0603H PUBLIC onFocus FUNCTION onFocus,0603H LOCFRAME CSTACK, 4, STACK PUBLIC onUnfocus FUNCTION onUnfocus,0603H PUBLIC open_fm FUNCTION open_fm,0201H LOCFRAME CSTACK, 36, STACK PUBLIC panel PUBLIC panel_x PUBLIC panel_y PUBLIC per_6s PUBLIC per_d PUBLIC per_s PUBLIC per_t PUBLIC process FUNCTION process,0203H LOCFRAME CSTACK, 4, STACK PUBLIC processmenu FUNCTION processmenu,0203H LOCFRAME CSTACK, 4, STACK PUBLIC prozr PUBLIC pusk_y PUBLIC shortcut FUNCTION shortcut,0203H LOCFRAME CSTACK, 4, STACK PUBLIC size PUBLIC speed_cur PUBLIC start FUNCTION start,0203H LOCFRAME CSTACK, 12, STACK PUBLIC start_vibra FUNCTION start_vibra,0603H LOCFRAME CSTACK, 4, STACK PUBLIC startmenu PUBLIC stop_vibra FUNCTION stop_vibra,0603H LOCFRAME CSTACK, 4, STACK PUBLIC strcmp_nocase FUNCTION strcmp_nocase,0203H PUBLIC timer PUBLIC tmr_vibra PUBLIC typecur PUBLIC vibra_count PUBLIC white PUBLIC workdesctop CFI Names cfiNames0 CFI StackFrame CFA R13 HUGEDATA CFI Resource R0:32, R1:32, R2:32, R3:32, R4:32, R5:32, R6:32, R7:32 CFI Resource R8:32, R9:32, R10:32, R11:32, R12:32, CPSR:32, R13:32 CFI Resource R14:32, SPSR:32 CFI VirtualResource ?RET:32 CFI EndNames cfiNames0 CFI Common cfiCommon0 Using cfiNames0 CFI CodeAlign 2 CFI DataAlign 4 CFI ReturnAddress ?RET CODE CFI CFA R13+0 CFI R0 Undefined CFI R1 Undefined CFI R2 Undefined CFI R3 Undefined CFI R4 SameValue CFI R5 SameValue CFI R6 SameValue CFI R7 SameValue CFI R8 SameValue CFI R9 SameValue CFI R10 SameValue CFI R11 SameValue CFI R12 Undefined CFI CPSR SameValue CFI R14 Undefined CFI SPSR SameValue CFI ?RET R14 CFI EndCommon cfiCommon0 CFI Common cfiCommon1 Using cfiNames0 CFI CodeAlign 4 CFI DataAlign 4 CFI ReturnAddress ?RET CODE CFI CFA R13+0 CFI R0 Undefined CFI R1 Undefined CFI R2 Undefined CFI R3 Undefined CFI R4 SameValue CFI R5 SameValue CFI R6 SameValue CFI R7 SameValue CFI R8 SameValue CFI R9 SameValue CFI R10 SameValue CFI R11 SameValue CFI R12 Undefined CFI CPSR SameValue CFI R14 Undefined CFI SPSR SameValue CFI ?RET R14 CFI EndCommon cfiCommon1 kill_data SYMBOL "kill_data" AddToFList SYMBOL "AddToFList" ??AddToFList??rT SYMBOL "??rT", AddToFList BG1 SYMBOL "BG1" ??BG1??rT SYMBOL "??rT", BG1 BG3 SYMBOL "BG3" ??BG3??rT SYMBOL "??rT", BG3 CreateRootMenu SYMBOL "CreateRootMenu" ??CreateRootMenu??rT SYMBOL "??rT", CreateRootMenu DrawBG SYMBOL "DrawBG" ??DrawBG??rT SYMBOL "??rT", DrawBG DrawBar SYMBOL "DrawBar" ??DrawBar??rT SYMBOL "??rT", DrawBar DrawBattCap SYMBOL "DrawBattCap" ??DrawBattCap??rT SYMBOL "??rT", DrawBattCap DrawBattExt SYMBOL "DrawBattExt" ??DrawBattExt??rT SYMBOL "??rT", DrawBattExt DrawBattStd SYMBOL "DrawBattStd" ??DrawBattStd??rT SYMBOL "??rT", DrawBattStd DrawBattVolt SYMBOL "DrawBattVolt" ??DrawBattVolt??rT SYMBOL "??rT", DrawBattVolt DrawClock SYMBOL "DrawClock" ??DrawClock??rT SYMBOL "??rT", DrawClock DrawContur_h SYMBOL "DrawContur_h" ??DrawContur_h??rT SYMBOL "??rT", DrawContur_h DrawContur_w SYMBOL "DrawContur_w" ??DrawContur_w??rT SYMBOL "??rT", DrawContur_w DrawCross SYMBOL "DrawCross" ??DrawCross??rT SYMBOL "??rT", DrawCross DrawDialogs SYMBOL "DrawDialogs" ??DrawDialogs??rT SYMBOL "??rT", DrawDialogs DrawFreeMamory SYMBOL "DrawFreeMamory" ??DrawFreeMamory??rT SYMBOL "??rT", DrawFreeMamory DrawFreeRam SYMBOL "DrawFreeRam" ??DrawFreeRam??rT SYMBOL "??rT", DrawFreeRam DrawIconBar SYMBOL "DrawIconBar" ??DrawIconBar??rT SYMBOL "??rT", DrawIconBar DrawLineCross SYMBOL "DrawLineCross" ??DrawLineCross??rT SYMBOL "??rT", DrawLineCross DrawMenu SYMBOL "DrawMenu" ??DrawMenu??rT SYMBOL "??rT", DrawMenu DrawName SYMBOL "DrawName" ??DrawName??rT SYMBOL "??rT", DrawName DrawNameContr SYMBOL "DrawNameContr" ??DrawNameContr??rT SYMBOL "??rT", DrawNameContr DrawNameMenu SYMBOL "DrawNameMenu" ??DrawNameMenu??rT SYMBOL "??rT", DrawNameMenu DrawNetAdv SYMBOL "DrawNetAdv" ??DrawNetAdv??rT SYMBOL "??rT", DrawNetAdv DrawNetDb SYMBOL "DrawNetDb" ??DrawNetDb??rT SYMBOL "??rT", DrawNetDb DrawNetExt SYMBOL "DrawNetExt" ??DrawNetExt??rT SYMBOL "??rT", DrawNetExt DrawNetStd SYMBOL "DrawNetStd" ??DrawNetStd??rT SYMBOL "??rT", DrawNetStd DrawPanel_h SYMBOL "DrawPanel_h" ??DrawPanel_h??rT SYMBOL "??rT", DrawPanel_h DrawPanel_w SYMBOL "DrawPanel_w" ??DrawPanel_w??rT SYMBOL "??rT", DrawPanel_w DrawPusk SYMBOL "DrawPusk" ??DrawPusk??rT SYMBOL "??rT", DrawPusk DrawStrChar SYMBOL "DrawStrChar" ??DrawStrChar??rT SYMBOL "??rT", DrawStrChar DrawStrInt SYMBOL "DrawStrInt" ??DrawStrInt??rT SYMBOL "??rT", DrawStrInt DrawSysBar SYMBOL "DrawSysBar" ??DrawSysBar??rT SYMBOL "??rT", DrawSysBar DrawWorkDesc SYMBOL "DrawWorkDesc" ??DrawWorkDesc??rT SYMBOL "??rT", DrawWorkDesc ElfKiller SYMBOL "ElfKiller" ??ElfKiller??rT SYMBOL "??rT", ElfKiller FindFLISTtByN SYMBOL "FindFLISTtByN" ??FindFLISTtByN??rT SYMBOL "??rT", FindFLISTtByN FindFLISTtByNS SYMBOL "FindFLISTtByNS" ??FindFLISTtByNS??rT SYMBOL "??rT", FindFLISTtByNS FindFiles SYMBOL "FindFiles" ??FindFiles??rT SYMBOL "??rT", FindFiles FindSizeInSubDir SYMBOL "FindSizeInSubDir" ??FindSizeInSubDir??rT SYMBOL "??rT", FindSizeInSubDir Free_FLIST SYMBOL "Free_FLIST" ??Free_FLIST??rT SYMBOL "??rT", Free_FLIST GetFListN SYMBOL "GetFListN" ??GetFListN??rT SYMBOL "??rT", GetFListN GetFoldersLevel SYMBOL "GetFoldersLevel" ??GetFoldersLevel??rT SYMBOL "??rT", GetFoldersLevel LoadAllConfig SYMBOL "LoadAllConfig" ??LoadAllConfig??rT SYMBOL "??rT", LoadAllConfig LoadParamsConfig SYMBOL "LoadParamsConfig" ??LoadParamsConfig??rT SYMBOL "??rT", LoadParamsConfig LoadParamsCrd SYMBOL "LoadParamsCrd" ??LoadParamsCrd??rT SYMBOL "??rT", LoadParamsCrd LoadParamsMENU SYMBOL "LoadParamsMENU" ??LoadParamsMENU??rT SYMBOL "??rT", LoadParamsMENU LoadParamsPanel SYMBOL "LoadParamsPanel" ??LoadParamsPanel??rT SYMBOL "??rT", LoadParamsPanel OnKey SYMBOL "OnKey" ??OnKey??rT SYMBOL "??rT", OnKey OnRedraw SYMBOL "OnRedraw" ??OnRedraw??rT SYMBOL "??rT", OnRedraw QuitCallbackProc SYMBOL "QuitCallbackProc" ??QuitCallbackProc??rT SYMBOL "??rT", QuitCallbackProc SaveNameMENU SYMBOL "SaveNameMENU" ??SaveNameMENU??rT SYMBOL "??rT", SaveNameMENU SaveNamePanel SYMBOL "SaveNamePanel" ??SaveNamePanel??rT SYMBOL "??rT", SaveNamePanel SaveParamsConfig SYMBOL "SaveParamsConfig" ??SaveParamsConfig??rT SYMBOL "??rT", SaveParamsConfig SavePath SYMBOL "SavePath" ??SavePath??rT SYMBOL "??rT", SavePath SizeDir SYMBOL "SizeDir" ??SizeDir??rT SYMBOL "??rT", SizeDir StartFileMenu SYMBOL "StartFileMenu" ??StartFileMenu??rT SYMBOL "??rT", StartFileMenu StartFilePanel_h SYMBOL "StartFilePanel_h" ??StartFilePanel_h??rT SYMBOL "??rT", StartFilePanel_h StartFilePanel_w SYMBOL "StartFilePanel_w" ??StartFilePanel_w??rT SYMBOL "??rT", StartFilePanel_w StartFilePusk SYMBOL "StartFilePusk" ??StartFilePusk??rT SYMBOL "??rT", StartFilePusk TimerProc SYMBOL "TimerProc" ??TimerProc??rT SYMBOL "??rT", TimerProc UpdateCSMname SYMBOL "UpdateCSMname" ??UpdateCSMname??rT SYMBOL "??rT", UpdateCSMname atoi SYMBOL "atoi" ??atoi??rT SYMBOL "??rT", atoi filelist_menu_ghook SYMBOL "filelist_menu_ghook" ??filelist_menu_ghook??rT SYMBOL "??rT", filelist_menu_ghook filelist_menu_iconhndl SYMBOL "filelist_menu_iconhndl" ??filelist_menu_iconhndl??rT SYMBOL "??rT", filelist_menu_iconhndl filelist_menu_onkey SYMBOL "filelist_menu_onkey" ??filelist_menu_onkey??rT SYMBOL "??rT", filelist_menu_onkey ??kill_data??rA SYMBOL "??rA", kill_data main SYMBOL "main" ??main??rT SYMBOL "??rT", main maincsm_onclose SYMBOL "maincsm_onclose" ??maincsm_onclose??rT SYMBOL "??rT", maincsm_onclose maincsm_oncreate SYMBOL "maincsm_oncreate" ??maincsm_oncreate??rT SYMBOL "??rT", maincsm_oncreate maincsm_onmessage SYMBOL "maincsm_onmessage" ??maincsm_onmessage??rT SYMBOL "??rT", maincsm_onmessage method8 SYMBOL "method8" ??method8??rT SYMBOL "??rT", method8 method9 SYMBOL "method9" ??method9??rT SYMBOL "??rT", method9 onClose SYMBOL "onClose" ??onClose??rT SYMBOL "??rT", onClose onCreate SYMBOL "onCreate" ??onCreate??rT SYMBOL "??rT", onCreate onFocus SYMBOL "onFocus" ??onFocus??rT SYMBOL "??rT", onFocus onUnfocus SYMBOL "onUnfocus" ??onUnfocus??rT SYMBOL "??rT", onUnfocus open_fm SYMBOL "open_fm" ??open_fm??rT SYMBOL "??rT", open_fm process SYMBOL "process" ??process??rT SYMBOL "??rT", process processmenu SYMBOL "processmenu" ??processmenu??rT SYMBOL "??rT", processmenu shortcut SYMBOL "shortcut" ??shortcut??rT SYMBOL "??rT", shortcut start SYMBOL "start" ??start??rT SYMBOL "??rT", start start_vibra SYMBOL "start_vibra" ??start_vibra??rT SYMBOL "??rT", start_vibra stop_vibra SYMBOL "stop_vibra" ??stop_vibra??rT SYMBOL "??rT", stop_vibra strcmp_nocase SYMBOL "strcmp_nocase" ??strcmp_nocase??rT SYMBOL "??rT", strcmp_nocase EXTERN ELF_BEGIN EXTERN kill_data FUNCTION kill_data,0602H // D:\Pasha\elf\_MY_PROJECT\AltIdleScr\main.c // 1 #include "..\inc\swilib.h" // 2 #include "draw.c" RSEG DATA_Z:DATA:SORT:NOROOT(2) // DESC __data descmenu[16] descmenu: DS8 10048 RSEG DATA_Z:DATA:SORT:NOROOT(2) // MENUPIC __data mnu[9] mnu: DS8 7236 RSEG DATA_Z:DATA:SORT:NOROOT(2) // Panel __data name[9] name: DS8 5220 RSEG DATA_Z:DATA:SORT:NOROOT(2) // int __data NumOfItems NumOfItems: DS8 4 RSEG DATA_Z:DATA:SORT:NOROOT(2) // int __data NumOfItems2 NumOfItems2: DS8 4 RSEG DATA_Z:DATA:SORT:NOROOT(2) // int __data DrawMamory DrawMamory: DS8 4 RSEG DATA_Z:DATA:SORT:NOROOT(2) // int __data Pusk Pusk: DS8 4 RSEG DATA_Z:DATA:SORT:NOROOT(2) // int __data img_x img_x: DS8 4 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock0 Using cfiCommon0 CFI NoFunction THUMB ??start??rT: BX PC Nop CFI EndBlock cfiBlock0 REQUIRE start RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock1 Using cfiCommon1 CFI Function start ARM // __??Code32?? __code __interwork __atpcs int start(char *) start: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 MOV R4,R0 MOV R0,#+256 SWI +293 MOV R5,R0 MOV R2,#+256 MOV R1,R4 SWI +364 MOV R2,#+0 MOV R1,#+0 MOV R0,R5 SWI +148 MOV R0,R5 SWI +297 MOV R0,#+1 POP {R4,R5,PC} ;; return CFI EndBlock cfiBlock1 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock2 Using cfiCommon0 CFI NoFunction THUMB ??shortcut??rT: BX PC Nop CFI EndBlock cfiBlock2 REQUIRE shortcut RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock3 Using cfiCommon1 CFI Function shortcut ARM // __??Code32?? __code __interwork __atpcs char *shortcut(char *) shortcut: PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 SWI +116 CMP R0,#+0 BEQ ??shortcut_0 BLX R0 MOV R0,#+0 POP {PC} ??shortcut_0: LDR R1,??shortcut_1 ;; `?` MOV R0,#+1 SWI +328 MOV R0,#+0 POP {PC} ;; return DATA ??shortcut_1: DC32 `?` CFI EndBlock cfiBlock3 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock4 Using cfiCommon0 CFI NoFunction THUMB ??TimerProc??rT: BX PC Nop CFI EndBlock cfiBlock4 REQUIRE TimerProc RSEG DATA_Z:DATA:SORT:NOROOT(2) // GBSTMR __data mytmr mytmr: DS8 16 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock5 Using cfiCommon1 CFI Function TimerProc ARM // __??Code32?? __code __interwork __atpcs void TimerProc(void) TimerProc: PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 SWI +370 LDR R2,??TimerProc_0 ;; TimerProc LDR R0,??TimerProc_0+0x4 ;; mytmr MOV R1,#+216 SWI +77 POP {PC} ;; return DATA ??TimerProc_0: DC32 TimerProc DC32 mytmr CFI EndBlock cfiBlock5 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock6 Using cfiCommon0 CFI NoFunction THUMB ??DrawBG??rT: BX PC Nop CFI EndBlock cfiBlock6 REQUIRE DrawBG RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock7 Using cfiCommon1 CFI Function DrawBG ARM // __??Code32?? __code __interwork __atpcs void DrawBG() DrawBG: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 LDR R4,??DataTable15 ;; crd LDR R0,[R4, #+292] CMP R0,#+1 BNE ??DrawBG_0 SWI +302 MOV R5,R0 MOV R0,#+4 SWI +302 MOV R6,R0 SWI +33161 MOV R7,R0 SWI +33160 PUSH {R5} CFI CFA R13+24 PUSH {R6} CFI CFA R13+28 MOV R1,#+0 PUSH {R1} CFI CFA R13+32 PUSH {R1} CFI CFA R13+36 PUSH {R1} CFI CFA R13+40 SUB R3,R7,#+1 SUB R2,R0,#+1 MOV R0,#+0 SWI +336 ADD SP,SP,#+20 CFI CFA R13+20 ??DrawBG_0: SWI +33009 MOV R5,R0 SWI +33161 MOV R6,R0 SWI +33160 MOV R1,#+1 PUSH {R1} CFI CFA R13+24 SUB R3,R0,#+1 MOV R2,#+0 MOV R0,R5 SUB R1,R6,#+1 PUSH {R1} CFI CFA R13+28 MOV R1,#+0 SWI +37 LDR R0,[R4, #+292] ADD SP,SP,#+8 CFI CFA R13+20 CMP R0,#+3 POPNE {R4-R7,PC} LDR R2,??DrawBG_1 ;; bg3img MOV R1,#+0 MOV R0,#+0 SWI +35 POP {R4-R7,PC} ;; return DATA ??DrawBG_1: DC32 bg3img CFI EndBlock cfiBlock7 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock8 Using cfiCommon0 CFI NoFunction THUMB ??DrawNetAdv??rT: BX PC Nop CFI EndBlock cfiBlock8 REQUIRE DrawNetAdv RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock9 Using cfiCommon1 CFI Function DrawNetAdv ARM // __??Code32?? __code __interwork __atpcs void DrawNetAdv(int, int) DrawNetAdv: PUSH {R4-R9,LR} CFI ?RET Frame(CFA, -4) CFI R9 Frame(CFA, -8) CFI R8 Frame(CFA, -12) CFI R7 Frame(CFA, -16) CFI R6 Frame(CFA, -20) CFI R5 Frame(CFA, -24) CFI R4 Frame(CFA, -28) CFI CFA R13+28 MOV R6,R0 MOV R4,R1 MOV R5,#+0 ??DrawNetAdv_0: MOV R0,#+12 MUL R7,R0,R5 SWI +32970 ADD R0,R7,R0 LDRB R0,[R0, #+6] CMP R0,#+0 BEQ ??DrawNetAdv_1 SWI +32970 LDRH R0,[R7, +R0] CMP R0,#+255 MOVCC R0,#+2 MOVCS R0,#+4 SWI +302 MOV R8,R0 SWI +32970 LDRH R0,[R7, +R0] CMP R0,#+255 MOVCC R0,#+2 MOVCS R0,#+4 SWI +302 MOV R9,R0 SWI +32970 ADD R0,R7,R0 LDRB R0,[R0, #+6] PUSH {R8} CFI CFA R13+32 PUSH {R9} CFI CFA R13+36 MOV R2,#+0 PUSH {R2} CFI CFA R13+40 PUSH {R2} CFI CFA R13+44 PUSH {R2} CFI CFA R13+48 RSB R0,R0,#+115 ADD R1,R4,#+14 MOV R3,R1 ADD R2,R6,#+3 ASR R7,R0,#+1 ADD R0,R0,R7, LSR #+30 SUB R1,R1,R0, ASR #+2 MOV R0,R6 SWI +336 ADD SP,SP,#+20 CFI CFA R13+28 ??DrawNetAdv_1: ADD R5,R5,#+1 ADD R6,R6,#+5 CMP R5,#+6 BNE ??DrawNetAdv_0 POP {R4-R9,PC} ;; return CFI EndBlock cfiBlock9 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock10 Using cfiCommon0 CFI NoFunction THUMB ??DrawNetStd??rT: BX PC Nop CFI EndBlock cfiBlock10 REQUIRE DrawNetStd RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock11 Using cfiCommon1 CFI Function DrawNetStd ARM // __??Code32?? __code __interwork __atpcs void DrawNetStd(int, int) DrawNetStd: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 MOV R4,R0 MOV R5,R1 SWI +32970 LDRB R0,[R0, #+6] LDR R1,??DrawNetStd_0 ;; 0x2aaaaaab RSB R0,R0,#+115 SMULL R2,R3,R1,R0 MOV R1,R5 ADD R0,R3,R0, LSR #+31 ADD R2,R0,#+860 MOV R0,R4 SWI +35 POP {R4,R5,PC} ;; return DATA ??DrawNetStd_0: DC32 0x2aaaaaab CFI EndBlock cfiBlock11 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock12 Using cfiCommon0 CFI NoFunction THUMB ??DrawNetDb??rT: BX PC Nop CFI EndBlock cfiBlock12 REQUIRE DrawNetDb RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock13 Using cfiCommon1 CFI Function DrawNetDb ARM // __??Code32?? __code __interwork __atpcs void DrawNetDb(int, int) DrawNetDb: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 MOV R4,R0 MOV R5,R1 MOV R0,#+256 SWI +293 MOV R6,R0 SWI +32970 MOV R7,R0 SWI +32970 LDRH R0,[R0, #+0] LDRB R3,[R7, #+6] LDR R1,??DrawNetDb_0 ;; `?` CMP R0,#+255 MOVCC R2,#+45 MOVCS R2,#+61 MOV R0,R6 SWI +292 MOV R0,#+23 SWI +302 MOV R7,R0 MOV R0,#+0 SWI +302 PUSH {R7} CFI CFA R13+24 PUSH {R0} CFI CFA R13+28 MOV R3,#+128 MOV R2,R5 MOV R1,R4 MOV R0,#+0 PUSH {R0} CFI CFA R13+32 MOV R0,#+7 PUSH {R0} CFI CFA R13+36 MOV R0,#+172 PUSH {R0} CFI CFA R13+40 MOV R0,R6 SWI +332 MOV R0,R6 SWI +297 ADD SP,SP,#+20 CFI CFA R13+20 POP {R4-R7,PC} ;; return DATA ??DrawNetDb_0: DC32 `?` CFI EndBlock cfiBlock13 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock14 Using cfiCommon0 CFI NoFunction THUMB ??DrawNetExt??rT: BX PC Nop CFI EndBlock cfiBlock14 REQUIRE DrawNetExt RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock15 Using cfiCommon1 CFI Function DrawNetExt ARM // __??Code32?? __code __interwork __atpcs void DrawNetExt(int, int) DrawNetExt: PUSH {R4-R8,LR} CFI ?RET Frame(CFA, -4) CFI R8 Frame(CFA, -8) CFI R7 Frame(CFA, -12) CFI R6 Frame(CFA, -16) CFI R5 Frame(CFA, -20) CFI R4 Frame(CFA, -24) CFI CFA R13+24 MOV R6,R0 MOV R4,R1 ADD R6,R6,#+6 SWI +32970 LDRH R0,[R0, #+0] CMP R0,#+255 MOVCC R5,#+2 MOVCS R5,#+4 SWI +32970 LDRB R0,[R0, #+6] CMP R0,#+112 POPCS {R4-R8,PC} SWI +32970 LDRB R7,[R0, #+6] B ??DrawNetExt_0 ??DrawNetExt_1: MOV R0,R5 SWI +302 MOV R2,R0 MOV R1,R4 ADD R0,R6,#+4 SWI +515 MOV R0,R5 SWI +302 MOV R2,R0 ADD R1,R4,#+1 ADD R0,R6,#+3 SWI +515 MOV R0,R5 SWI +302 MOV R2,R0 ADD R1,R4,#+2 ADD R0,R6,#+2 SWI +515 MOV R0,R5 SWI +302 ADD R8,R6,#+1 MOV R2,R0 ADD R1,R4,#+3 MOV R0,R8 SWI +515 MOV R0,R5 SWI +302 MOV R2,R0 ADD R1,R4,#+4 MOV R0,R6 SWI +515 MOV R0,R5 SWI +302 MOV R2,R0 ADD R1,R4,#+5 SUB R0,R6,#+1 SWI +515 ADD R7,R7,#+2 MOV R6,R8 ??DrawNetExt_0: CMP R7,#+112 BLT ??DrawNetExt_1 POP {R4-R8,PC} ;; return CFI EndBlock cfiBlock15 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock16 Using cfiCommon0 CFI NoFunction THUMB ??DrawBattStd??rT: BX PC Nop CFI EndBlock cfiBlock16 REQUIRE DrawBattStd RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock17 Using cfiCommon1 CFI Function DrawBattStd ARM // __??Code32?? __code __interwork __atpcs void DrawBattStd(int, int) DrawBattStd: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 MOV R4,R0 MOV R5,R1 SWI +32968 LDRH R0,[R0, #+0] LDR R1,??DataTable2 ;; 0x38e38e39 SMULL R2,R3,R1,R0 MOV R1,#+89 ASR R3,R3,#+1 ADD R0,R3,R0, LSR #+31 ORR R1,R1,#0x200 ADD R2,R1,R0 MOV R1,R5 MOV R0,R4 SWI +35 POP {R4,R5,PC} ;; return CFI EndBlock cfiBlock17 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock18 Using cfiCommon0 CFI NoFunction THUMB ??DrawBattExt??rT: BX PC Nop CFI EndBlock cfiBlock18 REQUIRE DrawBattExt RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock19 Using cfiCommon1 CFI Function DrawBattExt ARM // __??Code32?? __code __interwork __atpcs void DrawBattExt(int, int) DrawBattExt: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 MOV R4,R0 MOV R5,R1 SWI +32968 LDRH R0,[R0, #+0] LDR R1,??DataTable2 ;; 0x38e38e39 SMULL R2,R3,R1,R0 MOV R1,#+89 ASR R3,R3,#+1 ADD R0,R3,R0, LSR #+31 ORR R1,R1,#0x200 ADD R2,R1,R0 MOV R1,R5 MOV R0,R4 SWI +35 POP {R4,R5,PC} ;; return CFI EndBlock cfiBlock19 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable2: DC32 0x38e38e39 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock20 Using cfiCommon0 CFI NoFunction THUMB ??DrawBattCap??rT: BX PC Nop CFI EndBlock cfiBlock20 REQUIRE DrawBattCap RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock21 Using cfiCommon1 CFI Function DrawBattCap ARM // __??Code32?? __code __interwork __atpcs void DrawBattCap(int, int) DrawBattCap: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 MOV R4,R0 MOV R5,R1 MOV R0,#+256 SWI +293 MOV R6,R0 SWI +32968 LDRH R2,[R0, #+0] LDR R1,??DrawBattCap_0 ;; `?` MOV R0,R6 SWI +292 MOV R0,#+23 SWI +302 MOV R7,R0 MOV R0,#+0 SWI +302 PUSH {R7} CFI CFA R13+24 PUSH {R0} CFI CFA R13+28 MOV R3,#+128 MOV R2,R5 MOV R1,R4 MOV R0,#+0 PUSH {R0} CFI CFA R13+32 MOV R0,#+7 PUSH {R0} CFI CFA R13+36 MOV R0,#+172 PUSH {R0} CFI CFA R13+40 MOV R0,R6 SWI +332 MOV R0,R6 SWI +297 ADD SP,SP,#+20 CFI CFA R13+20 POP {R4-R7,PC} ;; return DATA ??DrawBattCap_0: DC32 `?` CFI EndBlock cfiBlock21 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock22 Using cfiCommon0 CFI NoFunction THUMB ??DrawBattVolt??rT: BX PC Nop CFI EndBlock cfiBlock22 REQUIRE DrawBattVolt RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock23 Using cfiCommon1 CFI Function DrawBattVolt ARM // __??Code32?? __code __interwork __atpcs void DrawBattVolt(int, int) DrawBattVolt: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 MOV R4,R0 MOV R5,R1 MOV R0,#+256 SWI +293 MOV R6,R0 MOV R1,#+9 MOV R0,#+0 SWI +6 MOV R7,R0 MOV R1,#+9 MOV R0,#+0 SWI +6 LDR R1,??DataTable5 ;; 0x10624dd3 SMULL R2,R3,R7,R1 MOV R2,#+1000 ASR R3,R3,#+6 ADD R3,R3,R7, LSR #+31 MUL R3,R2,R3 LDR R2,??DrawBattVolt_0 ;; 0x66666667 SUB R1,R7,R3 SMULL R3,R7,R2,R1 ASR R7,R7,#+2 ADD R3,R7,R1, LSR #+31 LDR R1,??DataTable5 ;; 0x10624dd3 SMULL R2,R7,R1,R0 LDR R1,??DrawBattVolt_0+0x4 ;; `?` ASR R7,R7,#+6 ADD R2,R7,R0, LSR #+31 MOV R0,R6 SWI +292 MOV R0,#+23 SWI +302 MOV R7,R0 MOV R0,#+0 SWI +302 PUSH {R7} CFI CFA R13+24 PUSH {R0} CFI CFA R13+28 MOV R3,#+128 MOV R2,R5 MOV R1,R4 MOV R0,#+0 PUSH {R0} CFI CFA R13+32 MOV R0,#+7 PUSH {R0} CFI CFA R13+36 MOV R0,#+172 PUSH {R0} CFI CFA R13+40 MOV R0,R6 SWI +332 MOV R0,R6 SWI +297 ADD SP,SP,#+20 CFI CFA R13+20 POP {R4-R7,PC} ;; return DATA ??DrawBattVolt_0: DC32 0x66666667 DC32 `?` CFI EndBlock cfiBlock23 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock24 Using cfiCommon0 CFI NoFunction THUMB ??DrawClock??rT: BX PC Nop CFI EndBlock cfiBlock24 REQUIRE DrawClock RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock25 Using cfiCommon1 CFI Function DrawClock ARM // __??Code32?? __code __interwork __atpcs void DrawClock(int, int) DrawClock: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 SUB SP,SP,#+16 CFI CFA R13+36 MOV R4,R0 MOV R5,R1 MOV R0,#+256 SWI +293 MOV R6,R0 MOV R1,SP ADD R0,SP,#+8 SWI +180 SWI +32975 LDR R0,[R0, #+0] LDR R1,??DrawClock_0 ;; `?` CMP R0,#+15 LDRB R0,[SP, #+2] MOVEQ R2,#+150 ORREQ R2,R2,#0xE100 PUSH {R0} CFI CFA R13+40 LDRB R0,[SP, #+5] MOVNE R2,#+32 PUSH {R0} CFI CFA R13+44 LDRB R3,[SP, #+8] MOV R0,R6 SWI +292 MOV R0,#+23 SWI +302 MOV R7,R0 MOV R0,#+0 SWI +302 PUSH {R7} CFI CFA R13+48 PUSH {R0} CFI CFA R13+52 MOV R3,#+128 MOV R2,R5 MOV R1,R4 MOV R0,#+0 PUSH {R0} CFI CFA R13+56 MOV R0,#+7 PUSH {R0} CFI CFA R13+60 MOV R0,#+172 PUSH {R0} CFI CFA R13+64 MOV R0,R6 SWI +332 MOV R0,R6 SWI +297 ADD SP,SP,#+44 CFI CFA R13+20 POP {R4-R7,PC} ;; return DATA ??DrawClock_0: DC32 `?` CFI EndBlock cfiBlock25 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock26 Using cfiCommon0 CFI NoFunction THUMB ??DrawBar??rT: BX PC Nop CFI EndBlock cfiBlock26 REQUIRE DrawBar RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock27 Using cfiCommon1 CFI Function DrawBar ARM // __??Code32?? __code __interwork __atpcs void DrawBar() DrawBar: BX LR ;; return CFI EndBlock cfiBlock27 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock28 Using cfiCommon0 CFI NoFunction THUMB ??DrawDialogs??rT: BX PC Nop CFI EndBlock cfiBlock28 REQUIRE DrawDialogs RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock29 Using cfiCommon1 CFI Function DrawDialogs ARM // __??Code32?? __code __interwork __atpcs void DrawDialogs(int, int) DrawDialogs: PUSH {R4-R8,LR} CFI ?RET Frame(CFA, -4) CFI R8 Frame(CFA, -8) CFI R7 Frame(CFA, -12) CFI R6 Frame(CFA, -16) CFI R5 Frame(CFA, -20) CFI R4 Frame(CFA, -24) CFI CFA R13+24 MOV R4,R0 MOV R5,R1 MOV R6,#+0 MOV R7,#+0 MOV R8,#+136 ORR R8,R8,#0x1300 ??DrawDialogs_0: MOV R0,R6 SWI +264 CMP R0,#+0 ADDNE R7,R7,#+1 ADD R6,R6,#+1 CMP R6,R8 BNE ??DrawDialogs_0 MOV R0,#+256 SWI +293 LDR R1,??DrawDialogs_1 ;; `?` MOV R6,R0 MOV R2,R7 SWI +292 MOV R0,#+125 SWI +302 MOV R7,R0 MOV R0,#+124 SWI +302 PUSH {R7} CFI CFA R13+28 PUSH {R0} CFI CFA R13+32 MOV R3,#+132 MOV R2,R5 MOV R1,R4 MOV R0,#+32 PUSH {R0} CFI CFA R13+36 MOV R0,#+7 PUSH {R0} CFI CFA R13+40 MOV R0,#+176 PUSH {R0} CFI CFA R13+44 MOV R0,R6 SWI +332 MOV R0,R6 SWI +297 ADD SP,SP,#+20 CFI CFA R13+24 POP {R4-R8,PC} ;; return DATA ??DrawDialogs_1: DC32 `?` CFI EndBlock cfiBlock29 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock30 Using cfiCommon0 CFI NoFunction THUMB ??DrawFreeRam??rT: BX PC Nop CFI EndBlock cfiBlock30 REQUIRE DrawFreeRam RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock31 Using cfiCommon1 CFI Function DrawFreeRam ARM // __??Code32?? __code __interwork __atpcs void DrawFreeRam(int, int) DrawFreeRam: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 MOV R4,R0 MOV R5,R1 MOV R0,#+256 SWI +293 MOV R6,R0 SWI +95 LDR R1,??DataTable5 ;; 0x10624dd3 SMULL R2,R3,R1,R0 LDR R1,??DataTable6 ;; per_d ASR R3,R3,#+6 ADD R2,R3,R0, LSR #+31 MOV R0,R6 SWI +292 MOV R0,#+125 SWI +302 MOV R7,R0 MOV R0,#+124 SWI +302 PUSH {R7} CFI CFA R13+24 PUSH {R0} CFI CFA R13+28 MOV R3,#+128 MOV R2,R5 MOV R1,R4 MOV R0,#+32 PUSH {R0} CFI CFA R13+32 MOV R0,#+7 PUSH {R0} CFI CFA R13+36 MOV R0,#+172 PUSH {R0} CFI CFA R13+40 MOV R0,R6 SWI +332 MOV R0,R6 SWI +297 ADD SP,SP,#+20 CFI CFA R13+20 POP {R4-R7,PC} ;; return CFI EndBlock cfiBlock31 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable5: DC32 0x10624dd3 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable6: DC32 per_d RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock32 Using cfiCommon0 CFI NoFunction THUMB ??DrawCross??rT: BX PC Nop CFI EndBlock cfiBlock32 REQUIRE DrawCross RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock33 Using cfiCommon1 CFI Function DrawCross ARM // __??Code32?? __code __interwork __atpcs void DrawCross(int, int, char *) DrawCross: PUSH {R4-R6,LR} CFI ?RET Frame(CFA, -4) CFI R6 Frame(CFA, -8) CFI R5 Frame(CFA, -12) CFI R4 Frame(CFA, -16) CFI CFA R13+16 MOV R4,R0 LDR R0,??DrawCross_0 ;; crd + 296 MOV R5,R1 LDR R0,[R0, #+0] MOV R6,R2 CMP R0,#+0 BEQ ??DrawCross_1 LDR R2,??DrawCross_0+0x4 ;; `?` MOV R0,R4 SWI +35 POP {R4-R6,PC} ??DrawCross_1: MOV R0,R6 PUSH {R0} CFI CFA R13+20 MOV R3,R5 SUB R2,R4,#+4 MOV R0,#+0 PUSH {R0} CFI CFA R13+24 MOV R0,R4 SWI +435 MOV R0,R6 PUSH {R0} CFI CFA R13+28 MOV R3,R5 ADD R2,R4,#+4 MOV R1,R5 MOV R0,#+0 PUSH {R0} CFI CFA R13+32 MOV R0,R4 SWI +435 MOV R0,R6 PUSH {R0} CFI CFA R13+36 ADD R3,R5,#+4 MOV R2,R4 MOV R1,R5 MOV R0,#+0 PUSH {R0} CFI CFA R13+40 MOV R0,R4 SWI +435 PUSH {R6} CFI CFA R13+44 MOV R0,#+0 PUSH {R0} CFI CFA R13+48 SUB R3,R5,#+4 MOV R2,R4 MOV R1,R5 MOV R0,R4 SWI +435 ADD SP,SP,#+32 CFI CFA R13+16 POP {R4-R6,PC} ;; return DATA ??DrawCross_0: DC32 crd + 296 DC32 `?` CFI EndBlock cfiBlock33 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock34 Using cfiCommon0 CFI NoFunction THUMB ??DrawLineCross??rT: BX PC Nop CFI EndBlock cfiBlock34 REQUIRE DrawLineCross RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock35 Using cfiCommon1 CFI Function DrawLineCross ARM // __??Code32?? __code __interwork __atpcs void DrawLineCross(int, int, char *, int) DrawLineCross: PUSH {R4-R8,LR} CFI ?RET Frame(CFA, -4) CFI R8 Frame(CFA, -8) CFI R7 Frame(CFA, -12) CFI R6 Frame(CFA, -16) CFI R5 Frame(CFA, -20) CFI R4 Frame(CFA, -24) CFI CFA R13+24 MOV R4,R0 MOV R5,R2 ADD R6,R1,#+3 ADD R7,R1,#+2 ADD R8,R1,#+1 SUBS R3,R3,#+1 BEQ ??DrawLineCross_0 SUBS R3,R3,#+1 BEQ ??DrawLineCross_1 SUB R3,R3,#+1 CMP R3,#+1 POPHI {R4-R8,PC} ??DrawLineCross_0: ADD R0,R4,#+5 SWI +515 MOV R2,R5 MOV R1,R8 ADD R0,R4,#+6 SWI +515 MOV R2,R5 MOV R1,R7 ADD R0,R4,#+7 SWI +515 MOV R2,R5 MOV R1,R6 ADD R0,R4,#+8 B ??DrawLineCross_2 ??DrawLineCross_1: SUB R0,R4,#+5 SWI +515 MOV R2,R5 MOV R1,R8 SUB R0,R4,#+6 SWI +515 MOV R2,R5 MOV R1,R7 SUB R0,R4,#+7 SWI +515 MOV R2,R5 MOV R1,R6 SUB R0,R4,#+8 ??DrawLineCross_2: SWI +515 POP {R4-R8,PC} ;; return CFI EndBlock cfiBlock35 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock36 Using cfiCommon0 CFI NoFunction THUMB ??DrawName??rT: BX PC Nop CFI EndBlock cfiBlock36 REQUIRE DrawName RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock37 Using cfiCommon1 CFI Function DrawName ARM // __??Code32?? __code __interwork __atpcs void DrawName(int, int, int) DrawName: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 MOV R4,R0 MOV R6,R1 MOV R7,R2 BL SaveNamePanel MOV R0,#+64 SWI +293 MOV R5,R0 LDR R0,??DataTable15 ;; crd ADD R1,R0,R6, LSL #+2 LDR R2,[R1, #+248] ADD R1,R0,#+412 MOV R0,R5 SWI +292 CMP R7,#+0 MOV R0,#+125 BEQ ??DrawName_0 SWI +302 MOV R6,R0 MOV R0,#+124 SWI +302 PUSH {R6} CFI CFA R13+24 PUSH {R0} CFI CFA R13+28 MOV R3,#+132 MOV R2,R4 MOV R1,#+30 B ??DrawName_1 CFI CFA R13+20 ??DrawName_0: SWI +302 MOV R6,R0 MOV R0,#+124 SWI +302 PUSH {R6} CFI CFA R13+24 PUSH {R0} CFI CFA R13+28 MOV R3,#+132 MOV R2,#+30 MOV R1,R4 ??DrawName_1: MOV R0,#+32 PUSH {R0} CFI CFA R13+32 MOV R0,#+7 PUSH {R0} CFI CFA R13+36 MOV R0,#+176 PUSH {R0} CFI CFA R13+40 MOV R0,R5 SWI +332 ADD SP,SP,#+20 CFI CFA R13+20 MOV R0,R5 SWI +297 POP {R4-R7,PC} ;; return CFI EndBlock cfiBlock37 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock38 Using cfiCommon0 CFI NoFunction THUMB ??DrawContur_w??rT: BX PC Nop CFI EndBlock cfiBlock38 REQUIRE DrawContur_w RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock39 Using cfiCommon1 CFI Function DrawContur_w ARM // __??Code32?? __code __interwork __atpcs void DrawContur_w(int) DrawContur_w: LDR R1,??DataTable15 ;; crd PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 ADD R2,R1,#+424 PUSH {R2} CFI CFA R13+8 ADD R1,R1,#+420 PUSH {R1} CFI CFA R13+12 ADD R3,R0,#+17 MOV R2,#+17 MOV R1,#+0 PUSH {R1} CFI CFA R13+16 MOV R1,#+2 PUSH {R1} CFI CFA R13+20 PUSH {R1} CFI CFA R13+24 ADD R1,R0,#+1 MOV R0,#+2 SWI +336 ADD SP,SP,#+20 CFI CFA R13+4 POP {PC} ;; return CFI EndBlock cfiBlock39 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock40 Using cfiCommon0 CFI NoFunction THUMB ??DrawContur_h??rT: BX PC Nop CFI EndBlock cfiBlock40 REQUIRE DrawContur_h RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock41 Using cfiCommon1 CFI Function DrawContur_h ARM // __??Code32?? __code __interwork __atpcs void DrawContur_h(int) DrawContur_h: LDR R1,??DataTable15 ;; crd PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 ADD R2,R1,#+424 PUSH {R2} CFI CFA R13+8 ADD R1,R1,#+420 PUSH {R1} CFI CFA R13+12 MOV R3,#+17 ADD R2,R0,#+17 ADD R0,R0,#+1 MOV R1,#+0 PUSH {R1} CFI CFA R13+16 MOV R1,#+2 PUSH {R1} CFI CFA R13+20 PUSH {R1} CFI CFA R13+24 SWI +336 ADD SP,SP,#+20 CFI CFA R13+4 POP {PC} ;; return CFI EndBlock cfiBlock41 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock42 Using cfiCommon0 CFI NoFunction THUMB ??DrawPanel_w??rT: BX PC Nop CFI EndBlock cfiBlock42 REQUIRE DrawPanel_w RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock43 Using cfiCommon1 CFI Function DrawPanel_w ARM // __??Code32?? __code __interwork __atpcs void DrawPanel_w() DrawPanel_w: PUSH {R4-R6,LR} CFI ?RET Frame(CFA, -4) CFI R6 Frame(CFA, -8) CFI R5 Frame(CFA, -12) CFI R4 Frame(CFA, -16) CFI CFA R13+16 LDR R4,??DataTable16 ;; name LDR R6,??DataTable15 ;; crd SWI +33009 LDR R1,[R4, #+576] MOV R2,#+20 MUL R5,R2,R1 MOV R1,#+1 PUSH {R1} CFI CFA R13+20 MOV R3,#+19 MOV R2,#+1 MOV R1,R5 PUSH {R1} CFI CFA R13+24 MOV R1,#+1 SWI +37 ADD R0,R6,#+424 PUSH {R0} CFI CFA R13+28 MOV R3,R5 MOV R2,#+19 MOV R1,#+0 ADD R0,R6,#+416 PUSH {R0} CFI CFA R13+32 MOV R0,#+0 PUSH {R0} CFI CFA R13+36 MOV R0,#+2 PUSH {R0} CFI CFA R13+40 PUSH {R0} CFI CFA R13+44 MOV R0,R1 SWI +336 LDR R1,[R6, #+380] ADD R2,R4,#+320 MOV R0,#+2 SWI +35 LDR R0,[R6, #+380] ADD R2,R4,#+900 ADD R1,R0,#+20 MOV R0,#+2 SWI +35 MOV R0,#+200 ORR R0,R0,#0x500 ADD R2,R0,R4 LDR R0,[R6, #+380] ADD R1,R0,#+40 MOV R0,#+2 SWI +35 MOV R0,#+12 ORR R0,R0,#0x800 ADD R2,R0,R4 LDR R0,[R6, #+380] ADD R1,R0,#+60 MOV R0,#+2 SWI +35 LDR R0,[R6, #+380] ADD R2,R4,#+2640 ADD R1,R0,#+80 MOV R0,#+2 SWI +35 MOV R0,#+148 ORR R0,R0,#0xC00 ADD R2,R0,R4 LDR R0,[R6, #+380] MOV R4,#+428 ADD R1,R0,#+100 MOV R0,#+2 SWI +35 LDR R1,[R6, #+312] LDR R0,[R6, #+308] ADD R2,R6,#+420 BL DrawCross LDR R2,??DrawPanel_w_0 ;; DrawPanel_w MOV R1,#+1 ADD R0,R4,R6 SWI +77 LDR R2,??DrawPanel_w_0+0x4 ;; DrawContur_w MOV R1,#+1 ADD R0,R4,R6 SWI +77 ADD SP,SP,#+28 CFI CFA R13+16 POP {R4-R6,PC} ;; return DATA ??DrawPanel_w_0: DC32 DrawPanel_w DC32 DrawContur_w CFI EndBlock cfiBlock43 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock44 Using cfiCommon0 CFI NoFunction THUMB ??DrawPanel_h??rT: BX PC Nop CFI EndBlock cfiBlock44 REQUIRE DrawPanel_h RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock45 Using cfiCommon1 CFI Function DrawPanel_h ARM // __??Code32?? __code __interwork __atpcs void DrawPanel_h() DrawPanel_h: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 LDR R4,??DataTable15 ;; crd LDR R5,??DrawPanel_h_0 ;; IMG1 SWI +33009 MOV R1,#+1 PUSH {R1} CFI CFA R13+16 LDR R1,[R4, #+372] MOV R2,#+0 PUSH {R1} CFI CFA R13+20 LDR R3,[R4, #+376] MOV R1,#+40 SWI +37 ADD R0,R4,#+424 PUSH {R0} CFI CFA R13+24 MOV R1,#+0 ADD R0,R4,#+416 PUSH {R0} CFI CFA R13+28 MOV R0,#+0 PUSH {R0} CFI CFA R13+32 MOV R0,#+2 PUSH {R0} CFI CFA R13+36 PUSH {R0} CFI CFA R13+40 LDR R3,[R4, #+372] LDR R2,[R4, #+376] MOV R0,#+40 SWI +336 LDR R0,[R4, #+380] MOV R2,R5 MOV R1,#+2 ADD R0,R0,#+40 SWI +35 LDR R0,[R4, #+380] ADD R2,R5,#+128 MOV R1,#+2 ADD R0,R0,#+60 SWI +35 LDR R0,[R4, #+380] ADD R2,R5,#+256 MOV R1,#+2 ADD R0,R0,#+80 SWI +35 LDR R0,[R4, #+380] ADD R2,R5,#+384 MOV R1,#+2 ADD R0,R0,#+100 SWI +35 LDR R1,[R4, #+312] LDR R0,[R4, #+308] ADD R2,R4,#+420 BL DrawCross LDR R2,??DrawPanel_h_0+0x4 ;; DrawPanel_h MOV R5,#+428 MOV R1,#+1 ADD R0,R5,R4 SWI +77 LDR R2,??DrawPanel_h_0+0x8 ;; DrawContur_h MOV R1,#+1 ADD R0,R5,R4 SWI +77 ADD SP,SP,#+28 CFI CFA R13+12 POP {R4,R5,PC} ;; return DATA ??DrawPanel_h_0: DC32 IMG1 DC32 DrawPanel_h DC32 DrawContur_h CFI EndBlock cfiBlock45 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock46 Using cfiCommon0 CFI NoFunction THUMB ??DrawNameContr??rT: BX PC Nop CFI EndBlock cfiBlock46 REQUIRE DrawNameContr RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock47 Using cfiCommon1 CFI Function DrawNameContr ARM // __??Code32?? __code __interwork __atpcs void DrawNameContr() DrawNameContr: LDR R0,??DataTable15 ;; crd PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 LDR R1,[R0, #+308] CMP R1,#+0 POPMI {PC} CMP R1,#+18 POPGE {PC} LDR R1,??DataTable14 ;; name + 576 LDR R0,[R0, #+312] LDR R1,[R1, #+0] CMP R0,#+0 BMI ??DrawNameContr_0 CMP R0,#+21 BGE ??DrawNameContr_0 CMP R1,#+1 BLT ??DrawNameContr_0 MOV R2,#+1 MOV R1,#+1 MOV R0,#+2 BL DrawName MOV R0,#+0 B ??DrawNameContr_1 ??DrawNameContr_0: CMP R0,#+20 BLT ??DrawNameContr_2 CMP R0,#+41 BGE ??DrawNameContr_2 CMP R1,#+2 BLT ??DrawNameContr_2 MOV R2,#+1 MOV R1,#+2 MOV R0,#+19 BL DrawName MOV R0,#+20 B ??DrawNameContr_3 ??DrawNameContr_2: CMP R0,#+40 BLT ??DrawNameContr_4 CMP R0,#+61 BGE ??DrawNameContr_4 CMP R1,#+3 BLT ??DrawNameContr_4 MOV R2,#+1 MOV R1,#+3 MOV R0,#+35 BL DrawName MOV R0,#+40 ??DrawNameContr_1: BL DrawContur_w POP {PC} ??DrawNameContr_4: CMP R0,#+60 BLT ??DrawNameContr_5 CMP R0,#+81 BGE ??DrawNameContr_5 CMP R1,#+4 BLT ??DrawNameContr_5 MOV R2,#+1 MOV R1,#+4 MOV R0,#+52 BL DrawName MOV R0,#+60 B ??DrawNameContr_1 ??DrawNameContr_5: CMP R0,#+80 BLT ??DrawNameContr_6 CMP R0,#+101 BGE ??DrawNameContr_6 CMP R1,#+5 BLT ??DrawNameContr_6 MOV R2,#+1 MOV R1,#+5 MOV R0,#+69 BL DrawName MOV R0,#+80 B ??DrawNameContr_1 ??DrawNameContr_6: CMP R0,#+100 POPLT {PC} CMP R0,#+121 POPGE {PC} CMP R1,#+6 POPLT {PC} MOV R2,#+1 MOV R1,#+6 MOV R0,#+87 BL DrawName MOV R0,#+100 ??DrawNameContr_3: BL DrawContur_w POP {PC} ;; return CFI EndBlock cfiBlock47 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable14: DC32 name + 576 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock48 Using cfiCommon0 CFI NoFunction THUMB ??StartFilePanel_w??rT: BX PC Nop CFI EndBlock cfiBlock48 REQUIRE StartFilePanel_w RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock49 Using cfiCommon1 CFI Function StartFilePanel_w ARM // __??Code32?? __code __interwork __atpcs void StartFilePanel_w() StartFilePanel_w: PUSH {R4-R6,LR} CFI ?RET Frame(CFA, -4) CFI R6 Frame(CFA, -8) CFI R5 Frame(CFA, -12) CFI R4 Frame(CFA, -16) CFI CFA R13+16 LDR R4,??DataTable15 ;; crd LDR R0,[R4, #+308] CMP R0,#+0 POPMI {R4-R6,PC} CMP R0,#+21 POPGE {R4-R6,PC} LDR R5,??DataTable16 ;; name LDR R1,[R4, #+312] LDR R0,[R5, #+576] CMP R1,#+0 BMI ??StartFilePanel_w_0 CMP R1,#+21 BGE ??StartFilePanel_w_0 CMP R0,#+1 BLT ??StartFilePanel_w_0 ADD R0,R5,#+64 SWI +27 CMP R0,#+15 ADD R0,R5,#+64 ??StartFilePanel_w_1: BNE ??StartFilePanel_w_2 ??StartFilePanel_w_3: BL shortcut B ??StartFilePanel_w_4 ??StartFilePanel_w_2: BL start ADD R0,R4,#+428 SWI +396 POP {R4-R6,PC} ;; return ??StartFilePanel_w_0: CMP R1,#+20 BLT ??StartFilePanel_w_5 CMP R1,#+41 BGE ??StartFilePanel_w_5 CMP R0,#+2 BLT ??StartFilePanel_w_5 MOV R6,#+644 ??StartFilePanel_w_6: ADD R0,R6,R5 SWI +27 CMP R0,#+15 ADD R0,R6,R5 B ??StartFilePanel_w_1 ??StartFilePanel_w_5: CMP R1,#+40 BLT ??StartFilePanel_w_7 CMP R1,#+61 BGE ??StartFilePanel_w_7 CMP R0,#+3 BLT ??StartFilePanel_w_7 MOV R6,#+200 ORR R6,R6,#0x400 B ??StartFilePanel_w_6 ??StartFilePanel_w_7: CMP R1,#+60 BLT ??StartFilePanel_w_8 CMP R1,#+81 BGE ??StartFilePanel_w_8 CMP R0,#+4 BLT ??StartFilePanel_w_8 MOV R6,#+12 ORR R6,R6,#0x700 ADD R0,R6,R5 SWI +27 CMP R0,#+15 ADD R0,R6,R5 B ??StartFilePanel_w_1 ??StartFilePanel_w_8: CMP R1,#+80 BLT ??StartFilePanel_w_9 CMP R1,#+101 BGE ??StartFilePanel_w_9 CMP R0,#+5 BLT ??StartFilePanel_w_9 MOV R6,#+2384 B ??StartFilePanel_w_6 ??StartFilePanel_w_9: CMP R1,#+100 POPLT {R4-R6,PC} CMP R1,#+121 POPGE {R4-R6,PC} CMP R0,#+6 POPLT {R4-R6,PC} MOV R6,#+148 ORR R6,R6,#0xB00 ADD R0,R6,R5 SWI +27 CMP R0,#+15 ADD R0,R6,R5 BNE ??StartFilePanel_w_3 BL start ??StartFilePanel_w_4: ADD R0,R4,#+428 SWI +396 POP {R4-R6,PC} CFI EndBlock cfiBlock49 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable15: DC32 crd RSEG CODE:CODE:NOROOT(2) DATA ??DataTable16: DC32 name RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock50 Using cfiCommon0 CFI NoFunction THUMB ??StartFilePanel_h??rT: BX PC Nop CFI EndBlock cfiBlock50 REQUIRE StartFilePanel_h RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock51 Using cfiCommon1 CFI Function StartFilePanel_h ARM // __??Code32?? __code __interwork __atpcs void StartFilePanel_h() StartFilePanel_h: LDR R0,??DataTable31 ;; `?` PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 LDR R4,??DataTable33 ;; crd MOV R5,#+428 LDR R2,[R4, #+308] LDR R1,[R4, #+312] CMP R2,#+0 BMI ??StartFilePanel_h_0 CMP R2,#+21 BGE ??StartFilePanel_h_0 CMP R1,#+0 BMI ??StartFilePanel_h_0 CMP R1,#+21 BLT ??StartFilePanel_h_1 ??StartFilePanel_h_0: CMP R2,#+20 BLT ??StartFilePanel_h_2 CMP R2,#+41 BGE ??StartFilePanel_h_2 CMP R1,#+0 BMI ??StartFilePanel_h_2 CMP R1,#+21 BGE ??StartFilePanel_h_2 ADD R0,R0,#+96 ??StartFilePanel_h_1: BL start B ??StartFilePanel_h_3 ??StartFilePanel_h_2: CMP R2,#+40 BLT ??StartFilePanel_h_4 CMP R2,#+61 BGE ??StartFilePanel_h_4 CMP R1,#+0 BMI ??StartFilePanel_h_4 CMP R1,#+21 BGE ??StartFilePanel_h_4 ADD R0,R0,#+80 B ??StartFilePanel_h_5 ??StartFilePanel_h_4: CMP R2,#+60 BLT ??StartFilePanel_h_6 CMP R2,#+81 BGE ??StartFilePanel_h_6 CMP R1,#+0 BMI ??StartFilePanel_h_6 CMP R1,#+21 BGE ??StartFilePanel_h_6 ADD R0,R0,#+64 ??StartFilePanel_h_5: BL shortcut ADD R0,R5,R4 SWI +396 POP {R4,R5,PC} ??StartFilePanel_h_6: CMP R2,#+80 BLT ??StartFilePanel_h_7 CMP R2,#+101 BGE ??StartFilePanel_h_7 CMP R1,#+0 BMI ??StartFilePanel_h_7 CMP R1,#+21 ADDLT R0,R0,#+36 BLT ??StartFilePanel_h_1 ??StartFilePanel_h_7: CMP R2,#+100 POPLT {R4,R5,PC} CMP R2,#+121 POPGE {R4,R5,PC} CMP R1,#+0 POPMI {R4,R5,PC} CMP R1,#+21 POPGE {R4,R5,PC} ADD R0,R0,#+20 BL shortcut ??StartFilePanel_h_3: ADD R0,R5,R4 SWI +396 POP {R4,R5,PC} ;; return CFI EndBlock cfiBlock51 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock52 Using cfiCommon0 CFI NoFunction THUMB ??DrawMenu??rT: BX PC Nop CFI EndBlock cfiBlock52 REQUIRE DrawMenu RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock53 Using cfiCommon1 CFI Function DrawMenu ARM // __??Code32?? __code __interwork __atpcs void DrawMenu(int) DrawMenu: PUSH {R4-R11,LR} CFI ?RET Frame(CFA, -4) CFI R11 Frame(CFA, -8) CFI R10 Frame(CFA, -12) CFI R9 Frame(CFA, -16) CFI R8 Frame(CFA, -20) CFI R7 Frame(CFA, -24) CFI R6 Frame(CFA, -28) CFI R5 Frame(CFA, -32) CFI R4 Frame(CFA, -36) CFI CFA R13+36 LDR R5,??DataTable33 ;; crd SUB SP,SP,#+16 CFI CFA R13+52 LDR R11,??DataTable22 ;; mnu MOV R4,R0 MOV R0,#+45 STR R0,[R5, #+384] MOV R0,#+70 STR R0,[R5, #+388] SUB R0,R4,#+1 CMP R0,#+5 BHI ??DrawMenu_2 MOV R1,#+804 MLA R2,R1,R4,R11 MVN R0,#+3 BIC R0,R0,#0x100 ADD R2,R0,R2 MOV R1,#+70 MOV R0,#+45 SWI +35 ??DrawMenu_2: LDR R0,[R5, #+384] LDR R1,[R5, #+388] SUB R0,R0,#+40 SUB R1,R1,#+15 MOV R2,#+212 ORR R2,R2,#0x1000 ADD R6,R2,R11 ADD R7,R11,#+288 SUB R2,R2,#+3216 ADD R8,R2,R11 ADD R2,R2,#+804 ADD R9,R2,R11 ADD R2,R2,#+804 ADD R10,R2,R11 ADD R11,R11,#+3504 CMP R4,#+1 BEQ ??DrawMenu_3 SUB R2,R4,#+1 SUB R2,R2,#+1 CMP R2,#+5 BHI ??DrawMenu_4 ADR R3,??DrawMenu_0 LDRB R3,[R3, R2] ADD PC,PC,R3, LSL #+2 DATA ??DrawMenu_0: DC8 +1,+3,+5,+7 DC8 +9,+11,+0,+0 ARM ??DrawMenu_5: MOV R2,R7 B ??DrawMenu_6 ??DrawMenu_7: MOV R2,R8 B ??DrawMenu_6 ??DrawMenu_8: MOV R2,R9 B ??DrawMenu_6 ??DrawMenu_9: MOV R2,R10 B ??DrawMenu_6 ??DrawMenu_10: MOV R2,R11 B ??DrawMenu_6 ??DrawMenu_3: MOV R2,R6 ??DrawMenu_6: SWI +35 ??DrawMenu_4: LDR R0,[R5, #+384] LDR R1,[R5, #+388] CMP R4,#+6 MOVEQ R4,#+0 ADD R0,R0,#+50 SUB R1,R1,#+15 ADD R2,R4,#+1 SUB R2,R2,#+1 CMP R2,#+5 BHI ??DrawMenu_11 ADR R3,??DrawMenu_1 LDRB R3,[R3, R2] ADD PC,PC,R3, LSL #+2 DATA ??DrawMenu_1: DC8 +1,+3,+5,+7 DC8 +9,+11,+0,+0 ARM ??DrawMenu_12: MOV R2,R7 B ??DrawMenu_13 ??DrawMenu_14: MOV R2,R8 B ??DrawMenu_13 ??DrawMenu_15: MOV R2,R9 B ??DrawMenu_13 ??DrawMenu_16: MOV R2,R10 B ??DrawMenu_13 ??DrawMenu_17: MOV R2,R11 B ??DrawMenu_13 ??DrawMenu_18: MOV R2,R6 ??DrawMenu_13: SWI +35 ??DrawMenu_11: LDR R2,??DrawMenu_19 ;; DrawMenu MOV R1,#+1 ADD R0,R5,#+444 SWI +77 POP {R0-R11,PC} ;; return DATA ??DrawMenu_19: DC32 DrawMenu CFI EndBlock cfiBlock53 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock54 Using cfiCommon0 CFI NoFunction THUMB ??DrawNameMenu??rT: BX PC Nop CFI EndBlock cfiBlock54 REQUIRE DrawNameMenu RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock55 Using cfiCommon1 CFI Function DrawNameMenu ARM // __??Code32?? __code __interwork __atpcs void DrawNameMenu(int) DrawNameMenu: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 MOV R4,R0 BL SaveNameMENU MOV R0,#+64 SWI +293 MOV R5,R0 LDR R0,??DataTable33 ;; crd ADD R1,R0,R4, LSL #+2 LDR R2,[R1, #+332] ADD R1,R0,#+412 MOV R0,R5 SWI +292 MOV R0,#+125 SWI +302 MOV R4,R0 MOV R0,#+124 SWI +302 PUSH {R4} CFI CFA R13+16 PUSH {R0} CFI CFA R13+20 MOV R3,#+132 MOV R2,#+120 MOV R1,#+45 MOV R0,#+32 PUSH {R0} CFI CFA R13+24 MOV R0,#+7 PUSH {R0} CFI CFA R13+28 MOV R0,#+176 PUSH {R0} CFI CFA R13+32 MOV R0,R5 SWI +332 MOV R0,R5 SWI +297 ADD SP,SP,#+20 CFI CFA R13+12 POP {R4,R5,PC} ;; return CFI EndBlock cfiBlock55 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock56 Using cfiCommon0 CFI NoFunction THUMB ??StartFileMenu??rT: BX PC Nop CFI EndBlock cfiBlock56 REQUIRE StartFileMenu RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock57 Using cfiCommon1 CFI Function StartFileMenu ARM // __??Code32?? __code __interwork __atpcs void StartFileMenu(int) StartFileMenu: LDR R1,??DataTable22 ;; mnu PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 MOV R2,#+804 MLA R1,R2,R0,R1 RSB R2,R2,#+0 SUBS R0,R0,#+1 BEQ ??StartFileMenu_0 SUB R0,R0,#+1 CMP R0,#+4 BLS ??StartFileMenu_1 POP {PC} ??StartFileMenu_0: ADD R0,R2,R1 BL shortcut LDR R0,??DataTable33 ;; crd LDR R1,[R0, #+300] CMP R1,#+0 MOVEQ R1,#+1 MOVNE R1,#+0 STR R1,[R0, #+300] POP {PC} ??StartFileMenu_1: ADD R0,R2,R1 POP {LR} ;; Pop CFI ?RET R14 CFI CFA R13+0 B shortcut ;; tailcall CFI EndBlock cfiBlock57 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable22: DC32 mnu RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock58 Using cfiCommon0 CFI NoFunction THUMB ??FindSizeInSubDir??rT: BX PC Nop CFI EndBlock cfiBlock58 REQUIRE FindSizeInSubDir RSEG DATA_Z:DATA:SORT:NOROOT(2) // static DIR_ENTRY __data de de: DS8 440 // int __data dir_size dir_size: DS8 4 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock59 Using cfiCommon1 CFI Function FindSizeInSubDir ARM // __??Code32?? __code __interwork __atpcs int FindSizeInSubDir(char *) FindSizeInSubDir: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 LDR R5,??DataTable26 ;; de SUB SP,SP,#+260 CFI CFA R13+272 MOV R1,R0 ADD R0,SP,#+4 SWI +26 ADD R0,SP,#+4 SWI +27 ADD R1,SP,#+4 ADD R0,R0,R1 LDR R1,??DataTable27 ;; `?` ADD R4,R0,#+1 ADD R0,SP,#+4 SWI +23 MOV R2,SP ADD R1,SP,#+4 MOV R0,R5 SWI +107 CMP R0,#+0 BEQ ??FindSizeInSubDir_0 ??FindSizeInSubDir_1: ADD R1,R5,#+169 MOV R0,R4 SWI +26 LDR R0,[R5, #+440] LDR R1,[R5, #+20] ADD R0,R1,R0 STR R0,[R5, #+440] MOV R1,SP MOV R0,R5 SWI +108 CMP R0,#+0 BNE ??FindSizeInSubDir_1 ??FindSizeInSubDir_0: MOV R1,SP MOV R0,R5 SWI +109 LDR R0,[R5, #+440] ADD SP,SP,#+260 CFI CFA R13+12 POP {R4,R5,PC} ;; return CFI EndBlock cfiBlock59 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock60 Using cfiCommon0 CFI NoFunction THUMB ??SizeDir??rT: BX PC Nop CFI EndBlock cfiBlock60 REQUIRE SizeDir RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock61 Using cfiCommon1 CFI Function SizeDir ARM // __??Code32?? __code __interwork __atpcs int SizeDir(char *) SizeDir: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 LDR R5,??DataTable26 ;; de SUB SP,SP,#+260 CFI CFA R13+272 MOV R4,R0 MOV R0,#+64 SWI +293 MOV R1,R4 ADD R0,SP,#+4 SWI +26 ADD R0,SP,#+4 SWI +27 ADD R1,SP,#+4 ADD R0,R0,R1 LDR R1,??DataTable27 ;; `?` ADD R4,R0,#+1 ADD R0,SP,#+4 SWI +23 MOV R2,SP ADD R1,SP,#+4 MOV R0,R5 SWI +107 CMP R0,#+0 BEQ ??SizeDir_0 ??SizeDir_1: ADD R1,R5,#+169 MOV R0,R4 SWI +26 LDRSH R0,[R5, #+14] CMP R0,#+0 BEQ ??SizeDir_2 ADD R0,SP,#+4 BL FindSizeInSubDir LDR R1,[R5, #+440] ADD R0,R0,R1 B ??SizeDir_3 ??SizeDir_2: LDR R0,[R5, #+440] LDR R1,[R5, #+20] ADD R0,R1,R0 ??SizeDir_3: STR R0,[R5, #+440] MOV R1,SP MOV R0,R5 SWI +108 CMP R0,#+0 BNE ??SizeDir_1 ??SizeDir_0: MOV R1,SP MOV R0,R5 SWI +109 LDR R0,[R5, #+440] ADD SP,SP,#+260 CFI CFA R13+12 POP {R4,R5,PC} ;; return CFI EndBlock cfiBlock61 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable26: DC32 de RSEG CODE:CODE:NOROOT(2) DATA ??DataTable27: DC32 `?` RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock62 Using cfiCommon0 CFI NoFunction THUMB ??DrawFreeMamory??rT: BX PC Nop CFI EndBlock cfiBlock62 REQUIRE DrawFreeMamory RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock63 Using cfiCommon1 CFI Function DrawFreeMamory ARM // __??Code32?? __code __interwork __atpcs void DrawFreeMamory(char *, int) DrawFreeMamory: PUSH {R4-R11,LR} CFI ?RET Frame(CFA, -4) CFI R11 Frame(CFA, -8) CFI R10 Frame(CFA, -12) CFI R9 Frame(CFA, -16) CFI R8 Frame(CFA, -20) CFI R7 Frame(CFA, -24) CFI R6 Frame(CFA, -28) CFI R5 Frame(CFA, -32) CFI R4 Frame(CFA, -36) CFI CFA R13+36 MOV R9,R0 MOV R4,R1 LDR R6,??DataTable33 ;; crd LDR R10,??DrawFreeMamory_0+0x4 ;; `?` MOV R0,#+256 SWI +293 MOV R5,R0 SWI +33009 MOV R1,#+1 PUSH {R1} CFI CFA R13+40 MOV R3,#+132 MOV R2,#+0 MOV R1,#+176 PUSH {R1} CFI CFA R13+44 MOV R1,#+0 SWI +37 LDR R1,[R6, #+392] MOV R0,#+0 SWI +139 ASR R1,R0,#+9 ADD R0,R0,R1, LSR #+22 LDR R1,[R6, #+392] ASR R11,R0,#+10 MOV R0,#+0 SWI +138 ASR R1,R0,#+9 ADD R0,R0,R1, LSR #+22 ASR R7,R0,#+10 MOV R1,#+100 MUL R0,R1,R7 MOV R1,R11 _BLF ??div32_a,??rA??div32_a MOV R8,R1 MOV R0,R9 BL SizeDir MOV R9,R0 MOV R3,R7 MOV R2,R11 ADD R1,R10,#+20 MOV R0,R5 SWI +292 MOV R0,#+125 SWI +302 MOV R11,R0 MOV R0,#+124 SWI +302 PUSH {R11} CFI CFA R13+48 PUSH {R0} CFI CFA R13+52 MOV R3,#+131 MOV R2,#+2 MOV R1,R2 MOV R0,#+32 PUSH {R0} CFI CFA R13+56 MOV R0,#+7 PUSH {R0} CFI CFA R13+60 MOV R0,#+175 PUSH {R0} CFI CFA R13+64 MOV R0,R5 SWI +332 MOV R2,R7 ADR R1,??DrawFreeMamory_0 ;; "%d" MOV R0,R5 SWI +292 ADD R0,R6,#+424 PUSH {R0} CFI CFA R13+68 MOV R3,#+131 MOV R2,#+60 ADD R1,R8,#+10 ADD R0,R6,#+416 PUSH {R0} CFI CFA R13+72 MOV R0,#+32 PUSH {R0} CFI CFA R13+76 MOV R0,#+6 PUSH {R0} CFI CFA R13+80 MOV R0,#+175 PUSH {R0} CFI CFA R13+84 MOV R0,R5 SWI +332 ADD SP,SP,#+48 CFI CFA R13+36 ADD R0,R6,#+424 PUSH {R0} CFI CFA R13+40 MOV R3,#+57 MOV R2,#+117 MOV R1,#+50 ADD R0,R6,#+416 PUSH {R0} CFI CFA R13+44 MOV R0,#+0 PUSH {R0} CFI CFA R13+48 PUSH {R0} CFI CFA R13+52 PUSH {R0} CFI CFA R13+56 MOV R0,#+2 SWI +336 ADD R0,R6,#+420 PUSH {R0} CFI CFA R13+60 PUSH {R0} CFI CFA R13+64 MOV R3,#+56 ADD R2,R8,#+18 MOV R1,#+51 MOV R0,#+0 PUSH {R0} CFI CFA R13+68 PUSH {R0} CFI CFA R13+72 PUSH {R0} CFI CFA R13+76 MOV R0,#+3 SWI +336 ADD SP,SP,#+40 CFI CFA R13+36 ASR R0,R9,#+9 ADD R0,R9,R0, LSR #+22 ASR R2,R0,#+10 MOV R1,R10 MOV R0,R5 SWI +292 MOV R0,#+125 SWI +302 MOV R6,R0 MOV R0,#+124 SWI +302 PUSH {R6} CFI CFA R13+40 PUSH {R0} CFI CFA R13+44 MOV R3,#+131 MOV R2,R4 MOV R1,#+2 MOV R0,#+32 PUSH {R0} CFI CFA R13+48 MOV R0,#+7 PUSH {R0} CFI CFA R13+52 MOV R0,#+175 PUSH {R0} CFI CFA R13+56 MOV R0,R5 SWI +332 ADD SP,SP,#+20 CFI CFA R13+36 POP {R4-R11,PC} ;; return DATA ??DrawFreeMamory_0: DC8 "%d",+0 DC32 `?` CFI EndBlock cfiBlock63 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock64 Using cfiCommon0 CFI NoFunction THUMB ??DrawPusk??rT: BX PC Nop CFI EndBlock cfiBlock64 REQUIRE DrawPusk RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock65 Using cfiCommon1 CFI Function DrawPusk ARM // __??Code32?? __code __interwork __atpcs void DrawPusk(int, int) DrawPusk: PUSH {R4-R11,LR} CFI ?RET Frame(CFA, -4) CFI R11 Frame(CFA, -8) CFI R10 Frame(CFA, -12) CFI R9 Frame(CFA, -16) CFI R8 Frame(CFA, -20) CFI R7 Frame(CFA, -24) CFI R6 Frame(CFA, -28) CFI R5 Frame(CFA, -32) CFI R4 Frame(CFA, -36) CFI CFA R13+36 LDR R4,??DataTable33 ;; crd MOV R9,#+272 MOV R11,R0 SWI +33009 MOV R1,#+1 PUSH {R1} CFI CFA R13+40 MOV R3,#+75 MOV R2,#+80 MOV R8,#+268 MOV R1,#+158 PUSH {R1} CFI CFA R13+44 MOV R7,#+264 MOV R6,#+260 MOV R10,#+256 MOV R1,#+0 SWI +37 ADD R0,R4,#+424 PUSH {R0} CFI CFA R13+48 MOV R3,#+158 MOV R2,#+75 MOV R1,#+80 ADD R0,R4,#+416 PUSH {R0} CFI CFA R13+52 MOV R0,#+0 PUSH {R0} CFI CFA R13+56 MOV R0,#+5 PUSH {R0} CFI CFA R13+60 MOV R0,#+3 PUSH {R0} CFI CFA R13+64 MOV R0,#+0 SWI +336 MOV R0,#+256 SWI +293 MOV R5,R0 LDR R0,[R9, +R4] ADD R1,R4,#+460 PUSH {R0} CFI CFA R13+68 LDR R0,[R8, +R4] PUSH {R0} CFI CFA R13+72 LDR R0,[R7, +R4] PUSH {R0} CFI CFA R13+76 LDR R0,[R6, +R4] PUSH {R0} CFI CFA R13+80 LDR R3,[R10, +R4] LDR R2,[R4, #+252] MOV R0,R5 SWI +292 ADD SP,SP,#+44 CFI CFA R13+36 ADD R0,R4,#+424 PUSH {R0} CFI CFA R13+40 MOV R3,#+132 MOV R2,R11 MOV R1,#+2 ADD R0,R4,#+416 PUSH {R0} CFI CFA R13+44 MOV R0,#+32 PUSH {R0} CFI CFA R13+48 MOV R0,#+7 PUSH {R0} CFI CFA R13+52 MOV R0,#+176 PUSH {R0} CFI CFA R13+56 MOV R0,R5 SWI +332 LDR R0,[R4, #+308] ADD SP,SP,#+20 CFI CFA R13+36 CMP R0,#+0 BMI ??DrawPusk_0 CMP R0,#+61 BGE ??DrawPusk_0 LDR R1,[R4, #+400] LDR R2,[R4, #+312] ADD R3,R1,#+50 MOV R0,#+412 ADD R11,R1,#+35 CMP R2,R11 CMPGE R3,R2 BLT ??DrawPusk_1 LDR R2,[R4, #+252] ADD R1,R0,R4 MOV R0,R5 SWI +292 MOV R0,#+125 SWI +302 MOV R6,R0 MOV R0,#+124 SWI +302 PUSH {R6} CFI CFA R13+40 PUSH {R0} CFI CFA R13+44 MOV R3,#+132 MOV R0,#+32 PUSH {R0} CFI CFA R13+48 MOV R0,#+7 PUSH {R0} CFI CFA R13+52 MOV R0,#+176 PUSH {R0} CFI CFA R13+56 LDR R0,[R4, #+400] ADD R2,R0,#+35 ??DrawPusk_2: MOV R1,#+2 MOV R0,R5 SWI +332 MOV R0,#+1 ADD SP,SP,#+20 CFI CFA R13+36 B ??DrawPusk_3 ??DrawPusk_1: ADD R11,R1,#+62 CMP R2,R3 CMPGE R11,R2 BLT ??DrawPusk_4 LDR R2,[R10, +R4] ADD R1,R0,R4 MOV R0,R5 SWI +292 MOV R0,#+125 SWI +302 MOV R6,R0 MOV R0,#+124 SWI +302 PUSH {R6} CFI CFA R13+40 PUSH {R0} CFI CFA R13+44 MOV R3,#+132 MOV R0,#+32 PUSH {R0} CFI CFA R13+48 MOV R0,#+7 PUSH {R0} CFI CFA R13+52 MOV R0,#+176 PUSH {R0} CFI CFA R13+56 LDR R0,[R4, #+400] ADD R2,R0,#+47 B ??DrawPusk_2 CFI CFA R13+36 ??DrawPusk_4: ADD R3,R1,#+75 CMP R2,R11 CMPGE R3,R2 BLT ??DrawPusk_5 LDR R2,[R6, +R4] ADD R1,R0,R4 MOV R0,R5 SWI +292 MOV R0,#+125 SWI +302 MOV R6,R0 MOV R0,#+124 SWI +302 PUSH {R6} CFI CFA R13+40 PUSH {R0} CFI CFA R13+44 MOV R3,#+132 MOV R0,#+32 PUSH {R0} CFI CFA R13+48 MOV R0,#+7 PUSH {R0} CFI CFA R13+52 MOV R0,#+176 PUSH {R0} CFI CFA R13+56 LDR R0,[R4, #+400] ADD R2,R0,#+59 ??DrawPusk_6: B ??DrawPusk_2 CFI CFA R13+36 ??DrawPusk_5: ADD R6,R1,#+87 CMP R2,R3 CMPGE R6,R2 BLT ??DrawPusk_7 LDR R2,[R7, +R4] ADD R1,R0,R4 MOV R0,R5 SWI +292 MOV R0,#+125 SWI +302 MOV R6,R0 MOV R0,#+124 SWI +302 PUSH {R6} CFI CFA R13+40 PUSH {R0} CFI CFA R13+44 MOV R3,#+132 MOV R0,#+32 PUSH {R0} CFI CFA R13+48 MOV R0,#+7 PUSH {R0} CFI CFA R13+52 MOV R0,#+176 PUSH {R0} CFI CFA R13+56 LDR R0,[R4, #+400] ADD R2,R0,#+71 B ??DrawPusk_2 CFI CFA R13+36 ??DrawPusk_7: ADD R3,R1,#+99 CMP R2,R6 CMPGE R3,R2 BLT ??DrawPusk_8 LDR R2,[R8, +R4] ADD R1,R0,R4 MOV R0,R5 SWI +292 MOV R0,#+125 SWI +302 MOV R6,R0 MOV R0,#+124 SWI +302 PUSH {R6} CFI CFA R13+40 PUSH {R0} CFI CFA R13+44 MOV R3,#+132 MOV R0,#+32 PUSH {R0} CFI CFA R13+48 MOV R0,#+7 PUSH {R0} CFI CFA R13+52 MOV R0,#+176 PUSH {R0} CFI CFA R13+56 LDR R0,[R4, #+400] ADD R2,R0,#+83 B ??DrawPusk_2 CFI CFA R13+36 ??DrawPusk_8: CMP R2,R3 ADDGE R1,R1,#+111 CMPGE R1,R2 BLT ??DrawPusk_0 LDR R2,[R9, +R4] ADD R1,R0,R4 MOV R0,R5 SWI +292 MOV R0,#+125 SWI +302 MOV R6,R0 MOV R0,#+124 SWI +302 PUSH {R6} CFI CFA R13+40 PUSH {R0} CFI CFA R13+44 MOV R3,#+132 MOV R0,#+32 PUSH {R0} CFI CFA R13+48 MOV R0,#+7 PUSH {R0} CFI CFA R13+52 MOV R0,#+176 PUSH {R0} CFI CFA R13+56 LDR R0,[R4, #+400] ADD R2,R0,#+95 B ??DrawPusk_2 CFI CFA R13+36 ??DrawPusk_0: MOV R0,#+0 ??DrawPusk_3: STR R0,[R4, #+396] MOV R0,R5 SWI +297 POP {R4-R11,PC} ;; return CFI EndBlock cfiBlock65 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock66 Using cfiCommon0 CFI NoFunction THUMB ??StartFilePusk??rT: BX PC Nop CFI EndBlock cfiBlock66 REQUIRE StartFilePusk RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock67 Using cfiCommon1 CFI Function StartFilePusk ARM // __??Code32?? __code __interwork __atpcs void StartFilePusk() StartFilePusk: LDR R0,??DataTable33 ;; crd PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 LDR R1,[R0, #+308] CMP R1,#+0 POPMI {PC} CMP R1,#+61 POPGE {PC} LDR R1,[R0, #+400] LDR R3,[R0, #+312] LDR R0,??DataTable31 ;; `?` ADD R2,R1,#+50 ADD R12,R1,#+35 CMP R3,R12 CMPGE R2,R3 BGE ??StartFilePusk_0 ADD R12,R1,#+62 CMP R3,R2 CMPGE R12,R3 BLT ??StartFilePusk_1 ADD R0,R0,#+96 ??StartFilePusk_0: BL start POP {PC} ??StartFilePusk_1: ADD R2,R1,#+75 CMP R3,R12 CMPGE R2,R3 ADDGE R0,R0,#+80 BGE ??StartFilePusk_2 ADD R12,R1,#+87 CMP R3,R2 CMPGE R12,R3 BLT ??StartFilePusk_3 ADD R0,R0,#+64 ??StartFilePusk_4: B ??StartFilePusk_2 ??StartFilePusk_3: ADD R2,R1,#+99 CMP R3,R12 CMPGE R2,R3 ADDGE R0,R0,#+36 BGE ??StartFilePusk_0 CMP R3,R2 ADDGE R1,R1,#+111 CMPGE R1,R3 POPLT {PC} ADD R0,R0,#+20 ??StartFilePusk_2: BL shortcut POP {PC} ;; return CFI EndBlock cfiBlock67 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable31: DC32 `?` RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock68 Using cfiCommon0 CFI NoFunction THUMB ??DrawStrInt??rT: BX PC Nop CFI EndBlock cfiBlock68 REQUIRE DrawStrInt RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock69 Using cfiCommon1 CFI Function DrawStrInt ARM // __??Code32?? __code __interwork __atpcs void DrawStrInt(int, int, int) DrawStrInt: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 MOV R4,R0 MOV R5,R1 MOV R6,R2 MOV R0,#+5 SWI +293 LDR R1,??DataTable32 ;; per_d MOV R7,R0 MOV R2,R4 SWI +292 MOV R0,#+125 SWI +302 MOV R4,R0 MOV R0,#+124 SWI +302 PUSH {R4} CFI CFA R13+24 PUSH {R0} CFI CFA R13+28 MOV R3,#+128 MOV R2,R6 MOV R1,R5 MOV R0,#+32 PUSH {R0} CFI CFA R13+32 MOV R0,#+7 PUSH {R0} CFI CFA R13+36 MOV R0,#+172 PUSH {R0} CFI CFA R13+40 MOV R0,R7 SWI +332 MOV R0,R7 SWI +297 ADD SP,SP,#+20 CFI CFA R13+20 POP {R4-R7,PC} ;; return CFI EndBlock cfiBlock69 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable32: DC32 per_d RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock70 Using cfiCommon0 CFI NoFunction THUMB ??DrawStrChar??rT: BX PC Nop CFI EndBlock cfiBlock70 REQUIRE DrawStrChar RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock71 Using cfiCommon1 CFI Function DrawStrChar ARM // __??Code32?? __code __interwork __atpcs void DrawStrChar(char *, int, int) DrawStrChar: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 MOV R4,R1 MOV R5,R2 MOV R7,R0 SWI +27 SWI +293 LDR R1,??DrawStrChar_0 ;; crd + 412 MOV R6,R0 MOV R2,R7 SWI +292 MOV R0,#+125 SWI +302 MOV R7,R0 MOV R0,#+124 SWI +302 PUSH {R7} CFI CFA R13+24 PUSH {R0} CFI CFA R13+28 MOV R3,#+128 MOV R2,R5 MOV R1,R4 MOV R0,#+32 PUSH {R0} CFI CFA R13+32 MOV R0,#+7 PUSH {R0} CFI CFA R13+36 MOV R0,#+172 PUSH {R0} CFI CFA R13+40 MOV R0,R6 SWI +332 MOV R0,R6 SWI +297 ADD SP,SP,#+20 CFI CFA R13+20 POP {R4-R7,PC} ;; return DATA ??DrawStrChar_0: DC32 crd + 412 CFI EndBlock cfiBlock71 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock72 Using cfiCommon0 CFI NoFunction THUMB ??DrawWorkDesc??rT: BX PC Nop CFI EndBlock cfiBlock72 REQUIRE DrawWorkDesc RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock73 Using cfiCommon1 CFI Function DrawWorkDesc ARM // __??Code32?? __code __interwork __atpcs void DrawWorkDesc() DrawWorkDesc: PUSH {R4,LR} CFI ?RET Frame(CFA, -4) CFI R4 Frame(CFA, -8) CFI CFA R13+8 LDR R4,??DataTable33 ;; crd LDR R0,[R4, #+308] CMP R0,#+121 BLT ??DrawWorkDesc_0 CMP R0,#+129 BGE ??DrawWorkDesc_0 LDR R0,[R4, #+312] LDR R1,[R4, #+304] CMP R0,R1 BLT ??DrawWorkDesc_0 CMP R0,#+171 BGE ??DrawWorkDesc_0 MOV R2,#+130 MOV R1,#+120 MOV R0,#+1 BL DrawStrInt MOV R2,#+144 MOV R1,#+120 MOV R0,#+2 BL DrawStrInt MOV R2,#+158 MOV R1,#+120 MOV R0,#+3 BL DrawStrInt MOV R0,#+130 B ??DrawWorkDesc_1 ??DrawWorkDesc_0: LDR R0,[R4, #+292] MOV R2,#+158 MOV R1,#+120 BL DrawStrInt MOV R0,#+157 ??DrawWorkDesc_1: STR R0,[R4, #+304] LDR R0,[R4, #+332] CMP R0,#+0 LDREQ R0,[R4, #+320] CMPEQ R0,#+0 POPNE {R4,PC} LDR R1,[R4, #+308] LDR R0,[R4, #+292] CMP R1,#+131 BLT ??DrawWorkDesc_2 CMP R0,#+3 ADDLT R0,R0,#+1 MOVGE R0,#+1 MOV R1,#+1 B ??DrawWorkDesc_3 ??DrawWorkDesc_2: LDR R2,[R4, #+312] CMP R2,#+176 MOVGE R1,#+175 STRGE R1,[R4, #+312] CMPLT R1,#+2 BGE ??DrawWorkDesc_4 CMP R0,#+2 SUBGE R0,R0,#+1 MOVLT R0,#+3 MOV R1,#+131 ??DrawWorkDesc_3: STR R1,[R4, #+308] ??DrawWorkDesc_4: LDR R1,[R4, #+312] STR R0,[R4, #+292] LDR R0,[R4, #+308] ADD R2,R4,#+416 BL DrawCross POP {R4,PC} ;; return CFI EndBlock cfiBlock73 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable33: DC32 crd RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock74 Using cfiCommon0 CFI NoFunction THUMB ??DrawSysBar??rT: BX PC Nop CFI EndBlock cfiBlock74 REQUIRE DrawSysBar RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock75 Using cfiCommon1 CFI Function DrawSysBar ARM // __??Code32?? __code __interwork __atpcs void DrawSysBar() DrawSysBar: BX LR ;; return CFI EndBlock cfiBlock75 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock76 Using cfiCommon0 CFI NoFunction THUMB ??atoi??rT: BX PC Nop CFI EndBlock cfiBlock76 REQUIRE atoi RSEG DATA_C:CONST:SORT:NOROOT(2) DATA DC8 "2:\\" RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "csm:%i" DC8 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "%c%02d:%02d:%02d" DC8 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "%d,%dV" DC8 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "%d%%" DC8 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "%c%ddb" DC8 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "NULL pointer function!" DC8 0 RSEG DATA_C:CONST:SORT:NOROOT(0) `?`: DATA DC8 "+" RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "Close" DC8 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "0:\\shell\\img\\784.png" DC8 0, 0, 0 DC8 "KeyBoard Lock" DC8 0, 0 DC8 "0:\\shell\\img\\785.png" DC8 0, 0, 0 DC8 "0:\\shell\\img\\792.png" DC8 0, 0, 0 DC8 "0:\\shell\\img\\779.png" DC8 0, 0, 0 // 3 #include "ReadCFG.c" RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "NetDB x" DC8 "Can't open coor2.ini" DC8 0, 0, 0 DC8 "0:\\coor2.ini" DC8 0, 0, 0 DC8 "ShowFreeRam" DC8 "FreeRam y" DC8 0, 0 DC8 "FreeRam x" DC8 0, 0 DC8 "ShowDialogs" DC8 "Dialogs y" DC8 0, 0 DC8 "Dialogs x" DC8 0, 0 DC8 "ShowNetDB" DC8 0, 0 DC8 "NetDB y" DC8 "ShowNetAdv" DC8 0 DC8 "NetAdv y" DC8 0, 0, 0 DC8 "NetAdv x" DC8 0, 0, 0 DC8 "ShowClock" DC8 0, 0 DC8 "Clock y" DC8 "Clock x" DC8 "ShowVolt" DC8 0, 0, 0 DC8 "Volt y" DC8 0 DC8 "Volt x" DC8 0 DC8 "ShowCap" DC8 "Cap y" DC8 0, 0 DC8 "Cap x" DC8 0, 0 DC8 "Can't open coord.ini" DC8 0, 0, 0 // char const __data coord[19] coord: DC8 "0:\\shell\\coord.ini" DC8 0 RSEG DATA_C:CONST:SORT:NOROOT(0) DATA DC8 ":" RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "Exit?" DC8 0, 0 DC8 "Killed" DC8 0 RSEG DATA_C:CONST:SORT:NOROOT(0) DATA DC8 "0" RSEG DATA_C:CONST:SORT:NOROOT(0) DATA DC8 "*" RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "Root" DC8 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) DATA DC8 "4:\\" RSEG DATA_C:CONST:SORT:NOROOT(2) DATA DC8 "exe" RSEG DATA_C:CONST:SORT:NOROOT(2) DATA DC8 "1:\\" RSEG DATA_C:CONST:SORT:NOROOT(2) DATA DC8 "0:\\" RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "\316\370\350\341\352\340" DC8 0 RSEG DATA_C:CONST:SORT:NOROOT(0) DATA DC8 "\\" RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock77 Using cfiCommon1 CFI Function atoi ARM // __??Code32?? __code __interwork __atpcs int atoi(char *) atoi: MOV R1,#+0 MOV R2,#+1 MOV R12,#+10 B ??atoi_0 ??atoi_1: CMP R3,#+58 BCS ??atoi_2 MLA R1,R12,R1,R3 SUB R1,R1,#+48 ??atoi_3: ADD R0,R0,#+1 ??atoi_0: LDRB R3,[R0, #+0] CMP R3,#+48 BCS ??atoi_1 CMP R3,#+45 MVNEQ R2,#+0 BEQ ??atoi_3 ??atoi_2: MUL R0,R2,R1 BX LR ;; return CFI EndBlock cfiBlock77 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock78 Using cfiCommon0 CFI NoFunction THUMB ??LoadParamsCrd??rT: BX PC Nop CFI EndBlock cfiBlock78 REQUIRE LoadParamsCrd RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock79 Using cfiCommon1 CFI Function LoadParamsCrd ARM // __??Code32?? __code __interwork __atpcs void LoadParamsCrd() LoadParamsCrd: PUSH {R4-R9,LR} CFI ?RET Frame(CFA, -4) CFI R9 Frame(CFA, -8) CFI R8 Frame(CFA, -12) CFI R7 Frame(CFA, -16) CFI R6 Frame(CFA, -20) CFI R5 Frame(CFA, -24) CFI R4 Frame(CFA, -28) CFI CFA R13+28 LDR R4,??DataTable40 ;; `?` SUB SP,SP,#+788 CFI CFA R13+816 SUB SP,SP,#+9216 CFI CFA R13+10032 MOV R3,SP MOV R2,#+128 MOV R1,#+32768 ADD R0,R4,#+280 SWI +10 MOV R5,R0 CMN R5,#+1 BNE ??LoadParamsCrd_0 ADD R1,R4,#+256 MOV R0,#+1 SWI +328 MOV R1,SP MVN R0,#+0 SWI +13 ??LoadParamsCrd_0: MOV R3,SP MOV R2,#+15 ORR R2,R2,#0x2700 ADD R1,SP,#+4 MOV R0,R5 SWI +11 LDR R0,??DataTable41 ;; crd MOV R6,#+12 ADD R7,R0,#+40 ADD R8,R0,#+4 MOV R9,#+3 ??LoadParamsCrd_1: ADD R1,R4,#+248 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+68] ADD R1,R4,#+240 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+72] ADD R1,R4,#+232 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+76] ADD R1,R4,#+224 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+104] ADD R1,R4,#+216 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+108] ADD R1,R4,#+204 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+112] ADD R1,R4,#+196 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R8, #+0] ADD R1,R4,#+188 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R8], #+4 ADD R1,R4,#+176 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R8], #+8 ADD R1,R4,#+164 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+36] ADD R1,R4,#+152 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+36] ADD R1,R4,#+140 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+40] MOV R1,R4 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+0] ADD R1,R4,#+132 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+0] ADD R1,R4,#+120 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+4] ADD R1,R4,#+108 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+140] ADD R1,R4,#+96 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+144] ADD R1,R4,#+84 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+148] ADD R1,R4,#+72 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+176] ADD R1,R4,#+60 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+180] ADD R1,R4,#+48 ADD R0,SP,#+4 SWI +280 ADD R0,R6,R0 BL atoi STR R0,[R7, #+184] ADD R6,R6,#+4 ADD R7,R7,#+12 SUBS R9,R9,#+1 BNE ??LoadParamsCrd_1 MOV R1,SP MOV R0,R5 SWI +13 ADD SP,SP,#+788 CFI CFA R13+9244 ADD SP,SP,#+9216 CFI CFA R13+28 POP {R4-R9,PC} ;; return CFI EndBlock cfiBlock79 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock80 Using cfiCommon0 CFI NoFunction THUMB ??process??rT: BX PC Nop CFI EndBlock cfiBlock80 REQUIRE process RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock81 Using cfiCommon1 CFI Function process ARM // __??Code32?? __code __interwork __atpcs void process(char *, int) process: PUSH {R4} CFI R4 Frame(CFA, -4) CFI CFA R13+4 LDR R4,??DataTable38 ;; name MOV R12,#+580 MLA R1,R12,R1,R4 MOV R2,#+0 MOV R3,R0 MOV R12,R1 B ??process_0 ??process_1: LDRB R4,[R3], #+1 STRB R4,[R12], #+1 ??process_0: LDRB R4,[R3, #+0] ADD R2,R2,#+1 CMP R4,#+124 BNE ??process_1 ADD R3,R1,#+64 B ??process_2 ??process_3: MOV R2,R4 STRB R2,[R3], #+1 MOV R2,R12 ??process_2: LDRB R4,[R2, +R0] ADD R12,R2,#+1 CMP R4,#+124 BNE ??process_3 ADD R1,R1,#+320 B ??process_4 ??process_5: STRB R2,[R1], #+1 ADD R12,R12,#+1 ??process_4: LDRB R2,[R12, +R0] CMP R2,#+124 BNE ??process_5 POP {R4} CFI R4 SameValue CFI CFA R13+0 BX LR ;; return CFI EndBlock cfiBlock81 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock82 Using cfiCommon0 CFI NoFunction THUMB ??SaveNamePanel??rT: BX PC Nop CFI EndBlock cfiBlock82 REQUIRE SaveNamePanel RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock83 Using cfiCommon1 CFI Function SaveNamePanel ARM // __??Code32?? __code __interwork __atpcs void SaveNamePanel() SaveNamePanel: LDR R1,??DataTable38 ;; name MOV R0,#+0 LDR R2,[R1, #+576] CMP R2,#+0 BXMI LR LDR R3,??SaveNamePanel_0 ;; crd + 252 ??SaveNamePanel_1: STR R1,[R3], #+4 ADD R0,R0,#+1 ADD R1,R1,#+580 CMP R2,R0 BGE ??SaveNamePanel_1 BX LR ;; return DATA ??SaveNamePanel_0: DC32 crd + 252 CFI EndBlock cfiBlock83 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock84 Using cfiCommon0 CFI NoFunction THUMB ??LoadParamsPanel??rT: BX PC Nop CFI EndBlock cfiBlock84 REQUIRE LoadParamsPanel RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock85 Using cfiCommon1 CFI Function LoadParamsPanel ARM // __??Code32?? __code __interwork __atpcs void LoadParamsPanel() LoadParamsPanel: PUSH {R4-R10,LR} CFI ?RET Frame(CFA, -4) CFI R10 Frame(CFA, -8) CFI R9 Frame(CFA, -12) CFI R8 Frame(CFA, -16) CFI R7 Frame(CFA, -20) CFI R6 Frame(CFA, -24) CFI R5 Frame(CFA, -28) CFI R4 Frame(CFA, -32) CFI CFA R13+32 LDR R5,??LoadParamsPanel_0+0x4 ;; `?` SUB SP,SP,#+4 CFI CFA R13+36 MOV R3,SP MOV R2,#+128 MOV R1,#+32768 ADD R0,R5,#+24 SWI +10 MOV R4,R0 CMN R4,#+1 BNE ??LoadParamsPanel_1 MOV R1,R5 MOV R0,#+1 SWI +328 MOV R1,SP MVN R0,#+0 SWI +13 POP {R0,R4-R10,PC} ??LoadParamsPanel_1: MOV R0,#+16 ORR R0,R0,#0x2700 SWI +20 MOV R5,R0 MOV R0,#+256 SWI +20 MOV R6,R0 CMP R5,#+0 CMPNE R6,#+0 BEQ ??LoadParamsPanel_2 LDR R10,??LoadParamsPanel_0+0x8 ;; NumOfItems MOV R3,SP MOV R2,#+15 ORR R2,R2,#0x2700 MOV R1,R5 MOV R0,R4 SWI +11 MOV R7,R0 MOV R9,#+0 CMP R7,#+1 BGE ??LoadParamsPanel_3 ??LoadParamsPanel_2: MOV R0,R5 SWI +21 MOV R0,R6 SWI +21 MOV R1,SP MOV R0,R4 SWI +13 POP {R0,R4-R10,PC} ;; return ??LoadParamsPanel_4: LDRB R2,[R1], #+1 MOV R9,R8 STRB R2,[R0], #+1 ??LoadParamsPanel_5: LDRB R2,[R1, #+0] ADD R8,R9,#+1 CMP R2,#+13 BEQ ??LoadParamsPanel_6 CMP R9,R7 BLT ??LoadParamsPanel_4 ??LoadParamsPanel_6: LDR R1,[R10, #+0] MOV R0,R6 BL process LDR R0,[R10, #+0] LDR R1,??DataTable38 ;; name ADD R0,R0,#+1 STR R0,[R10, #+0] MOV R0,#+576 LDR R2,[R0, +R1] MOV R9,R8 ADD R2,R2,#+1 STR R2,[R0, +R1] ??LoadParamsPanel_3: CMP R9,R7 BGE ??LoadParamsPanel_2 ADR R1,??LoadParamsPanel_0 ;; "" MOV R0,R6 SWI +26 ADD R1,R9,R5 MOV R0,R6 B ??LoadParamsPanel_5 DATA ??LoadParamsPanel_0: DC8 "",+0,+0,+0 DC32 `?` DC32 NumOfItems CFI EndBlock cfiBlock85 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable38: DC32 name RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock86 Using cfiCommon0 CFI NoFunction THUMB ??LoadParamsConfig??rT: BX PC Nop CFI EndBlock cfiBlock86 REQUIRE LoadParamsConfig RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock87 Using cfiCommon1 CFI Function LoadParamsConfig ARM // __??Code32?? __code __interwork __atpcs void LoadParamsConfig() LoadParamsConfig: PUSH {R4-R6,LR} CFI ?RET Frame(CFA, -4) CFI R6 Frame(CFA, -8) CFI R5 Frame(CFA, -12) CFI R4 Frame(CFA, -16) CFI CFA R13+16 LDR R4,??LoadParamsConfig_0 ;; `?` SUB SP,SP,#+788 CFI CFA R13+804 SUB SP,SP,#+9216 CFI CFA R13+10020 MOV R3,SP MOV R2,#+128 MOV R1,#+32768 ADD R0,R4,#+52 SWI +10 MOV R5,R0 CMN R5,#+1 BNE ??LoadParamsConfig_1 ADD R1,R4,#+28 MOV R0,#+1 SWI +328 MOV R1,SP MVN R0,#+0 SWI +13 ??LoadParamsConfig_1: LDR R6,??DataTable51 ;; crd MOV R3,SP MOV R2,#+15 ORR R2,R2,#0x2700 ADD R1,SP,#+4 MOV R0,R5 SWI +11 ADD R1,R4,#+12 ADD R0,SP,#+4 SWI +280 ADD R0,R0,#+13 BL atoi STR R0,[R6, #+288] MOV R1,R4 ADD R0,SP,#+4 SWI +280 ADD R0,R0,#+11 BL atoi STR R0,[R6, #+296] MOV R1,SP MOV R0,R5 SWI +13 ADD SP,SP,#+788 CFI CFA R13+9232 ADD SP,SP,#+9216 CFI CFA R13+16 POP {R4-R6,PC} ;; return DATA ??LoadParamsConfig_0: DC32 `?` CFI EndBlock cfiBlock87 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock88 Using cfiCommon0 CFI NoFunction THUMB ??SaveParamsConfig??rT: BX PC Nop CFI EndBlock cfiBlock88 REQUIRE SaveParamsConfig RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock89 Using cfiCommon1 CFI Function SaveParamsConfig ARM // __??Code32?? __code __interwork __atpcs void SaveParamsConfig() SaveParamsConfig: PUSH {R4-R6,LR} CFI ?RET Frame(CFA, -4) CFI R6 Frame(CFA, -8) CFI R5 Frame(CFA, -12) CFI R4 Frame(CFA, -16) CFI CFA R13+16 LDR R4,??DataTable40 ;; `?` SUB SP,SP,#+788 CFI CFA R13+804 SUB SP,SP,#+9216 CFI CFA R13+10020 MOV R3,SP MOV R2,#+128 ADD R1,R2,#+138 ADD R0,R4,#+32 SWI +10 MOV R5,R0 CMN R5,#+1 BNE ??SaveParamsConfig_0 ADD R1,R4,#+8 MOV R0,#+1 SWI +328 MOV R1,SP MVN R0,#+0 SWI +13 ??SaveParamsConfig_0: MOV R0,#+5 SWI +20 MOV R6,R0 ADD R1,R4,#+196 ADD R0,SP,#+4 SWI +280 ADD R1,R0,#+8 MOV R0,SP PUSH {R0} CFI CFA R13+10024 ADD R3,SP,#+4 MOV R2,#+0 MOV R0,R5 SWI +15 LDR R0,??DataTable41 ;; crd LDR R2,[R0, #+0] ADD R1,R0,#+412 MOV R0,R6 SWI +22 ADD R3,SP,#+4 MOV R2,#+2 MOV R1,R6 MOV R0,R5 SWI +12 ADD R1,SP,#+4 MOV R0,R5 SWI +13 ADD SP,SP,#+792 CFI CFA R13+9232 ADD SP,SP,#+9216 CFI CFA R13+16 POP {R4-R6,PC} ;; return CFI EndBlock cfiBlock89 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable40: DC32 `?` RSEG CODE:CODE:NOROOT(2) DATA ??DataTable41: DC32 crd RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock90 Using cfiCommon0 CFI NoFunction THUMB ??processmenu??rT: BX PC Nop CFI EndBlock cfiBlock90 REQUIRE processmenu RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock91 Using cfiCommon1 CFI Function processmenu ARM // __??Code32?? __code __interwork __atpcs void processmenu(char *, int) processmenu: PUSH {R4} CFI R4 Frame(CFA, -4) CFI CFA R13+4 LDR R4,??DataTable44 ;; mnu MOV R12,#+804 MLA R1,R12,R1,R4 MOV R2,#+0 MOV R3,R0 ADD R12,R1,#+256 B ??processmenu_0 ??processmenu_1: LDRB R4,[R3], #+1 STRB R4,[R12], #+1 ??processmenu_0: LDRB R4,[R3, #+0] ADD R2,R2,#+1 CMP R4,#+124 BNE ??processmenu_1 MOV R3,R1 B ??processmenu_2 ??processmenu_3: MOV R2,R4 STRB R2,[R3], #+1 MOV R2,R12 ??processmenu_2: LDRB R4,[R2, +R0] ADD R12,R2,#+1 CMP R4,#+124 BNE ??processmenu_3 ADD R2,R1,#+544 B ??processmenu_4 ??processmenu_5: STRB R4,[R2], #+1 MOV R12,R3 ??processmenu_4: LDRB R4,[R12, +R0] ADD R3,R12,#+1 CMP R4,#+124 BNE ??processmenu_5 ADD R1,R1,#+288 B ??processmenu_6 ??processmenu_7: STRB R2,[R1], #+1 ADD R3,R3,#+1 ??processmenu_6: LDRB R2,[R3, +R0] CMP R2,#+124 BNE ??processmenu_7 POP {R4} CFI R4 SameValue CFI CFA R13+0 BX LR ;; return CFI EndBlock cfiBlock91 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock92 Using cfiCommon0 CFI NoFunction THUMB ??SaveNameMENU??rT: BX PC Nop CFI EndBlock cfiBlock92 REQUIRE SaveNameMENU RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock93 Using cfiCommon1 CFI Function SaveNameMENU ARM // __??Code32?? __code __interwork __atpcs void SaveNameMENU() SaveNameMENU: LDR R1,??DataTable44 ;; mnu MOV R0,#+0 LDR R2,[R1, #+800] CMP R2,#+0 BXMI LR LDR R3,??SaveNameMENU_0 ;; crd + 336 ADD R1,R1,#+256 ??SaveNameMENU_1: STR R1,[R3], #+4 ADD R0,R0,#+1 ADD R1,R1,#+804 CMP R2,R0 BGE ??SaveNameMENU_1 BX LR ;; return DATA ??SaveNameMENU_0: DC32 crd + 336 CFI EndBlock cfiBlock93 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock94 Using cfiCommon0 CFI NoFunction THUMB ??LoadParamsMENU??rT: BX PC Nop CFI EndBlock cfiBlock94 REQUIRE LoadParamsMENU RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock95 Using cfiCommon1 CFI Function LoadParamsMENU ARM // __??Code32?? __code __interwork __atpcs void LoadParamsMENU() LoadParamsMENU: PUSH {R4-R9,LR} CFI ?RET Frame(CFA, -4) CFI R9 Frame(CFA, -8) CFI R8 Frame(CFA, -12) CFI R7 Frame(CFA, -16) CFI R6 Frame(CFA, -20) CFI R5 Frame(CFA, -24) CFI R4 Frame(CFA, -28) CFI CFA R13+28 LDR R5,??LoadParamsMENU_0 ;; `?` SUB SP,SP,#+4 CFI CFA R13+32 MOV R3,SP MOV R2,#+128 MOV R1,#+32768 ADD R0,R5,#+20 SWI +10 MOV R4,R0 CMN R4,#+1 BNE ??LoadParamsMENU_1 MOV R1,R5 MOV R0,#+1 SWI +328 MOV R1,SP MVN R0,#+0 SWI +13 POP {R0,R4-R9,PC} ??LoadParamsMENU_1: MOV R0,#+16 ORR R0,R0,#0x2700 SWI +20 MOV R5,R0 MOV R0,#+256 SWI +20 MOV R6,R0 CMP R5,#+0 CMPNE R6,#+0 BEQ ??LoadParamsMENU_2 LDR R9,??LoadParamsMENU_0+0x4 ;; NumOfItems2 MOV R3,SP MOV R2,#+15 ORR R2,R2,#0x2700 MOV R1,R5 MOV R0,R4 SWI +11 MOV R7,R0 MOV R0,#+0 CMP R7,#+1 BGE ??LoadParamsMENU_3 ??LoadParamsMENU_2: MOV R0,R5 SWI +21 MOV R0,R6 SWI +21 MOV R1,SP MOV R0,R4 SWI +13 POP {R0,R4-R9,PC} ;; return ??LoadParamsMENU_4: LDRB R0,[R2], #+1 STRB R0,[R1], #+1 MOV R0,R8 ??LoadParamsMENU_5: LDRB R3,[R2, #+0] ADD R8,R0,#+1 CMP R3,#+13 BEQ ??LoadParamsMENU_6 CMP R0,R7 BLT ??LoadParamsMENU_4 ??LoadParamsMENU_6: LDR R1,[R9, #+0] MOV R0,R6 BL processmenu LDR R1,[R9, #+0] LDR R2,??DataTable44 ;; mnu ADD R1,R1,#+1 STR R1,[R9, #+0] MOV R1,#+800 LDR R3,[R1, +R2] MOV R0,R8 ADD R3,R3,#+1 STR R3,[R1, +R2] ??LoadParamsMENU_3: CMP R0,R7 BGE ??LoadParamsMENU_2 ADD R2,R0,R5 MOV R1,R6 B ??LoadParamsMENU_5 DATA ??LoadParamsMENU_0: DC32 `?` DC32 NumOfItems2 CFI EndBlock cfiBlock95 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable44: DC32 mnu RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock96 Using cfiCommon0 CFI NoFunction THUMB ??LoadAllConfig??rT: BX PC Nop CFI EndBlock cfiBlock96 REQUIRE LoadAllConfig RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock97 Using cfiCommon1 CFI Function LoadAllConfig ARM // __??Code32?? __code __interwork __atpcs void LoadAllConfig() LoadAllConfig: BX LR ;; return CFI EndBlock cfiBlock97 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock98 Using cfiCommon0 CFI NoFunction THUMB ??Free_FLIST??rT: BX PC Nop CFI EndBlock cfiBlock98 REQUIRE Free_FLIST // 4 #include "main.h" // 5 #include "fileman.c" RSEG DATA_Z:DATA:SORT:NOROOT(2) // int __data size size: DS8 4 RSEG DATA_Z:DATA:SORT:NOROOT(2) // FLIST volatile *__data fltop fltop: DS8 4 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock99 Using cfiCommon1 CFI Function Free_FLIST ARM // __??Code32?? __code __interwork __atpcs void Free_FLIST(void) Free_FLIST: PUSH {R4-R6,LR} CFI ?RET Frame(CFA, -4) CFI R6 Frame(CFA, -8) CFI R5 Frame(CFA, -12) CFI R4 Frame(CFA, -16) CFI CFA R13+16 SWI +326 LDR R0,??DataTable49 ;; fltop MOV R1,#+0 LDR R4,[R0, #+0] STR R1,[R0, #+0] SWI +327 CMP R4,#+0 POPEQ {R4-R6,PC} ??Free_FLIST_0: MOV R5,R4 LDR R4,[R4, #+0] ADD R6,R5,#+4 LDR R0,[R6, #+0] SWI +21 LDR R0,[R6, #+4] SWI +21 MOV R0,R5 SWI +21 CMP R4,#+0 BNE ??Free_FLIST_0 POP {R4-R6,PC} ;; return CFI EndBlock cfiBlock99 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock100 Using cfiCommon0 CFI NoFunction THUMB ??GetFListN??rT: BX PC Nop CFI EndBlock cfiBlock100 REQUIRE GetFListN RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data back[3] back: DATA DC8 ".." DC8 0 DC8 "ROOT" DC8 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "Can't open menu.ini" // char const __data menucfg[18] menucfg: DC8 "0:\\shell\\menu.ini" DC8 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "cursor_img" DC8 0 DC8 "cursor_speed" DC8 0, 0, 0 DC8 "Can't open config.ini" DC8 0, 0 // char const __data config[20] config: DC8 "0:\\shell\\config.ini" RSEG DATA_C:CONST:SORT:NOROOT(0) DATA DC8 "" RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "Can't open panel.ini" DC8 0, 0, 0 // char const __data panel[19] panel: DC8 "0:\\shell\\panel.ini" DC8 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "Select" DC8 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "Applications: %d kb" DC8 "\321\356\361\362\356\377\355\350\345 \357\340\354\377\362\350:\012\304\356\361\362\363\357\355\356: %d kb\012\321\342\356\341\356\344\355\356: %d kb" DC8 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "0:\\zbin\\mc\\mc.elf" DC8 0, 0 DC8 "FLSH_FLEXPLORER" DC8 "0:\\zbin\\naticq\\naticq.elf" DC8 0, 0 DC8 "ELSE_DEVELP_MNU" DC8 "ORGZ_CALENDERMV" DC8 "0:\\zbin\\utilities\\CfgEdit.elf" DC8 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(0) DATA DC8 "%d" RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "\\*.*" DC8 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) `?`: DATA DC8 "0:\\shell\\img\\cursor.png" RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data IMG1[126] IMG1: DATA DC8 "0:\\shell\\icons\\app.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0 // char const __data IMG2[126] IMG2: DC8 "0:\\shell\\icons\\BCFG.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0 // char const __data IMG3[126] IMG3: DC8 "0:\\shell\\icons\\calendar.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 // char const __data IMG4[126] IMG4: DC8 "0:\\shell\\icons\\dev.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data IMG5[126] IMG5: DATA DC8 "0:\\shell\\icons\\ELF.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data IMG6[126] IMG6: DATA DC8 "0:\\shell\\icons\\explorer.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU1_s[128] MENU1_s: DATA DC8 "0:\\shell\\menu\\1_s.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU2_s[128] MENU2_s: DATA DC8 "0:\\shell\\menu\\2_s.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU3_s[128] MENU3_s: DATA DC8 "0:\\shell\\menu\\3_s.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU4_s[128] MENU4_s: DATA DC8 "0:\\shell\\menu\\4_s.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU5_s[128] MENU5_s: DATA DC8 "0:\\shell\\menu\\5_s.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU6_s[128] MENU6_s: DATA DC8 "0:\\shell\\menu\\6_s.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU1_b[128] MENU1_b: DATA DC8 "0:\\shell\\menu\\1_b.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU2_b[128] MENU2_b: DATA DC8 "0:\\shell\\menu\\2_b.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU3_b[128] MENU3_b: DATA DC8 "0:\\shell\\menu\\3_b.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU4_b[128] MENU4_b: DATA DC8 "0:\\shell\\menu\\4_b.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU5_b[128] MENU5_b: DATA DC8 "0:\\shell\\menu\\5_b.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data MENU6_b[128] MENU6_b: DATA DC8 "0:\\shell\\menu\\6_b.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_C:CONST:SORT:NOROOT(2) // char const __data bg3img[128] bg3img: DATA DC8 "0:\\shell\\img\\BG.png" DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock101 Using cfiCommon1 CFI Function GetFListN ARM // __??Code32?? __code __interwork __atpcs int GetFListN() GetFListN: LDR R1,??DataTable49 ;; fltop MOV R0,#+0 B ??GetFListN_0 ??GetFListN_1: ADD R0,R0,#+1 ??GetFListN_0: LDR R1,[R1, #+0] CMP R1,#+0 BNE ??GetFListN_1 BX LR ;; return CFI EndBlock cfiBlock101 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock102 Using cfiCommon0 CFI NoFunction THUMB ??GetFoldersLevel??rT: BX PC Nop CFI EndBlock cfiBlock102 REQUIRE GetFoldersLevel RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock103 Using cfiCommon1 CFI Function GetFoldersLevel ARM // __??Code32?? __code __interwork __atpcs int GetFoldersLevel(char *) GetFoldersLevel: MOV R1,#+0 B ??GetFoldersLevel_0 ??GetFoldersLevel_1: LDRB R2,[R0, #+0] CMP R2,#+92 BNE ??GetFoldersLevel_0 LDRB R2,[R0, #+1] CMP R2,#+0 ADDNE R1,R1,#+1 ??GetFoldersLevel_0: LDRB R2,[R0], #+1 CMP R2,#+0 BNE ??GetFoldersLevel_1 MOV R0,R1 BX LR ;; return CFI EndBlock cfiBlock103 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock104 Using cfiCommon0 CFI NoFunction THUMB ??strcmp_nocase??rT: BX PC Nop CFI EndBlock cfiBlock104 REQUIRE strcmp_nocase RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock105 Using cfiCommon1 CFI Function strcmp_nocase ARM // __??Code32?? __code __interwork __atpcs int strcmp_nocase(char const *, char const *) strcmp_nocase: ??strcmp_nocase_0: LDRB R2,[R0], #+1 LDRB R3,[R1], #+1 TST R2,#0x40 ANDNE R2,R2,#0xDF TST R3,#0x40 ANDNE R3,R3,#0xDF SUBS R2,R2,R3 BNE ??strcmp_nocase_1 CMP R3,#+0 BNE ??strcmp_nocase_0 ??strcmp_nocase_1: MOV R0,R2 BX LR ;; return CFI EndBlock cfiBlock105 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock106 Using cfiCommon0 CFI NoFunction THUMB ??AddToFList??rT: BX PC Nop CFI EndBlock cfiBlock106 REQUIRE AddToFList RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock107 Using cfiCommon1 CFI Function AddToFList ARM // __??Code32?? __code __interwork __atpcs struct *AddToFList(char const *, char const *, int) AddToFList: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 MOV R5,R0 MOV R6,R1 MOV R7,R2 MOV R0,#+16 SWI +20 MOV R4,R0 MOV R0,R5 SWI +27 ADD R0,R0,#+1 SWI +20 MOV R1,R5 LDR R5,??DataTable49 ;; fltop STR R0,[R4, #+4] SWI +26 MOV R0,R6 SWI +27 ADD R0,R0,#+1 SWI +20 STR R0,[R4, #+8] MOV R1,R6 SWI +26 STR R7,[R4, #+12] MOV R0,#+0 STR R0,[R4, #+0] LDR R6,[R5, #+0] CMP R6,#+0 BEQ ??AddToFList_0 LDR R7,[R4, #+8] ??AddToFList_1: LDR R0,[R6, #+8] MOV R1,R7 BL strcmp_nocase CMP R0,#+0 BPL ??AddToFList_2 MOV R5,R6 LDR R6,[R6, #+0] CMP R6,#+0 BNE ??AddToFList_1 ??AddToFList_2: STR R6,[R4, #+0] ??AddToFList_0: STR R4,[R5, #+0] MOV R0,R4 POP {R4-R7,PC} ;; return CFI EndBlock cfiBlock107 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock108 Using cfiCommon0 CFI NoFunction THUMB ??FindFiles??rT: BX PC Nop CFI EndBlock cfiBlock108 REQUIRE FindFiles RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock109 Using cfiCommon1 CFI Function FindFiles ARM // __??Code32?? __code __interwork __atpcs void FindFiles(char *, int) FindFiles: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 SUB SP,SP,#+828 CFI CFA R13+840 MOV R4,R1 MOV R5,R0 BL Free_FLIST MOV R1,R5 ADD R0,SP,#+444 SWI +26 ADR R1,??FindFiles_0 ;; "*" ADD R0,SP,#+444 SWI +23 MOV R0,R5 BL GetFoldersLevel LDR R3,??DataTable50 ;; back CMP R0,#+0 BNE ??FindFiles_1 MOV R2,#+1 MOV R1,R3 ADD R0,R3,#+4 B ??FindFiles_2 ??FindFiles_1: ADD R1,SP,#+700 MOV R2,#+0 ??FindFiles_3: LDRB R12,[R5, #+0] CMP R12,#+0 BEQ ??FindFiles_4 LDRB R12,[R5], #+1 STRB R12,[R1], #+1 CMP R12,#+92 ADDEQ R2,R2,#+1 CMPEQ R2,R0 BNE ??FindFiles_3 ??FindFiles_4: MOV R0,#+0 STRB R0,[R1, #+0] MOV R2,#+1 MOV R1,R3 ADD R0,SP,#+700 ??FindFiles_2: BL AddToFList MOV R2,SP ADD R1,SP,#+444 ADD R0,SP,#+4 SWI +107 CMP R0,#+0 ADR R5,??FindFiles_0+0x4 ;; "\\" BEQ ??FindFiles_5 ??FindFiles_6: ADD R1,SP,#+44 ADD R0,SP,#+444 SWI +26 MOV R1,R5 ADD R0,SP,#+444 SWI +23 ADD R1,SP,#+173 ADD R0,SP,#+444 SWI +23 LDRSH R0,[SP, #+18] TST R0,#0x10 BEQ ??FindFiles_7 MOV R1,R5 ADD R0,SP,#+700 SWI +26 ADD R1,SP,#+173 ADD R0,SP,#+700 SWI +23 MOV R1,R5 ADD R0,SP,#+444 SWI +23 MOV R2,#+1 ADD R1,SP,#+700 B ??FindFiles_8 ??FindFiles_7: CMP R4,#+0 BEQ ??FindFiles_9 MOV R2,#+0 ADD R1,SP,#+173 ??FindFiles_8: ADD R0,SP,#+444 BL AddToFList ??FindFiles_9: MOV R1,SP ADD R0,SP,#+4 SWI +108 CMP R0,#+0 BNE ??FindFiles_6 ??FindFiles_5: MOV R1,SP ADD R0,SP,#+4 SWI +109 ADD SP,SP,#+828 CFI CFA R13+12 POP {R4,R5,PC} ;; return DATA ??FindFiles_0: DC8 "*",+0,+0 DC8 "\\",+0,+0 CFI EndBlock cfiBlock109 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock110 Using cfiCommon0 CFI NoFunction THUMB ??FindFLISTtByNS??rT: BX PC Nop CFI EndBlock cfiBlock110 REQUIRE FindFLISTtByNS RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock111 Using cfiCommon1 CFI Function FindFLISTtByNS ARM // __??Code32?? __code __interwork __atpcs struct *FindFLISTtByNS(int *, int) FindFLISTtByNS: LDR R2,??DataTable49 ;; fltop B ??FindFLISTtByNS_0 ??FindFLISTtByNS_1: SUB R3,R3,#+1 STR R3,[R0, #+0] ??FindFLISTtByNS_0: LDR R2,[R2, #+0] CMP R2,#+0 BEQ ??FindFLISTtByNS_2 LDR R3,[R2, #+12] CMP R3,R1 BNE ??FindFLISTtByNS_0 LDR R3,[R0, #+0] CMP R3,#+0 BNE ??FindFLISTtByNS_1 MOV R0,R2 BX LR ??FindFLISTtByNS_2: MOV R0,#+0 BX LR ;; return CFI EndBlock cfiBlock111 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable49: DC32 fltop RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock112 Using cfiCommon0 CFI NoFunction THUMB ??FindFLISTtByN??rT: BX PC Nop CFI EndBlock cfiBlock112 REQUIRE FindFLISTtByN RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock113 Using cfiCommon1 CFI Function FindFLISTtByN ARM // __??Code32?? __code __interwork __atpcs struct *FindFLISTtByN(int) FindFLISTtByN: PUSH {R0,LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+8 MOV R1,#+1 MOV R0,SP BL FindFLISTtByNS LDR R1,[SP, #+0] CMP R1,#+0 BNE ??FindFLISTtByN_0 CMP R0,#+0 POPNE {R1,PC} ??FindFLISTtByN_0: MOV R1,#+0 MOV R0,SP BL FindFLISTtByNS POP {R1,PC} CFI EndBlock cfiBlock113 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock114 Using cfiCommon0 CFI NoFunction THUMB ??SavePath??rT: BX PC Nop CFI EndBlock cfiBlock114 REQUIRE SavePath RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock115 Using cfiCommon1 CFI Function SavePath ARM // __??Code32?? __code __interwork __atpcs void SavePath(void *, struct *) SavePath: LDR R0,[R1, #+4] B start ;; tailcall CFI EndBlock cfiBlock115 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock116 Using cfiCommon0 CFI NoFunction THUMB ??filelist_menu_onkey??rT: BX PC Nop CFI EndBlock cfiBlock116 REQUIRE filelist_menu_onkey RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock117 Using cfiCommon1 CFI Function filelist_menu_onkey ARM // __??Code32?? __code __interwork __atpcs int filelist_menu_onkey(void *, GUI_MSG *) filelist_menu_onkey: PUSH {R4-R6,LR} CFI ?RET Frame(CFA, -4) CFI R6 Frame(CFA, -8) CFI R5 Frame(CFA, -12) CFI R4 Frame(CFA, -16) CFI CFA R13+16 MOV R4,R0 MOV R6,R1 SWI +480 MOV R0,R4 SWI +399 BL FindFLISTtByN LDR R1,??DataTable50 ;; back MOV R5,R0 LDRSH R0,[R6, #+2] CMP R0,#+61 BNE ??filelist_menu_onkey_0 CMP R5,#+0 BEQ ??filelist_menu_onkey_1 LDR R0,[R5, #+12] CMP R0,#+1 BNE ??filelist_menu_onkey_2 LDR R0,[R5, #+4] ADD R1,R1,#+4 SWI +25 CMP R0,#+0 BEQ ??filelist_menu_onkey_3 LDR R6,??filelist_menu_onkey_4 ;; filelist_HDR LDR R1,[R5, #+4] MOV R2,#+127 ADD R0,R6,#+20 SWI +278 LDR R0,[R5, #+4] SWI +27 CMP R0,#+128 MOVGE R0,#+127 ADD R0,R0,R6 MOV R1,#+0 STRB R1,[R0, #+20] LDR R0,[R5, #+4] MOV R1,#+1 BL FindFiles B ??filelist_menu_onkey_5 ??filelist_menu_onkey_3: BL CreateRootMenu ??filelist_menu_onkey_5: BL GetFListN MOV R1,R0 MOV R0,R4 SWI +486 MOV R1,#+0 MOV R0,R4 SWI +452 SWI +406 ??filelist_menu_onkey_1: MVN R0,#+0 POP {R4-R6,PC} ??filelist_menu_onkey_0: CMP R0,#+24 BNE ??filelist_menu_onkey_6 CMP R5,#+0 BEQ ??filelist_menu_onkey_1 LDR R0,[R5, #+8] SWI +25 CMP R0,#+0 BEQ ??filelist_menu_onkey_1 ??filelist_menu_onkey_2: LDR R0,[R5, #+4] BL start MOV R0,#+1 POP {R4-R6,PC} ??filelist_menu_onkey_6: MOV R0,#+0 POP {R4-R6,PC} ;; return DATA ??filelist_menu_onkey_4: DC32 filelist_HDR CFI EndBlock cfiBlock117 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable50: DC32 back RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock118 Using cfiCommon0 CFI NoFunction THUMB ??filelist_menu_ghook??rT: BX PC Nop CFI EndBlock cfiBlock118 REQUIRE filelist_menu_ghook RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock119 Using cfiCommon1 CFI Function filelist_menu_ghook ARM // __??Code32?? __code __interwork __atpcs void filelist_menu_ghook(void *, int) filelist_menu_ghook: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 MOV R4,R1 SWI +480 MOV R5,R0 CMP R4,#+3 POPNE {R4,R5,PC} BL Free_FLIST MOV R0,R5 SWI +21 POP {R4,R5,PC} ;; return CFI EndBlock cfiBlock119 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock120 Using cfiCommon0 CFI NoFunction THUMB ??filelist_menu_iconhndl??rT: BX PC Nop CFI EndBlock cfiBlock120 REQUIRE filelist_menu_iconhndl RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock121 Using cfiCommon1 CFI Function filelist_menu_iconhndl ARM // __??Code32?? __code __interwork __atpcs void filelist_menu_iconhndl(void *, int, void *) filelist_menu_iconhndl: PUSH {R4-R9,LR} CFI ?RET Frame(CFA, -4) CFI R9 Frame(CFA, -8) CFI R8 Frame(CFA, -12) CFI R7 Frame(CFA, -16) CFI R6 Frame(CFA, -20) CFI R5 Frame(CFA, -24) CFI R4 Frame(CFA, -28) CFI CFA R13+28 MOV R4,R0 MOV R5,R1 SWI +407 MOV R6,R0 MOV R0,R5 BL FindFLISTtByN MOVS R7,R0 BEQ ??filelist_menu_iconhndl_0 LDR R0,[R7, #+8] SWI +27 MOV R8,R0 ADD R1,R8,#+4 MOV R0,R4 SWI +408 LDR R1,[R7, #+8] MOV R9,R0 LDR R0,[R7, #+12] MOV R2,R8 CMP R0,#+0 MOV R0,R9 BEQ ??filelist_menu_iconhndl_1 SWI +364 MOV R2,#+1 MOV R1,#+7 MOV R0,R9 SWI +29 MOV R2,#+1 MOV R1,#+8 ORR R1,R1,#0xE000 MOV R0,R9 SWI +29 B ??filelist_menu_iconhndl_2 ??filelist_menu_iconhndl_1: SWI +364 B ??filelist_menu_iconhndl_2 ??filelist_menu_iconhndl_0: MOV R1,#+10 MOV R0,R4 SWI +408 LDR R1,??filelist_menu_iconhndl_3 ;; `?` MOV R9,R0 SWI +292 ??filelist_menu_iconhndl_2: MOV R3,R5 MOV R2,R9 MOV R1,R6 MOV R0,R4 SWI +410 POP {R4-R9,PC} ;; return DATA ??filelist_menu_iconhndl_3: DC32 `?` CFI EndBlock cfiBlock121 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock122 Using cfiCommon0 CFI NoFunction THUMB ??CreateRootMenu??rT: BX PC Nop CFI EndBlock cfiBlock122 REQUIRE CreateRootMenu RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock123 Using cfiCommon1 CFI Function CreateRootMenu ARM // __??Code32?? __code __interwork __atpcs void CreateRootMenu() CreateRootMenu: PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 BL Free_FLIST ADR R0,??CreateRootMenu_0 ;; "0:\\" MOV R2,#+1 MOV R1,R0 BL AddToFList ADR R0,??CreateRootMenu_0+0x4 ;; "1:\\" MOV R2,#+1 MOV R1,R0 BL AddToFList ADR R0,??CreateRootMenu_0+0x8 ;; "2:\\" MOV R2,#+1 MOV R1,R0 BL AddToFList ADR R0,??CreateRootMenu_0+0xC ;; "4:\\" MOV R2,#+1 MOV R1,R0 BL AddToFList LDR R1,??CreateRootMenu_0+0x10 ;; `?` LDR R0,??CreateRootMenu_0+0x14 ;; filelist_HDR + 20 SWI +26 POP {PC} ;; return DATA ??CreateRootMenu_0: DC8 "0:\\" DC8 "1:\\" DC8 "2:\\" DC8 "4:\\" DC32 `?` DC32 filelist_HDR + 20 CFI EndBlock cfiBlock123 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock124 Using cfiCommon0 CFI NoFunction THUMB ??open_fm??rT: BX PC Nop CFI EndBlock cfiBlock124 REQUIRE open_fm RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock125 Using cfiCommon1 CFI Function open_fm ARM // __??Code32?? __code __interwork __atpcs void open_fm() open_fm: PUSH {R4-R7,LR} CFI ?RET Frame(CFA, -4) CFI R7 Frame(CFA, -8) CFI R6 Frame(CFA, -12) CFI R5 Frame(CFA, -16) CFI R4 Frame(CFA, -20) CFI CFA R13+20 LDR R5,??open_fm_0 ;; filelist_HDR MOV R0,#+256 MOV R7,#+0 SWI +293 MOV R6,R0 MOV R0,#+8 SWI +20 MOV R4,R0 LDR R0,[R6, #+0] LDRH R0,[R0, #+0] CMP R0,#+0 BNE ??open_fm_1 BL CreateRootMenu B ??open_fm_2 ??open_fm_1: MOV R2,#+127 ADD R1,R5,#+20 MOV R0,R6 SWI +163 MOV R1,#+92 ADD R0,R5,#+20 SWI +279 CMP R0,#+0 STRBNE R7,[R0, #+1] ADD R0,R5,#+20 SWI +27 CMP R0,#+128 MOVGE R0,#+127 ADD R0,R0,R5 STRB R7,[R0, #+20] MOV R1,#+1 ADD R0,R5,#+20 BL FindFiles ??open_fm_2: STR R7,[R5, #+0] SWI +33160 SUB R0,R0,#+1 STRH R0,[R5, #+4] SWI +33162 SUB R0,R0,#+1 STRH R0,[R5, #+6] BL GetFListN MOV R1,#+0 PUSH {R1} CFI CFA R13+24 PUSH {R4} CFI CFA R13+28 PUSH {R0} CFI CFA R13+32 MOV R3,R5 ADD R2,R5,#+148 MOV R0,R1 PUSH {R0} CFI CFA R13+36 SWI +338 POP {R0-R7,PC} ;; return DATA ??open_fm_0: DC32 filelist_HDR CFI EndBlock cfiBlock125 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock126 Using cfiCommon0 CFI NoFunction THUMB ??start_vibra??rT: BX PC Nop CFI EndBlock cfiBlock126 REQUIRE start_vibra // 6 //#include "menu_desc.c" // 7 //#include "relocated.c" // 8 // 9 #define TMR_SECOND 216 // 10 // 11 //#pragma swi_number=0x80CF: RamAlarm // 12 //__swi __arm int *RamAlarm; RSEG DATA_C:CONST:SORT:NOROOT(2) // 13 const int minus11=-11; minus11: DATA DC32 -11 RSEG DATA_Z:DATA:SORT:NOROOT(2) // 14 unsigned short maincsm_name_body[140]; maincsm_name_body: DS8 280 // 15 // 16 unsigned int MAINCSM_ID = 0; RSEG DATA_Z:DATA:SORT:NOROOT(2) // 17 unsigned int MAINGUI_ID = 0; MAINGUI_ID: DS8 4 // 18 typedef struct // 19 { // 20 CSM_RAM csm; // 21 int gui_id; // 22 }MAIN_CSM; // 23 // 24 typedef struct // 25 { // 26 GUI gui; // 27 WSHDR *ws1; // 28 WSHDR *ws2; // 29 int i1; // 30 }MAIN_GUI; // 31 RSEG DATA_Z:DATA:SORT:NOROOT(2) // 32 int fl[48]/*={1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}*/; fl: DS8 192 // 33 #define FLAG_NET_STD fl[0] // 34 #define FLAG_NET_ADV fl[1] // 35 #define FLAG_NET_DB fl[2] // 36 #define FLAG_NET_EXT fl[3] // 37 // 38 #define FLAG_BAT_STD fl[4] // 39 #define FLAG_BAT_EXT fl[5] // 40 #define FLAG_BAT_CAP fl[6] // 41 #define FLAG_BAT_VOLT fl[7] // 42 // 43 #define FLAG_CSM fl[8] // 44 //#define FLAG_NET_STD fl[9] // 45 //#define FLAG_NET_STD fl[10] // 46 // 47 // 48 //============================================================================= // 49 GBSTMR tmr_vibra; // 50 volatile int vibra_count=1; // 51 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock127 Using cfiCommon1 CFI Function start_vibra ARM // 52 void start_vibra(void) // 53 { start_vibra: PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 // 54 void stop_vibra(void); // 55 if(!IsCalling()) SWI +110 CMP R0,#+0 POPNE {PC} // 56 { // 57 unsigned int vibraPower=10; // 58 SetVibration(vibraPower); MOV R0,#+10 SWI +124 // 59 GBS_StartTimerProc(&tmr_vibra,TMR_SECOND>>1,stop_vibra); LDR R2,??start_vibra_0 ;; stop_vibra LDR R0,??start_vibra_0+0x4 ;; vibra_count + 4 MOV R1,#+108 SWI +77 // 60 } // 61 } POP {PC} ;; return DATA ??start_vibra_0: DC32 stop_vibra DC32 vibra_count + 4 CFI EndBlock cfiBlock127 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock128 Using cfiCommon0 CFI NoFunction THUMB ??stop_vibra??rT: BX PC Nop CFI EndBlock cfiBlock128 REQUIRE stop_vibra // 62 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock129 Using cfiCommon1 CFI Function stop_vibra ARM // 63 void stop_vibra(void) // 64 { stop_vibra: PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 // 65 // 66 SetVibration(0); MOV R0,#+0 SWI +124 // 67 if (--vibra_count) LDR R0,??stop_vibra_0 ;; vibra_count LDR R1,[R0, #+0] SUBS R1,R1,#+1 STR R1,[R0, #+0] POPEQ {PC} // 68 { // 69 GBS_StartTimerProc(&tmr_vibra,TMR_SECOND>>1,start_vibra); LDR R2,??stop_vibra_0+0x4 ;; start_vibra MOV R1,#+108 ADD R0,R0,#+4 SWI +77 // 70 } // 71 } POP {PC} ;; return DATA ??stop_vibra_0: DC32 vibra_count DC32 start_vibra CFI EndBlock cfiBlock129 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock130 Using cfiCommon0 CFI NoFunction THUMB ??DrawIconBar??rT: BX PC Nop CFI EndBlock cfiBlock130 REQUIRE DrawIconBar // 72 //============================================================================= RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock131 Using cfiCommon1 CFI Function DrawIconBar ARM // 73 void DrawIconBar() // 74 { DrawIconBar: PUSH {R4,R5,LR} CFI ?RET Frame(CFA, -4) CFI R5 Frame(CFA, -8) CFI R4 Frame(CFA, -12) CFI CFA R13+12 // 75 if(IRDA)DrawImg(120,60,(int)"0:\\shell\\img\\784.png"); LDR R5,??DataTable51 ;; crd LDR R4,??DrawIconBar_0 ;; `?` LDR R0,[R5, #+300] CMP R0,#+0 BEQ ??DrawIconBar_1 MOV R2,R4 MOV R1,#+60 MOV R0,#+120 SWI +35 // 76 if(kdblock) ??DrawIconBar_1: LDR R0,[R5, #+320] CMP R0,#+0 BEQ ??DrawIconBar_2 // 77 { // 78 DrawStrChar("KeyBoard Lock",25,40); MOV R2,#+40 MOV R1,#+25 ADD R0,R4,#+24 BL DrawStrChar // 79 DrawImg(115,40,(int)"0:\\shell\\img\\785.png"); ADD R2,R4,#+40 MOV R1,#+40 MOV R0,#+115 SWI +35 // 80 } // 81 // 82 if(IsGPRSEnabled())DrawImg(120,50,(int)"0:\\shell\\img\\792.png"); ??DrawIconBar_2: SWI +167 CMP R0,#+0 BEQ ??DrawIconBar_3 ADD R2,R4,#+64 B ??DrawIconBar_4 // 83 else if(IsGPRSConnected())DrawImg(120,50,(int)"0:\\shell\\img\\779.png"); ??DrawIconBar_3: SWI +168 CMP R0,#+0 POPEQ {R4,R5,PC} ADD R2,R4,#+88 ??DrawIconBar_4: MOV R1,#+50 MOV R0,#+120 SWI +35 // 84 } POP {R4,R5,PC} ;; return DATA ??DrawIconBar_0: DC32 `?` CFI EndBlock cfiBlock131 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable51: DC32 crd RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock132 Using cfiCommon0 CFI NoFunction THUMB ??BG1??rT: BX PC Nop CFI EndBlock cfiBlock132 REQUIRE BG1 // 85 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock133 Using cfiCommon1 CFI Function BG1 ARM // 86 void BG1() // 87 { BG1: PUSH {R4,LR} CFI ?RET Frame(CFA, -4) CFI R4 Frame(CFA, -8) CFI CFA R13+8 // 88 DrawBG(); // 89 if(crd[clock][0].show) DrawClock (crd[clock][0].x, crd[clock][0].y); LDR R4,??DataTable58 ;; crd BL DrawBG LDR R0,[R4, #+8] CMP R0,#+0 BEQ ??BG1_0 LDR R1,[R4, #+4] LDR R0,[R4, #+0] BL DrawClock // 90 if(crd[BattCap][0].show) DrawBattCap (crd[BattCap][0].x, crd[BattCap][0].y); ??BG1_0: LDR R0,[R4, #+116] CMP R0,#+0 BEQ ??BG1_1 LDR R1,[R4, #+112] LDR R0,[R4, #+108] BL DrawBattCap // 91 if(crd[BattVolt][0].show) DrawBattVolt (crd[BattVolt][0].x, crd[BattVolt][0].y); ??BG1_1: LDR R0,[R4, #+152] CMP R0,#+0 BEQ ??BG1_2 LDR R1,[R4, #+148] LDR R0,[R4, #+144] BL DrawBattVolt // 92 if(crd[Dialogs][0].show) DrawDialogs (crd[Dialogs][0].x, crd[Dialogs][0].y); ??BG1_2: LDR R0,[R4, #+188] CMP R0,#+0 BEQ ??BG1_3 LDR R1,[R4, #+184] LDR R0,[R4, #+180] BL DrawDialogs // 93 if(crd[FreeRam][0].show) DrawFreeRam(crd[FreeRam][0].x,crd[FreeRam][0].y); ??BG1_3: LDR R0,[R4, #+224] CMP R0,#+0 BEQ ??BG1_4 LDR R1,[R4, #+220] LDR R0,[R4, #+216] BL DrawFreeRam // 94 DrawNetExt(2,20); ??BG1_4: MOV R1,#+20 MOV R0,#+2 BL DrawNetExt // 95 // 96 /* // 97 if(!startmenu && !kdblock) // 98 { // 99 if(Cross_x>131)Cross_x=131; // 100 else if(Cross_y>175)Cross_y=175; // 101 else if(Cross_x<1)Cross_x=1; // 102 DrawCross(Cross_x,Cross_y,white); // 103 }*/ // 104 DrawWorkDesc(); BL DrawWorkDesc // 105 // 106 // 107 if(Cross_x<=17 && Cross_y<=(name[0].NumItems*20) && !(startmenu)) LDR R0,[R4, #+308] CMP R0,#+18 BGE ??BG1_5 LDR R0,??DataTable57 ;; name + 576 MOV R1,#+20 LDR R0,[R0, #+0] MUL R0,R1,R0 LDR R1,[R4, #+312] CMP R0,R1 BLT ??BG1_5 LDR R0,[R4, #+332] CMP R0,#+0 BNE ??BG1_5 // 108 { // 109 DrawPanel_w(); BL DrawPanel_w // 110 DrawNameContr(); BL DrawNameContr B ??BG1_6 // 111 } // 112 // if(Cross_x>=40 && Cross_x<=132 && Cross_y<=17)DrawPanel_h(); // 113 else GBS_DelTimer(&timer); ??BG1_5: ADD R0,R4,#+428 SWI +396 // 114 DrawStrInt(workdesctop,120,158); ??BG1_6: LDR R0,[R4, #+292] MOV R2,#+158 MOV R1,#+120 BL DrawStrInt // 115 // 116 //if(kdblock) DrawStrChar("KeyBoard Lock",25,40); // 117 DrawIconBar(); BL DrawIconBar // 118 if(menu<1)menu=6; LDR R0,[R4, #+328] CMP R0,#+1 MOVLT R0,#+6 BLT ??BG1_7 // 119 else if(menu>6)menu=1; CMP R0,#+7 BLT ??BG1_8 MOV R0,#+1 ??BG1_7: STR R0,[R4, #+328] // 120 if(startmenu) ??BG1_8: LDR R0,[R4, #+332] CMP R0,#+0 BEQ ??BG1_9 // 121 { // 122 DrawMenu(menu); LDR R0,[R4, #+328] BL DrawMenu // 123 DrawNameMenu(menu); LDR R0,[R4, #+328] BL DrawNameMenu POP {R4,PC} // 124 } // 125 else GBS_DelTimer(&menu_tmr); ??BG1_9: ADD R0,R4,#+444 SWI +396 // 126 } POP {R4,PC} ;; return CFI EndBlock cfiBlock133 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock134 Using cfiCommon0 CFI NoFunction THUMB ??BG3??rT: BX PC Nop CFI EndBlock cfiBlock134 REQUIRE BG3 // 127 //-------------------- RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock135 Using cfiCommon1 CFI Function BG3 ARM // 128 void BG3() // 129 { BG3: PUSH {R4,LR} CFI ?RET Frame(CFA, -4) CFI R4 Frame(CFA, -8) CFI CFA R13+8 // 130 DrawBG(); // 131 if(crd[clock][workdesctop-1].show) DrawClock (crd[clock][workdesctop-1].x, crd[clock][workdesctop-1].y); LDR R4,??DataTable58 ;; crd BL DrawBG LDR R0,[R4, #+292] MOV R1,#+12 MLA R0,R1,R0,R4 SUB R0,R0,#+12 LDR R1,[R0, #+8] CMP R1,#+0 BEQ ??BG3_0 LDR R1,[R0, #+4] LDR R0,[R0, #+0] BL DrawClock // 132 if(crd[BattCap][workdesctop-1].show) DrawBattCap (crd[BattCap][workdesctop-1].x, crd[BattCap][workdesctop-1].y); ??BG3_0: LDR R0,[R4, #+292] MOV R1,#+12 MLA R0,R1,R0,R4 LDR R1,[R0, #+104] CMP R1,#+0 BEQ ??BG3_1 LDR R1,[R0, #+100] LDR R0,[R0, #+96] BL DrawBattCap // 133 if(crd[BattVolt][workdesctop-1].show) DrawBattVolt (crd[BattVolt][workdesctop-1].x, crd[BattVolt][workdesctop-1].y); ??BG3_1: LDR R0,[R4, #+292] MOV R1,#+12 MLA R0,R1,R0,R4 LDR R1,[R0, #+140] CMP R1,#+0 BEQ ??BG3_2 LDR R1,[R0, #+136] LDR R0,[R0, #+132] BL DrawBattVolt // 134 if(crd[Dialogs][workdesctop-1].show) DrawDialogs (crd[Dialogs][workdesctop-1].x, crd[Dialogs][workdesctop-1].y); ??BG3_2: LDR R0,[R4, #+292] MOV R1,#+12 MLA R0,R1,R0,R4 LDR R1,[R0, #+176] CMP R1,#+0 BEQ ??BG3_3 LDR R1,[R0, #+172] LDR R0,[R0, #+168] BL DrawDialogs // 135 if(crd[FreeRam][workdesctop-1].show) DrawFreeRam(crd[FreeRam][workdesctop-1].x,crd[FreeRam][workdesctop-1].y); ??BG3_3: LDR R0,[R4, #+292] MOV R1,#+12 MLA R0,R1,R0,R4 LDR R1,[R0, #+212] CMP R1,#+0 BEQ ??BG3_4 LDR R1,[R0, #+208] LDR R0,[R0, #+204] BL DrawFreeRam // 136 // 137 /* if(!startmenu && !kdblock) // 138 { // 139 if(Cross_x>131)Cross_x=131; // 140 else if(Cross_y>175)Cross_y=175; // 141 else if(Cross_x<1)Cross_x=1; // 142 DrawCross(Cross_x,Cross_y,white); // 143 }*/ // 144 DrawWorkDesc(); ??BG3_4: BL DrawWorkDesc // 145 // 146 if(Cross_x<=17 && Cross_y<=(name[0].NumItems*20) && !(startmenu)) LDR R0,[R4, #+308] CMP R0,#+18 BGE ??BG3_5 LDR R0,??DataTable57 ;; name + 576 MOV R1,#+20 LDR R0,[R0, #+0] MUL R0,R1,R0 LDR R1,[R4, #+312] CMP R0,R1 BLT ??BG3_5 LDR R0,[R4, #+332] CMP R0,#+0 BNE ??BG3_5 // 147 { // 148 DrawPanel_w(); BL DrawPanel_w // 149 DrawNameContr(); BL DrawNameContr B ??BG3_6 // 150 } // 151 // if(Cross_x>=40 && Cross_x<=132 && Cross_y<=17)DrawPanel_h(); // 152 else GBS_DelTimer(&timer); ??BG3_5: ADD R0,R4,#+428 SWI +396 // 153 // 154 // 155 // if(kdblock) DrawStrChar("KeyBoard Lock",25,40); // 156 DrawStrInt(workdesctop,120,158); ??BG3_6: LDR R0,[R4, #+292] MOV R2,#+158 MOV R1,#+120 BL DrawStrInt // 157 DrawIconBar(); BL DrawIconBar // 158 // 159 if(menu<1)menu=6; LDR R0,[R4, #+328] CMP R0,#+1 MOVLT R0,#+6 BLT ??BG3_7 // 160 else if(menu>6)menu=1; CMP R0,#+7 BLT ??BG3_8 MOV R0,#+1 ??BG3_7: STR R0,[R4, #+328] // 161 if(startmenu) ??BG3_8: LDR R0,[R4, #+332] CMP R0,#+0 BEQ ??BG3_9 // 162 { // 163 DrawMenu(menu); LDR R0,[R4, #+328] BL DrawMenu // 164 DrawNameMenu(menu); LDR R0,[R4, #+328] BL DrawNameMenu POP {R4,PC} // 165 } // 166 else GBS_DelTimer(&menu_tmr); ??BG3_9: ADD R0,R4,#+444 SWI +396 // 167 } POP {R4,PC} ;; return CFI EndBlock cfiBlock135 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock136 Using cfiCommon0 CFI NoFunction THUMB ??OnRedraw??rT: BX PC Nop CFI EndBlock cfiBlock136 REQUIRE OnRedraw // 168 // 169 //------------------------------------------------ // 170 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock137 Using cfiCommon1 CFI Function OnRedraw ARM // 171 void OnRedraw(MAIN_GUI *data) // 172 { OnRedraw: PUSH {R4,LR} CFI ?RET Frame(CFA, -4) CFI R4 Frame(CFA, -8) CFI CFA R13+8 // 173 LockSched(); // 174 // 175 //if(workdesctop==2) // 176 //{ // 177 DrawBG(); // 178 DrawNetExt(2,20); // 179 DrawNetStd(2,100); // 180 //DrawNetAdv (crd[NetAdv][1].x, crd[NetAdv][1].y); // 181 DrawNetDb (crd[NetDB][1].x, crd[NetDB][1].y); LDR R4,??DataTable58 ;; crd SWI +326 BL DrawBG MOV R1,#+20 MOV R0,#+2 BL DrawNetExt MOV R1,#+100 MOV R0,#+2 BL DrawNetStd LDR R1,[R4, #+52] LDR R0,[R4, #+48] BL DrawNetDb // 182 if(crd[clock][workdesctop-1].show) DrawClock (crd[clock][workdesctop-1].x, crd[clock][workdesctop-1].y); LDR R0,[R4, #+292] MOV R1,#+12 MLA R0,R1,R0,R4 SUB R0,R0,#+12 LDR R1,[R0, #+8] CMP R1,#+0 BEQ ??OnRedraw_0 LDR R1,[R0, #+4] LDR R0,[R0, #+0] BL DrawClock // 183 //DrawBattStd(BattStd_x,BattStd_y); // 184 if(crd[BattCap][1].show) DrawBattCap (crd[BattCap][1].x, crd[BattCap][1].y); ??OnRedraw_0: LDR R0,[R4, #+128] CMP R0,#+0 BEQ ??OnRedraw_1 LDR R1,[R4, #+124] LDR R0,[R4, #+120] BL DrawBattCap // 185 if(crd[BattVolt][workdesctop-1].show) DrawBattVolt (crd[BattVolt][workdesctop-1].x, crd[BattVolt][workdesctop-1].y); ??OnRedraw_1: LDR R0,[R4, #+292] MOV R1,#+12 MLA R0,R1,R0,R4 LDR R1,[R0, #+140] CMP R1,#+0 BEQ ??OnRedraw_2 LDR R1,[R0, #+136] LDR R0,[R0, #+132] BL DrawBattVolt // 186 if(crd[Dialogs][workdesctop-1].show) DrawDialogs (crd[Dialogs][workdesctop-1].x, crd[Dialogs][workdesctop-1].y); ??OnRedraw_2: LDR R0,[R4, #+292] MOV R1,#+12 MLA R0,R1,R0,R4 LDR R1,[R0, #+176] CMP R1,#+0 BEQ ??OnRedraw_3 LDR R1,[R0, #+172] LDR R0,[R0, #+168] BL DrawDialogs // 187 if(crd[FreeRam][workdesctop-1].show) DrawFreeRam(crd[FreeRam][workdesctop-1].x,crd[FreeRam][workdesctop-1].y); ??OnRedraw_3: LDR R0,[R4, #+292] MOV R1,#+12 MLA R0,R1,R0,R4 LDR R1,[R0, #+212] CMP R1,#+0 BEQ ??OnRedraw_4 LDR R1,[R0, #+208] LDR R0,[R0, #+204] BL DrawFreeRam // 188 // 189 // 190 DrawWorkDesc(); ??OnRedraw_4: BL DrawWorkDesc // 191 if(Cross_x<10) LDR R0,[R4, #+308] CMP R0,#+10 // 192 DrawStrInt(Cross_x,88,158); MOVLT R2,#+158 MOVLT R1,#+88 BLT ??OnRedraw_5 // 193 else if(Cross_x<100) CMP R0,#+100 MOV R2,#+158 // 194 DrawStrInt(Cross_x,82,158); MOVLT R1,#+82 // 195 else DrawStrInt(Cross_x,76,158); MOVGE R1,#+76 ??OnRedraw_5: BL DrawStrInt // 196 DrawStrChar(":",95,158); MOV R2,#+158 MOV R1,#+95 ADR R0,??OnRedraw_6 ;; ":" BL DrawStrChar // 197 DrawStrInt(Cross_y,100,158); LDR R0,[R4, #+312] MOV R2,#+158 MOV R1,#+100 BL DrawStrInt // 198 // 199 // 200 // 201 if(Cross_x<=17 && Cross_y<=(name[0].NumItems*20) && !(startmenu)) LDR R0,[R4, #+308] CMP R0,#+18 BGE ??OnRedraw_7 LDR R0,??DataTable57 ;; name + 576 MOV R1,#+20 LDR R0,[R0, #+0] MUL R0,R1,R0 LDR R1,[R4, #+312] CMP R0,R1 BLT ??OnRedraw_7 LDR R0,[R4, #+332] CMP R0,#+0 BNE ??OnRedraw_7 // 202 { // 203 DrawPanel_w(); BL DrawPanel_w // 204 DrawNameContr(); BL DrawNameContr B ??OnRedraw_8 // 205 } // 206 // if(Cross_x>=40 && Cross_x<=132 && Cross_y<=17)DrawPanel_h(); // 207 else GBS_DelTimer(&timer); ??OnRedraw_7: ADD R0,R4,#+428 SWI +396 // 208 DrawIconBar(); ??OnRedraw_8: BL DrawIconBar // 209 // 210 // 211 //DrawStrChar(descmenu[1].file,20,60); // 212 if(menu<1)menu=6; LDR R0,[R4, #+328] CMP R0,#+1 MOVLT R0,#+6 BLT ??OnRedraw_9 // 213 else if(menu>6)menu=1; CMP R0,#+7 BLT ??OnRedraw_10 MOV R0,#+1 ??OnRedraw_9: STR R0,[R4, #+328] // 214 if(startmenu) ??OnRedraw_10: LDR R0,[R4, #+332] CMP R0,#+0 BEQ ??OnRedraw_11 // 215 { // 216 DrawMenu(menu); LDR R0,[R4, #+328] BL DrawMenu // 217 DrawNameMenu(menu); LDR R0,[R4, #+328] BL DrawNameMenu SWI +327 POP {R4,PC} // 218 } // 219 else GBS_DelTimer(&menu_tmr); ??OnRedraw_11: ADD R0,R4,#+444 SWI +396 // 220 // DrawStrInt(RamNet()->power,50,50); // 221 //if(DrawMamory)DrawFreeMamory("0:\\Java\\jam\\Applications",100); // 222 /*if(Cross_x>=0 && Cross_x <=25 && Cross_y>=159 && Cross_y <=162)Pusk=1; // 223 if(Pusk && Cross_x>=0 && Cross_x <=80 && Cross_y>=75 && Cross_y <=162)//0,80,75,162 // 224 DrawPusk(85,1); // 225 else Pusk=0;*/ // 226 //TimerProc(); // 227 //} // 228 /* // 229 else if(workdesctop==1) BG1(); // 230 else if(workdesctop==3) BG3(); // 231 */ // 232 UnlockSched(); SWI +327 // 233 } POP {R4,PC} ;; return DATA ??OnRedraw_6: DC8 ":",+0,+0 CFI EndBlock cfiBlock137 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable57: DC32 name + 576 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock138 Using cfiCommon0 CFI NoFunction THUMB ??onCreate??rT: BX PC Nop CFI EndBlock cfiBlock138 REQUIRE onCreate // 234 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock139 Using cfiCommon1 CFI Function onCreate ARM // 235 void onCreate(MAIN_GUI *data, void *(*malloc_adr)(int)) // 236 { // 237 data->gui.state=1; onCreate: MOV R1,#+1 STRB R1,[R0, #+12] // 238 } BX LR ;; return CFI EndBlock cfiBlock139 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock140 Using cfiCommon0 CFI NoFunction THUMB ??onClose??rT: BX PC Nop CFI EndBlock cfiBlock140 REQUIRE onClose // 239 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock141 Using cfiCommon1 CFI Function onClose ARM // 240 void onClose(MAIN_GUI *data, void (*mfree_adr)(void *)) // 241 { // 242 data->gui.state=0; onClose: MOV R1,#+0 STRB R1,[R0, #+12] // 243 } BX LR ;; return CFI EndBlock cfiBlock141 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock142 Using cfiCommon0 CFI NoFunction THUMB ??onFocus??rT: BX PC Nop CFI EndBlock cfiBlock142 REQUIRE onFocus // 244 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock143 Using cfiCommon1 CFI Function onFocus ARM // 245 void onFocus(MAIN_GUI *data, void *(*malloc_adr)(int), void (*mfree_adr)(void *)) // 246 { onFocus: PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 // 247 data->gui.state=2; MOV R1,#+2 STRB R1,[R0, #+12] // 248 DisableIDLETMR(); SWI +383 // 249 } POP {PC} ;; return CFI EndBlock cfiBlock143 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock144 Using cfiCommon0 CFI NoFunction THUMB ??onUnfocus??rT: BX PC Nop CFI EndBlock cfiBlock144 REQUIRE onUnfocus // 250 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock145 Using cfiCommon1 CFI Function onUnfocus ARM // 251 void onUnfocus(MAIN_GUI *data, void (*mfree_adr)(void *)) // 252 { // 253 if (data->gui.state!=2) return; onUnfocus: LDRB R1,[R0, #+12] CMP R1,#+2 // 254 data->gui.state=1; MOVEQ R1,#+1 STRBEQ R1,[R0, #+12] // 255 } BX LR ;; return CFI EndBlock cfiBlock145 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock146 Using cfiCommon0 CFI NoFunction THUMB ??QuitCallbackProc??rT: BX PC Nop CFI EndBlock cfiBlock146 REQUIRE QuitCallbackProc RSEG DATA_I:DATA:SORT:NOROOT(2) // crds __data crd[7][3] crd: DS8 252 REQUIRE `?` // char *__data NAME[9] NAME: DS8 36 REQUIRE `?` // int __data speed_cur speed_cur: DS8 4 REQUIRE `?` // int __data workdesctop workdesctop: DS8 4 REQUIRE `?` // int __data typecur typecur: DS8 4 REQUIRE `?` // int __data IRDA IRDA: DS8 4 REQUIRE `?` // int __data cr_y cr_y: DS8 4 REQUIRE `?` // int __data Cross_x Cross_x: DS8 4 REQUIRE `?` // int __data Cross_y Cross_y: DS8 4 REQUIRE `?` // int __data TypeLine TypeLine: DS8 4 REQUIRE `?` // int __data kdblock kdblock: DS8 4 REQUIRE `?` // int __data moveclock moveclock: DS8 4 REQUIRE `?` // int __data menu menu: DS8 4 REQUIRE `?` // int __data startmenu startmenu: DS8 4 REQUIRE `?` // char *__data NAME2[9] NAME2: DS8 36 REQUIRE `?` // int __data panel_x panel_x: DS8 4 REQUIRE `?` // int __data panel_y panel_y: DS8 4 REQUIRE `?` // int __data img_y img_y: DS8 4 REQUIRE `?` // int __data menu_x menu_x: DS8 4 REQUIRE `?` // int __data menu_y menu_y: DS8 4 REQUIRE `?` // unsigned int *__data err err: DS8 4 REQUIRE `?` // int __data DrawPuskk DrawPuskk: DS8 4 REQUIRE `?` // int __data pusk_y pusk_y: DS8 4 REQUIRE `?` MAINCSM_ID: DS8 4 REQUIRE `?` // 256 int Quit_Required=0; Quit_Required: DS8 4 REQUIRE `?` // char __data per_s[3] per_s: DS8 3 REQUIRE `?` DS8 1 // char __data white[4] white: DS8 4 REQUIRE `?` // char __data RED[4] RED: DS8 4 REQUIRE `?` // char __data prozr[4] prozr: DS8 4 REQUIRE `?` // GBSTMR __data timer timer: DS8 16 REQUIRE `?` // GBSTMR __data menu_tmr menu_tmr: DS8 16 REQUIRE `?` // char __data per_6s[18] per_6s: DS8 20 REQUIRE `?` RSEG DATA_I:DATA:SORT:NOROOT(2) // char __data black[4] black: DS8 4 REQUIRE `?` RSEG DATA_I:DATA:SORT:NOROOT(0) // char __data per_d[3] per_d: DS8 3 REQUIRE `?` RSEG DATA_I:DATA:SORT:NOROOT(0) // char __data per_t[3] per_t: DS8 3 REQUIRE `?` RSEG DATA_I:DATA:SORT:NOROOT(0) // char __data _percent_t[3] _percent_t: DS8 3 REQUIRE `?` RSEG DATA_I:DATA:SORT:NOROOT(2) // int __data fmenusoftkeys[3] fmenusoftkeys: DS8 12 REQUIRE `?` RSEG DATA_I:DATA:SORT:NOROOT(2) // SOFTKEY_DESC __data fmenu_sk[3] fmenu_sk: DS8 24 REQUIRE `?` RSEG DATA_I:DATA:SORT:NOROOT(2) // SOFTKEYSTAB __data fmenu_skt fmenu_skt: DS8 8 REQUIRE `?` RSEG DATA_I:DATA:SORT:NOROOT(2) // HEADER_DESC __data filelist_HDR filelist_HDR: DS8 20 REQUIRE `?` // char __data header[128] header: DS8 128 REQUIRE `?` // MENU_DESC __data filelist_STRUCT filelist_STRUCT: DS8 44 REQUIRE `?` RSEG DATA_I:DATA:SORT:NOROOT(2) vibra_count: DS8 4 REQUIRE `?` tmr_vibra: DS8 16 REQUIRE `?` RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock147 Using cfiCommon1 CFI Function QuitCallbackProc ARM // 257 void QuitCallbackProc(int decision) // 258 { // 259 if(!decision)Quit_Required = 1; QuitCallbackProc: CMP R0,#+0 LDREQ R0,??QuitCallbackProc_0 ;; crd + 408 MOVEQ R1,#+1 STREQ R1,[R0, #+0] // 260 } BX LR ;; return DATA ??QuitCallbackProc_0: DC32 crd + 408 CFI EndBlock cfiBlock147 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock148 Using cfiCommon0 CFI NoFunction THUMB ??OnKey??rT: BX PC Nop CFI EndBlock cfiBlock148 REQUIRE OnKey RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock149 Using cfiCommon1 CFI Function OnKey ARM // 261 int OnKey(MAIN_GUI *data, GUI_MSG *msg) // 262 { OnKey: PUSH {R1,R4-R11,LR} CFI ?RET Frame(CFA, -4) CFI R11 Frame(CFA, -8) CFI R10 Frame(CFA, -12) CFI R9 Frame(CFA, -16) CFI R8 Frame(CFA, -20) CFI R7 Frame(CFA, -24) CFI R6 Frame(CFA, -28) CFI R5 Frame(CFA, -32) CFI R4 Frame(CFA, -36) CFI CFA R13+40 // 263 DirectRedrawGUI(); // 264 if(Quit_Required) return 1; //Происходит вызов GeneralFunc для тек. GUI -> закрытие GUI LDR R5,??DataTable58 ;; crd SWI +319 LDR R0,[R5, #+408] CMP R0,#+0 MOVNE R0,#+1 POPNE {R1,R4-R11,PC} // 265 // 266 if (msg->gbsmsg->msg==/*LONG_PRESS*/KEY_DOWN && msg->gbsmsg->submess=='#') kdblock=!kdblock; LDR R0,[SP, #+0] MOV R2,#+147 LDR R0,[R0, #+4] ORR R2,R2,#0x100 LDRSH R3,[R0, #+2] MOV R4,#+1 MOV R1,#+0 CMP R3,R2 LDREQ R3,[R0, #+4] CMPEQ R3,#+35 BNE ??OnKey_2 LDR R3,[R5, #+320] CMP R3,#+0 MOVEQ R3,#+1 MOVNE R3,#+0 STR R3,[R5, #+320] // 267 if (msg->gbsmsg->msg==KEY_DOWN && !kdblock) ??OnKey_2: LDRSH R3,[R0, #+2] MVN R6,#+11 CMP R3,R2 LDREQ R2,[R5, #+320] CMPEQ R2,#+0 BNE ??OnKey_3 // 268 { // 269 switch(msg->gbsmsg->submess) LDR R12,[R5, #+292] LDR R0,[R0, #+4] LDR R10,[R5, #+332] LDR R9,[R5, #+308] LDR R7,??OnKey_4 ;; `?` MOV R2,#+12 MLA R3,R2,R12,R5 LDR R2,[R5, #+324] ADD LR,R6,R3 LDR R3,[R5, #+312] MOV R8,#+3 SUB R0,R0,#+1 CMP R0,#+61 BHI ??OnKey_3 ADR R11,??OnKey_0 LDRB R11,[R11, R0] ADD PC,PC,R11, LSL #+2 DATA ??OnKey_0: DC8 +46,+156,+156,+156 DC8 +156,+156,+156,+156 DC8 +156,+156,+41,+15 DC8 +156,+156,+156,+156 DC8 +156,+156,+156,+156 DC8 +156,+156,+156,+156 DC8 +156,+106,+156,+156 DC8 +156,+156,+156,+156 DC8 +156,+156,+156,+156 DC8 +156,+156,+156,+156 DC8 +156,+24,+156,+156 DC8 +156,+156,+156,+15 DC8 +135,+82,+156,+50 DC8 +106,+66,+148,+94 DC8 +152,+156,+82,+94 DC8 +50,+66,+0,+0 ARM // 270 { // 271 // 272 case RED_BUTTON:case '0': // 273 if(!startmenu) MsgBoxYesNo(1,(int)"Exit?",QuitCallbackProc);//return(1); ??OnKey_5: CMP R10,#+0 BNE ??OnKey_6 LDR R2,??OnKey_4+0x4 ;; QuitCallbackProc MOV R1,R7 MOV R0,#+1 SWI +79 B ??OnKey_3 // 274 else startmenu=!startmenu;break; ??OnKey_6: STR R1,[R5, #+332] B ??OnKey_3 // 275 case '*': {for (int i=7; i!=MAINCSM_ID-1; i++){ if (FindCSMbyID(i)!=NULL) CloseCSM(i);} ShowMSG(1,(int)"Killed");} break; ??OnKey_7: MOV R4,#+7 B ??OnKey_8 ??OnKey_9: MOV R0,R4 SWI +264 CMP R0,#+0 BEQ ??OnKey_10 MOV R0,R4 SWI +508 ??OnKey_10: ADD R4,R4,#+1 ??OnKey_8: LDR R0,[R5, #+404] SUB R0,R0,#+1 CMP R4,R0 BNE ??OnKey_9 ADD R1,R7,#+8 MOV R0,#+1 SWI +328 B ??OnKey_3 // 276 case GREEN_BUTTON: MakeVoiceCall("0",0x10,0x20C0); break; ??OnKey_11: MOV R2,#+8384 MOV R1,#+16 ADR R0,??OnKey_12 ;; "0" SWI +368 B ??OnKey_3 // 277 case RIGHT_SOFT: // 278 break; // 279 case LEFT_SOFT:startmenu=!startmenu; break; ??OnKey_13: CMP R10,#+0 MOVNE R4,#+0 STR R4,[R5, #+332] B ??OnKey_3 // 280 case '4': case LEFT_BUTTON: // 281 if(Cross_x>0 && (!startmenu)) Cross_x--;TypeLine=1; ??OnKey_14: CMP R9,#+1 BLT ??OnKey_15 CMP R10,#+0 SUBEQ R0,R9,#+1 STREQ R0,[R5, #+308] // 282 if(startmenu)menu--; ??OnKey_15: CMP R10,#+0 LDRNE R0,[R5, #+328] STR R4,[R5, #+316] SUBNE R0,R0,#+1 STRNE R0,[R5, #+328] // 283 if(moveclock)crd[clock][workdesctop-1].x--; CMP R2,#+0 BEQ ??OnKey_3 LDR R0,[LR, #+0] SUB R0,R0,#+1 ??OnKey_16: STR R0,[LR, #+0] B ??OnKey_3 // 284 break; // 285 case '6': case RIGHT_BUTTON: // 286 if(Cross_x<131&& (!startmenu))Cross_x++;TypeLine=2; ??OnKey_17: CMP R9,#+131 BGE ??OnKey_18 CMP R10,#+0 ADDEQ R0,R9,#+1 STREQ R0,[R5, #+308] ??OnKey_18: MOV R0,#+2 STR R0,[R5, #+316] // 287 if(startmenu)menu++; CMP R10,#+0 LDRNE R0,[R5, #+328] ADDNE R0,R0,#+1 STRNE R0,[R5, #+328] // 288 if(moveclock)crd[clock][workdesctop-1].x++; CMP R2,#+0 BEQ ??OnKey_3 LDR R0,[LR, #+0] ADD R0,R0,#+1 B ??OnKey_16 // 289 break; // 290 case '2': case UP_BUTTON: // 291 if(Cross_y>0&& (!startmenu)) Cross_y--;TypeLine=3; ??OnKey_19: CMP R3,#+1 BLT ??OnKey_20 CMP R10,#+0 SUBEQ R0,R3,#+1 STREQ R0,[R5, #+312] ??OnKey_20: STR R8,[R5, #+316] // 292 if(moveclock) crd[clock][workdesctop-1].y--; CMP R2,#+0 BEQ ??OnKey_3 LDR R0,[LR, #+4] SUB R0,R0,#+1 ??OnKey_21: STR R0,[LR, #+4] B ??OnKey_3 // 293 break; // 294 case '8': case DOWN_BUTTON: // 295 if(Cross_y<175&& (!startmenu))Cross_y++;TypeLine=4; ??OnKey_22: CMP R3,#+175 BGE ??OnKey_23 CMP R10,#+0 ADDEQ R0,R3,#+1 STREQ R0,[R5, #+312] ??OnKey_23: MOV R0,#+4 STR R0,[R5, #+316] // 296 if(moveclock)crd[clock][workdesctop-1].y++; CMP R2,#+0 BEQ ??OnKey_3 LDR R0,[LR, #+4] ADD R0,R0,#+1 B ??OnKey_21 // 297 break; // 298 case '5': case ENTER_BUTTON: // 299 StartFilePanel_w(); ??OnKey_24: BL StartFilePanel_w // 300 if(startmenu)StartFileMenu(menu); LDR R0,[R5, #+332] CMP R0,#+0 BEQ ??OnKey_25 LDR R0,[R5, #+328] BL StartFileMenu // 301 // StartFilePanel_h(); // 302 // StartFilePusk(); // 303 if(Cross_x>=121 && Cross_x<=128 && Cross_y>=130 && Cross_y<=143)workdesctop=1; ??OnKey_25: LDR R0,[R5, #+308] CMP R0,#+121 BLT ??OnKey_3 CMP R0,#+129 BGE ??OnKey_3 LDR R0,[R5, #+312] CMP R0,#+130 BLT ??OnKey_26 CMP R0,#+144 BLT ??OnKey_27 ??OnKey_26: CMP R0,#+144 BLT ??OnKey_28 CMP R0,#+158 BGE ??OnKey_28 // 304 else if(Cross_x>=121 && Cross_x<=128 && Cross_y>=144 && Cross_y<=157)workdesctop=2; MOV R0,#+2 ??OnKey_29: STR R0,[R5, #+292] B ??OnKey_3 ??OnKey_28: CMP R0,#+158 BLT ??OnKey_3 CMP R0,#+171 BGE ??OnKey_3 // 305 else if(Cross_x>=121 && Cross_x<=128 && Cross_y>=158 && Cross_y<=170)workdesctop=3; ??OnKey_30: STR R8,[R5, #+292] B ??OnKey_3 // 306 break; // 307 case '1'://vibra_count=1;start_vibra();//SetVibration(0); // 308 if(Cross_x>=crd[clock][workdesctop-1].x && Cross_x<=crd[clock][workdesctop-1].x+20 // 309 && Cross_y>=crd[clock][workdesctop-1].y && Cross_y<=crd[clock][workdesctop-1].y+7) ??OnKey_31: LDR R0,[LR, #+0] CMP R9,R0 ADDGE R0,R0,#+20 CMPGE R0,R9 LDRGE R0,[LR, #+4] CMPGE R3,R0 ADDGE R0,R0,#+7 CMPGE R0,R3 BLT ??OnKey_3 // 310 moveclock=!moveclock; CMP R2,#+0 MOVNE R4,#+0 STR R4,[R5, #+324] B ??OnKey_3 // 311 break; // 312 // case '7': if(Cross_y<172)Cross_y+=18;break; // 313 // case '3':ShowBMmenu1();break; // 314 case '7':if(workdesctop>1) workdesctop--; else workdesctop=3;break; ??OnKey_32: CMP R12,#+2 BLT ??OnKey_30 SUB R0,R12,#+1 B ??OnKey_29 // 315 case '9':if(workdesctop<3) workdesctop++; else workdesctop=1;break; ??OnKey_33: CMP R12,#+3 ADDLT R0,R12,#+1 BLT ??OnKey_29 ??OnKey_27: STR R4,[R5, #+292] // 316 } // 317 } // 318 if (msg->gbsmsg->msg==LONG_PRESS && !kdblock) ??OnKey_3: LDR R0,[SP, #+0] MOV R2,#+149 LDR R0,[R0, #+4] ORR R2,R2,#0x100 LDRSH R1,[R0, #+2] CMP R1,R2 LDREQ R1,[R5, #+320] CMPEQ R1,#+0 BNE ??OnKey_34 // 319 { // 320 switch(msg->gbsmsg->submess) LDR R1,[R5, #+288] LDR R2,[R5, #+312] LDR R4,[R5, #+308] LDR R0,[R0, #+4] LDR R10,[R5, #+328] LDR R12,[R5, #+332] SUB R3,R2,R1 SUB R7,R4,R1 ADD R8,R1,R2 ADD R9,R1,R4 SUB R0,R0,#+49 CMP R0,#+13 BHI ??OnKey_34 ADR R11,??OnKey_1 LDRB R11,[R11, R0] ADD PC,PC,R11, LSL #+2 DATA ??OnKey_1: DC8 +69,+40,+82,+3 DC8 +117,+22,+93,+55 DC8 +104,+117,+40,+55 DC8 +3,+22,+0,+0 ARM // 321 { // 322 // 323 case '4': case LEFT_BUTTON: // 324 if(Cross_x>0&& (!startmenu))Cross_x-=speed_cur; ??OnKey_35: CMP R4,#+1 BLT ??OnKey_36 CMP R12,#+0 STREQ R7,[R5, #+308] BEQ ??OnKey_37 // 325 if(startmenu)menu--;/*DrawCross(Cross_x+7,Cross_y,white);*/ ??OnKey_36: CMP R12,#+0 SUBNE R0,R10,#+1 STRNE R0,[R5, #+328] // 326 if(moveclock)crd[clock][workdesctop-1].x-=speed_cur; ??OnKey_37: LDR R0,[R5, #+324] CMP R0,#+0 POPEQ {R1,R4-R11,PC} LDR R0,[R5, #+292] MOV R2,#+12 MLA R0,R2,R0,R5 ADD R0,R6,R0 LDR R2,[R0, #+0] SUB R1,R2,R1 ??OnKey_38: STR R1,[R0, #+0] B ??OnKey_39 // 327 break; // 328 case '6': case RIGHT_BUTTON: // 329 if(Cross_x<131&& (!startmenu)) Cross_x+=speed_cur; ??OnKey_40: CMP R4,#+131 BGE ??OnKey_41 CMP R12,#+0 STREQ R9,[R5, #+308] BEQ ??OnKey_42 // 330 if(startmenu)menu++;/*DrawCross(Cross_x-7,Cross_y,white);*/ ??OnKey_41: CMP R12,#+0 ADDNE R0,R10,#+1 STRNE R0,[R5, #+328] // 331 if(moveclock)crd[clock][workdesctop-1].x+=speed_cur; ??OnKey_42: LDR R0,[R5, #+324] CMP R0,#+0 POPEQ {R1,R4-R11,PC} LDR R0,[R5, #+292] MOV R2,#+12 MLA R0,R2,R0,R5 ADD R0,R6,R0 LDR R2,[R0, #+0] ADD R1,R1,R2 B ??OnKey_38 // 332 break; // 333 case '2': case UP_BUTTON: // 334 if(Cross_y>0&& (!startmenu)) Cross_y-=speed_cur;/*DrawCross(Cross_x,Cross_y+7,white);*/ ??OnKey_43: CMP R2,#+1 BLT ??OnKey_44 CMP R12,#+0 STREQ R3,[R5, #+312] // 335 if(moveclock)crd[clock][workdesctop-1].y-=speed_cur; ??OnKey_44: LDR R0,[R5, #+324] CMP R0,#+0 POPEQ {R1,R4-R11,PC} LDR R0,[R5, #+292] MOV R2,#+12 MLA R0,R2,R0,R5 ADD R0,R6,R0 LDR R2,[R0, #+4] SUB R1,R2,R1 ??OnKey_45: STR R1,[R0, #+4] B ??OnKey_39 // 336 break; // 337 case '8': case DOWN_BUTTON: // 338 if(Cross_y<175&& (!startmenu)) Cross_y+=speed_cur;/*DrawCross(Cross_x,Cross_y-7,white);*/ ??OnKey_46: CMP R2,#+175 BGE ??OnKey_47 CMP R12,#+0 STREQ R8,[R5, #+312] // 339 if(moveclock)crd[clock][workdesctop-1].y+=speed_cur; ??OnKey_47: LDR R0,[R5, #+324] CMP R0,#+0 POPEQ {R1,R4-R11,PC} LDR R0,[R5, #+292] MOV R2,#+12 MLA R0,R2,R0,R5 ADD R0,R6,R0 LDR R2,[R0, #+4] ADD R1,R1,R2 B ??OnKey_45 // 340 break; // 341 case '1': if(Cross_x>0 && Cross_y>0 && (!startmenu)){ Cross_x-=speed_cur;Cross_y-=speed_cur; } ??OnKey_48: CMP R4,#+1 CMPGE R2,#+1 BLT ??OnKey_49 CMP R12,#+0 STREQ R7,[R5, #+308] ??OnKey_50: STR R3,[R5, #+312] B ??OnKey_39 // 342 else if (Cross_y>0)Cross_y-=speed_cur; ??OnKey_49: CMP R2,#+1 BGE ??OnKey_50 // 343 else if (Cross_x>0)Cross_x-=speed_cur; break; ??OnKey_51: CMP R4,#+1 BLT ??OnKey_34 STR R7,[R5, #+308] B ??OnKey_39 // 344 case '3': if(Cross_x<131 && Cross_y>0&& (!startmenu)){ Cross_x+=speed_cur;Cross_y-=speed_cur;} ??OnKey_52: CMP R4,#+131 BGE ??OnKey_53 CMP R2,#+1 BLT ??OnKey_53 CMP R12,#+0 BNE ??OnKey_50 STR R9,[R5, #+308] B ??OnKey_50 // 345 else if (Cross_y>0)Cross_y-=speed_cur; ??OnKey_53: CMP R2,#+1 BGE ??OnKey_50 // 346 else if (Cross_x<131)Cross_x+=speed_cur;break; B ??OnKey_54 // 347 case '7': if(Cross_x>0 && Cross_y<175&& (!startmenu)){Cross_x-=speed_cur;Cross_y+=speed_cur;} ??OnKey_55: CMP R4,#+1 BLT ??OnKey_56 CMP R2,#+175 BGE ??OnKey_56 CMP R12,#+0 STREQ R7,[R5, #+308] ??OnKey_57: B ??OnKey_58 // 348 else if (Cross_y<175)Cross_y+=speed_cur; ??OnKey_56: CMP R2,#+175 BGE ??OnKey_51 B ??OnKey_58 DATA ??OnKey_12: DC8 "0",+0,+0 ARM // 349 else if (Cross_x>0)Cross_x-=speed_cur;break; // 350 case '9': if(Cross_x<131 && Cross_y<175&& (!startmenu)){Cross_x+=speed_cur;Cross_y+=speed_cur;} ??OnKey_59: CMP R4,#+131 CMPLT R2,#+175 BGE ??OnKey_60 CMP R12,#+0 BNE ??OnKey_58 STR R9,[R5, #+308] ??OnKey_58: STR R8,[R5, #+312] ??OnKey_39: MOV R0,#+0 POP {R1,R4-R11,PC} // 351 else if (Cross_y<175)Cross_y+=speed_cur; ??OnKey_60: CMP R2,#+175 BLT ??OnKey_58 // 352 else if (Cross_x<131)Cross_x+=speed_cur;break; ??OnKey_54: CMP R4,#+131 STRLT R9,[R5, #+308] // 353 case ENTER_BUTTON: case '5':break; // 354 // 355 } // 356 // 357 } // 358 return(0); ??OnKey_34: MOV R0,#+0 POP {R1,R4-R11,PC} ;; return DATA ??OnKey_4: DC32 `?` DC32 QuitCallbackProc CFI EndBlock cfiBlock149 // 359 } RSEG CODE:CODE:NOROOT(2) DATA ??DataTable58: DC32 crd RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock150 Using cfiCommon0 CFI NoFunction THUMB ??method8??rT: BX PC Nop CFI EndBlock cfiBlock150 REQUIRE method8 // 360 // 361 extern void kill_data(void *p, void (*func_p)(void *)); // 362 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock151 Using cfiCommon1 CFI Function method8 ARM // 363 int method8(void){return(0);} method8: MOV R0,#+0 BX LR ;; return CFI EndBlock cfiBlock151 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock152 Using cfiCommon0 CFI NoFunction THUMB ??method9??rT: BX PC Nop CFI EndBlock cfiBlock152 REQUIRE method9 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock153 Using cfiCommon1 CFI Function method9 ARM // 364 int method9(void){return(0);} method9: MOV R0,#+0 BX LR ;; return CFI EndBlock cfiBlock153 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock154 Using cfiCommon0 CFI NoFunction THUMB ??maincsm_oncreate??rT: BX PC Nop CFI EndBlock cfiBlock154 REQUIRE maincsm_oncreate // 365 const void * const gui_methods[11]={ // 366 (void *)OnRedraw, // 367 (void *)onCreate, // 368 (void *)onClose, // 369 (void *)onFocus, // 370 (void *)onUnfocus, // 371 (void *)OnKey, // 372 0, // 373 (void *)kill_data, //Destroy // 374 (void *)method8, // 375 (void *)method9, // 376 0 // 377 }; // 378 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock155 Using cfiCommon1 CFI Function maincsm_oncreate ARM // 379 void maincsm_oncreate(CSM_RAM *data) // 380 { maincsm_oncreate: PUSH {R4-R6,LR} CFI ?RET Frame(CFA, -4) CFI R6 Frame(CFA, -8) CFI R5 Frame(CFA, -12) CFI R4 Frame(CFA, -16) CFI CFA R13+16 MOV R4,R0 // 381 static const RECT Canvas={0,0,0,0}; // 382 MAIN_GUI *main_gui=malloc(sizeof(MAIN_GUI)); MOV R0,#+60 SWI +20 MOV R5,R0 // 383 MAIN_CSM*csm=(MAIN_CSM*)data; // 384 zeromem(main_gui,sizeof(MAIN_GUI)); MOV R1,#+60 SWI +285 // 385 patch_rect((RECT*)&Canvas,0,YDISP,ScreenW()-1,ScreenH()-1); SWI +33161 MOV R6,R0 SWI +33160 LDR R2,??maincsm_oncreate_0 ;; ??Canvas SUB R1,R6,#+1 SUB R0,R0,#+1 MOV R6,#+0 STR R6,[R2, #+0] STRH R0,[R2, #+4] STRH R1,[R2, #+6] // 386 main_gui->gui.canvas=(void *)(&Canvas); STR R2,[R5, #+0] // 387 main_gui->gui.flag30=2; MOV R0,#+2 STR R0,[R5, #+44] // 388 main_gui->gui.methods=(void *)gui_methods; ADD R0,R2,#+8 STR R0,[R5, #+4] // 389 main_gui->gui.item_ll.data_mfree=(void (*)(void *))mfree_adr(); SWI +32789 STR R0,[R5, #+28] // 390 csm->csm.state=0; STR R6,[R4, #+16] // 391 csm->csm.unk1=0; STR R6,[R4, #+20] // 392 csm->gui_id=CreateGUI(main_gui); MOV R0,R5 SWI +311 STR R0,[R4, #+40] // 393 } POP {R4-R6,PC} ;; return DATA ??maincsm_oncreate_0: DC32 ??Canvas CFI EndBlock cfiBlock155 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock156 Using cfiCommon0 CFI NoFunction THUMB ??ElfKiller??rT: BX PC Nop CFI EndBlock cfiBlock156 REQUIRE ElfKiller RSEG DATA_C:CONST:SORT:NOROOT(2) ??Canvas: DATA DC16 0, 0, 0, 0 gui_methods: DC32 OnRedraw, onCreate, onClose, onFocus, onUnfocus, OnKey, 0H DC32 kill_data, method8, method9, 0H // 394 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock157 Using cfiCommon1 CFI Function ElfKiller ARM // 395 void ElfKiller(void) // 396 { ElfKiller: PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 // 397 extern void kill_data(void *p, void (*func_p)(void *)); // 398 extern void *ELF_BEGIN; // 399 kill_data(&ELF_BEGIN,(void (*)(void *))mfree_adr()); SWI +32789 MOV R1,R0 LDR R0,??ElfKiller_0 ;; ELF_BEGIN POP {LR} ;; Pop CFI ?RET R14 CFI CFA R13+0 _BF kill_data,??kill_data??rA ;; tailcall DATA ??ElfKiller_0: DC32 ELF_BEGIN CFI EndBlock cfiBlock157 // 400 } RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock158 Using cfiCommon0 CFI NoFunction THUMB ??maincsm_onclose??rT: BX PC Nop CFI EndBlock cfiBlock158 REQUIRE maincsm_onclose // 401 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock159 Using cfiCommon1 CFI Function maincsm_onclose ARM // 402 void maincsm_onclose(CSM_RAM *csm) // 403 { maincsm_onclose: PUSH {R4,LR} CFI ?RET Frame(CFA, -4) CFI R4 Frame(CFA, -8) CFI CFA R13+8 // 404 GBS_DelTimer(&menu_tmr); LDR R4,??DataTable59 ;; crd ADD R0,R4,#+444 SWI +396 // 405 GBS_DelTimer(&timer); ADD R0,R4,#+428 SWI +396 // 406 SUBPROC((void *)ElfKiller); LDR R0,??maincsm_onclose_0 ;; ElfKiller SWI +369 // 407 } POP {R4,PC} ;; return DATA ??maincsm_onclose_0: DC32 ElfKiller CFI EndBlock cfiBlock159 RSEG CODE:CODE:NOROOT(2) DATA ??DataTable59: DC32 crd RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock160 Using cfiCommon0 CFI NoFunction THUMB ??maincsm_onmessage??rT: BX PC Nop CFI EndBlock cfiBlock160 REQUIRE maincsm_onmessage // 408 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock161 Using cfiCommon1 CFI Function maincsm_onmessage ARM // 409 int maincsm_onmessage(CSM_RAM *data, GBS_MSG *msg) // 410 { // 411 MAIN_CSM *csm=(MAIN_CSM*)data; // 412 if ((msg->msg==MSG_GUI_DESTROYED)&&((int)msg->data0==csm->gui_id)) maincsm_onmessage: LDRSH R2,[R1, #+2] CMP R2,#+152 BNE ??maincsm_onmessage_0 LDR R1,[R1, #+8] LDR R2,[R0, #+40] CMP R1,R2 // 413 { // 414 csm->csm.state=-3; MVNEQ R1,#+2 STREQ R1,[R0, #+16] // 415 } // 416 return(1); ??maincsm_onmessage_0: MOV R0,#+1 BX LR ;; return CFI EndBlock cfiBlock161 // 417 } RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock162 Using cfiCommon0 CFI NoFunction THUMB ??UpdateCSMname??rT: BX PC Nop CFI EndBlock cfiBlock162 REQUIRE UpdateCSMname // 418 // 419 const struct // 420 { // 421 CSM_DESC maincsm; // 422 WSHDR maincsm_name; RSEG DATA_C:CONST:SORT:NOROOT(2) // 423 }MAINCSM = MAINCSM: DATA DC32 maincsm_onmessage, maincsm_oncreate, maincsm_onclose, 44, 1 DC32 minus11, maincsm_name_body, 55AACCCCH, 3333AA55H, 0 DC16 139 DC8 0, 0 // 424 { // 425 { // 426 maincsm_onmessage, // 427 maincsm_oncreate, // 428 #ifdef NEWSGOLD // 429 0, // 430 0, // 431 0, // 432 0, // 433 #endif // 434 maincsm_onclose, // 435 sizeof(MAIN_CSM), // 436 1, // 437 &minus11 // 438 }, // 439 { // 440 maincsm_name_body, // 441 NAMECSM_MAGIC1, // 442 NAMECSM_MAGIC2, // 443 0x0, // 444 139 // 445 } // 446 }; // 447 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock163 Using cfiCommon1 CFI Function UpdateCSMname ARM // 448 void UpdateCSMname(void) // 449 { // 450 wsprintf((WSHDR *)(&MAINCSM.maincsm_name),"exe"); UpdateCSMname: LDR R0,??UpdateCSMname_0+0x4 ;; MAINCSM + 24 PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 ADR R1,??UpdateCSMname_0 ;; "exe" SWI +292 // 451 } POP {PC} ;; return DATA ??UpdateCSMname_0: DC8 "exe" DC32 MAINCSM + 24 CFI EndBlock cfiBlock163 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock164 Using cfiCommon0 CFI NoFunction THUMB ??main??rT: BX PC Nop CFI EndBlock cfiBlock164 REQUIRE main // 452 // 453 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock165 Using cfiCommon1 CFI Function main ARM // 454 int main(char *exename, char *fname) // 455 { main: PUSH {LR} CFI ?RET Frame(CFA, -4) CFI CFA R13+4 SUB SP,SP,#+44 CFI CFA R13+48 // 456 LockSched(); SWI +326 // 457 UpdateCSMname();//обновляем имя для хтаска BL UpdateCSMname // 458 MAIN_CSM main_csm; // 459 CreateCSM(&MAINCSM.maincsm,&main_csm,0);//создаем цсм LDR R0,??main_0 ;; MAINCSM MOV R2,#+0 MOV R1,SP SWI +263 // 460 UnlockSched(); SWI +327 // 461 // 462 LoadAllConfig(); // 463 return 0; MOV R0,#+0 ADD SP,SP,#+44 CFI CFA R13+4 POP {PC} ;; return DATA ??main_0: DC32 MAINCSM CFI EndBlock cfiBlock165 // 464 } RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock166 Using cfiCommon1 CFI NoFunction ARM ??rA??div32_a: LDR R12,??Subroutine83_0 ;; ??div32_a MOV PC,R12 DATA ??Subroutine83_0: DC32 ??div32_a CFI EndBlock cfiBlock166 RSEG CODE:CODE:NOROOT(2) CFI Block cfiBlock167 Using cfiCommon1 CFI NoFunction ARM ??kill_data??rA: LDR R12,??Subroutine84_0 ;; kill_data BX R12 DATA ??Subroutine84_0: DC32 kill_data CFI EndBlock cfiBlock167 RSEG DATA_ID:CONST:SORT:NOROOT(2) `?`: DATA DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 `?`: DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 `?`: DC8 0, 0, 0, 0 `?`: DC32 2 `?`: DC32 0 `?`: DC32 0 `?`: DC32 157 `?`: DC32 50 `?`: DC32 50 `?`: DC32 0 `?`: DC32 0 `?`: DC32 0 `?`: DC32 1 `?`: DC32 0 `?`: DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 `?`: DC32 20 `?`: DC32 120 `?`: DC32 2 `?`: DC32 40 `?`: DC32 140 `?`: DC8 0, 0, 0, 0 `?`: DC32 0 `?`: DC32 50 `?`: DC32 0 `?`: DC32 0 `?`: DC8 "%s" DC8 0 `?`: DC8 255, 255, 255, 96 `?`: DC8 255, 0, 0, 96 `?`: DC8 0, 0, 0, 0 `?`: DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 `?`: DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 `?`: DC8 "%s\012%s\012%s\012%s\012%s\012%s" DC8 0, 0 RSEG DATA_ID:CONST:SORT:NOROOT(2) `?`: DATA DC8 0, 0, 0, 96 RSEG DATA_ID:CONST:SORT:NOROOT(0) `?`: DATA DC8 "%d" RSEG DATA_ID:CONST:SORT:NOROOT(0) `?`: DATA DC8 "%t" RSEG DATA_ID:CONST:SORT:NOROOT(0) `?`: DATA DC8 "%t" RSEG DATA_ID:CONST:SORT:NOROOT(2) `?`: DATA DC32 0, 1, 2 RSEG DATA_ID:CONST:SORT:NOROOT(2) `?`: DATA DC16 1, 0 DC32 `?` DC16 24, 0 DC32 `?` DC16 61, 0 DC32 `?` RSEG DATA_ID:CONST:SORT:NOROOT(2) `?`: DATA DC32 fmenu_sk, 1 RSEG DATA_ID:CONST:SORT:NOROOT(2) `?`: DATA DC16 0, 0, 0, 0 DC32 0H, header, 32767 `?`: DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 `?`: DC32 8, filelist_menu_onkey, filelist_menu_ghook, 0H, fmenusoftkeys DC32 fmenu_skt, 16, filelist_menu_iconhndl, 0H, 0H, 0 RSEG DATA_ID:CONST:SORT:NOROOT(2) `?`: DATA DC32 1 `?`: DC8 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 RSEG DATA_ID:CONST:SORT:NOROOT(2) `?*?DATA_ID`: RSEG INITTAB:CODE:ROOT(2) DATA ?init?tab?DATA_I: DCD sfe(DATA_I) - sfb(DATA_I), sfb(DATA_I), sfb(DATA_ID) RSEG INITTAB:CODE:ROOT(2) DATA ?init?tab?DATA_Z: DCD sfe(DATA_Z) - sfb(DATA_Z), sfb(DATA_Z), sfb(DATA_Z) END // // 14 768 bytes in segment CODE // 3 502 bytes in segment DATA_C // 749 bytes in segment DATA_I // 749 bytes in segment DATA_ID // 23 468 bytes in segment DATA_Z // 24 bytes in segment INITTAB // // 14 412 bytes of CODE memory (+ 380 bytes shared) // 4 251 bytes of CONST memory // 24 217 bytes of DATA memory // //Errors: none //Warnings: none