root/platform/a630/sub/100c/capt_seq.c

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

DEFINITIONS

This source file includes following definitions.
  1. sub_FFD53158_my
  2. sub_FFD56070_my
  3. sub_FFD5307C_my
  4. capt_seq_task
  5. exp_drv_task
  6. sub_FFCF8D98_my
  7. sub_FFCA3AFC_my

   1 #include "lolevel.h"
   2 #include "platform.h"
   3 #include "core.h"
   4 
   5 static long *nrflag = (long*)0x6208;
   6 
   7 #include "../../../generic/capt_seq.c"
   8 
   9 void __attribute__((naked,noinline)) sub_FFD53158_my(){
  10   asm volatile (
  11                 "STMFD   SP!, {R4,LR}\n"
  12                 "BL      sub_FFD52D08\n"
  13                 "LDR     R3, =0x91AA0\n"
  14                 "LDR     R2, [R3,#0x24]\n"
  15                 "CMP     R2, #0\n"
  16                 "MOV     R4, R0\n"
  17                 "MOV     R0, #0xC\n"
  18                 "BEQ     loc_FFD531A0\n"
  19                 "BL      sub_FFD5CA00\n"
  20                 "TST     R0, #1\n"
  21                 "BEQ     loc_FFD531A0\n"
  22                 "LDR     R3, [R4,#8]\n"
  23                 "LDR     R2, =0x61EC\n"
  24                 "ORR     R3, R3, #0x40000000\n"
  25                 "MOV     R1, #1\n"
  26                 "STR     R1, [R2]\n"
  27                 "STR     R3, [R4,#8]\n"
  28                 "LDMFD   SP!, {R4,PC}\n"
  29 "loc_FFD531A0:\n"
  30                 "BL      sub_FFD9385C\n"
  31                 "BL      sub_FFC14FE0\n"
  32                 "STR     R0, [R4,#0x14]\n"
  33                 "MOV     R0, R4\n"
  34                 "BL      sub_FFD56070_my\n"          //------------>
  35                 "BL      capt_seq_hook_raw_here\n"   // +
  36                 "TST     R0, #1\n"
  37                 "LDRNE   R3, =0x61EC\n"
  38                 "MOVNE   R2, #1\n"
  39                 "STRNE   R2, [R3]\n"
  40                 "LDMFD   SP!, {R4,PC}\n"
  41   );
  42 }
  43 
  44 void __attribute__((naked,noinline)) sub_FFD56070_my(long p)
  45 {
  46     (void)p;
  47     asm volatile (
  48                 "STMFD   SP!, {R4,LR}\n"
  49                 "MOV     R4, R0\n"
  50                 "SUB     SP, SP, #0xC\n"
  51                 "BL      sub_FFD56A2C\n"
  52                 "LDR     R1, =0xFFFFFFFF\n"
  53                 "BL      sub_FFC103A4\n"
  54                 "LDR     R0, =0x122\n"
  55                 "ADD     R1, SP, #0x14-0x10\n"
  56                 "MOV     R2, #4\n"
  57                 "BL      sub_FFC14DE4\n"
  58                 "TST     R0, #1\n"
  59                 "BEQ     loc_FFD560B0\n"
  60                 "LDR     R0, =0xFFD55EEC\n"
  61                 "MOV     R1, #0x1BC\n"
  62                 "BL      sub_FFC03CF8\n"
  63 "loc_FFD560B0:\n"
  64                 "LDR     R3, =0x91AA0\n"
  65                 "LDR     R2, =0x91B60\n"
  66                 "LDR     R0, [R3,#0x80]\n"
  67                 "LDRSH   R1, [R2,#0xE]\n"
  68                 //"BL      nullsub_49\n"
  69                 "MOV     R0, R4\n"
  70                 "BL      sub_FFD55E70\n"
  71             "BL      wait_until_remote_button_is_released\n"
  72                 "BL      capt_seq_hook_set_nr\n"
  73                 "LDR     R3, =0x620C\n"
  74                 "LDR     R0, [R3]\n"
  75 
  76                 "B       sub_FFD560D4\n"
  77     );
  78 }
  79 
  80 void __attribute__((naked,noinline)) sub_FFD5307C_my(long p)
  81 {
  82     (void)p;
  83     asm volatile (
  84                 "STMFD   SP!, {R4,R5,LR}\n"
  85                 "LDR     R3, =0x91AA0\n"
  86                 "LDR     R5, [R0,#0xC]\n"
  87                 "LDR     R1, [R3,#0x24]\n"
  88                 "LDR     R2, [R5,#8]\n"
  89                 "CMP     R1, #0\n"
  90                 "ORR     R2, R2, #1\n"
  91                 "STR     R2, [R5,#8]\n"
  92                 "BNE     loc_FFD530D0\n"
  93                 "MOV     R0, #0xC\n"
  94                 "BL      sub_FFD5CA00\n"
  95                 "TST     R0, #1\n"
  96                 "BEQ     loc_FFD530D0\n"
  97                 "LDR     R3, [R5,#8]\n"
  98                 "MOV     R0, #1\n"
  99                 "ORR     R3, R3, #0x40000000\n"
 100                 "STR     R3, [R5,#8]\n"
 101 "loc_FFD530C0:\n"
 102                 "MOV     R2, R5\n"
 103                 "MOV     R1, #1\n"
 104                 "LDMFD   SP!, {R4,R5,LR}\n"
 105                 "B       sub_FFD518C4\n"
 106 "loc_FFD530D0:\n"
 107                 "LDR     R4, =0x91AA0\n"
 108                 "BL      sub_FFD53B6C\n"
 109                 "LDR     R3, [R4,#0x24]\n"
 110                 "CMP     R3, #0\n"
 111                 "BNE     loc_FFD53118\n"
 112                 "MOV     R0, R5\n"
 113                 "BL      sub_FFD54C10\n"
 114                 "TST     R0, #1\n"
 115                 "BNE     loc_FFD530C0\n"
 116                 "BL      sub_FFD9385C\n"
 117                 "BL      sub_FFC14FE0\n"
 118                 "STR     R0, [R5,#0x14]\n"
 119                 "MOV     R0, R5\n"
 120                 "BL      sub_FFD55F58\n"
 121                 "BL      sub_FFD568B8\n"
 122                 "MOV     R0, R5\n"
 123                 "BL      sub_FFD56070_my\n"
 124                 "BL      capt_seq_hook_raw_here\n"
 125                 "B       loc_FFD5312C\n"
 126 "loc_FFD53118:\n"
 127                 "LDR     R3, =0x61EC\n"
 128                 "LDR     R2, [R3]\n"
 129                 "CMP     R2, #0\n"
 130                 "MOVNE   R0, #0x1D\n"
 131                 "MOVEQ   R0, #0\n"
 132 "loc_FFD5312C:\n"
 133                 "MOV     R1, #1\n"
 134                 "MOV     R2, R5\n"
 135                 "BL      sub_FFD518C4\n"
 136                 "BL      sub_FFD563A4\n"
 137                 "CMP     R0, #0\n"
 138                 "LDRNE   R3, [R5,#8]\n"
 139                 "ORRNE   R3, R3, #0x2000\n"
 140                 "STRNE   R3, [R5,#8]\n"
 141                 "LDMFD   SP!, {R4,R5,PC}\n"
 142 
 143 
 144     );
 145 }
 146 
 147 void __attribute__((naked,noinline)) capt_seq_task()
 148 {
 149         asm volatile (
 150                 "STMFD   SP!, {R4,LR}\n"
 151                 "SUB     SP, SP, #4\n"
 152                 "MOV     R4, SP\n"
 153                 "B       loc_FFD536F0\n"
 154 "loc_FFD53564:\n"
 155                 "LDR     R2, [SP,#0xC-0xC]\n"
 156                 "LDR     R3, [R2]\n"
 157                 "MOV     R0, R2\n"
 158                 "CMP     R3, #0x16\n"
 159                 "LDRLS   PC, [PC,R3,LSL#2]\n"
 160                 "B       loc_FFD536C4\n"
 161                 ".long loc_FFD535D8\n"
 162                 ".long loc_FFD535F8\n"
 163                 ".long loc_FFD5360C\n"
 164                 ".long loc_FFD53620\n"
 165                 ".long loc_FFD53618\n"
 166                 ".long loc_FFD53628\n"
 167                 ".long loc_FFD53630\n"
 168                 ".long loc_FFD5363C\n"
 169                 ".long loc_FFD53644\n"
 170                 ".long loc_FFD53650\n"
 171                 ".long loc_FFD53658\n"
 172                 ".long loc_FFD53660\n"
 173                 ".long loc_FFD53668\n"
 174                 ".long loc_FFD53670\n"
 175                 ".long loc_FFD53678\n"
 176                 ".long loc_FFD53684\n"
 177                 ".long loc_FFD5368C\n"
 178                 ".long loc_FFD53694\n"
 179                 ".long loc_FFD5369C\n"
 180                 ".long loc_FFD536A8\n"
 181                 ".long loc_FFD536B4\n"
 182                 ".long loc_FFD536BC\n"
 183                 ".long loc_FFD536D8\n"
 184 "loc_FFD535D8:\n"
 185                 "BL      sub_FFD53B94\n"
 186                 // only do quick press hack if overrides are active
 187                 "BL      captseq_hack_override_active\n"      // returns 1 if tv or sv override in effect
 188                 "STR     R0,[SP,#-4]!\n" // push return value
 189                 "BL      shooting_expo_param_override\n"  // +
 190                 "BL      sub_FFD51358\n"
 191                 "LDR     R3, =0x91AA0\n"
 192                 "LDR     R2,[SP],#4\n" // pop override hack
 193                 "CMP     R2, #1\n"     // +
 194                 "MOVEQ   R2, #0\n"     // +
 195                 "STREQ   R2, [R3,#0x24]\n" // fixes overrides behavior at short shutter press
 196                 "LDRNE   R2, [R3,#0x24]\n" // modified NE
 197                 "CMPNE   R2, #0\n"         // modified NE
 198 //              "LDR     R2, [R3,#0x24]\n"  // above patch makes these lines redundant
 199 //              "CMP     R2, #0\n"
 200                 "BEQ     loc_FFD536D4\n"
 201                 "BL      sub_FFD53158_my\n"
 202                 "B       loc_FFD536D4\n"
 203 "loc_FFD535F8:\n"
 204                 "BL      sub_FFD5307C_my\n"
 205 "loc_FFD535FC:\n"
 206                 "LDR     R2, =0x91AA0\n"
 207                 "MOV     R3, #0\n"
 208                 "STR     R3, [R2,#0x24]\n"
 209                 "B       loc_FFD536D4\n"
 210 "loc_FFD5360C:\n"
 211                 "MOV     R0, #1\n"
 212                 "BL      sub_FFD53D84\n"
 213                 "B       loc_FFD536D4\n"
 214 "loc_FFD53618:\n"
 215                 "BL      sub_FFD537E8\n"
 216                 "B       loc_FFD535FC\n"
 217 "loc_FFD53620:\n"
 218                 "BL      sub_FFD53B4C\n"
 219                 "B       loc_FFD535FC\n"
 220 "loc_FFD53628:\n"
 221                 "BL      sub_FFD53B5C\n"
 222                 "B       loc_FFD536D4\n"
 223 "loc_FFD53630:\n"
 224                 "BL      sub_FFD53C7C\n"
 225                 "BL      sub_FFD51358\n"
 226                 "B       loc_FFD536D4\n"
 227 "loc_FFD5363C:\n"
 228                 "BL      sub_FFD53230\n"
 229                 "B       loc_FFD536D4\n"
 230 "loc_FFD53644:\n"
 231                 "BL      sub_FFD53CE4\n"
 232                 "BL      sub_FFD51358\n"
 233                 "B       loc_FFD536D4\n"
 234 "loc_FFD53650:\n"
 235                 "BL      sub_FFD53B4C\n"
 236                 "B       loc_FFD536D4\n"
 237 "loc_FFD53658:\n"
 238                 "BL      sub_FFD5533C\n"
 239                 "B       loc_FFD536D4\n"
 240 "loc_FFD53660:\n"
 241                 "BL      sub_FFD55508\n"
 242                 "B       loc_FFD536D4\n"
 243 "loc_FFD53668:\n"
 244                 "BL      sub_FFD5559C\n"
 245                 "B       loc_FFD536D4\n"
 246 "loc_FFD53670:\n"
 247                 "BL      sub_FFD55638\n"
 248                 "B       loc_FFD536D4\n"
 249 "loc_FFD53678:\n"
 250                 "MOV     R0, #0\n"
 251                 "BL      sub_FFD558A4\n"
 252                 "B       loc_FFD536D4\n"
 253 "loc_FFD53684:\n"
 254                 "BL      sub_FFD55A5C\n"
 255                 "B       loc_FFD536D4\n"
 256 "loc_FFD5368C:\n"
 257                 "BL      sub_FFD55AEC\n"
 258                 "B       loc_FFD536D4\n"
 259 "loc_FFD53694:\n"
 260                 "BL      sub_FFD55BA4\n"
 261                 "B       loc_FFD536D4\n"
 262 "loc_FFD5369C:\n"
 263                 "MOV     R0, #1\n"
 264                 "BL      sub_FFD558A4\n"
 265                 "B       loc_FFD536D4\n"
 266 "loc_FFD536A8:\n"
 267                 "BL      sub_FFD53EA0\n"
 268                 "BL      sub_FFD52FA4\n"
 269                 "B       loc_FFD536D4\n"
 270 "loc_FFD536B4:\n"
 271                 "BL      sub_FFD55778\n"
 272                 "B       loc_FFD536D4\n"
 273 "loc_FFD536BC:\n"
 274                 "BL      sub_FFD557D0\n"
 275                 "B       loc_FFD536D4\n"
 276 "loc_FFD536C4:\n"
 277                 "MOV     R1, #0x4E0\n"
 278                 "LDR     R0, =0xFFD52E00\n"
 279                 "ADD     R1, R1, #9\n"
 280                 "BL      sub_FFC03CF8\n"
 281 "loc_FFD536D4:\n"
 282                 "LDR     R2, [SP,#0xC-0xC]\n"
 283 "loc_FFD536D8:\n"
 284                 "LDR     R3, =0x66DA4\n"
 285                 "LDR     R1, [R2,#4]\n"
 286                 "LDR     R0, [R3]\n"
 287                 "BL      sub_FFC10208\n"
 288                 "LDR     R0, [SP,#0xC-0xC]\n"
 289                 "BL      sub_FFD52E7C\n"
 290 "loc_FFD536F0:\n"
 291                 "LDR     R3, =0x66DA8\n"
 292                 "MOV     R1, R4\n"
 293                 "LDR     R0, [R3]\n"
 294                 "MOV     R2, #0\n"
 295                 "BL      sub_FFC10920\n"
 296                 "TST     R0, #1\n"
 297                 "BEQ     loc_FFD53564\n"
 298                 "MOV     R1, #0x410\n"
 299                 "LDR     R0, =0xFFD52E00\n"
 300                 "ADD     R1, R1, #0xB\n"
 301                 "BL      sub_FFC03CF8\n"
 302                 "BL      sub_FFC11E7C\n"
 303                 "ADD     SP, SP, #4\n"
 304                 "LDMFD   SP!, {R4,PC}\n"
 305         );
 306 }
 307 /***************************************************************************/
 308 
 309 void __attribute__((naked,noinline)) exp_drv_task(){
 310  asm volatile(
 311                  "STMFD   SP!, {R4-R8,LR}\n"
 312                  "SUB     SP, SP, #0x20\n"
 313                  "ADD     R7, SP, #0x38-0x34\n"
 314                  "B       loc_FFCFC2B4\n"
 315  "loc_FFCFBE08:\n"
 316                  "CMP     R2, #0x22\n"
 317                  "BNE     loc_FFCFBE20\n"
 318                  "LDR     R0, [R12,#0x8C]\n"
 319                  "MOV     LR, PC\n"
 320                  "LDR     PC, [R12,#0x88]\n"
 321                  "B       loc_FFCFBE84\n"
 322  
 323  "loc_FFCFBE20:\n"
 324                  "CMP     R2, #0x1D\n"
 325                  "BNE     loc_FFCFBE34\n"
 326                  "MOV     R0, R12\n"
 327                  "BL      sub_FFCFBCC8\n"
 328                  "B       loc_FFCFBE74\n"
 329  "loc_FFCFBE34:\n"
 330                  "CMP     R2, #0x1E\n"
 331                  "BNE     loc_FFCFBE48\n"
 332                  "MOV     R0, R12\n"
 333                  "BL      sub_FFCFBD24\n"
 334                  "B       loc_FFCFBE74\n"
 335  "loc_FFCFBE48:\n"
 336                  "SUB     R3, R2, #0x1F\n"
 337                  "CMP     R3, #1\n"
 338                  "BHI     loc_FFCFBE60\n"
 339                  "MOV     R0, R12\n"
 340                  "BL      sub_FFCFBD80\n"
 341                  "B       loc_FFCFBE74\n"
 342  "loc_FFCFBE60:\n"
 343                  "CMP     R2, #0x21\n"
 344                  "BNE     loc_FFCFBE90\n"
 345                  "BL      sub_FFCA3E74\n"
 346                  "BL      sub_FFCA6F68\n"
 347                  "BL      sub_FFCA61A0\n"
 348  "loc_FFCFBE74:\n"
 349                  "LDR     R3, [SP,#0x38-0x34]\n"
 350                  "LDR     R0, [R3,#0x8C]\n"
 351                  "MOV     LR, PC\n"
 352                  "LDR     PC, [R3,#0x88]\n"
 353  "loc_FFCFBE84:\n"
 354                  "LDR     R0, [SP,#0x38-0x34]\n"
 355                  "BL      sub_FFCF7874\n"
 356                  "B       loc_FFCFC2B4\n"
 357 "loc_FFCFBE90:\n"
 358                  "CMP     R2, #0xD\n"
 359                  "MOV     R8, #1\n"
 360                  "BNE     loc_FFCFBF00\n"
 361                  "LDR     R1, [R12,#0x7C]\n"
 362                  "ADD     R1, R1, R1,LSL#1\n"
 363                  "ADD     R1, R12, R1,LSL#2\n"
 364                  "ADD     R6, SP, #0x38-0x24\n"
 365                  "SUB     R1, R1, #8\n"
 366                  "MOV     R2, #0xC\n"
 367                  "MOV     R0, R6\n"
 368                  "BL      sub_FFEEB2D0\n"
 369                  "LDR     R0, [SP,#0x38-0x34]\n"
 370                  "BL      sub_FFCFA350\n"
 371                  "LDR     R3, [SP,#0x38-0x34]\n"
 372                  "LDR     R1, [R3,#0x7C]\n"
 373                  "LDR     R2, [R3,#0x8C]\n"
 374                  "ADD     R0, R3, #4\n"
 375                  "MOV     LR, PC\n"
 376                  "LDR     PC, [R3,#0x88]\n"
 377                  "LDR     R0, [SP,#0x38-0x34]\n"
 378                  "BL      sub_FFCFA620\n"
 379                  "LDR     R3, [SP,#0x38-0x34]\n"
 380                  "ADD     R0, R3, #4\n"
 381                  "LDR     R1, [R3,#0x7C]\n"
 382                  "LDR     R2, [R3,#0x94]\n"
 383                  "MOV     LR, PC\n"
 384                  "LDR     PC, [R3,#0x90]\n"
 385                  "B       loc_FFCFC250\n"
 386 "loc_FFCFBF00:\n"
 387                  "SUB     R3, R2, #0xE\n"
 388                  "CMP     R3, #1\n"
 389                  "BHI     loc_FFCFBFBC\n"
 390                  "ADD     R6, SP, #0x38-0x24\n"
 391                  "ADD     R5, SP, #0x38-0x30\n"
 392                  "MOV     R0, R12\n"
 393                  "MOV     R1, R6\n"
 394                  "MOV     R2, R5\n"
 395                  "BL      sub_FFCFA714\n"
 396                  "MOV     R4, R0\n"
 397                  "CMP     R4, #5\n"
 398                  "CMPNE   R4, #1\n"
 399                  "BNE     loc_FFCFBF54\n"
 400                  "LDR     R12, [SP,#0x38-0x34]\n"
 401                  "MOV     R0, R5\n"
 402                  "LDR     R1, [R12,#0x7C]\n"
 403                  "MOV     R2, R4\n"
 404                  "LDR     R3, [R12,#0x8C]\n"
 405                  "MOV     LR, PC\n"
 406                  "LDR     PC, [R12,#0x88]\n"
 407                  "B       loc_FFCFBF8C\n"
 408  "loc_FFCFBF54:\n"
 409                  "CMP     R4, #6\n"
 410                  "CMPNE   R4, #2\n"
 411                  "BNE     loc_FFCFBF9C\n"
 412                  "LDR     R12, [SP,#0x38-0x34]\n"
 413                  "MOV     R0, R5\n"
 414                  "MOV     R1, R8\n"
 415                  "MOV     R2, R4\n"
 416                  "LDR     R3, [R12,#0x8C]\n"
 417                  "MOV     LR, PC\n"
 418                  "LDR     PC, [R12,#0x88]\n"
 419                  "MOV     R1, R6\n"
 420                  "LDR     R0, [SP,#0x38-0x34]\n"
 421                  "MOV     R2, R5\n"
 422                  "BL      sub_FFCFB934\n"
 423  "loc_FFCFBF8C:\n"
 424                  "MOV     R1, R4\n"
 425                  "LDR     R0, [SP,#0x38-0x34]\n"
 426                  "BL      sub_FFCFBC5C\n"
 427                  "B       loc_FFCFC250\n"
 428  "loc_FFCFBF9C:\n"
 429                  "LDR     R12, [SP,#0x38-0x34]\n"
 430                  "MOV     R2, R4\n"
 431                  "ADD     R0, R12, #4\n"
 432                  "LDR     R1, [R12,#0x7C]\n"
 433                  "LDR     R3, [R12,#0x8C]\n"
 434                  "MOV     LR, PC\n"
 435                  "LDR     PC, [R12,#0x88]\n"
 436                  "B       loc_FFCFC250\n"
 437  "loc_FFCFBFBC:\n"
 438                  "SUB     R3, R2, #0x19\n"
 439                  "CMP     R3, #1\n"
 440                  "BHI     loc_FFCFC014\n"
 441                  "LDR     R1, [R12,#0x7C]\n"
 442                  "ADD     R1, R1, R1,LSL#1\n"
 443                  "ADD     R1, R12, R1,LSL#2\n"
 444                  "ADD     R6, SP, #0x38-0x24\n"
 445                  "SUB     R1, R1, #8\n"
 446                  "MOV     R2, #0xC\n"
 447                  "MOV     R0, R6\n"
 448                  "BL      sub_FFEEB2D0\n"
 449                  "LDR     R0, [SP,#0x38-0x34]\n"
 450                  "BL      sub_FFCF9748\n"
 451                  "LDR     R3, [SP,#0x38-0x34]\n"
 452                  "ADD     R0, R3, #4\n"
 453                  "LDR     R1, [R3,#0x7C]\n"
 454                  "LDR     R2, [R3,#0x8C]\n"
 455                  "MOV     LR, PC\n"
 456                  "LDR     PC, [R3,#0x88]\n"
 457                  "LDR     R0, [SP,#0x38-0x34]\n"
 458                  "BL      sub_FFCF9B24\n"
 459                  "B       loc_FFCFC250\n"
 460  "loc_FFCFC014:\n"
 461                  "ADD     R6, SP, #0x38-0x24\n"
 462                  "ADD     R1, R12, #4\n"
 463                  "MOV     R2, #0xC\n"
 464                  "MOV     R0, R6\n"
 465                  "BL      sub_FFEEB2D0\n"
 466                  "LDR     R12, [SP,#0x38-0x34]\n"
 467                  "LDR     R3, [R12]\n"
 468                  "MOV     R2, R12\n"
 469                  "CMP     R3, #0x1C\n"
 470                  "LDRLS   PC, [PC,R3,LSL#2]\n"
 471                  "B       loc_FFCFC23C\n"
 472                  ".long loc_FFCFC0B4\n"
 473                  ".long loc_FFCFC0C0\n"
 474                  ".long loc_FFCFC0CC\n"
 475                  ".long loc_FFCFC0CC\n"
 476                  ".long loc_FFCFC0B4\n"
 477                  ".long loc_FFCFC0C0\n"
 478                  ".long loc_FFCFC0CC\n"
 479                  ".long loc_FFCFC0CC\n"
 480                  ".long loc_FFCFC0F0\n"
 481                  ".long loc_FFCFC0F0\n"
 482                  ".long loc_FFCFC210\n"
 483                  ".long loc_FFCFC21C\n"
 484                  ".long loc_FFCFC22C\n"
 485                  ".long loc_FFCFC23C\n"
 486                  ".long loc_FFCFC23C\n"
 487                  ".long loc_FFCFC23C\n"
 488                  ".long loc_FFCFC0D8\n"
 489                  ".long loc_FFCFC0E4\n"
 490                  ".long loc_FFCFC100\n"
 491                  ".long loc_FFCFC10C\n"
 492                  ".long loc_FFCFC144\n"
 493                  ".long loc_FFCFC17C\n"
 494                  ".long loc_FFCFC1B4\n"
 495                  ".long loc_FFCFC1EC\n"
 496                  ".long loc_FFCFC1EC\n"
 497                  ".long loc_FFCFC23C\n"
 498                  ".long loc_FFCFC23C\n"
 499                  ".long loc_FFCFC1F8\n"
 500                  ".long loc_FFCFC204\n"
 501  "loc_FFCFC0B4:\n"
 502                  "MOV     R0, R2\n"
 503                  "BL      sub_FFCF8124\n"
 504                  "B       loc_FFCFC238\n"
 505  "loc_FFCFC0C0:\n"
 506                  "MOV     R0, R2\n"
 507                  "BL      sub_FFCF83C8\n"
 508                  "B       loc_FFCFC238\n"
 509  "loc_FFCFC0CC:\n"
 510                  "MOV     R0, R2\n"
 511                  "BL      sub_FFCF863C\n"
 512                  "B       loc_FFCFC238\n"
 513  "loc_FFCFC0D8:\n"
 514                  "MOV     R0, R2\n"
 515                  "BL      sub_FFCF8938\n"
 516                  "B       loc_FFCFC238\n"
 517  "loc_FFCFC0E4:\n"
 518                  "MOV     R0, R2\n"
 519                  "BL      sub_FFCF8B9C\n"
 520                  "B       loc_FFCFC238\n"
 521  "loc_FFCFC0F0:\n"
 522                  "MOV     R0, R2\n"
 523                  "BL      sub_FFCF8D98_my\n"   //------------->
 524                  "MOV     R8, #0\n"
 525                  "B       loc_FFCFC238\n"
 526  "loc_FFCFC100:\n"
 527                  "MOV     R0, R2\n"
 528                  "BL      sub_FFCF8EF4\n"
 529                  "B       loc_FFCFC238\n"
 530  "loc_FFCFC10C:\n"
 531                  "LDRH    R1, [R2,#4]\n"
 532                  "LDR     R3, =0x42858\n"
 533                  "STRH    R1, [SP,#0x38-0x24]\n"
 534                  "LDRH    R1, [R3,#6]\n"
 535                  "STRH    R1, [SP,#0x38-0x1E]\n"
 536                  "LDRH    R1, [R3,#2]\n"
 537                  "STRH    R1, [SP,#0x38-0x22]\n"
 538                  "LDRH    R3, [R3,#4]\n"
 539                  "STRH    R3, [SP,#0x38-0x20]\n"
 540                  "MOV     R0, R2\n"
 541                  "LDRH    R2, [R2,#0xC]\n"
 542                  "STRH    R2, [SP,#0x38-0x1C]\n"
 543                  "BL      sub_FFCF91F0\n"
 544                  "B       loc_FFCFC238\n"
 545  "loc_FFCFC144:\n"
 546                  "MOV     R0, R2\n"
 547                  "LDRH    R2, [R2,#4]\n"
 548                  "LDR     R3, =0x42858\n"
 549                  "STRH    R2, [SP,#0x38-0x24]\n"
 550                  "LDRH    R2, [R3,#8]\n"
 551                  "STRH    R2, [SP,#0x38-0x1C]\n"
 552                  "LDRH    R1, [R3,#2]\n"
 553                  "STRH    R1, [SP,#0x38-0x22]\n"
 554                  "LDRH    R2, [R3,#4]\n"
 555                  "STRH    R2, [SP,#0x38-0x20]\n"
 556                  "LDRH    R3, [R3,#6]\n"
 557                  "STRH    R3, [SP,#0x38-0x1E]\n"
 558                  "BL      sub_FFCF9318\n"
 559                  "B       loc_FFCFC238\n"
 560  "loc_FFCFC17C:\n"
 561                  "LDR     R3, =0x42858\n"
 562                  "LDRH    R1, [R3]\n"
 563                  "STRH    R1, [SP,#0x38-0x24]\n"
 564                  "MOV     R0, R2\n"
 565                  "LDRH    R2, [R2,#6]\n"
 566                  "STRH    R2, [SP,#0x38-0x22]\n"
 567                  "LDRH    R2, [R3,#8]\n"
 568                  "STRH    R2, [SP,#0x38-0x1C]\n"
 569                  "LDRH    R1, [R3,#4]\n"
 570                  "STRH    R1, [SP,#0x38-0x20]\n"
 571                  "LDRH    R3, [R3,#6]\n"
 572                  "STRH    R3, [SP,#0x38-0x1E]\n"
 573                  "BL      sub_FFCF93DC\n"
 574                  "B       loc_FFCFC238\n"
 575  "loc_FFCFC1B4:\n"
 576                  "LDR     R3, =0x42858\n"
 577                  "LDRH    R1, [R3,#6]\n"
 578                  "STRH    R1, [SP,#0x38-0x1E]\n"
 579                  "LDRH    R1, [R3]\n"
 580                  "STRH    R1, [SP,#0x38-0x24]\n"
 581                  "LDRH    R1, [R3,#2]\n"
 582                  "STRH    R1, [SP,#0x38-0x22]\n"
 583                  "LDRH    R3, [R3,#4]\n"
 584                  "STRH    R3, [SP,#0x38-0x20]\n"
 585                  "MOV     R0, R2\n"
 586                  "LDRH    R2, [R2,#0xC]\n"
 587                  "STRH    R2, [SP,#0x38-0x1C]\n"
 588                  "BL      sub_FFCF9494\n"
 589                  "B       loc_FFCFC238\n"
 590  "loc_FFCFC1EC:\n"
 591                  "MOV     R0, R2\n"
 592                  "BL      sub_FFCF9544\n"
 593                  "B       loc_FFCFC238\n"
 594  "loc_FFCFC1F8:\n"
 595                  "MOV     R0, R2\n"
 596                  "BL      sub_FFCF9C74\n"
 597                  "B       loc_FFCFC238\n"
 598  "loc_FFCFC204:\n"
 599                  "MOV     R0, R2\n"
 600                  "BL      sub_FFCF9E70\n"
 601                  "B       loc_FFCFC238\n"
 602  "loc_FFCFC210:\n"
 603                  "MOV     R0, R2\n"
 604                  "BL      sub_FFCFA02C\n"
 605                  "B       loc_FFCFC238\n"
 606  "loc_FFCFC21C:\n"
 607                  "MOV     R0, R2\n"
 608                  "MOV     R1, #0\n"
 609                  "BL      sub_FFCFA210\n"
 610                  "B       loc_FFCFC238\n"
 611  "loc_FFCFC22C:\n"
 612                  "MOV     R0, R2\n"
 613                  "MOV     R1, #1\n"
 614                  "BL      sub_FFCFA210\n"
 615  "loc_FFCFC238:\n"
 616                  "LDR     R12, [SP,#0x38-0x34]\n"
 617  "loc_FFCFC23C:\n"
 618                  "ADD     R0, R12, #4\n"
 619                  "LDR     R1, [R12,#0x7C]\n"
 620                  "LDR     R2, [R12,#0x8C]\n"
 621                  "MOV     LR, PC\n"
 622                  "LDR     PC, [R12,#0x88]\n"
 623  "loc_FFCFC250:\n"
 624                  "CMP     R8, #1\n"
 625                  "BNE     loc_FFCFC278\n"
 626                  "LDR     R1, [SP,#0x38-0x34]\n"
 627                  "LDR     R3, [R1,#0x7C]\n"
 628                  "ADD     R3, R3, R3,LSL#1\n"
 629                  "ADD     R1, R1, R3,LSL#2\n"
 630                  "MOV     R0, R6\n"
 631                  "SUB     R1, R1, #8\n"
 632                  "BL      sub_FFCF7E88\n"
 633                  "B       loc_FFCFC2AC\n"
 634  "loc_FFCFC278:\n"
 635                  "MOV     R4, #1\n"
 636                  "MOV     R0, R4\n"
 637                  "MOV     R1, R4\n"
 638                  "MOV     R2, R4\n"
 639                  "MOV     R3, R4\n"
 640                  "STR     R4, [SP,#0x38-0x38]\n"
 641                  "BL      sub_FFCF7DDC\n"
 642                  "MOV     R0, R4\n"
 643                  "MOV     R1, R0\n"
 644                  "MOV     R2, R0\n"
 645                  "MOV     R3, R0\n"
 646                  "STR     R4, [SP,#0x38-0x38]\n"
 647                  "BL      sub_FFCF7F60\n"
 648  "loc_FFCFC2AC:\n"
 649                  "LDR     R0, [SP,#0x38-0x34]\n"
 650                  "BL      sub_FFCF7874\n"
 651  "loc_FFCFC2B4:\n"
 652                  "LDR     R3, =0x42850\n"
 653                  "MOV     R2, #0\n"
 654                  "LDR     R0, [R3]\n"
 655                  "MOV     R1, R7\n"
 656                  "BL      sub_FFC10920\n"
 657                  "LDR     R12, [SP,#0x38-0x34]\n"
 658                  "LDR     R2, [R12]\n"
 659                  "CMP     R2, #0x23\n"
 660                  "BNE     loc_FFCFBE08\n"
 661                  "MOV     R0, R12\n"
 662                  "BL      sub_FFCF7874\n"
 663                  "LDR     R3, =0x4284C\n"
 664                  "MOV     R1, #1\n"
 665                  "LDR     R0, [R3]\n"
 666                  "BL      sub_FFC10208\n"
 667                  "BL      sub_FFC11E7C\n"
 668                  //End of function task_ExpDrvTask 
 669     );
 670 }
 671 
 672 void __attribute__((naked,noinline)) sub_FFCF8D98_my() { // ExpDrv_c__2
 673  asm volatile(
 674                  "STMFD   SP!, {R4-R6,LR}\n"
 675                  "LDR     R3, =0x4284C\n"
 676                  "MOV     R4, R0\n"
 677                  "MOV     R1, #0x3E\n"
 678                  "LDR     R0, [R3]\n"
 679                  "BL      sub_FFC103A4\n"
 680                  "MOV     R1, #0\n"
 681                  "LDRSH   R0, [R4,#4]\n"
 682                  "BL      sub_FFCF79A8\n"
 683                  "MOV     R6, R0\n"
 684                  "LDRSH   R0, [R4,#6]\n"
 685                  "BL      sub_FFCF7B1C\n"
 686                  "LDRSH   R0, [R4,#8]\n"
 687                  "BL      sub_FFCF7BB8\n"
 688                  "LDRSH   R0, [R4,#0xA]\n"
 689                  "BL      sub_FFCF7C54\n"
 690                  "LDRSH   R0, [R4,#0xC]\n"
 691                  "BL      sub_FFCF7CF0\n"
 692                  "LDR     R3, [R4]\n"
 693                  "CMP     R3, #9\n"
 694                  "MOV     R5, R0\n"
 695                  "MOVEQ   R5, #0\n"
 696                  "MOVEQ   R6, R5\n"
 697                  "CMP     R6, #1\n"
 698                  "BNE     loc_FFCF8E1C\n"
 699                  "MOV     R2, #2\n"
 700                  "LDRSH   R0, [R4,#4]\n"
 701                  "LDR     R1, =0xFFCF78C8\n"
 702                  "BL      sub_FFE91A68\n"
 703                  "LDR     R2, =0x4288C\n"
 704                  "MOV     R3, #0\n"
 705                  "STR     R3, [R2]\n"
 706                  "B       loc_FFCF8E20\n"
 707  "loc_FFCF8E1C:\n"
 708                  "BL      sub_FFCF7D8C\n"
 709  "loc_FFCF8E20:\n"
 710                  "STRH    R0, [R4,#4]\n"
 711                  "CMP     R5, #1\n"
 712                  "BNE     loc_FFCF8E40\n"
 713                  "LDRSH   R0, [R4,#0xC]\n"
 714                  "LDR     R1, =0xFFCF798C\n"
 715                  "MOV     R2, #0x20\n"
 716                  "BL      sub_FFCF80C4\n"
 717                  "B       loc_FFCF8E44\n"
 718  "loc_FFCF8E40:\n"
 719                  "BL      sub_FFCF7DCC\n"
 720  "loc_FFCF8E44:\n"
 721                  "STRH    R0, [R4,#0xC]\n"
 722                  "LDRSH   R0, [R4,#6]\n"
 723                  "BL      sub_FFCA3AFC_my\n"  //------------>
 724                  "LDRSH   R0, [R4,#8]\n"
 725                  "MOV     R1, #1\n"
 726                  "BL      sub_FFCA5D60\n"
 727                  "ADD     R0, R4, #8\n"
 728                  "MOV     R1, #0\n"
 729                  "BL      sub_FFCA5E20\n"
 730                  "LDRSH   R0, [R4,#0xE]\n"
 731                  "BL      sub_FFCE58F4\n"
 732                  "CMP     R6, #1\n"
 733                  "BNE     loc_FFCF8EA8\n"
 734                  "LDR     R3, =0x4284C\n"
 735                  "MOV     R2, #0xBB0\n"
 736                  "LDR     R0, [R3]\n"
 737                  "MOV     R1, #2\n"
 738                  "ADD     R2, R2, #8\n"
 739                  "BL      sub_FFC101F8\n"
 740                  "TST     R0, #1\n"
 741                  "BEQ     loc_FFCF8EA8\n"
 742                  "MOV     R1, #0x440\n"
 743                  "LDR     R0, =0xFFCF7820\n"
 744                  "ADD     R1, R1, #0xB\n"
 745                  "BL      sub_FFC03CF8\n"
 746  "loc_FFCF8EA8:\n"
 747                  "CMP     R5, #1\n"
 748                  "LDMNEFD SP!, {R4-R6,PC}\n"
 749                  "LDR     R3, =0x4284C\n"
 750                  "MOV     R2, #0xBB0\n"
 751                  "LDR     R0, [R3]\n"
 752                  "MOV     R1, #0x20\n"
 753                  "ADD     R2, R2, #8\n"
 754                  "BL      sub_FFC101F8\n"
 755                  "TST     R0, #1\n"
 756                  "LDMEQFD SP!, {R4-R6,PC}\n"
 757                  "LDR     R0, =0xFFCF7820\n"
 758                  "MOV     R1, #0x450\n"
 759                  "LDMFD   SP!, {R4-R6,LR}\n"
 760                  "B       sub_FFC03CF8\n"
 761    );
 762 }
 763 
 764 
 765 void __attribute__((naked,noinline)) sub_FFCA3AFC_my(){
 766  asm volatile(
 767                  "STMFD   SP!, {R4,LR}\n"
 768                  "LDR     R3, =0x52E4\n"
 769                  "LDR     R2, [R3]\n"
 770                  "MOV     R1, #0x150\n"
 771                  "MOV     R3, R0,LSL#16\n"
 772                  "CMP     R2, #1\n"
 773                  "ADD     R1, R1, #1\n"
 774                  "LDR     R0, =0xFFCA3338\n"
 775                  "MOV     R4, R3,ASR#16\n"
 776                  "BEQ     loc_FFCA3B28\n"
 777                  "BL      sub_FFC03CF8\n"
 778  "loc_FFCA3B28:\n"
 779                  "MOV     R1, #0x154\n"
 780                  "CMN     R4, #0xC00\n"
 781                  "LDR     R3, =0x3419E\n"
 782                  "LDR     R0, =0xFFCA3338\n"
 783                  "ADD     R1, R1, #3\n"
 784                  "LDREQSH R4, [R3]\n"
 785                  "LDRNE   R3, =0x3419E\n"
 786                  "CMN     R4, #0xC00\n"
 787                  "STRH    R4, [R3]\n"
 788                  "BNE     loc_FFCA3B54\n"
 789                  "BL      sub_FFC03CF8\n"
 790  "loc_FFCA3B54:\n"
 791                  "MOV     R0, R4\n"
 792                  "BL      apex2us\n"
 793                  "MOV     R4, R0\n"
 794             //   "BL      nullsub_61\n"
 795                  "MOV     R0, R4\n"
 796                  "BL      sub_FFCA2EB4\n"
 797                  "TST     R0, #1\n"
 798                  "MOV     R1, #0x15C\n"
 799                  "LDR     R0, =0xFFCA3338\n"
 800                  "LDMEQFD SP!, {R4,PC}\n"
 801                  "LDMFD   SP!, {R4,LR}\n"
 802                  "B       sub_FFC03CF8\n"
 803  );
 804 }
 805 
 806 

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