root/platform/a610/sub/100f/capt_seq.c

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

DEFINITIONS

This source file includes following definitions.
  1. sub_FFD399A8_my
  2. sub_FFD36838_my
  3. capt_seq_task
  4. exp_drv_task
  5. sub_FFCE1FBC_my
  6. sub_FFC97A3C_my

   1 #include "lolevel.h"
   2 #include "platform.h"
   3 #include "core.h"
   4 
   5 static long *nrflag = (long*)0x6CE0;
   6 
   7 #include "../../../generic/capt_seq.c"
   8 
   9 void __attribute__((naked,noinline)) sub_FFD399A8_my(long p)
  10 {
  11     (void)p;
  12     asm volatile (
  13                 "STMFD   SP!, {R4,R5,LR}\n"
  14                 "LDR     R3, =0x73D34\n"
  15                 "LDR     R5, =0x6CDC\n"
  16                 "SUB     SP, SP, #4\n"
  17                 "LDR     R1, =0xFFFFFFFF\n"
  18                 "STR     R0, [R5]\n"
  19                 "LDR     R0, [R3]\n"
  20                 "BL      sub_FFC0FA60\n"
  21                 "BL      sub_FFD3F7C0\n"
  22                 "BL      wait_until_remote_button_is_released\n"
  23                 "LDR     R0, [R0,#0x7C]\n"
  24                 "BL      sub_FFD3991C\n"
  25                 "BL      capt_seq_hook_set_nr\n"
  26                 "LDR     R3, =0x6CE4\n"
  27                 "LDR     R0, [R3]\n"
  28                 "BL      sub_FFC8C410\n"
  29 
  30                 "B      sub_FFD399E4\n"
  31     );
  32 }
  33 
  34 void __attribute__((naked,noinline)) sub_FFD36838_my(long p)
  35 {
  36     (void)p;
  37     asm volatile (
  38                 "STMFD   SP!, {R4,R5,LR}\n"
  39                 "LDR     R5, [R0,#0xC]\n"
  40                 "BL      sub_FFD3F564\n"
  41                 "CMP     R0, #0\n"
  42                 "BNE     loc_FFD36850\n"
  43                 "BL      sub_FFD3F570\n"
  44 
  45 "loc_FFD36850:\n"
  46                 "MOV     R0, R5\n"
  47                 "BL      sub_FFD387B4\n"
  48                 "TST     R0, #1\n"
  49                 "MOV     R2, R5\n"
  50                 "MOV     R1, #1\n"
  51                 "BEQ     loc_FFD36870\n"
  52                 "LDMFD   SP!, {R4,R5,LR}\n"
  53                 "B       sub_FFD34D90\n"
  54 
  55 "loc_FFD36870:\n"
  56                 "BL      sub_FFD7480C\n"
  57                 "BL      sub_FFD3417C\n"
  58                 "MOV     R4, R0\n"
  59                 "BL      sub_FFC143A4\n"
  60                 "ADD     R3, R5, R5,LSL#1\n"
  61                 "ADD     R4, R4, R3,LSL#5\n"
  62                 "STR     R0, [R4,#4]\n"
  63                 "MOV     R0, R5\n"
  64                 "BL      sub_FFD3A1C0\n"
  65                 "BL      sub_FFD38CF8\n"
  66                 "BL      sub_FFD38C98\n"
  67                 "MOV     R0, R5\n"
  68                 "BL      sub_FFD399A8_my\n"
  69                 "BL      capt_seq_hook_raw_here\n"
  70                 "MOV     R2, R5\n"
  71                 "MOV     R1, #1\n"
  72                 "BL      sub_FFD34D90\n"
  73                 "LDMFD   SP!, {R4,R5,LR}\n"
  74                 "B       sub_FFD39BA8\n"
  75     );
  76 }
  77 
  78 void __attribute__((naked,noinline)) capt_seq_task()
  79 {
  80         asm volatile (
  81                 "STMFD   SP!, {R4,LR}\n"
  82                 "SUB     SP, SP, #4\n"
  83                 "MOV     R4, SP\n"
  84                 "B       loc_FFD36D90\n"
  85 
  86 "loc_FFD36C3C:\n"
  87                 "LDR     R2, [SP,#0xC-0xC]\n"
  88                 "LDR     R3, [R2]\n"
  89                 "MOV     R0, R2\n"
  90                 "CMP     R3, #0x15\n"
  91                 "LDRLS   PC, [PC,R3,LSL#2]\n"
  92                 "B       loc_FFD36D68\n"
  93                 ".long loc_FFD36CAC\n"
  94                 ".long loc_FFD36CB8\n"
  95                 ".long loc_FFD36CC0\n"
  96                 ".long loc_FFD36CD0\n"
  97                 ".long loc_FFD36CC8\n"
  98                 ".long loc_FFD36CD8\n"
  99                 ".long loc_FFD36CE0\n"
 100                 ".long loc_FFD36CEC\n"
 101                 ".long loc_FFD36CF4\n"
 102                 ".long loc_FFD36D00\n"
 103                 ".long loc_FFD36D08\n"
 104                 ".long loc_FFD36D10\n"
 105                 ".long loc_FFD36D18\n"
 106                 ".long loc_FFD36D20\n"
 107                 ".long loc_FFD36D28\n"
 108                 ".long loc_FFD36D34\n"
 109                 ".long loc_FFD36D3C\n"
 110                 ".long loc_FFD36D44\n"
 111                 ".long loc_FFD36D4C\n"
 112                 ".long loc_FFD36D58\n"
 113                 ".long loc_FFD36D60\n"
 114                 ".long loc_FFD36D78\n"
 115 
 116 "loc_FFD36CAC:\n"
 117                 "BL      sub_FFD38410\n"
 118                 "BL      shooting_expo_param_override\n"  // +
 119                 "BL      sub_FFD348E8\n"
 120                 "B       loc_FFD36D74\n"
 121 
 122 "loc_FFD36CB8:\n"
 123                 "BL      sub_FFD36838_my\n"
 124                 "B       loc_FFD36D74\n"
 125 
 126 "loc_FFD36CC0:\n"
 127                 "BL      sub_FFD387A4\n"
 128                 "B       loc_FFD36D74\n"
 129 
 130 "loc_FFD36CC8:\n"
 131                 "BL      sub_FFD376CC\n"
 132                 "B       loc_FFD36D74\n"
 133 
 134 "loc_FFD36CD0:\n"
 135                 "BL      sub_FFD37728\n"
 136                 "B       loc_FFD36D74\n"
 137 
 138 "loc_FFD36CD8:\n"
 139                 "BL      sub_FFD37918\n"
 140                 "B       loc_FFD36D74\n"
 141 
 142 "loc_FFD36CE0:\n"
 143                 "BL      sub_FFD38504\n"
 144                 "BL      sub_FFD348E8\n"
 145                 "B       loc_FFD36D74\n"
 146 
 147 "loc_FFD36CEC:\n"
 148                 "BL      sub_FFD36920\n"
 149                 "B       loc_FFD36D74\n"
 150 
 151 "loc_FFD36CF4:\n"
 152                 "BL      sub_FFD3856C\n"
 153                 "BL      sub_FFD348E8\n"
 154                 "B       loc_FFD36D74\n"
 155 
 156 "loc_FFD36D00:\n"
 157                 "BL      sub_FFD37728\n"
 158                 "B       loc_FFD36D74\n"
 159 
 160 "loc_FFD36D08:\n"
 161                 "BL      sub_FFD38E30\n"
 162                 "B       loc_FFD36D74\n"
 163 
 164 "loc_FFD36D10:\n"
 165                 "BL      sub_FFD390B8\n"
 166                 "B       loc_FFD36D74\n"
 167 
 168 "loc_FFD36D18:\n"
 169                 "BL      sub_FFD39144\n"
 170                 "B       loc_FFD36D74\n"
 171 
 172 "loc_FFD36D20:\n"
 173                 "BL      sub_FFD391FC\n"
 174                 "B       loc_FFD36D74\n"
 175 
 176 "loc_FFD36D28:\n"
 177                 "MOV     R0, #0\n"
 178                 "BL      sub_FFD392AC\n"
 179                 "B       loc_FFD36D74\n"
 180 
 181 "loc_FFD36D34:\n"
 182                 "BL      sub_FFD393FC\n"
 183                 "B       loc_FFD36D74\n"
 184 
 185 "loc_FFD36D3C:\n"
 186                 "BL      sub_FFD39470\n"
 187                 "B       loc_FFD36D74\n"
 188 
 189 "loc_FFD36D44:\n"
 190                 "BL      sub_FFD39528\n"
 191                 "B       loc_FFD36D74\n"
 192 
 193 "loc_FFD36D4C:\n"
 194                 "MOV     R0, #1\n"
 195                 "BL      sub_FFD392AC\n"
 196                 "B       loc_FFD36D74\n"
 197 
 198 "loc_FFD36D58:\n"
 199                 "BL      sub_FFD39628\n"
 200                 "B       loc_FFD36D74\n"
 201 
 202 "loc_FFD36D60:\n"
 203                 "BL      sub_FFD39654\n"
 204                 "B       loc_FFD36D74\n"
 205 
 206 "loc_FFD36D68:\n"
 207                 "LDR     R0, =0xFFD365BC\n"
 208                 "MOV     R1, #0x2DC\n"
 209                 "BL      sub_FFC03AD0\n"
 210 
 211 "loc_FFD36D74:\n"
 212                 "LDR     R2, [SP,#0xC-0xC]\n"
 213 
 214 "loc_FFD36D78:\n"
 215                 "LDR     R3, =0x73CBC\n"
 216                 "LDR     R1, [R2,#4]\n"
 217                 "LDR     R0, [R3]\n"
 218                 "BL      sub_FFC0F8C4\n"
 219                 "LDR     R0, [SP,#0xC-0xC]\n"
 220                 "BL      sub_FFD36638\n"
 221 
 222 "loc_FFD36D90:\n"
 223                 "LDR     R3, =0x73CC0\n"
 224                 "MOV     R1, R4\n"
 225                 "LDR     R0, [R3]\n"
 226                 "MOV     R2, #0\n"
 227                 "BL      sub_FFC10074\n"
 228                 "TST     R0, #1\n"
 229                 "BEQ     loc_FFD36C3C\n"
 230                 "MOV     R1, #0x24C\n"
 231                 "LDR     R0, =0xFFD365BC\n"
 232                 "ADD     R1, R1, #1\n"
 233                 "BL      sub_FFC03AD0\n"
 234                 "BL      sub_FFC11610\n"
 235                 "ADD     SP, SP, #4\n"
 236                 "LDMFD   SP!, {R4,PC}\n"
 237 
 238     );
 239 }
 240 
 241 void __attribute__((naked,noinline)) exp_drv_task(){
 242  asm volatile(
 243                 "STMFD   SP!, {R4-R8,LR}\n"
 244                 "SUB     SP, SP, #0x14\n"
 245                 "MOV     R7, SP\n"
 246                 "B       loc_FFCE34D0\n"
 247 "loc_FFCE31EC:\n"
 248                 "CMP     R2, #0x19\n"
 249                 "BNE     loc_FFCE3204\n"
 250                 "LDR     R0, [R12,#0x34]\n"
 251                 "MOV     LR, PC\n"
 252                 "LDR     PC, [R12,#0x30]\n"
 253                 "B       loc_FFCE323C\n"
 254 "loc_FFCE3204:\n"
 255                 "SUB     R3, R2, #0x16\n"
 256                 "CMP     R3, #1\n"
 257                 "BHI     loc_FFCE321C\n"
 258                 "MOV     R0, R12\n"
 259                 "BL      sub_FFCE3184\n"
 260                 "B       loc_FFCE322C\n"
 261 "loc_FFCE321C:\n"
 262                 "CMP     R2, #0x18\n"
 263                 "BNE     loc_FFCE3248\n"
 264                 "BL      sub_FFC97DA4\n"
 265                 "BL      sub_FFC99C1C\n"
 266 "loc_FFCE322C:\n"
 267                 "LDR     R3, [SP,#0x0]\n"
 268                 "LDR     R0, [R3,#0x34]\n"
 269                 "MOV     LR, PC\n"
 270                 "LDR     PC, [R3,#0x30]\n"
 271 "loc_FFCE323C:\n"
 272                 "LDR     R0, [SP,#0x0]\n"
 273                 "BL      sub_FFCE14D4\n"
 274                 "B       loc_FFCE34D0\n"
 275 "loc_FFCE3248:\n"
 276                 "CMP     R2, #0xC\n"
 277                 "MOV     R8, #1\n"
 278                 "BNE     loc_FFCE32B8\n"
 279                 "LDR     R1, [R12,#0x24]\n"
 280                 "ADD     R1, R1, R1,LSL#1\n"
 281                 "ADD     R1, R12, R1,LSL#1\n"
 282                 "ADD     R6, SP, #0xC\n"
 283                 "SUB     R1, R1, #2\n"
 284                 "MOV     R2, #6\n"
 285                 "MOV     R0, R6\n"
 286                 "BL      _memcpy\n"
 287                 "LDR     R0, [SP,#0x0]\n"
 288                 "BL      sub_FFCE27AC\n"
 289                 "LDR     R3, [SP,#0x0]\n"
 290                 "LDR     R1, [R3,#0x24]\n"
 291                 "LDR     R2, [R3,#0x34]\n"
 292                 "ADD     R0, R3, #4\n"
 293                 "MOV     LR, PC\n"
 294                 "LDR     PC, [R3,#0x30]\n"
 295                 "LDR     R0, [SP,#0x0]\n"
 296                 "BL      sub_FFCE2930\n"
 297                 "LDR     R3, [SP,#0x0]\n"
 298                 "ADD     R0, R3, #4\n"
 299                 "LDR     R1, [R3,#0x24]\n"
 300                 "LDR     R2, [R3,#0x3C]\n"
 301                 "MOV     LR, PC\n"
 302                 "LDR     PC, [R3,#0x38]\n"
 303                 "B       loc_FFCE3480\n"
 304 "loc_FFCE32B8:\n"
 305                 "SUB     R3, R2, #0xD\n"
 306                 "CMP     R3, #1\n"
 307                 "BHI     loc_FFCE3338\n"
 308                 "ADD     R6, SP, #0xC\n"
 309                 "ADD     R5, SP, #0x4\n"
 310                 "MOV     R0, R12\n"
 311                 "MOV     R1, R6\n"
 312                 "MOV     R2, R5\n"
 313                 "BL      sub_FFCE29AC\n"
 314                 "MOV     R4, R0\n"
 315                 "CMP     R4, #3\n"
 316                 "CMPNE   R4, #1\n"
 317                 "BNE     loc_FFCE3318\n"
 318                 "LDR     R12, [SP,#0x0]\n"
 319                 "MOV     R0, R5\n"
 320                 "LDR     R1, [R12,#0x24]\n"
 321                 "MOV     R2, R4\n"
 322                 "LDR     R3, [R12,#0x34]\n"
 323                 "MOV     LR, PC\n"
 324                 "LDR     PC, [R12,#0x30]\n"
 325                 "MOV     R1, R4\n"
 326                 "LDR     R0, [SP,#0x0]\n"
 327                 "BL      sub_FFCE3164\n"
 328                 "B       loc_FFCE3480\n"
 329 "loc_FFCE3318:\n"
 330                 "LDR     R12, [SP,#0x0]\n"
 331                 "MOV     R2, R4\n"
 332                 "ADD     R0, R12, #4\n"
 333                 "LDR     R1, [R12,#0x24]\n"
 334                 "LDR     R3, [R12,#0x34]\n"
 335                 "MOV     LR, PC\n"
 336                 "LDR     PC, [R12,#0x30]\n"
 337                 "B       loc_FFCE3480\n"
 338 "loc_FFCE3338:\n"
 339                 "CMP     R2, #0x14\n"
 340                 "BNE     loc_FFCE338C\n"
 341                 "LDR     R1, [R12,#0x24]\n"
 342                 "ADD     R1, R1, R1,LSL#1\n"
 343                 "ADD     R1, R12, R1,LSL#1\n"
 344                 "ADD     R6, SP, #0xC\n"
 345                 "SUB     R1, R1, #2\n"
 346                 "MOV     R2, #6\n"
 347                 "MOV     R0, R6\n"
 348                 "BL      _memcpy\n"
 349                 "LDR     R0, [SP,#0x0]\n"
 350                 "BL      sub_FFCE2284\n"
 351                 "LDR     R3, [SP,#0x0]\n"
 352                 "ADD     R0, R3, #4\n"
 353                 "LDR     R1, [R3,#0x24]\n"
 354                 "LDR     R2, [R3,#0x34]\n"
 355                 "MOV     LR, PC\n"
 356                 "LDR     PC, [R3,#0x30]\n"
 357                 "LDR     R0, [SP,#0x0]\n"
 358                 "BL      sub_FFCE24DC\n"
 359                 "B       loc_FFCE3480\n"
 360 "loc_FFCE338C:\n"
 361                 "ADD     R6, SP, #0xC\n"
 362                 "ADD     R1, R12, #4\n"
 363                 "MOV     R0, R6\n"
 364                 "MOV     R2, #6\n"
 365                 "BL      _memcpy\n"
 366                 "LDR     R12, [SP,#0x0]\n"
 367                 "LDR     R3, [R12]\n"
 368                 "MOV     R0, R12\n"
 369                 "CMP     R3, #0x15\n"
 370                 "LDRLS   PC, [PC,R3,LSL#2]\n"
 371                 "B       loc_FFCE346C\n"
 372                 ".long loc_FFCE3410\n"
 373                 ".long loc_FFCE3418\n"
 374                 ".long loc_FFCE3420\n"
 375                 ".long loc_FFCE3420\n"
 376                 ".long loc_FFCE3410\n"
 377                 ".long loc_FFCE3418\n"
 378                 ".long loc_FFCE3420\n"
 379                 ".long loc_FFCE3420\n"
 380                 ".long loc_FFCE3438\n"
 381                 ".long loc_FFCE3438\n"
 382                 ".long loc_FFCE345C\n"
 383                 ".long loc_FFCE3464\n"
 384                 ".long loc_FFCE346C\n"
 385                 ".long loc_FFCE346C\n"
 386                 ".long loc_FFCE346C\n"
 387                 ".long loc_FFCE3428\n"
 388                 ".long loc_FFCE3430\n"
 389                 ".long loc_FFCE3444\n"
 390                 ".long loc_FFCE344C\n"
 391                 ".long loc_FFCE344C\n"
 392                 ".long loc_FFCE346C\n"
 393                 ".long loc_FFCE3454\n"
 394 "loc_FFCE3410:\n"
 395                 "BL      sub_FFCE19B0\n"
 396                 "B       loc_FFCE3468\n"
 397 "loc_FFCE3418:\n"
 398                 "BL      sub_FFCE1AEC\n"
 399                 "B       loc_FFCE3468\n"
 400 "loc_FFCE3420:\n"
 401                 "BL      sub_FFCE1C1C\n"
 402                 "B       loc_FFCE3468\n"
 403 "loc_FFCE3428:\n"
 404                 "BL      sub_FFCE1DF0\n"
 405                 "B       loc_FFCE3468\n"
 406 "loc_FFCE3430:\n"
 407                 "BL      sub_FFCE1EF8\n"
 408                 "B       loc_FFCE3468\n"
 409 "loc_FFCE3438:\n"
 410                 "BL      sub_FFCE1FBC_my\n"  //---------->
 411                 "MOV     R8, #0\n"
 412                 "B       loc_FFCE3468\n"
 413 "loc_FFCE3444:\n"
 414                 "BL      sub_FFCE2080\n"
 415                 "B       loc_FFCE3468\n"
 416 "loc_FFCE344C:\n"
 417                 "BL      sub_FFCE2168\n"
 418                 "B       loc_FFCE3468\n"
 419 "loc_FFCE3454:\n"
 420                 "BL      sub_FFCE256C\n"
 421                 "B       loc_FFCE3468\n"
 422 "loc_FFCE345C:\n"
 423                 "BL      sub_FFCE2640\n"
 424                 "B       loc_FFCE3468\n"
 425 "loc_FFCE3464:\n"
 426                 "BL      sub_FFCE272C\n"
 427 "loc_FFCE3468:\n"
 428                 "LDR     R12, [SP,#0x0]\n"
 429 "loc_FFCE346C:\n"
 430                 "ADD     R0, R12, #4\n"
 431                 "LDR     R1, [R12,#0x24]\n"
 432                 "LDR     R2, [R12,#0x34]\n"
 433                 "MOV     LR, PC\n"
 434                 "LDR     PC, [R12,#0x30]\n"
 435 "loc_FFCE3480:\n"
 436                 "CMP     R8, #1\n"
 437                 "BNE     loc_FFCE34A8\n"
 438                 "LDR     R1, [SP,#0x0]\n"
 439                 "LDR     R3, [R1,#0x24]\n"
 440                 "ADD     R3, R3, R3,LSL#1\n"
 441                 "ADD     R1, R1, R3,LSL#1\n"
 442                 "MOV     R0, R6\n"
 443                 "SUB     R1, R1, #2\n"
 444                 "BL      sub_FFCE1868\n"
 445                 "B       loc_FFCE34C8\n"
 446 "loc_FFCE34A8:\n"
 447                 "MOV     R0, #1\n"
 448                 "MOV     R1, R0\n"
 449                 "MOV     R2, R0\n"
 450                 "BL      sub_FFCE180C\n"
 451                 "MOV     R0, #1\n"
 452                 "MOV     R1, R0\n"
 453                 "MOV     R2, R0\n"
 454                 "BL      sub_FFCE1928\n"
 455 "loc_FFCE34C8:\n"
 456                 "LDR     R0, [SP,#0x0]\n"
 457                 "BL      sub_FFCE14D4\n"
 458 "loc_FFCE34D0:\n"
 459                 "LDR     R3, =0x4FB70\n"
 460                 "MOV     R2, #0\n"
 461                 "LDR     R0, [R3]\n"
 462                 "MOV     R1, R7\n"
 463                 "BL      sub_FFC10074\n"  //ReceiveMessageQueue
 464                 "LDR     R12, [SP,#0x0]\n"
 465                 "LDR     R2, [R12]\n"
 466                 "CMP     R2, #0x1A\n"
 467                 "BNE     loc_FFCE31EC\n"
 468                 "MOV     R0, R12\n"
 469                 "BL      sub_FFCE14D4\n"
 470                 "LDR     R3, =0x4FB6C\n"
 471                 "MOV     R1, #1\n"
 472                 "LDR     R0, [R3]\n"
 473                 "BL      sub_FFC0F8C4\n"  //SetEventFlag
 474                 "BL      _ExitTask\n"
 475                 "ADD     SP, SP, #0x14\n"
 476                 "LDMFD   SP!, {R4-R8,PC}\n"
 477     );
 478 }
 479 
 480 void __attribute__((naked,noinline)) sub_FFCE1FBC_my(){
 481  asm volatile(
 482                 "STMFD   SP!, {R4,R5,LR}\n"
 483                 "LDR     R3, =0x4FB6C\n"
 484                 "MOV     R4, R0\n"
 485                 "MOV     R1, #0xE\n"
 486                 "LDR     R0, [R3]\n"
 487                 "BL      sub_FFC0FA60\n"  //ClearEventFlag
 488                 "MOV     R1, #0\n"
 489                 "LDRSH   R0, [R4,#4]\n"
 490                 "BL      sub_FFCE1574\n"
 491                 "MOV     R5, R0\n"
 492                 "LDRSH   R0, [R4,#6]\n"
 493                 "BL      sub_FFCE16A4\n"
 494                 "LDRSH   R0, [R4,#8]\n"
 495                 "BL      sub_FFCE1740\n"
 496                 "LDR     R3, [R4]\n"
 497                 "CMP     R3, #9\n"
 498                 "MOVEQ   R5, #0\n"
 499                 "CMP     R5, #1\n"
 500                 "LDR     R1, =0xFFCE1504\n"
 501                 "MOV     R2, #2\n"
 502                 "BNE     loc_FFCE2028\n"
 503                 "LDRSH   R0, [R4,#4]\n"
 504                 "BL      sub_FFE5D128\n"
 505                 "LDR     R2, =0x4FB98\n"
 506                 "MOV     R3, #0\n"
 507                 "STR     R3, [R2]\n"
 508                 "B       loc_FFCE202C\n"
 509 "loc_FFCE2028:\n"
 510                 "BL      sub_FFCE17DC\n"
 511 "loc_FFCE202C:\n"
 512                 "STRH    R0, [R4,#4]\n"
 513                 "LDRSH   R0, [R4,#6]\n"
 514                 "BL      sub_FFC97A3C_my\n"  //---------->
 515                 "BL      sub_FFC999C0\n"
 516                 "LDRSH   R0, [R4,#8]\n"
 517                 "MOV     R1, #1\n"
 518                 "BL      sub_FFC997DC\n"
 519                 "MOV     R1, #0\n"
 520                 "ADD     R0, R4, #8\n"
 521                 "BL      sub_FFC998A0\n"
 522                 "CMP     R5, #1\n"
 523                 "MOV     R1, #2\n"
 524                 "MOV     R2, #0\n"
 525                 "LDMNEFD SP!, {R4,R5,PC}\n"
 526                 "LDR     R3, =0x4FB6C\n"
 527                 "LDR     R0, [R3]\n"
 528                 "LDMFD   SP!, {R4,R5,LR}\n"
 529                 "B       sub_FFC0F8B4\n"
 530     );
 531 }
 532 
 533 void __attribute__((naked,noinline)) sub_FFC97A3C_my(){
 534  asm volatile(
 535                 "STMFD   SP!, {R4,LR}\n"
 536                 "LDR     R3, =0x5388\n"
 537                 "LDR     R2, [R3]\n"
 538                 "MOV     R3, R0,LSL#16\n"
 539                 "CMP     R2, #1\n"
 540                 "MOV     R1, #0x110\n"
 541                 "LDR     R0, =0xFFC973D8\n"  //aShutter_c
 542                 "MOV     R4, R3,ASR#16\n"
 543                 "BEQ     loc_FFC97A64\n"
 544                 "BL      sub_FFC03AD0\n"  //DebugAssert
 545 "loc_FFC97A64:\n"
 546                 "MOV     R1, #0x114\n"
 547                 "CMN     R4, #0xC00\n"
 548                 "LDR     R3, =0x3609E\n"
 549                 "LDR     R0, =0xFFC973D8\n"  //aShutter_c
 550                 "ADD     R1, R1, #2\n"
 551                 "LDREQSH R4, [R3]\n"
 552                 "LDRNE   R3, =0x3609E\n"
 553                 "CMN     R4, #0xC00\n"
 554                 "STRH    R4, [R3]\n"
 555                 "BNE     loc_FFC97A90\n"
 556                 "BL      sub_FFC03AD0\n"  //DebugAssert
 557 "loc_FFC97A90:\n"
 558                 "MOV     R0, R4\n"
 559                 "BL      apex2us\n"  //sub_FFC98B74  //---------->
 560                 "BL      sub_FFC96FCC\n"
 561                 "TST     R0, #1\n"
 562                 "MOV     R1, #0x118\n"
 563                 "LDR     R0, =0xFFC973D8\n"  //aShutter_c
 564                 "LDMEQFD SP!, {R4,PC}\n"
 565                 "LDMFD   SP!, {R4,LR}\n"
 566                 "B       sub_FFC03AD0\n"  //DebugAssert
 567     );
 568 }

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