root/platform/a3400/sub/101b/capt_seq.c

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

DEFINITIONS

This source file includes following definitions.
  1. capt_seq_task
  2. sub_FF968D38_my
  3. exp_drv_task
  4. sub_FF8AE740_my
  5. sub_FF89E38C_my

   1 #include "lolevel.h"
   2 #include "platform.h"
   3 #include "core.h"
   4 #include "conf.h"
   5 
   6 static long *nrflag = (long*)(0x8b64+0x00);  // Found @ ff9f718c & ff9f71d4
   7 #define NR_AUTO (0)                          // have to explictly reset value back to 0 to enable auto
   8 
   9 #define PAUSE_FOR_FILE_COUNTER 150           // Enable delay in capt_seq_hook_raw_here to ensure file counter is updated
  10 #include "../../../generic/capt_seq.c"
  11 
  12 //** capt_seq_task  @ 0xFF872424 
  13 
  14 void __attribute__((naked,noinline)) capt_seq_task() {
  15 asm volatile (
  16       "STMFD   SP!, {R3-R9,LR}\n"
  17       "LDR     R4, =0x376CC\n"
  18       "LDR     R7, =0x2BA8\n"
  19       "MOV     R6, #0\n"
  20 "loc_FF872434:\n"
  21       "LDR     R0, [R7, #4]\n"
  22       "MOV     R2, #0\n"
  23       "MOV     R1, SP\n"
  24       "BL      sub_003F7218 \n" // RAM
  25       "TST     R0, #1\n"
  26       "BEQ     loc_FF872460\n"
  27       "LDR     R1, =0x493\n"
  28       "LDR     R0, =0xFF871F90 \n" // "SsShootTask.c"
  29       "BL      _DebugAssert \n"
  30       "BL      _ExitTask \n"
  31       "LDMFD   SP!, {R3-R9,PC}\n"
  32 "loc_FF872460:\n"
  33       "LDR     R0, [SP]\n"
  34       "LDR     R1, [R0]\n"
  35       "CMP     R1, #0x20\n"
  36       "ADDCC   PC, PC, R1, LSL #2\n"
  37       "B       loc_FF8726BC\n"
  38       "B       loc_FF8724F4\n"
  39       "B       loc_FF87250C\n"
  40       "B       loc_FF872570\n"
  41       "B       loc_FF872584\n"
  42       "B       loc_FF87257C\n"
  43       "B       loc_FF872590\n"
  44       "B       loc_FF872598\n"
  45       "B       loc_FF8725A0\n"
  46       "B       loc_FF8725BC\n"
  47       "B       loc_FF8725E8\n"
  48       "B       loc_FF8725C8\n"
  49       "B       loc_FF8725D4\n"
  50       "B       loc_FF8725DC\n"
  51       "B       loc_FF8725F0\n"
  52       "B       loc_FF8725F8\n"
  53       "B       loc_FF872600\n"
  54       "B       loc_FF872608\n"
  55       "B       loc_FF872610\n"
  56       "B       loc_FF87261C\n"
  57       "B       loc_FF872624\n"
  58       "B       loc_FF87262C\n"
  59       "B       loc_FF872634\n"
  60       "B       loc_FF87263C\n"
  61       "B       loc_FF872648\n"
  62       "B       loc_FF872650\n"
  63       "B       loc_FF872658\n"
  64       "B       loc_FF872660\n"
  65       "B       loc_FF872668\n"
  66       "B       loc_FF872674\n"
  67       "B       loc_FF87267C\n"
  68       "B       loc_FF872688\n"
  69       "B       loc_FF8726C8\n"
  70 "loc_FF8724F4:\n"
  71       "BL               shooting_expo_iso_override\n"       // added
  72       "BL      sub_FF872C3C\n"
  73       "BL      shooting_expo_param_override\n"      // added
  74       "BL      sub_FF870230\n"
  75 //      "LDR     R0, [R4, #0x28]\n"
  76 //      "CMP     R0, #0\n"
  77 //      "BLNE    sub_FF968DD4\n" // above 3 lines removed - redundant with added lines below
  78       "MOV     R0, #0\n"         // patch added
  79       "STR     R0, [R4,#0x28]\n" //fixes overrides  behavior at short shutter press
  80       "B       loc_FF8726C8\n"
  81 "loc_FF87250C:\n"
  82       "LDR     R5, [R0, #0x10]\n"
  83       "LDR     R0, [R4, #0x28]\n"
  84       "CMP     R0, #0\n"
  85       "BNE     loc_FF872548\n"
  86       "BL      sub_FF873B4C\n"
  87       "MOV     R1, R5\n"
  88       "BL      sub_FF873BA4\n"
  89       "LDR     R0, =0x10F\n"
  90       "MOV     R2, #4\n"
  91       "ADD     R1, R5, #0x24\n"
  92       "BL      _SetPropertyCase \n"
  93       "MOV     R2, #4\n"
  94       "ADD     R1, R5, #0x28\n"
  95       "MOV     R0, #0x2C\n"
  96       "BL      _SetPropertyCase \n"
  97 "loc_FF872548:\n"
  98       "MOV     R0, R5\n"
  99 //      "BL      sub_FF968D38\n" //original
 100       "BL      sub_FF968D38_my \n" //patch
 101       "BL      capt_seq_hook_raw_here \n" // patch
 102       "MOV     R8, R0\n"
 103       "MOV     R2, R5\n"
 104       "MOV     R1, #1\n"
 105       "BL      sub_FF8706E0\n"
 106       "TST     R8, #1\n"
 107       "MOVEQ   R0, R5\n"
 108       "BLEQ    sub_FF9686B4\n"
 109       "B       loc_FF8726C8\n"
 110 "loc_FF872570:\n"
 111       "MOV     R0, #1\n"
 112       "BL      sub_FF872F0C\n"
 113       "B       loc_FF8726C8\n"
 114 "loc_FF87257C:\n"
 115       "BL      sub_FF872890\n"
 116       "B       loc_FF872588\n"
 117 "loc_FF872584:\n"
 118       "BL      sub_FF872C1C\n"
 119 "loc_FF872588:\n"
 120       "STR     R6, [R4, #0x28]\n"
 121       "B       loc_FF8726C8\n"
 122 "loc_FF872590:\n"
 123       "BL      sub_FF872C24\n"
 124       "B       loc_FF8726C8\n"
 125 "loc_FF872598:\n"
 126       "BL      sub_FF872DF4\n"
 127       "B       loc_FF8725C0\n"
 128 "loc_FF8725A0:\n"
 129       "LDR     R5, [R0, #0x10]\n"
 130       "MOV     R0, R5\n"
 131       "BL      sub_FF968E6C\n"
 132       "MOV     R2, R5\n"
 133       "MOV     R1, #9\n"
 134       "BL      sub_FF8706E0\n"
 135       "B       loc_FF8726C8\n"
 136 "loc_FF8725BC:\n"
 137       "BL      sub_FF872E74\n"
 138 "loc_FF8725C0:\n"
 139       "BL      sub_FF870230\n"
 140       "B       loc_FF8726C8\n"
 141 "loc_FF8725C8:\n"
 142       "LDR     R0, [R4, #0x58]\n"
 143       "BL      sub_FF8732FC\n"
 144       "B       loc_FF8726C8\n"
 145 "loc_FF8725D4:\n"
 146       "BL      sub_FF8736BC\n"
 147       "B       loc_FF8726C8\n"
 148 "loc_FF8725DC:\n"
 149       "MOV     R0, #0\n"
 150       "BL      sub_FF873720\n"
 151       "B       loc_FF8726C8\n"
 152 "loc_FF8725E8:\n"
 153       "BL      sub_FF872C1C\n"
 154       "B       loc_FF8726C8\n"
 155 "loc_FF8725F0:\n"
 156       "BL      sub_FF967A58\n"
 157       "B       loc_FF8726C8\n"
 158 "loc_FF8725F8:\n"
 159       "BL      sub_FF967CB8\n"
 160       "B       loc_FF8726C8\n"
 161 "loc_FF872600:\n"
 162       "BL      sub_FF967D70\n"
 163       "B       loc_FF8726C8\n"
 164 "loc_FF872608:\n"
 165       "BL      sub_FF967E44\n"
 166       "B       loc_FF8726C8\n"
 167 "loc_FF872610:\n"
 168       "MOV     R0, #0\n"
 169       "BL      sub_FF9680A4\n"
 170       "B       loc_FF8726C8\n"
 171 "loc_FF87261C:\n"
 172       "BL      sub_FF968214\n"
 173       "B       loc_FF8726C8\n"
 174 "loc_FF872624:\n"
 175       "BL      sub_FF9682A8\n"
 176       "B       loc_FF8726C8\n"
 177 "loc_FF87262C:\n"
 178       "BL      sub_FF968364\n"
 179       "B       loc_FF8726C8\n"
 180 "loc_FF872634:\n"
 181       "BL      sub_FF873080\n"
 182       "B       loc_FF8726C8\n"
 183 "loc_FF87263C:\n"
 184       "BL      sub_FF873104\n"
 185       "BL      sub_FF8322CC\n"
 186       "B       loc_FF8726C8\n"
 187 "loc_FF872648:\n"
 188       "BL      sub_FF967F14\n"
 189       "B       loc_FF8726C8\n"
 190 "loc_FF872650:\n"
 191       "BL      sub_FF967F54\n"
 192       "B       loc_FF8726C8\n"
 193 "loc_FF872658:\n"
 194       "BL      sub_FF875028\n"
 195       "B       loc_FF8726C8\n"
 196 "loc_FF872660:\n"
 197       "BL      sub_FF87509C\n"
 198       "B       loc_FF8726C8\n"
 199 "loc_FF872668:\n"
 200       "LDR     R0, [R0, #0xC]\n"
 201       "BL      sub_FF96848C\n"
 202       "B       loc_FF8726C8\n"
 203 "loc_FF872674:\n"
 204       "BL      sub_FF9684FC\n"
 205       "B       loc_FF8726C8\n"
 206 "loc_FF87267C:\n"
 207       "BL      sub_FF875104\n"
 208       "BL      sub_FF8750BC\n"
 209       "B       loc_FF8726C8\n"
 210 "loc_FF872688:\n"
 211       "MOV     R0, #1\n"
 212       "BL      sub_FF96956C\n"
 213       "MOV     R0, #1\n"
 214       "BL      sub_FF969694\n"
 215       "LDRH    R0, [R4, #0x9C]\n"
 216       "CMP     R0, #4\n"
 217       "LDRNEH  R0, [R4]\n"
 218       "SUBNE   R1, R0, #0x8200\n"
 219       "SUBNES  R1, R1, #0x2E\n"
 220       "BNE     loc_FF8726C8\n"
 221       "BL      sub_FF87509C\n"
 222       "BL      sub_FF875560\n"
 223       "B       loc_FF8726C8\n"
 224 "loc_FF8726BC:\n"
 225       "LDR     R1, =0x5F4\n"
 226       "LDR     R0, =0xFF871F90 \n" // "SsShootTask.c"
 227       "BL      _DebugAssert \n"
 228 "loc_FF8726C8:\n"
 229       "LDR     R0, [SP]\n"
 230       "LDR     R1, [R0, #4]\n"
 231       "LDR     R0, [R7]\n"
 232       "BL      sub_003FAC6C\n"
 233       "LDR     R5, [SP]\n"
 234       "LDR     R0, [R5, #8]\n"
 235       "CMP     R0, #0\n"
 236       "LDREQ   R1, =0x117\n"
 237       "LDREQ   R0, =0xFF871F90 \n" // "SsShootTask.c"
 238       "BLEQ    _DebugAssert \n"
 239       "STR     R6, [R5, #8]\n"
 240       "B       loc_FF872434\n"
 241         );
 242 }
 243 
 244 //** sub_FF968D38_my  @ 0xFF968D38
 245 //CHECK THIS!!!
 246 void __attribute__((naked,noinline)) sub_FF968D38_my() {
 247 asm volatile (
 248       "STMFD   SP!, {R4-R6,LR}\n"
 249       "LDR     R5, =0x376CC\n"
 250       "MOV     R6, R0\n"
 251       "LDR     R0, [R5, #0x28]\n"
 252       "MOV     R4, #0\n"
 253       "CMP     R0, #0\n"
 254       "BNE     loc_FF968D68\n"
 255       "MOV     R0, #0xC\n"
 256       "BL      sub_FF876C00\n"
 257       "TST     R0, #1\n"
 258       "MOVNE   R0, #1\n"
 259       "LDMNEFD SP!, {R4-R6,PC}\n"
 260 "loc_FF968D68:\n"
 261       "BL      sub_FF872C2C\n"
 262       "LDR     R0, [R5, #0x28]\n"
 263       "CMP     R0, #0\n"
 264       "BNE     loc_FF968DB8\n"
 265       "MOV     R0, R6\n"
 266       "BL      sub_FF9685F4\n"
 267       "TST     R0, #1\n"
 268       "LDMNEFD SP!, {R4-R6,PC}\n"
 269       "MOV     R0, R6\n"
 270       "BL      sub_FF968988\n"
 271       "BL      sub_FF96934C\n"
 272 
 273 //This was not tested:
 274 //begin patch
 275       "BL      wait_until_remote_button_is_released\n"
 276       "BL      capt_seq_hook_set_nr\n"
 277 //end patch
 278       "MOV     R0, #2\n"
 279       "BL      sub_FF878360\n"
 280       "LDR     R0, [R5, #0x8C]\n"
 281       "TST     R0, #0x10\n"
 282       "BNE     loc_FF968DC8\n"
 283       "MOV     R0, R6\n"
 284       "BL      sub_FFA87D48\n"  //original
 285 //      "BL      sub_FFA87D48_my \n" //This function calls "SsStandardCaptureSeq.c"
 286       "MOV     R4, R0\n"
 287       "B       loc_FF968DCC\n"
 288 "loc_FF968DB8:\n"
 289       "LDR     R0, =0x694C\n"
 290       "LDR     R0, [R0]\n"
 291       "CMP     R0, #0\n"
 292       "BEQ     loc_FF968DCC\n"
 293 "loc_FF968DC8:\n"
 294       "MOV     R4, #0x1D\n"
 295 "loc_FF968DCC:\n"
 296       "MOV     R0, R4\n"
 297       "LDMFD   SP!, {R4-R6,PC}\n"
 298         );
 299 }
 300 
 301 //** sub_FFA87D48_my  @ 0xFFA87D48 
 302 /*
 303 void __attribute__((naked,noinline)) sub_FFA87D48_my() {
 304 asm volatile (
 305       "STMFD   SP!, {R3-R9,LR}\n"
 306       "MOV     R4, R0\n"
 307       "LDR     R1, =0xB624\n"
 308       "MOV     R2, #4\n"
 309       "MOV     R0, #0x130\n"
 310       "BL      _GetPropertyCase \n"
 311       "TST     R0, #1\n"
 312       "MOVNE   R1, #0x230\n"
 313       "LDRNE   R0, =0xFFA87F74\n" // "SsStandardCaptureSeq.c"
 314       "BLNE    _DebugAssert \n"
 315       "LDR     R6, =0xB61C\n"
 316       "LDR     R0, [R6, #8]\n"
 317       "AND     R0, R0, #0xFF00\n"
 318       "CMP     R0, #0x600\n"
 319       "LDRNE   R0, =0xFF9686CC\n"
 320       "LDREQ   R0, =0xFFA87AC0\n"
 321       "MOVNE   R1, R4\n"
 322       "MOVEQ   R1, #0\n"
 323       "BL      sub_FF8A6598\n"
 324       "MOV     R0, R4\n"
 325       "BL      sub_FF968684\n"
 326       "MOV     R0, R4\n"
 327       "BL      sub_FF968A58\n"
 328       "MOV     R8, R0\n"
 329       "LDR     R1, =0xB620\n"
 330       "MOV     R2, #4\n"
 331       "MOV     R0, #0x8A\n"
 332       "BL      _GetPropertyCase \n"
 333       "TST     R0, #1\n"
 334       "LDRNE   R1, =0x23D\n"
 335       "LDRNE   R0, =0xFFA87F74\n" // "SsStandardCaptureSeq.c"
 336       "BLNE    _DebugAssert \n"
 337       "BL      sub_FF874DA0\n"
 338       "BL      sub_FF968C60\n"
 339       "CMP     R8, #0xA\n"
 340       "MOV     R7, #0\n"
 341       "MOV     R5, #1\n"
 342       "ADDCC   PC, PC, R8, LSL #2\n"
 343       "B       loc_FFA87EA8\n"
 344       "B       loc_FFA87EA8\n"
 345       "B       loc_FFA87E0C\n"
 346       "B       loc_FFA87E1C\n"
 347       "B       loc_FFA87E38\n"
 348       "B       loc_FFA87E48\n"
 349       "B       loc_FFA87E74\n"
 350       "B       loc_FFA87EA8\n"
 351       "B       loc_FFA87EA8\n"
 352       "B       loc_FFA87EA8\n"
 353       "B       loc_FFA87E8C\n"
 354 "loc_FFA87E0C:\n"
 355       "MOV     R0, #1\n"
 356       "BL      sub_FF8A65B4\n"
 357       "STRH    R7, [R4, #0x10]\n"
 358       "B       loc_FFA87E9C\n"
 359 "loc_FFA87E1C:\n"
 360       "MOV     R0, #1\n"
 361       "BL      sub_FF8A65B4\n"
 362       "MOV     R0, R4\n"
 363       "STRH    R5, [R4, #0x10]\n"
 364       "BL      sub_FFA87BD0\n"
 365 "loc_FFA87E30:\n"
 366       "MOV     R5, R0\n"
 367       "B       loc_FFA87EB8\n"
 368 "loc_FFA87E38:\n"
 369       "MOV     R0, #1\n"
 370       "BL      sub_FF8A65B4\n"
 371       "MOV     R0, #1\n"
 372       "B       loc_FFA87E54\n"
 373 "loc_FFA87E48:\n"
 374       "MOV     R0, #1\n"
 375       "BL      sub_FF8A65B4\n"
 376       "MOV     R0, #2\n"
 377 "loc_FFA87E54:\n"
 378       "BL      sub_FF8A6718\n"
 379       "MOV     R0, R4\n"
 380       "STRH    R5, [R4, #0x10]\n"
 381       "BL      sub_FFA87BD0\n"
 382       "MOV     R5, R0\n"
 383       "MOV     R0, #0\n"
 384       "BL      sub_FF8A6718\n"
 385       "B       loc_FFA87EB8\n"
 386 "loc_FFA87E74:\n"
 387       "MOV     R0, #1\n"
 388       "BL      sub_FF8A65B4\n"
 389       "MOV     R0, R4\n"
 390       "STRH    R7, [R4, #0x10]\n"
 391       "BL      sub_FFA87C98\n"
 392       "B       loc_FFA87E30\n"
 393 "loc_FFA87E8C:\n"
 394       "MOV     R0, #0\n"
 395       "BL      sub_FF8A65B4\n"
 396       "MOV     R0, #4\n"
 397       "STRH    R0, [R4, #0x10]\n"
 398 "loc_FFA87E9C:\n"
 399       "MOV     R0, R4\n"
 400       "BL      sub_FFA87B50\n"
 401       "B       loc_FFA87E30\n"
 402 "loc_FFA87EA8:\n"
 403       "LDR     R1, =0x286\n"
 404       "LDR     R0, =0xFFA87F74\n" // "SsStandardCaptureSeq.c"
 405       "BL      _DebugAssert \n"
 406       "MOV     R5, #0x1D\n"
 407 "loc_FFA87EB8:\n"
 408       "BL      sub_FF968CB0\n"
 409       "TST     R5, #1\n"
 410       "MOVNE   R0, R5\n"
 411       "BNE     loc_FFA87F50\n"
 412       "MOV     R0, R4\n"
 413       "BL      sub_FF968B84\n"
 414       "MOV     R0, R4\n"
 415       "BL      sub_FF968B20\n"
 416       "LDR     R0, [R6]\n"
 417       "CMP     R0, #0\n"
 418       "BNE     loc_FFA87EF8\n"
 419       "LDRH    R0, [R4, #0x10]\n"
 420       "CMP     R0, #1\n"
 421       "CMPNE   R0, #3\n"
 422       "CMPNE   R0, #5\n"
 423       "BEQ     loc_FFA87F4C\n"
 424 "loc_FFA87EF8:\n"
 425       "BL      sub_FF969854\n"
 426       "LDR     R5, =0x2A3\n"
 427       "LDR     R2, =0x3A98\n"
 428       "LDR     R3, =0xFFA87F74\n" // "SsStandardCaptureSeq.c"
 429       "MOV     R1, #0xC\n"
 430       "STR     R5, [SP]\n"
 431       "BL      sub_FF876E68\n"
 432       "CMP     R0, #0\n"
 433       "MOVNE   R1, R5\n"
 434       "LDRNE   R0, =0xFFA87F74\n" // "SsStandardCaptureSeq.c"
 435       "BLNE    _DebugAssert \n"
 436       "LDR     R0, =0x376CC\n"
 437       "LDR     R1, [R0, #0x8C]\n"
 438       "TST     R1, #2\n"
 439       "BNE     loc_FFA87F4C\n"
 440       "LDRH    R0, [R0, #0x9A]\n"
 441       "CMP     R0, #3\n"
 442       "LDRNE   R0, [R4, #8]\n"
 443       "CMPNE   R0, #1\n"
 444       "MOVLS   R0, R4\n"
 445       "BLLS    sub_FF968754\n"
 446 "loc_FFA87F4C:\n"
 447       "MOV     R0, #0\n"
 448 "loc_FFA87F50:\n"
 449       "LDMFD   SP!, {R3-R9,PC}\n"
 450         );
 451 }
 452 */
 453 
 454 //** exp_drv_task  @ 0xFF8B1AD0 
 455 
 456 void __attribute__((naked,noinline)) exp_drv_task() {
 457 asm volatile (
 458       "STMFD   SP!, {R4-R9,LR}\n"
 459       "SUB     SP, SP, #0x2C\n"
 460       "LDR     R6, =0x3E3C\n"
 461       "LDR     R7, =0xBB8\n"
 462       "LDR     R4, =0x5467C\n"
 463       "MOV     R0, #0\n"
 464       "ADD     R5, SP, #0x1C\n"
 465       "STR     R0, [SP, #0xC]\n"
 466 "loc_FF8B1AF0:\n"
 467       "LDR     R0, [R6, #0x20]\n"
 468       "MOV     R2, #0\n"
 469       "ADD     R1, SP, #0x28\n"
 470       "BL      sub_003F7218\n"
 471       "LDR     R0, [SP, #0xC]\n"
 472       "CMP     R0, #1\n"
 473       "BNE     loc_FF8B1B3C\n"
 474       "LDR     R0, [SP, #0x28]\n"
 475       "LDR     R0, [R0]\n"
 476       "CMP     R0, #0x14\n"
 477       "CMPNE   R0, #0x15\n"
 478       "CMPNE   R0, #0x16\n"
 479       "CMPNE   R0, #0x17\n"
 480       "BEQ     loc_FF8B1C9C\n"
 481       "CMP     R0, #0x2A\n"
 482       "BEQ     loc_FF8B1C24\n"
 483       "ADD     R1, SP, #0xC\n"
 484       "MOV     R0, #0\n"
 485       "BL      sub_FF8B1A80\n"
 486 "loc_FF8B1B3C:\n"
 487       "LDR     R0, [SP, #0x28]\n"
 488       "LDR     R1, [R0]\n"
 489       "CMP     R1, #0x30\n"
 490       "BNE     loc_FF8B1B68\n"
 491       "BL      sub_FF8B2EB0\n"
 492       "LDR     R0, [R6, #0x1C]\n"
 493       "MOV     R1, #1\n"
 494       "BL      sub_003FAC6C\n"
 495       "BL      _ExitTask \n"
 496       "ADD     SP, SP, #0x2C\n"
 497       "LDMFD   SP!, {R4-R9,PC}\n"
 498 "loc_FF8B1B68:\n"
 499       "CMP     R1, #0x2F\n"
 500       "BNE     loc_FF8B1B84\n"
 501       "LDR     R2, [R0, #0x8C]!\n"
 502       "LDR     R1, [R0, #4]\n"
 503       "MOV     R0, R1\n"
 504       "BLX     R2\n"
 505       "B       loc_FF8B2158\n"
 506 "loc_FF8B1B84:\n"
 507       "CMP     R1, #0x28\n"
 508       "BNE     loc_FF8B1BD4\n"
 509       "LDR     R0, [R6, #0x1C]\n"
 510       "MOV     R1, #0x80\n"
 511       "BL      sub_003FACA0\n"
 512       "LDR     R0, =0xFF8AD3E4\n"
 513       "MOV     R1, #0x80\n"
 514       "BL      sub_FF959AD8\n"
 515       "LDR     R0, [R6, #0x1C]\n"
 516       "MOV     R2, R7\n"
 517       "MOV     R1, #0x80\n"
 518       "BL      sub_003FABAC\n"
 519       "TST     R0, #1\n"
 520       "LDRNE   R1, =0x157A\n"
 521       "BNE     loc_FF8B1C90\n"
 522 "loc_FF8B1BC0:\n"
 523       "LDR     R1, [SP, #0x28]\n"
 524       "LDR     R0, [R1, #0x90]\n"
 525       "LDR     R1, [R1, #0x8C]\n"
 526       "BLX     R1\n"
 527       "B       loc_FF8B2158\n"
 528 "loc_FF8B1BD4:\n"
 529       "CMP     R1, #0x29\n"
 530       "BNE     loc_FF8B1C1C\n"
 531       "ADD     R1, SP, #0xC\n"
 532       "BL      sub_FF8B1A80\n"
 533       "LDR     R0, [R6, #0x1C]\n"
 534       "MOV     R1, #0x100\n"
 535       "BL      sub_003FACA0\n"
 536       "LDR     R0, =0xFF8AD3F4\n"
 537       "MOV     R1, #0x100\n"
 538       "BL      sub_FF959C78\n"
 539       "LDR     R0, [R6, #0x1C]\n"
 540       "MOV     R2, R7\n"
 541       "MOV     R1, #0x100\n"
 542       "BL      sub_003FABAC\n"
 543       "TST     R0, #1\n"
 544       "BEQ     loc_FF8B1BC0\n"
 545       "LDR     R1, =0x1584\n"
 546       "B       loc_FF8B1C90\n"
 547 "loc_FF8B1C1C:\n"
 548       "CMP     R1, #0x2A\n"
 549       "BNE     loc_FF8B1C34\n"
 550 "loc_FF8B1C24:\n"
 551       "LDR     R0, [SP, #0x28]\n"
 552       "ADD     R1, SP, #0xC\n"
 553       "BL      sub_FF8B1A80\n"
 554       "B       loc_FF8B1BC0\n"
 555 "loc_FF8B1C34:\n"
 556       "CMP     R1, #0x2D\n"
 557       "BNE     loc_FF8B1C4C\n"
 558       "BL      sub_FF89E640\n"
 559       "BL      sub_FF89F328\n"
 560       "BL      sub_FF89EE90\n"
 561       "B       loc_FF8B1BC0\n"
 562 "loc_FF8B1C4C:\n"
 563       "CMP     R1, #0x2E\n"
 564       "BNE     loc_FF8B1C9C\n"
 565       "LDR     R0, [R6, #0x1C]\n"
 566       "MOV     R1, #4\n"
 567       "BL      sub_003FACA0\n"
 568       "LDR     R1, =0xFF8AD414\n"
 569       "LDR     R0, =0xFFFFF400\n"
 570       "MOV     R2, #4\n"
 571       "BL      sub_FF89E090\n"
 572       "BL      sub_FF89E320\n"
 573       "LDR     R0, [R6, #0x1C]\n"
 574       "MOV     R2, R7\n"
 575       "MOV     R1, #4\n"
 576       "BL      sub_003FAAC8\n"
 577       "TST     R0, #1\n"
 578       "BEQ     loc_FF8B1BC0\n"
 579       "LDR     R1, =0x15AC\n"
 580 "loc_FF8B1C90:\n"
 581       "LDR     R0, =0xFF8ADB08\n"
 582       "BL      _DebugAssert \n"
 583       "B       loc_FF8B1BC0\n"
 584 "loc_FF8B1C9C:\n"
 585       "LDR     R0, [SP, #0x28]\n"
 586       "MOV     R8, #1\n"
 587       "LDR     R1, [R0]\n"
 588       "CMP     R1, #0x12\n"
 589       "CMPNE   R1, #0x13\n"
 590       "BNE     loc_FF8B1D04\n"
 591       "LDR     R1, [R0, #0x7C]\n"
 592       "ADD     R1, R1, R1, LSL #1\n"
 593       "ADD     R1, R0, R1, LSL #2\n"
 594       "SUB     R1, R1, #8\n"
 595       "LDMIA   R1, {R2,R3,R9}\n"
 596       "STMIA   R5, {R2,R3,R9}\n"
 597       "BL      sub_FF8B0020\n"
 598       "LDR     R0, [SP, #0x28]\n"
 599       "LDR     R1, [R0, #0x7C]\n"
 600       "LDR     R3, [R0, #0x8C]\n"
 601       "LDR     R2, [R0, #0x90]\n"
 602       "ADD     R0, R0, #4\n"
 603       "BLX     R3\n"
 604       "LDR     R0, [SP, #0x28]\n"
 605       "BL      sub_FF8B32B4\n"
 606       "LDR     R0, [SP, #0x28]\n"
 607       "LDR     R1, [R0, #0x7C]\n"
 608       "LDR     R2, [R0, #0x98]\n"
 609       "LDR     R3, [R0, #0x94]\n"
 610       "B       loc_FF8B201C\n"
 611 "loc_FF8B1D04:\n"
 612       "CMP     R1, #0x14\n"
 613       "CMPNE   R1, #0x15\n"
 614       "CMPNE   R1, #0x16\n"
 615       "CMPNE   R1, #0x17\n"
 616       "BNE     loc_FF8B1DBC\n"
 617       "ADD     R3, SP, #0xC\n"
 618       "MOV     R2, SP\n"
 619       "ADD     R1, SP, #0x1C\n"
 620       "BL      sub_FF8B0280\n"
 621       "CMP     R0, #1\n"
 622       "MOV     R9, R0\n"
 623       "CMPNE   R9, #5\n"
 624       "BNE     loc_FF8B1D58\n"
 625       "LDR     R0, [SP, #0x28]\n"
 626       "MOV     R2, R9\n"
 627       "LDR     R1, [R0, #0x7C]!\n"
 628       "LDR     R12, [R0, #0x10]!\n"
 629       "LDR     R3, [R0, #4]\n"
 630       "MOV     R0, SP\n"
 631       "BLX     R12\n"
 632       "B       loc_FF8B1D90\n"
 633 "loc_FF8B1D58:\n"
 634       "LDR     R0, [SP, #0x28]\n"
 635       "CMP     R9, #2\n"
 636       "LDR     R3, [R0, #0x90]\n"
 637       "CMPNE   R9, #6\n"
 638       "BNE     loc_FF8B1DA4\n"
 639       "LDR     R12, [R0, #0x8C]\n"
 640       "MOV     R2, R9\n"
 641       "MOV     R1, #1\n"
 642       "MOV     R0, SP\n"
 643       "BLX     R12\n"
 644       "LDR     R0, [SP, #0x28]\n"
 645       "MOV     R2, SP\n"
 646       "ADD     R1, SP, #0x1C\n"
 647       "BL      sub_FF8B1770\n"
 648 "loc_FF8B1D90:\n"
 649       "LDR     R0, [SP, #0x28]\n"
 650       "LDR     R2, [SP, #0xC]\n"
 651       "MOV     R1, R9\n"
 652       "BL      sub_FF8B19C0\n"
 653       "B       loc_FF8B2024\n"
 654 "loc_FF8B1DA4:\n"
 655       "LDR     R1, [R0, #0x7C]\n"
 656       "LDR     R12, [R0, #0x8C]\n"
 657       "MOV     R2, R9\n"
 658       "ADD     R0, R0, #4\n"
 659       "BLX     R12\n"
 660       "B       loc_FF8B2024\n"
 661 "loc_FF8B1DBC:\n"
 662       "CMP     R1, #0x24\n"
 663       "CMPNE   R1, #0x25\n"
 664       "BNE     loc_FF8B1E08\n"
 665       "LDR     R1, [R0, #0x7C]\n"
 666       "ADD     R1, R1, R1, LSL #1\n"
 667       "ADD     R1, R0, R1, LSL #2\n"
 668       "SUB     R1, R1, #8\n"
 669       "LDMIA   R1, {R2,R3,R9}\n"
 670       "STMIA   R5, {R2,R3,R9}\n"
 671       "BL      sub_FF8AF00C\n"
 672       "LDR     R0, [SP, #0x28]\n"
 673       "LDR     R1, [R0, #0x7C]\n"
 674       "LDR     R3, [R0, #0x8C]\n"
 675       "LDR     R2, [R0, #0x90]\n"
 676       "ADD     R0, R0, #4\n"
 677       "BLX     R3\n"
 678       "LDR     R0, [SP, #0x28]\n"
 679       "BL      sub_FF8AF44C\n"
 680       "B       loc_FF8B2024\n"
 681 "loc_FF8B1E08:\n"
 682       "ADD     R1, R0, #4\n"
 683       "LDMIA   R1, {R2,R3,R9}\n"
 684       "STMIA   R5, {R2,R3,R9}\n"
 685       "LDR     R1, [R0]\n"
 686       "CMP     R1, #0x28\n"
 687       "ADDCC   PC, PC, R1, LSL #2\n"
 688       "B       loc_FF8B200C\n"
 689       "B       loc_FF8B1EC4\n"
 690       "B       loc_FF8B1EC4\n"
 691       "B       loc_FF8B1ECC\n"
 692       "B       loc_FF8B1ED4\n"
 693       "B       loc_FF8B1ED4\n"
 694       "B       loc_FF8B1ED4\n"
 695       "B       loc_FF8B1EC4\n"
 696       "B       loc_FF8B1ECC\n"
 697       "B       loc_FF8B1ED4\n"
 698       "B       loc_FF8B1ED4\n"
 699       "B       loc_FF8B1EEC\n"
 700       "B       loc_FF8B1EEC\n"
 701       "B       loc_FF8B1FF8\n"
 702       "B       loc_FF8B2000\n"
 703       "B       loc_FF8B2000\n"
 704       "B       loc_FF8B2000\n"
 705       "B       loc_FF8B2000\n"
 706       "B       loc_FF8B2008\n"
 707       "B       loc_FF8B200C\n"
 708       "B       loc_FF8B200C\n"
 709       "B       loc_FF8B200C\n"
 710       "B       loc_FF8B200C\n"
 711       "B       loc_FF8B200C\n"
 712       "B       loc_FF8B200C\n"
 713       "B       loc_FF8B1EDC\n"
 714       "B       loc_FF8B1EE4\n"
 715       "B       loc_FF8B1EE4\n"
 716       "B       loc_FF8B1EE4\n"
 717       "B       loc_FF8B1EF8\n"
 718       "B       loc_FF8B1EF8\n"
 719       "B       loc_FF8B1F00\n"
 720       "B       loc_FF8B1F38\n"
 721       "B       loc_FF8B1F70\n"
 722       "B       loc_FF8B1FA8\n"
 723       "B       loc_FF8B1FE0\n"
 724       "B       loc_FF8B1FE0\n"
 725       "B       loc_FF8B200C\n"
 726       "B       loc_FF8B200C\n"
 727       "B       loc_FF8B1FE8\n"
 728       "B       loc_FF8B1FF0\n"
 729 "loc_FF8B1EC4:\n"
 730       "BL      sub_FF8AD98C\n"
 731       "B       loc_FF8B200C\n"
 732 "loc_FF8B1ECC:\n"
 733       "BL      sub_FF8ADC30\n"
 734       "B       loc_FF8B200C\n"
 735 "loc_FF8B1ED4:\n"
 736       "BL      sub_FF8ADE58\n"
 737       "B       loc_FF8B200C\n"
 738 "loc_FF8B1EDC:\n"
 739       "BL      sub_FF8AE17C\n"
 740       "B       loc_FF8B200C\n"
 741 "loc_FF8B1EE4:\n"
 742       "BL      sub_FF8AE394\n"
 743       "B       loc_FF8B200C\n"
 744 "loc_FF8B1EEC:\n"
 745 //      "BL      sub_FF8AE740\n"  //original
 746       "BL      sub_FF8AE740_my\n" //patched
 747       "MOV     R8, #0\n"
 748       "B       loc_FF8B200C\n"
 749 "loc_FF8B1EF8:\n"
 750       "BL      sub_FF8AE880\n"
 751       "B       loc_FF8B200C\n"
 752 "loc_FF8B1F00:\n"
 753       "LDRH    R1, [R0, #4]\n"
 754       "STRH    R1, [SP, #0x1C]\n"
 755       "LDRH    R1, [R4, #2]\n"
 756       "STRH    R1, [SP, #0x1E]\n"
 757       "LDRH    R1, [R4, #4]\n"
 758       "STRH    R1, [SP, #0x20]\n"
 759       "LDRH    R1, [R4, #6]\n"
 760       "STRH    R1, [SP, #0x22]\n"
 761       "LDRH    R1, [R0, #0xC]\n"
 762       "STRH    R1, [SP, #0x24]\n"
 763       "LDRH    R1, [R4, #0xA]\n"
 764       "STRH    R1, [SP, #0x26]\n"
 765       "BL      sub_FF8B2F44\n"
 766       "B       loc_FF8B200C\n"
 767 "loc_FF8B1F38:\n"
 768       "LDRH    R1, [R0, #4]\n"
 769       "STRH    R1, [SP, #0x1C]\n"
 770       "LDRH    R1, [R4, #2]\n"
 771       "STRH    R1, [SP, #0x1E]\n"
 772       "LDRH    R1, [R4, #4]\n"
 773       "STRH    R1, [SP, #0x20]\n"
 774       "LDRH    R1, [R4, #6]\n"
 775       "STRH    R1, [SP, #0x22]\n"
 776       "LDRH    R1, [R4, #8]\n"
 777       "STRH    R1, [SP, #0x24]\n"
 778       "LDRH    R1, [R4, #0xA]\n"
 779       "STRH    R1, [SP, #0x26]\n"
 780       "BL      sub_FF8B30B4\n"
 781       "B       loc_FF8B200C\n"
 782 "loc_FF8B1F70:\n"
 783       "LDRH    R1, [R4]\n"
 784       "STRH    R1, [SP, #0x1C]\n"
 785       "LDRH    R1, [R0, #6]\n"
 786       "STRH    R1, [SP, #0x1E]\n"
 787       "LDRH    R1, [R4, #4]\n"
 788       "STRH    R1, [SP, #0x20]\n"
 789       "LDRH    R1, [R4, #6]\n"
 790       "STRH    R1, [SP, #0x22]\n"
 791       "LDRH    R1, [R4, #8]\n"
 792       "STRH    R1, [SP, #0x24]\n"
 793       "LDRH    R1, [R4, #0xA]\n"
 794       "STRH    R1, [SP, #0x26]\n"
 795       "BL      sub_FF8B3168\n"
 796       "B       loc_FF8B200C\n"
 797 "loc_FF8B1FA8:\n"
 798       "LDRH    R1, [R4]\n"
 799       "STRH    R1, [SP, #0x1C]\n"
 800       "LDRH    R1, [R4, #2]\n"
 801       "STRH    R1, [SP, #0x1E]\n"
 802       "LDRH    R1, [R4, #4]\n"
 803       "STRH    R1, [SP, #0x20]\n"
 804       "LDRH    R1, [R4, #6]\n"
 805       "STRH    R1, [SP, #0x22]\n"
 806       "LDRH    R1, [R0, #0xC]\n"
 807       "STRH    R1, [SP, #0x24]\n"
 808       "LDRH    R1, [R4, #0xA]\n"
 809       "STRH    R1, [SP, #0x26]\n"
 810       "BL      sub_FF8B3210\n"
 811       "B       loc_FF8B200C\n"
 812 "loc_FF8B1FE0:\n"
 813       "BL      sub_FF8AEDC0\n"
 814       "B       loc_FF8B200C\n"
 815 "loc_FF8B1FE8:\n"
 816       "BL      sub_FF8AF550\n"
 817       "B       loc_FF8B200C\n"
 818 "loc_FF8B1FF0:\n"
 819       "BL      sub_FF8AF834\n"
 820       "B       loc_FF8B200C\n"
 821 "loc_FF8B1FF8:\n"
 822       "BL      sub_FF8AFAF4\n"
 823       "B       loc_FF8B200C\n"
 824 "loc_FF8B2000:\n"
 825       "BL      sub_FF8AFCB0\n"
 826       "B       loc_FF8B200C\n"
 827 "loc_FF8B2008:\n"
 828       "BL      sub_FF8AFE18\n"
 829 "loc_FF8B200C:\n"
 830       "LDR     R0, [SP, #0x28]\n"
 831       "LDR     R1, [R0, #0x7C]\n"
 832       "LDR     R2, [R0, #0x90]\n"
 833       "LDR     R3, [R0, #0x8C]\n"
 834 "loc_FF8B201C:\n"
 835       "ADD     R0, R0, #4\n"
 836       "BLX     R3\n"
 837 "loc_FF8B2024:\n"
 838       "LDR     R0, [SP, #0x28]\n"
 839       "LDR     R0, [R0]\n"
 840       "CMP     R0, #0x10\n"
 841       "BEQ     loc_FF8B205C\n"
 842       "BGT     loc_FF8B204C\n"
 843       "CMP     R0, #1\n"
 844       "CMPNE   R0, #4\n"
 845       "CMPNE   R0, #0xE\n"
 846       "BNE     loc_FF8B2090\n"
 847       "B       loc_FF8B205C\n"
 848 "loc_FF8B204C:\n"
 849       "CMP     R0, #0x13\n"
 850       "CMPNE   R0, #0x17\n"
 851       "CMPNE   R0, #0x1A\n"
 852       "BNE     loc_FF8B2090\n"
 853 "loc_FF8B205C:\n"
 854       "LDRSH   R0, [R4]\n"
 855       "CMN     R0, #0xC00\n"
 856       "LDRNESH R1, [R4, #8]\n"
 857       "CMNNE   R1, #0xC00\n"
 858       "STRNEH  R0, [SP, #0x1C]\n"
 859       "STRNEH  R1, [SP, #0x24]\n"
 860       "BNE     loc_FF8B2090\n"
 861       "ADD     R0, SP, #0x10\n"
 862       "BL      sub_FF8B34C0\n"
 863       "LDRH    R0, [SP, #0x10]\n"
 864       "STRH    R0, [SP, #0x1C]\n"
 865       "LDRH    R0, [SP, #0x18]\n"
 866       "STRH    R0, [SP, #0x24]\n"
 867 "loc_FF8B2090:\n"
 868       "LDR     R0, [SP, #0x28]\n"
 869       "CMP     R8, #1\n"
 870       "BNE     loc_FF8B20E0\n"
 871       "LDR     R1, [R0, #0x7C]\n"
 872       "MOV     R2, #0xC\n"
 873       "ADD     R1, R1, R1, LSL #1\n"
 874       "ADD     R0, R0, R1, LSL #2\n"
 875       "SUB     R8, R0, #8\n"
 876       "LDR     R0, =0x5467C\n"
 877       "ADD     R1, SP, #0x1C\n"
 878       "BL      sub_003FC17C\n"
 879       "LDR     R0, =0x54688\n"
 880       "MOV     R2, #0xC\n"
 881       "ADD     R1, SP, #0x1C\n"
 882       "BL      sub_003FC17C\n"
 883       "LDR     R0, =0x54694\n"
 884       "MOV     R2, #0xC\n"
 885       "MOV     R1, R8\n"
 886       "BL      sub_003FC17C\n"
 887       "B       loc_FF8B2158\n"
 888 "loc_FF8B20E0:\n"
 889       "LDR     R0, [R0]\n"
 890       "MOV     R3, #1\n"
 891       "CMP     R0, #0xB\n"
 892       "BNE     loc_FF8B2124\n"
 893       "MOV     R2, #0\n"
 894       "STRD    R2, [SP]\n"
 895       "MOV     R2, R3\n"
 896       "MOV     R1, R3\n"
 897       "MOV     R0, #0\n"
 898       "BL      sub_FF8AD76C\n"
 899       "MOV     R3, #1\n"
 900       "MOV     R2, #0\n"
 901       "STRD    R2, [SP]\n"
 902       "MOV     R2, R3\n"
 903       "MOV     R1, R3\n"
 904       "MOV     R0, #0\n"
 905       "B       loc_FF8B2154\n"
 906 "loc_FF8B2124:\n"
 907       "MOV     R2, #1\n"
 908       "STRD    R2, [SP]\n"
 909       "MOV     R3, R2\n"
 910       "MOV     R1, R2\n"
 911       "MOV     R0, R2\n"
 912       "BL      sub_FF8AD76C\n"
 913       "MOV     R3, #1\n"
 914       "MOV     R2, R3\n"
 915       "MOV     R1, R3\n"
 916       "MOV     R0, R3\n"
 917       "STR     R3, [SP]\n"
 918       "STR     R3, [SP, #4]\n"
 919 "loc_FF8B2154:\n"
 920       "BL      sub_FF8AD8D8\n"
 921 "loc_FF8B2158:\n"
 922       "LDR     R0, [SP, #0x28]\n"
 923       "BL      sub_FF8B2EB0\n"
 924       "B       loc_FF8B1AF0\n"
 925         );
 926 }
 927 
 928 //** sub_FF8AE740_my  @ 0xFF8AE740 
 929 
 930 void __attribute__((naked,noinline)) sub_FF8AE740_my() {
 931 asm volatile (
 932       "STMFD   SP!, {R4-R8,LR}\n"
 933       "LDR     R7, =0x3E3C\n"
 934       "MOV     R4, R0\n"
 935       "LDR     R0, [R7, #0x1C]\n"
 936       "MOV     R1, #0x3E\n"
 937       "BL      sub_003FACA0\n"
 938       "MOV     R2, #0\n"
 939       "LDRSH   R0, [R4, #4]\n"
 940       "MOV     R1, R2\n"
 941       "BL      sub_FF8AD474\n"
 942       "MOV     R6, R0\n"
 943       "LDRSH   R0, [R4, #6]\n"
 944       "BL      sub_FF8AD5C4\n"
 945       "LDRSH   R0, [R4, #8]\n"
 946       "BL      sub_FF8AD61C\n"
 947       "LDRSH   R0, [R4, #0xA]\n"
 948       "BL      sub_FF8AD674\n"
 949       "LDRSH   R0, [R4, #0xC]\n"
 950       "MOV     R1, #0\n"
 951       "BL      sub_FF8AD6CC\n"
 952       "MOV     R5, R0\n"
 953       "LDR     R0, [R4]\n"
 954       "LDR     R8, =0x54694\n"
 955       "CMP     R0, #0xB\n"
 956       "MOVEQ   R6, #0\n"
 957       "MOVEQ   R5, R6\n"
 958       "BEQ     loc_FF8AE7D4\n"
 959       "CMP     R6, #1\n"
 960       "BNE     loc_FF8AE7D4\n"
 961       "LDRSH   R0, [R4, #4]\n"
 962       "LDR     R1, =0xFF8AD3D4\n"
 963       "MOV     R2, #2\n"
 964       "BL      sub_FF959B5C\n"
 965       "STRH    R0, [R4, #4]\n"
 966       "MOV     R0, #0\n"
 967       "STR     R0, [R7, #0x28]\n"
 968       "B       loc_FF8AE7DC\n"
 969 "loc_FF8AE7D4:\n"
 970       "LDRH    R0, [R8]\n"
 971       "STRH    R0, [R4, #4]\n"
 972 "loc_FF8AE7DC:\n"
 973       "CMP     R5, #1\n"
 974       "LDRNEH  R0, [R8, #8]\n"
 975       "BNE     loc_FF8AE7F8\n"
 976       "LDRSH   R0, [R4, #0xC]\n"
 977       "LDR     R1, =0xFF8AD458\n"
 978       "MOV     R2, #0x20\n"
 979       "BL      sub_FF8B2F00\n"
 980 "loc_FF8AE7F8:\n"
 981       "STRH    R0, [R4, #0xC]\n"
 982       "LDRSH   R0, [R4, #6]\n"
 983 //      "BL      sub_FF89E38C\n"  //original
 984       "BL      sub_FF89E38C_my\n" //patched
 985       "B       sub_FF8AE804 \n" // continue in firmware
 986         );
 987 }
 988 
 989 //** sub_FF89E38C_my  @ 0xFF89E38C 
 990 
 991 void __attribute__((naked,noinline)) sub_FF89E38C_my() {
 992 asm volatile (
 993       "STMFD   SP!, {R4-R6,LR}\n"
 994       "LDR     R5, =0x3AC8\n"
 995       "MOV     R4, R0\n"
 996       "LDR     R0, [R5, #4]\n"
 997       "CMP     R0, #1\n"
 998       "LDRNE   R1, =0x14D\n"
 999       "LDRNE   R0, =0xFF89E1C4\n"
1000       "BLNE    _DebugAssert \n"
1001       "CMN     R4, #0xC00\n"
1002       "LDREQSH R4, [R5, #2]\n"
1003       "CMN     R4, #0xC00\n"
1004       "LDREQ   R1, =0x153\n"
1005       "LDREQ   R0, =0xFF89E1C4\n"
1006       "STRH    R4, [R5, #2]\n"
1007       "BLEQ    _DebugAssert \n"
1008       "MOV     R0, R4\n"
1009 //      "BL      _apex2us \n" //original apex2us function
1010       "BL      apex2us \n"    //patch
1011       "MOV     R4, R0\n"
1012       "BL      sub_FF8EC4E4\n"
1013       "MOV     R0, R4\n"
1014       "BL      sub_FF8F4CEC\n"
1015       "TST     R0, #1\n"
1016       "LDMEQFD SP!, {R4-R6,PC}\n"
1017       "LDMFD   SP!, {R4-R6,LR}\n"
1018       "MOV     R1, #0x158\n"
1019       "LDR     R0, =0xFF89E1C4\n"
1020       "B       _DebugAssert \n"
1021         );
1022 }

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