root/platform/ixus750_sd550/sub/100h/mount.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. init_file_modules_task
  2. sub_FFAB1DC8_my
  3. Mount_FileSystem_my
  4. sub_FF86EB74_my
  5. sub_FF86E904_my

   1 void __attribute__((naked,noinline)) init_file_modules_task(){
   2  asm volatile(
   3                 "STMFD   SP!, {R4,LR}\n"
   4                 "BL      _Unmount_FileSystem\n" // + 
   5                 "BL      sub_FFAB1DA0\n"
   6                 "SUBS    R4, R0, #0\n"
   7                 "MOV     R0, #0x5000\n"
   8                 "MOV     R1, #0\n"
   9                 "ADD     R0, R0, #6\n"
  10                 "BEQ     loc_FF987E88\n"
  11                 "BL      sub_FF95C608\n"
  12 "loc_FF987E88:\n"
  13                 "BL      sub_FFAB1DC8_my\n"    //------------>
  14                 "MOV     R0, #0x5000\n"
  15                 "CMP     R4, #0\n"
  16                 "MOV     R1, R4\n"
  17                 "ADD     R0, R0, #6\n"
  18                 "LDMNEFD SP!, {R4,PC}\n"
  19                 "LDMFD   SP!, {R4,LR}\n"
  20                 "B       sub_FF95C608\n"
  21  );
  22 }
  23 
  24 void __attribute__((naked,noinline)) sub_FFAB1DC8_my(){
  25 //void __attribute__((naked,noinline)) sub_FFAB1A40_my(){
  26  asm volatile(
  27                 "STR     LR, [SP,#-4]!\n"
  28                 "BL      Mount_FileSystem_my\n"  //-------------->
  29                                 "B              sub_FFAB1DD0\n"
  30  );
  31 }
  32 
  33 void __attribute__((naked,noinline)) Mount_FileSystem_my(){
  34  asm volatile(
  35                  "STMFD   SP!, {R4-R6,LR}\n"
  36                  "MOV     R5, #0\n"
  37                  "LDR     R6, =0x2DF40\n"
  38                  "MOV     R0, R5\n"
  39                  "BL      sub_FF86E7FC\n"
  40                  "LDR     R0, [R6,#0x38]\n"
  41                  "BL      sub_FF86DEEC\n"
  42                  "SUBS    R1, R0, #0\n"
  43                  "MOV     R0, R5\n"
  44                  "BNE     loc_FF86EE04\n"
  45                  "LDR     R3, =0x2864\n"
  46                  "LDR     R2, =0x285C\n"
  47                  "STR     R1, [R3]\n"
  48                  "LDR     R3, =0x2860\n"
  49                  "STR     R1, [R2]\n"
  50                  "STR     R1, [R3]\n"
  51 
  52 "loc_FF86EE04:\n"
  53                  "BL      sub_FF86E84C\n"
  54                  "MOV     R0, R5\n"
  55                  "BL      sub_FF86EB74_my\n" // ------>
  56                  "MOV     R4, R0\n"
  57                  "MOV     R0, R5\n"
  58                  "BL      sub_FF86EBFC\n"
  59                  "AND     R4, R4, R0\n"
  60                  "MOV     R2, R4\n"
  61                  "MOV     R0, R6\n"
  62                  "LDR     R1, [R6,#0x3C]\n"
  63                  "BL      sub_FF86ED74\n"
  64                  "STR     R0, [R6,#0x40]\n"
  65                  "LDMFD   SP!, {R4-R6,PC}\n"
  66 );
  67 }
  68 
  69 void __attribute__((naked,noinline)) sub_FF86EB74_my(){
  70 //void __attribute__((naked,noinline)) sub_FF86E7EC_my(){
  71  asm volatile(
  72                  "STMFD   SP!, {R4-R7,LR}\n"
  73                  "LDR     R7, =0x2860\n"
  74                  "LDR     R3, [R7]\n"
  75                  "MOV     R4, R0\n"
  76                  "CMP     R3, #0\n"
  77                  "ADD     R3, R4, R4,LSL#1\n"
  78                  "RSB     R3, R4, R3,LSL#3\n"
  79                  "LDR     R6, =0x2DF78\n"
  80                  "MOV     R5, R3,LSL#2\n"
  81                  "MOV     R1, R4\n"
  82                  "BNE     loc_FF86EBE8\n"
  83                  "LDR     R0, [R6,R5]\n"
  84                  "BL      sub_FF86E904_my\n"
  85                  "SUBS    R3, R0, #0\n"
  86                  "MOV     R1, R4\n"
  87                  "BEQ     loc_FF86EBC0\n"
  88                  "LDR     R0, [R6,R5]\n"
  89                  "BL      sub_FF86EA54\n"
  90                  "MOV     R3, R0\n"
  91 
  92 "loc_FF86EBC0:                        \n"
  93                  "CMP     R3, #0\n"
  94                  "MOV     R0, R4\n"
  95                  "BEQ     loc_FF86EBD4\n"
  96                  "BL      sub_FF86DFC4\n"
  97                  "MOV     R3, R0\n"
  98 "loc_FF86EBD4:                        \n"
  99                  "CMP     R3, #0\n"
 100                  "MOV     R0, R3\n"
 101                  "MOVNE   R3, #1\n"
 102                  "STRNE   R3, [R7]\n"
 103                  "LDMFD   SP!, {R4-R7,PC}\n"
 104  
 105 "loc_FF86EBE8:  \n"
 106                  "MOV     R0, #1\n"
 107                  "LDMFD   SP!, {R4-R7,PC}\n"
 108 );
 109 }
 110 
 111 void __attribute__((naked,noinline)) sub_FF86E904_my(){
 112 //void __attribute__((naked,noinline)) sub_FF86E57C_my(){
 113  asm volatile(
 114                  "STMFD   SP!, {R4-R8,LR}\n"
 115                  "MOV     R5, R1\n"
 116                  "MOV     R8, R5,LSL#1\n"
 117                  "ADD     R3, R8, R5\n"
 118                  "LDR     R2, =0x2DF7C\n"
 119                  "SUB     SP, SP, #8\n"
 120                  "RSB     R3, R5, R3,LSL#3\n"
 121                  "LDR     R1, [R2,R3,LSL#2]\n"
 122                  "MOV     R6, #0\n"
 123                  "STR     R6, [SP]\n"
 124                  "MOV     R7, R0\n"
 125                  "STR     R6, [SP,#0x4]\n"
 126                  "CMP     R1, #5          \n"
 127                  "LDRLS   PC, [PC,R1,LSL#2] \n"
 128                  "B       loc_FF86EA00    \n"
 129  
 130                  ".long loc_FF86E9A4        \n"
 131                  ".long loc_FF86E958\n"
 132                  ".long loc_FF86E958\n"
 133                  ".long loc_FF86E958\n"
 134                  ".long loc_FF86E958\n"
 135                  ".long loc_FF86E9F0\n"
 136  
 137 
 138 "loc_FF86E958:                            \n"
 139                                          
 140                  "MOV     R0, #3          \n"
 141                  "MOV     R1, #0x200\n"
 142                  "MOV     R2, #0\n"
 143                  "BL      sub_FF81295C\n" //AllocateExMem
 144                  "SUBS    R6, R0, #0\n"
 145                  "BEQ     loc_FF86EA38\n"
 146                  "ADD     R12, R8, R5\n"
 147                  "RSB     R12, R5, R12,LSL#3\n"
 148                  "LDR     R4, =0x2DF8C\n"
 149                  "MOV     R0, R7\n"
 150                  "MOV     R1, #0\n"
 151                  "MOV     R2, #1\n"
 152                  "MOV     R3, R6\n"
 153                  "MOV     LR, PC\n"
 154                  "LDR     PC, [R4,R12,LSL#2]\n"
 155                  "CMP     R0, #1\n"
 156                  "BNE     loc_FF86E9AC\n"
 157                  "MOV     R0, #3\n"
 158                  "BL      sub_FF8129A8\n" //FreeExMem\n"
 159 
 160 "loc_FF86E9A4:                            \n"
 161                                          
 162                  "MOV     R0, #0          \n"
 163                  "B       loc_FF86EA38\n"
 164  
 165 
 166 "loc_FF86E9AC:                            \n"
 167                  "MOV     R0, R7\n"
 168                  "BL      sub_FF87F0C0\n"
 169                  "MOV     R1, R0\n"
 170                  "ADD     R2, SP, #0x4\n"
 171                  "MOV     R3, SP\n"
 172                  "MOV     R0, R6\n"
 173                 "STMFD   SP!, {R4-R11,LR}\n" // +
 174                 "BL      mbr_read\n"    //-----------> 
 175                 "LDMFD   SP!, {R4-R11,LR}\n" // +
 176 //                 "BL      sub_FF86DD40\n"
 177                  "MOV     R4, R0\n"
 178                  "MOV     R0, #3\n"
 179                                  "BL      sub_FF8129A8\n" //FreeExMem\n"
 180                  "CMP     R4, #0\n"
 181                  "BNE     loc_FF86EA10\n"
 182                  "MOV     R0, R7\n"
 183                  "STR     R4, [SP,#0x4]\n"
 184                  "BL      sub_FF87F0C0\n"
 185                  "STR     R0, [SP]\n"
 186                  "B       loc_FF86EA10\n"
 187  
 188 
 189 "loc_FF86E9F0:                            \n"
 190                                          
 191                  "MOV     R3, #0          \n"
 192                  "MOV     R2, #0x40\n"
 193                  "STMEA   SP, {R2,R3}\n"
 194                  "B       loc_FF86EA10\n"
 195  
 196 
 197 "loc_FF86EA00:                            \n"
 198                  "MOV     R1, #0x284      \n"
 199                  "LDR     R0, =0xFF86E6D4\n" //aMounter_c\n"
 200                  "ADD     R1, R1, #2\n"
 201                  "BL      sub_FF813BFC\n" //DebugAssert\n"
 202 
 203 "loc_FF86EA10:                            \n"
 204                                          
 205                  "LDR     R2, =0x2DF40\n"
 206                  "ADD     R3, R8, R5\n"
 207                  "LDMFD   SP, {R0,R12}\n"
 208                  "RSB     R3, R5, R3,LSL#3\n"
 209                  "MOV     R3, R3,LSL#2\n"
 210                  "ADD     R1, R2, #0x48\n"
 211                  "ADD     R2, R2, #0x44\n"
 212                  "STR     R0, [R1,R3]\n"
 213                  "STR     R12, [R2,R3]\n"
 214                  "MOV     R0, #1\n"
 215 
 216 "loc_FF86EA38:                            \n"
 217                                          
 218                  "ADD     SP, SP, #8\n"
 219                  "LDMFD   SP!, {R4-R8,PC}\n"
 220 
 221 );
 222 }
 223 

/* [<][>][^][v][top][bottom][index][help] */