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

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

DEFINITIONS

This source file includes following definitions.
  1. sub_FFD39620_my
  2. sub_FFD364B0_my
  3. capt_seq_task
  4. exp_drv_task
  5. sub_FFCE1C34_my
  6. sub_FFC976B4_my

   1 #include "lolevel.h"
   2 #include "platform.h"
   3 #include "core.h"
   4 
   5 
   6 static long *nrflag = (long*)0x6CE0;
   7 
   8 #include "../../../generic/capt_seq.c"
   9 
  10 void __attribute__((naked,noinline)) sub_FFD39620_my(long p)
  11 {
  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_FFD3F438\n"
  22             "BL      wait_until_remote_button_is_released\n"
  23                 "LDR     R0, [R0,#0x7C]\n"
  24                 "BL      sub_FFD39594\n" // nr
  25 
  26                 "BL      capt_seq_hook_set_nr\n"
  27 
  28                 "LDR     R3, =0x6CE4\n"
  29                 "LDR     R0, [R3]\n"
  30                 "BL      sub_FFC8C088\n"
  31 
  32                 "B       sub_FFD3965C\n" // continue orig. func
  33     );
  34 }
  35 
  36 void __attribute__((naked,noinline)) sub_FFD364B0_my(long p)
  37 {
  38     asm volatile (
  39                 "STMFD   SP!, {R4,R5,LR}\n"
  40                 "LDR     R5, [R0,#0xC]\n"
  41                 "BL      sub_FFD3F1DC\n"
  42                 "CMP     R0, #0\n"
  43                 "BNE     1f\n"
  44                 "BL      sub_FFD3F1E8\n"
  45 
  46 "1:\n"
  47                 "MOV     R0, R5\n"
  48                 "BL      sub_FFD3842C\n"
  49                 "TST     R0, #1\n"
  50                 "MOV     R2, R5\n"
  51                 "MOV     R1, #1\n"
  52                 "BEQ     2f\n"
  53                 "LDMFD   SP!, {R4,R5,LR}\n"
  54                 "B       sub_FFD34A08\n"
  55 
  56 "2:\n"
  57                 "BL      sub_FFD74484\n"
  58                 "BL      sub_FFD33DF4\n"
  59                 "MOV     R4, R0\n"
  60                 "BL      sub_FFC143A4\n"
  61                 "ADD     R3, R5, R5,LSL#1\n"
  62                 "ADD     R4, R4, R3,LSL#5\n"
  63                 "STR     R0, [R4,#4]\n"
  64                 "MOV     R0, R5\n"
  65                 "BL      sub_FFD39E38\n" // ??
  66                 "BL      sub_FFD38970\n" // tv related
  67                 "BL      sub_FFD38910\n" // ??
  68                 "MOV     R0, R5\n"
  69                 "BL      sub_FFD39620_my\n" // make photo
  70 
  71                 "BL      capt_seq_hook_raw_here\n"
  72 
  73                 "MOV     R2, R5\n"
  74                 "MOV     R1, #1\n"
  75                 "BL      sub_FFD34A08\n" // save file ?
  76                 "LDMFD   SP!, {R4,R5,LR}\n"
  77                 "B       sub_FFD39820\n"
  78     );
  79 }
  80 
  81 void __attribute__((naked,noinline)) capt_seq_task()
  82 {
  83         asm volatile (
  84                 "STMFD   SP!, {R4,LR}\n"
  85                 "SUB     SP, SP, #4\n"
  86                 "MOV     R4, SP\n"
  87                 "B       loc_FFD36A08\n"
  88 // ---------------------------------------------------------------------------
  89 
  90 "loc_FFD368B4:\n"
  91                 "LDR     R2, [SP,#0xC-0xC]\n"
  92                 "LDR     R3, [R2]\n"
  93                 "MOV     R0, R2\n"
  94                 "CMP     R3, #0x15\n"
  95                 "LDRLS   PC, [PC,R3,LSL#2]\n"
  96                 "B       loc_FFD369E0\n"
  97 // ---------------------------------------------------------------------------
  98                 ".long loc_FFD36924\n"
  99                 ".long loc_FFD36930\n"
 100                 ".long loc_FFD36938\n"
 101                 ".long loc_FFD36948\n"
 102                 ".long loc_FFD36940\n"
 103                 ".long loc_FFD36950\n"
 104                 ".long loc_FFD36958\n"
 105                 ".long loc_FFD36964\n"
 106                 ".long loc_FFD3696C\n"
 107                 ".long loc_FFD36978\n"
 108                 ".long loc_FFD36980\n"
 109                 ".long loc_FFD36988\n"
 110                 ".long loc_FFD36990\n"
 111                 ".long loc_FFD36998\n"
 112                 ".long loc_FFD369A0\n"
 113                 ".long loc_FFD369AC\n"
 114                 ".long loc_FFD369B4\n"
 115                 ".long loc_FFD369BC\n"
 116                 ".long loc_FFD369C4\n"
 117                 ".long loc_FFD369D0\n"
 118                 ".long loc_FFD369D8\n"
 119                 ".long loc_FFD369F0\n"
 120 // ---------------------------------------------------------------------------
 121 
 122 "loc_FFD36924:\n"
 123                 "BL      sub_FFD38088\n"
 124                 "BL      shooting_expo_param_override\n"  // +
 125                 "BL      sub_FFD34560\n"
 126                 "B       loc_FFD369EC\n"
 127 // ---------------------------------------------------------------------------
 128 
 129 "loc_FFD36930:\n"
 130                 "BL      sub_FFD364B0_my\n"
 131                 "B       loc_FFD369EC\n"
 132 // ---------------------------------------------------------------------------
 133 
 134 "loc_FFD36938:\n"
 135                 "BL      sub_FFD3841C\n"
 136                 "B       loc_FFD369EC\n"
 137 // ---------------------------------------------------------------------------
 138 
 139 "loc_FFD36940:\n"
 140                 "BL      sub_FFD37344\n"
 141                 "B       loc_FFD369EC\n"
 142 // ---------------------------------------------------------------------------
 143 
 144 "loc_FFD36948:\n"
 145                 "BL      sub_FFD373A0\n"
 146                 "B       loc_FFD369EC\n"
 147 // ---------------------------------------------------------------------------
 148 
 149 "loc_FFD36950:\n"
 150                 "BL      sub_FFD37590\n"
 151                 "B       loc_FFD369EC\n"
 152 // ---------------------------------------------------------------------------
 153 
 154 "loc_FFD36958:\n"
 155                 "BL      sub_FFD3817C\n"
 156                 "BL      sub_FFD34560\n"
 157                 "B       loc_FFD369EC\n"
 158 // ---------------------------------------------------------------------------
 159 
 160 "loc_FFD36964:\n"
 161                 "BL      sub_FFD36598\n"
 162                 "B       loc_FFD369EC\n"
 163 // ---------------------------------------------------------------------------
 164 
 165 "loc_FFD3696C:\n"
 166                 "BL      sub_FFD381E4\n"
 167                 "BL      sub_FFD34560\n"
 168                 "B       loc_FFD369EC\n"
 169 // ---------------------------------------------------------------------------
 170 
 171 "loc_FFD36978:\n"
 172                 "BL      sub_FFD373A0\n"
 173                 "B       loc_FFD369EC\n"
 174 // ---------------------------------------------------------------------------
 175 
 176 "loc_FFD36980:\n"
 177                 "BL      sub_FFD38AA8\n"
 178                 "B       loc_FFD369EC\n"
 179 // ---------------------------------------------------------------------------
 180 
 181 "loc_FFD36988:\n"
 182                 "BL      sub_FFD38D30\n"
 183                 "B       loc_FFD369EC\n"
 184 // ---------------------------------------------------------------------------
 185 
 186 "loc_FFD36990:\n"
 187                 "BL      sub_FFD38DBC\n"
 188                 "B       loc_FFD369EC\n"
 189 // ---------------------------------------------------------------------------
 190 
 191 "loc_FFD36998:\n"
 192                 "BL      sub_FFD38E74\n"
 193                 "B       loc_FFD369EC\n"
 194 // ---------------------------------------------------------------------------
 195 
 196 "loc_FFD369A0:\n"
 197                 "MOV     R0, #0\n"
 198                 "BL      sub_FFD38F24\n"
 199                 "B       loc_FFD369EC\n"
 200 // ---------------------------------------------------------------------------
 201 
 202 "loc_FFD369AC:"
 203                 "BL      sub_FFD39074\n"
 204                 "B       loc_FFD369EC\n"
 205 // ---------------------------------------------------------------------------
 206 
 207 "loc_FFD369B4:\n"
 208                 "BL      sub_FFD390E8\n"
 209                 "B       loc_FFD369EC\n"
 210 // ---------------------------------------------------------------------------
 211 
 212 "loc_FFD369BC:\n"
 213                 "BL      sub_FFD391A0\n"
 214                 "B       loc_FFD369EC\n"
 215 // ---------------------------------------------------------------------------
 216 
 217 "loc_FFD369C4:\n"
 218                 "MOV     R0, #1\n"
 219                 "BL      sub_FFD38F24\n"
 220                 "B       loc_FFD369EC\n"
 221 // ---------------------------------------------------------------------------
 222 
 223 "loc_FFD369D0:\n"
 224                 "BL      sub_FFD392A0\n"
 225                 "B       loc_FFD369EC\n"
 226 // ---------------------------------------------------------------------------
 227 
 228 "loc_FFD369D8:\n"
 229                 "BL      sub_FFD392CC\n"
 230                 "B       loc_FFD369EC\n"
 231 // ---------------------------------------------------------------------------
 232 
 233 "loc_FFD369E0:\n"
 234                 "LDR     R0, =0xFFD36234\n"
 235                 "MOV     R1, #0x2DC\n"
 236                 "BL      sub_FFC03AD0\n"
 237 
 238 "loc_FFD369EC:\n"
 239                 "LDR     R2, [SP,#0xC-0xC]\n"
 240 
 241 "loc_FFD369F0:\n"
 242                 "LDR     R3, =0x73CBC\n"
 243                 "LDR     R1, [R2,#4]\n"
 244                 "LDR     R0, [R3]\n"
 245                 "BL      sub_FFC0F8C4\n"
 246                 "LDR     R0, [SP,#0xC-0xC]\n"
 247                 "BL      sub_FFD362B0\n"
 248 
 249 "loc_FFD36A08:\n"
 250                 "LDR     R3, =0x73CC0\n"
 251                 "MOV     R1, R4\n"
 252                 "LDR     R0, [R3]\n"
 253                 "MOV     R2, #0\n"
 254                 "BL      sub_FFC10074\n"
 255                 "TST     R0, #1\n"
 256                 "BEQ     loc_FFD368B4\n"
 257                 "MOV     R1, #0x24C\n"
 258                 "LDR     R0, =0xFFD36234\n"
 259                 "ADD     R1, R1, #1\n"
 260                 "BL      sub_FFC03AD0\n"
 261                 "BL      sub_FFC11610\n"
 262                 "ADD     SP, SP, #4\n"
 263                 "LDMFD   SP!, {R4,PC}\n"
 264 
 265     );
 266 }
 267 
 268 void __attribute__((naked,noinline)) exp_drv_task(){
 269  asm volatile(
 270                 "STMFD   SP!, {R4-R8,LR}\n"
 271                 "SUB     SP, SP, #0x14\n"
 272                 "MOV     R7, SP\n"
 273                 "B       loc_FFCE3148\n"
 274 "loc_FFCE2E64:\n"
 275                 "CMP     R2, #0x19\n"
 276                 "BNE     loc_FFCE2E7C\n"
 277                 "LDR     R0, [R12,#0x34]\n"
 278                 "MOV     LR, PC\n"
 279                 "LDR     PC, [R12,#0x30]\n"
 280                 "B       loc_FFCE2EB4\n"
 281 "loc_FFCE2E7C:\n"
 282                 "SUB     R3, R2, #0x16\n"
 283                 "CMP     R3, #1\n"
 284                 "BHI     loc_FFCE2E94\n"
 285                 "MOV     R0, R12\n"
 286                 "BL      sub_FFCE2DFC\n"
 287                 "B       loc_FFCE2EA4\n"
 288 "loc_FFCE2E94:\n"
 289                 "CMP     R2, #0x18\n"
 290                 "BNE     loc_FFCE2EC0\n"
 291                 "BL      sub_FFC97A1C\n"
 292                 "BL      sub_FFC99894\n"
 293 "loc_FFCE2EA4:\n"
 294                 "LDR     R3, [SP,#0x0]\n"
 295                 "LDR     R0, [R3,#0x34]\n"
 296                 "MOV     LR, PC\n"
 297                 "LDR     PC, [R3,#0x30]\n"
 298 "loc_FFCE2EB4:\n"
 299                 "LDR     R0, [SP,#0x0]\n"
 300                 "BL      sub_FFCE114C\n"
 301                 "B       loc_FFCE3148\n"
 302 "loc_FFCE2EC0:\n"
 303                 "CMP     R2, #0xC\n"
 304                 "MOV     R8, #1\n"
 305                 "BNE     loc_FFCE2F30\n"
 306                 "LDR     R1, [R12,#0x24]\n"
 307                 "ADD     R1, R1, R1,LSL#1\n"
 308                 "ADD     R1, R12, R1,LSL#1\n"
 309                 "ADD     R6, SP, #0xC\n"
 310                 "SUB     R1, R1, #2\n"
 311                 "MOV     R2, #6\n"
 312                 "MOV     R0, R6\n"
 313                 "BL      _memcpy\n"
 314                 "LDR     R0, [SP,#0x0]\n"
 315                 "BL      sub_FFCE2424\n"
 316                 "LDR     R3, [SP,#0x0]\n"
 317                 "LDR     R1, [R3,#0x24]\n"
 318                 "LDR     R2, [R3,#0x34]\n"
 319                 "ADD     R0, R3, #4\n"
 320                 "MOV     LR, PC\n"
 321                 "LDR     PC, [R3,#0x30]\n"
 322                 "LDR     R0, [SP,#0x0]\n"
 323                 "BL      sub_FFCE25A8\n"
 324                 "LDR     R3, [SP,#0x0]\n"
 325                 "ADD     R0, R3, #4\n"
 326                 "LDR     R1, [R3,#0x24]\n"
 327                 "LDR     R2, [R3,#0x3C]\n"
 328                 "MOV     LR, PC\n"
 329                 "LDR     PC, [R3,#0x38]\n"
 330                 "B       loc_FFCE30F8\n"
 331 "loc_FFCE2F30:\n"
 332                 "SUB     R3, R2, #0xD\n"
 333                 "CMP     R3, #1\n"
 334                 "BHI     loc_FFCE2FB0\n"
 335                 "ADD     R6, SP, #0xC\n"
 336                 "ADD     R5, SP, #0x4\n"
 337                 "MOV     R0, R12\n"
 338                 "MOV     R1, R6\n"
 339                 "MOV     R2, R5\n"
 340                 "BL      sub_FFCE2624\n"
 341                 "MOV     R4, R0\n"
 342                 "CMP     R4, #3\n"
 343                 "CMPNE   R4, #1\n"
 344                 "BNE     loc_FFCE2F90\n"
 345                 "LDR     R12, [SP,#0x0]\n"
 346                 "MOV     R0, R5\n"
 347                 "LDR     R1, [R12,#0x24]\n"
 348                 "MOV     R2, R4\n"
 349                 "LDR     R3, [R12,#0x34]\n"
 350                 "MOV     LR, PC\n"
 351                 "LDR     PC, [R12,#0x30]\n"
 352                 "MOV     R1, R4\n"
 353                 "LDR     R0, [SP,#0x0]\n"
 354                 "BL      sub_FFCE2DDC\n"
 355                 "B       loc_FFCE30F8\n"
 356 "loc_FFCE2F90:\n"
 357                 "LDR     R12, [SP,#0x0]\n"
 358                 "MOV     R2, R4\n"
 359                 "ADD     R0, R12, #4\n"
 360                 "LDR     R1, [R12,#0x24]\n"
 361                 "LDR     R3, [R12,#0x34]\n"
 362                 "MOV     LR, PC\n"
 363                 "LDR     PC, [R12,#0x30]\n"
 364                 "B       loc_FFCE30F8\n"
 365 "loc_FFCE2FB0:\n"
 366                 "CMP     R2, #0x14\n"
 367                 "BNE     loc_FFCE3004\n"
 368                 "LDR     R1, [R12,#0x24]\n"
 369                 "ADD     R1, R1, R1,LSL#1\n"
 370                 "ADD     R1, R12, R1,LSL#1\n"
 371                 "ADD     R6, SP, #0xC\n"
 372                 "SUB     R1, R1, #2\n"
 373                 "MOV     R2, #6\n"
 374                 "MOV     R0, R6\n"
 375                 "BL      _memcpy\n"
 376                 "LDR     R0, [SP,#0x0]\n"
 377                 "BL      sub_FFCE1EFC\n"
 378                 "LDR     R3, [SP,#0x0]\n"
 379                 "ADD     R0, R3, #4\n"
 380                 "LDR     R1, [R3,#0x24]\n"
 381                 "LDR     R2, [R3,#0x34]\n"
 382                 "MOV     LR, PC\n"
 383                 "LDR     PC, [R3,#0x30]\n"
 384                 "LDR     R0, [SP,#0x0]\n"
 385                 "BL      sub_FFCE2154\n"
 386                 "B       loc_FFCE30F8\n"
 387 "loc_FFCE3004:\n"
 388                 "ADD     R6, SP, #0xC\n"
 389                 "ADD     R1, R12, #4\n"
 390                 "MOV     R0, R6\n"
 391                 "MOV     R2, #6\n"
 392                 "BL      _memcpy\n"
 393                 "LDR     R12, [SP,#0x0]\n"
 394                 "LDR     R3, [R12]\n"
 395                 "MOV     R0, R12\n"
 396                 "CMP     R3, #0x15\n"
 397                 "LDRLS   PC, [PC,R3,LSL#2]\n"
 398                 "B       loc_FFCE30E4\n"
 399                 ".long loc_FFCE3088\n"
 400                 ".long loc_FFCE3090\n"
 401                 ".long loc_FFCE3098\n"
 402                 ".long loc_FFCE3098\n"
 403                 ".long loc_FFCE3088\n"
 404                 ".long loc_FFCE3090\n"
 405                 ".long loc_FFCE3098\n"
 406                 ".long loc_FFCE3098\n"
 407                 ".long loc_FFCE30B0\n"
 408                 ".long loc_FFCE30B0\n"
 409                 ".long loc_FFCE30D4\n"
 410                 ".long loc_FFCE30DC\n"
 411                 ".long loc_FFCE30E4\n"
 412                 ".long loc_FFCE30E4\n"
 413                 ".long loc_FFCE30E4\n"
 414                 ".long loc_FFCE30A0\n"
 415                 ".long loc_FFCE30A8\n"
 416                 ".long loc_FFCE30BC\n"
 417                 ".long loc_FFCE30C4\n"
 418                 ".long loc_FFCE30C4\n"
 419                 ".long loc_FFCE30E4\n"
 420                 ".long loc_FFCE30CC\n"
 421 "loc_FFCE3088:\n"
 422                 "BL      sub_FFCE1628\n"
 423                 "B       loc_FFCE30E0\n"
 424 "loc_FFCE3090:\n"
 425                 "BL      sub_FFCE1764\n"
 426                 "B       loc_FFCE30E0\n"
 427 "loc_FFCE3098:\n"
 428                 "BL      sub_FFCE1894\n"
 429                 "B       loc_FFCE30E0\n"
 430 "loc_FFCE30A0:\n"
 431                 "BL      sub_FFCE1A68\n"
 432                 "B       loc_FFCE30E0\n"
 433 "loc_FFCE30A8:\n"
 434                 "BL      sub_FFCE1B70\n"
 435                 "B       loc_FFCE30E0\n"
 436 "loc_FFCE30B0:\n"
 437                 "BL      sub_FFCE1C34_my\n"  //---------->
 438                 "MOV     R8, #0\n"
 439                 "B       loc_FFCE30E0\n"
 440 "loc_FFCE30BC:\n"
 441                 "BL      sub_FFCE1CF8\n"
 442                 "B       loc_FFCE30E0\n"
 443 "loc_FFCE30C4:\n"
 444                 "BL      sub_FFCE1DE0\n"
 445                 "B       loc_FFCE30E0\n"
 446 "loc_FFCE30CC:\n"
 447                 "BL      sub_FFCE21E4\n"
 448                 "B       loc_FFCE30E0\n"
 449 "loc_FFCE30D4:\n"
 450                 "BL      sub_FFCE22B8\n"
 451                 "B       loc_FFCE30E0\n"
 452 "loc_FFCE30DC:\n"
 453                 "BL      sub_FFCE23A4\n"
 454 "loc_FFCE30E0:\n"
 455                 "LDR     R12, [SP,#0x0]\n"
 456 "loc_FFCE30E4:\n"
 457                 "ADD     R0, R12, #4\n"
 458                 "LDR     R1, [R12,#0x24]\n"
 459                 "LDR     R2, [R12,#0x34]\n"
 460                 "MOV     LR, PC\n"
 461                 "LDR     PC, [R12,#0x30]\n"
 462 "loc_FFCE30F8:\n"
 463                 "CMP     R8, #1\n"
 464                 "BNE     loc_FFCE3120\n"
 465                 "LDR     R1, [SP,#0x0]\n"
 466                 "LDR     R3, [R1,#0x24]\n"
 467                 "ADD     R3, R3, R3,LSL#1\n"
 468                 "ADD     R1, R1, R3,LSL#1\n"
 469                 "MOV     R0, R6\n"
 470                 "SUB     R1, R1, #2\n"
 471                 "BL      sub_FFCE14E0\n"
 472                 "B       loc_FFCE3140\n"
 473 "loc_FFCE3120:\n"
 474                 "MOV     R0, #1\n"
 475                 "MOV     R1, R0\n"
 476                 "MOV     R2, R0\n"
 477                 "BL      sub_FFCE1484\n"
 478                 "MOV     R0, #1\n"
 479                 "MOV     R1, R0\n"
 480                 "MOV     R2, R0\n"
 481                 "BL      sub_FFCE15A0\n"
 482 "loc_FFCE3140:\n"
 483                 "LDR     R0, [SP,#0x0]\n"
 484                 "BL      sub_FFCE114C\n"
 485 "loc_FFCE3148:\n"
 486                 "LDR     R3, =0x4FB70\n"
 487                 "MOV     R2, #0\n"
 488                 "LDR     R0, [R3]\n"
 489                 "MOV     R1, R7\n"
 490                 "BL      sub_FFC10074\n" //ReceiveMessageQueue
 491                 "LDR     R12, [SP,#0x0]\n"
 492                 "LDR     R2, [R12]\n"
 493                 "CMP     R2, #0x1A\n"
 494                 "BNE     loc_FFCE2E64\n"
 495                 "MOV     R0, R12\n"
 496                 "BL      sub_FFCE114C\n"
 497                 "LDR     R3, =0x4FB6C\n"
 498                 "MOV     R1, #1\n"
 499                 "LDR     R0, [R3]\n"
 500                 "BL      sub_FFC0F8C4\n" //SetEventFlag
 501                 "BL      _ExitTask\n"
 502                 "ADD     SP, SP, #0x14\n"
 503                 "LDMFD   SP!, {R4-R8,PC}\n"
 504  );
 505 }
 506 
 507 void __attribute__((naked,noinline)) sub_FFCE1C34_my(){
 508  asm volatile(
 509                 "STMFD   SP!, {R4,R5,LR}\n"
 510                 "LDR     R3, =0x4FB6C\n"
 511                 "MOV     R4, R0\n"
 512                 "MOV     R1, #0xE\n"
 513                 "LDR     R0, [R3]\n"
 514                 "BL      sub_FFC0FA60\n" //ClearEventFlag
 515                 "MOV     R1, #0\n"
 516                 "LDRSH   R0, [R4,#4]\n"
 517                 "BL      sub_FFCE11EC\n"
 518                 "MOV     R5, R0\n"
 519                 "LDRSH   R0, [R4,#6]\n"
 520                 "BL      sub_FFCE131C\n"
 521                 "LDRSH   R0, [R4,#8]\n"
 522                 "BL      sub_FFCE13B8\n"
 523                 "LDR     R3, [R4]\n"
 524                 "CMP     R3, #9\n"
 525                 "MOVEQ   R5, #0\n"
 526                 "CMP     R5, #1\n"
 527                 "LDR     R1, =0xFFCE117C\n"
 528                 "MOV     R2, #2\n"
 529                 "BNE     loc_FFCE1CA0\n"
 530                 "LDRSH   R0, [R4,#4]\n"
 531                 "BL      sub_FFE5CDA0\n"
 532                 "LDR     R2, =0x4FB98\n"
 533                 "MOV     R3, #0\n"
 534                 "STR     R3, [R2]\n"
 535                 "B       loc_FFCE1CA4\n"
 536 "loc_FFCE1CA0:\n"
 537                 "BL      sub_FFCE1454\n"
 538 "loc_FFCE1CA4:\n"
 539                 "STRH    R0, [R4,#4]\n"
 540                 "LDRSH   R0, [R4,#6]\n"
 541                 "BL      sub_FFC976B4_my\n"  //---------->
 542                 "BL      sub_FFC99638\n"
 543                 "LDRSH   R0, [R4,#8]\n"
 544                 "MOV     R1, #1\n"
 545                 "BL      sub_FFC99454\n"
 546                 "MOV     R1, #0\n"
 547                 "ADD     R0, R4, #8\n"
 548                 "BL      sub_FFC99518\n"
 549                 "CMP     R5, #1\n"
 550                 "MOV     R1, #2\n"
 551                 "MOV     R2, #0\n"
 552                 "LDMNEFD SP!, {R4,R5,PC}\n"
 553                 "LDR     R3, =0x4FB6C\n"
 554                 "LDR     R0, [R3]\n"
 555                 "LDMFD   SP!, {R4,R5,LR}\n"
 556                 "B       sub_FFC0F8B4\n"
 557   );
 558 }
 559 
 560 void __attribute__((naked,noinline)) sub_FFC976B4_my(){
 561  asm volatile(
 562                 "STMFD   SP!, {R4,LR}\n"
 563                 "LDR     R3, =0x5388\n"
 564                 "LDR     R2, [R3]\n"
 565                 "MOV     R3, R0,LSL#16\n"
 566                 "CMP     R2, #1\n"
 567                 "MOV     R1, #0x110\n"
 568                 "LDR     R0, =0xFFC97050\n"  //aShutter_c
 569                 "MOV     R4, R3,ASR#16\n"
 570                 "BEQ     loc_FFC976DC\n"
 571                 "BL      sub_FFC03AD0\n"  //DebugAssert
 572 "loc_FFC976DC:\n"
 573                 "MOV     R1, #0x114\n"
 574                 "CMN     R4, #0xC00\n"
 575                 "LDR     R3, =0x3609E\n"
 576                 "LDR     R0, =0xFFC97050\n"  //aShutter_c
 577                 "ADD     R1, R1, #2\n"
 578                 "LDREQSH R4, [R3]\n"
 579                 "LDRNE   R3, =0x3609E\n"
 580                 "CMN     R4, #0xC00\n"
 581                 "STRH    R4, [R3]\n"
 582                 "BNE     loc_FFC97708\n"
 583                 "BL      sub_FFC03AD0\n"  //DebugAssert
 584 "loc_FFC97708:\n"
 585                 "MOV     R0, R4\n"
 586                 "BL      apex2us\n"  //sub_FFC987EC  //---------->
 587                 "BL      sub_FFC96C44\n"
 588                 "TST     R0, #1\n"
 589                 "MOV     R1, #0x118\n"
 590                 "LDR     R0, =0xFFC97050\n"  //aShutter_c
 591                 "LDMEQFD SP!, {R4,PC}\n"
 592                 "LDMFD   SP!, {R4,LR}\n"
 593                 "B       sub_FFC03AD0\n"  //DebugAssert
 594   );
 595 }

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