root/platform/s3is/sub/100a/mount.c

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

DEFINITIONS

This source file includes following definitions.
  1. init_file_modules_task
  2. sub_FFB373E0_my
  3. Mount_FileSystem_my
  4. sub_FF86FF40_my
  5. sub_FF86FCD4_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_FFB37368\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_FF9BD42C\n"
  11                 "BL      sub_FF98B0C4\n"
  12 "loc_FF9BD42C:\n"
  13                 "BL      sub_FFB373E0_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_FF98B0C4\n"
  21  );
  22 }
  23 
  24 void __attribute__((naked,noinline)) sub_FFB373E0_my(){
  25  asm volatile(
  26                 "STMFD   SP!, {R4,LR}\n"
  27                 "LDR     R4, =0xB99C\n"
  28                 "BL      Mount_FileSystem_my\n"  //------------------->
  29                 "LDR     R3, [R4]\n"
  30                 "CMP     R3, #0\n"
  31                 "MOV     R0, #0\n"
  32                 "BEQ     loc_FFB37404\n"
  33                 "BL      sub_FF86E6E4\n"
  34                 "LDR     R3, [R4]\n"
  35 "loc_FFB37404:\n"
  36                 "CMP     R3, #0\n"
  37                 "BNE     loc_FFB37430\n"
  38                 "BL      sub_FF9E6838\n"
  39                 "AND     R0, R0, #0xFF\n"
  40                 "BL      sub_FF834454\n"
  41                 "BL      sub_FF9E6838\n"
  42                 "AND     R0, R0, #0xFF\n"
  43                 "BL      sub_FF864E7C\n"
  44                 "BL      sub_FF9E6848\n"
  45                 "AND     R0, R0, #0xFF\n"
  46                 "BL      sub_FF834528\n"
  47 "loc_FFB37430:\n"
  48                 "LDR     R2, =0xB998\n"
  49                 "MOV     R3, #1\n"
  50                 "STR     R3, [R2]\n"
  51                 "LDMFD   SP!, {R4,PC}\n"
  52  );
  53 }
  54 
  55 void __attribute__((naked,noinline)) Mount_FileSystem_my(){
  56  asm volatile(
  57                 "STMFD   SP!, {R4-R6,LR}\n"
  58                 "MOV     R5, #0\n"
  59                 "LDR     R6, =0x2BFF8\n"
  60                 "MOV     R0, R5\n"
  61                 "BL      sub_FF86FBC8\n"
  62                 "LDR     R0, [R6,#0x38]\n"
  63                 "BL      sub_FF86F2B8\n"
  64                 "SUBS    R1, R0, #0\n"
  65                 "MOV     R0, R5\n"
  66                 "BNE     loc_FF8701D0\n"
  67                 "LDR     R3, =0x2A28\n"
  68                 "LDR     R2, =0x2A20\n"
  69                 "STR     R1, [R3]\n"
  70                 "LDR     R3, =0x2A24\n"
  71                 "STR     R1, [R2]\n"
  72                 "STR     R1, [R3]\n"
  73 "loc_FF8701D0:\n"
  74                 "BL      sub_FF86FC18\n"
  75                 "MOV     R0, R5\n"
  76                 "BL      sub_FF86FF40_my\n"  //----------------------->
  77                 "MOV     R4, R0\n"
  78                 "MOV     R0, R5\n"
  79                 "BL      sub_FF86FFC8\n"
  80                 "AND     R4, R4, R0\n"
  81                 "MOV     R2, R4\n"
  82                 "MOV     R0, R6\n"
  83                 "LDR     R1, [R6,#0x3C]\n"
  84                 "BL      sub_FF870140\n"
  85                 "LDR     R2, =0x2A10\n"
  86                 "MOV     R3, #1\n"
  87                 "STR     R0, [R6,#0x40]\n"
  88                 "STR     R3, [R2]\n"
  89                 "LDMFD   SP!, {R4-R6,PC}\n"
  90  );
  91 }
  92 
  93 void __attribute__((naked,noinline)) sub_FF86FF40_my(){
  94  asm volatile(
  95                 "STMFD   SP!, {R4-R7,LR}\n"
  96                 "LDR     R7, =0x2A24\n"
  97                 "LDR     R3, [R7]\n"
  98                 "MOV     R4, R0\n"
  99                 "CMP     R3, #0\n"
 100                 "ADD     R3, R4, R4,LSL#1\n"
 101                 "RSB     R3, R4, R3,LSL#3\n"
 102                 "LDR     R6, =0x2C030\n"
 103                 "MOV     R5, R3,LSL#2\n"
 104                 "MOV     R1, R4\n"
 105                 "BNE     loc_FF86FFB4\n"
 106                 "LDR     R0, [R6,R5]\n"
 107                 "BL      sub_FF86FCD4_my\n"     //----------------------------->
 108                 "SUBS    R3, R0, #0\n"
 109                 "MOV     R1, R4\n"
 110                 "BEQ     loc_FF86FF8C\n"
 111                 "LDR     R0, [R6,R5]\n"
 112                 "BL      sub_FF86FE24\n"
 113                 "MOV     R3, R0\n"
 114 "loc_FF86FF8C:\n"
 115                 "CMP     R3, #0\n"
 116                 "MOV     R0, R4\n"
 117                 "BEQ     loc_FF86FFA0\n"
 118                 "BL      sub_FF86F390\n"
 119                 "MOV     R3, R0\n"
 120 "loc_FF86FFA0:\n"
 121                 "CMP     R3, #0\n"
 122                 "MOV     R0, R3\n"
 123                 "MOVNE   R3, #1\n"
 124                 "STRNE   R3, [R7]\n"
 125                 "LDMFD   SP!, {R4-R7,PC}\n"
 126 "loc_FF86FFB4:\n"
 127                 "MOV     R0, #1\n"
 128                 "LDMFD   SP!, {R4-R7,PC}\n"
 129 
 130 
 131  );
 132 }
 133 
 134 void __attribute__((naked,noinline)) sub_FF86FCD4_my(){
 135  asm volatile(
 136                 "STMFD   SP!, {R4-R8,LR}\n"
 137                 "MOV     R5, R1\n"
 138                 "MOV     R8, R5,LSL#1\n"
 139                 "ADD     R3, R8, R5\n"
 140                 "LDR     R2, =0x2C034\n"
 141                 "SUB     SP, SP, #8\n"
 142                 "RSB     R3, R5, R3,LSL#3\n"
 143                 "LDR     R1, [R2,R3,LSL#2]\n"
 144                 "MOV     R6, #0\n"
 145                 "STR     R6, [SP]\n"
 146                 "MOV     R7, R0\n"
 147                 "STR     R6, [SP,#4]\n"
 148                 "CMP     R1, #5\n"
 149                 "LDRLS   PC, [PC,R1,LSL#2]\n"
 150                 "B       loc_FF86FDD0\n"
 151                 ".long loc_FF86FD74\n"
 152                 ".long loc_FF86FD28\n"
 153                 ".long loc_FF86FD28\n"
 154                 ".long loc_FF86FD28\n"
 155                 ".long loc_FF86FD28\n"
 156                 ".long loc_FF86FDC0\n"
 157 "loc_FF86FD28:\n"
 158                 "MOV     R0, #3\n"
 159                 "MOV     R1, #0x200\n"
 160                 "MOV     R2, #0\n"
 161                 "BL      sub_FF81282C\n"
 162                 "SUBS    R6, R0, #0\n"
 163                 "BEQ     loc_FF86FE08\n"
 164                 "ADD     R12, R8, R5\n"
 165                 "RSB     R12, R5, R12,LSL#3\n"
 166                 "LDR     R4, =0x2C044\n"
 167                 "MOV     R0, R7\n"
 168                 "MOV     R1, #0\n"
 169                 "MOV     R2, #1\n"
 170                 "MOV     R3, R6\n"
 171                 "MOV     LR, PC\n"
 172                 "LDR     PC, [R4,R12,LSL#2]\n"
 173                 "CMP     R0, #1\n"
 174                 "BNE     loc_FF86FD7C\n"
 175                 "MOV     R0, #3\n"
 176                 "BL      sub_FF8128FC\n"
 177 "loc_FF86FD74:\n"
 178                 "MOV     R0, #0\n"
 179                 "B       loc_FF86FE08\n"
 180 "loc_FF86FD7C:\n"
 181                 "MOV     R0, R7\n"
 182                 "BL      sub_FF88034C\n"
 183                 "MOV     R1, R0\n"
 184                 "ADD     R2, SP, #4\n"
 185                 "MOV     R3, SP\n"
 186                 "MOV     R0, R6\n"
 187 
 188                 "STMFD   SP!, {R4-R11,LR}\n" // +
 189                 "BL      mbr_read\n"    //-----------> 
 190                 "LDMFD   SP!, {R4-R11,LR}\n" // +
 191 
 192           //    "BL      sub_FF86F494\n"   // original function
 193                 "MOV     R4, R0\n"
 194                 "MOV     R0, #3\n"
 195                 "BL      sub_FF8128FC\n"
 196                 "CMP     R4, #0\n"
 197                 "BNE     loc_FF86FDE0\n"
 198                 "MOV     R0, R7\n"
 199                 "STR     R4, [SP,#4]\n"
 200                 "BL      sub_FF88034C\n"
 201                 "STR     R0, [SP]\n"
 202                 "B       loc_FF86FDE0\n"
 203 "loc_FF86FDC0:\n"
 204                 "MOV     R3, #0\n"
 205                 "MOV     R2, #0x40\n"
 206                 "STMEA   SP, {R2,R3}\n"
 207                 "B       loc_FF86FDE0\n"
 208 "loc_FF86FDD0:\n"
 209                 "MOV     R1, #0x28C\n"
 210                 "LDR     R0, =0xFF86FAA0\n"
 211                 "ADD     R1, R1, #1\n"
 212                 "BL      sub_FF813B80\n"
 213 "loc_FF86FDE0:\n"
 214                 "LDR     R2, =0x2BFF8\n"
 215                 "ADD     R3, R8, R5\n"
 216                 "LDMFD   SP, {R0,R12}\n"
 217                 "RSB     R3, R5, R3,LSL#3\n"
 218                 "MOV     R3, R3,LSL#2\n"
 219                 "ADD     R1, R2, #0x48\n"
 220                 "ADD     R2, R2, #0x44\n"
 221                 "STR     R0, [R1,R3]\n"
 222                 "STR     R12, [R2,R3]\n"
 223                 "MOV     R0, #1\n"
 224 "loc_FF86FE08:\n"
 225                 "ADD     SP, SP, #8\n"
 226                 "LDMFD   SP!, {R4-R8,PC}\n"
 227  );
 228 }

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