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

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

DEFINITIONS

This source file includes following definitions.
  1. capt_seq_task
  2. sub_FF942410_my
  3. sub_FF873374_my
  4. exp_drv_task
  5. sub_FF8B07B4_my
  6. sub_FF8A2F60_my

   1 // IXUS120-SD940 fw 1.00e
   2 #include "lolevel.h"
   3 #include "platform.h"
   4 #include "core.h"
   5 #include "conf.h"
   6 
   7 static long *nrflag = (long*)0x6718;                    //
   8 
   9 #include "../../../generic/capt_seq.c"
  10 
  11 /*----------------------------------------------------------------------
  12         capt_seq_task()
  13 -----------------------------------------------------------------------*/
  14 void __attribute__((naked,noinline)) capt_seq_task() {
  15 asm volatile (
  16 "       STMFD   SP!, {R3-R9,LR} \n"                
  17 "       LDR     R6, =0x2988 \n"                  
  18 "       LDR     R4, =0x37B08 \n"                  
  19 "       MOV     R9, #1 \n"                           
  20 "       MOV     R7, #0 \n"   
  21 "loc_FF872F98:\n"
  22 "       LDR     R0, [R6, #4] \n"                     
  23 "       MOV     R2, #0 \n"                           
  24 "       MOV     R1, SP \n"                           
  25 "       BL      sub_FF837DC8 \n"                      
  26 "       TST     R0, #1 \n"                           
  27 "       BEQ     loc_FF872FC4 \n"                     
  28 "       LDR     R1, =0x5B4 \n"                       
  29 "       LDR     R0, =0xFF872B14 \n"                
  30 "       BL      sub_FF81E88C \n"                      
  31 "       BL      sub_FF81E844 \n"                      
  32 "       LDMFD   SP!, {R3-R9,PC} \n"                
  33 "loc_FF872FC4:\n"
  34 "       LDR     R0, [SP] \n"                         
  35 "       LDR     R1, [R0] \n"                         
  36 "       CMP     R1, #0x1D \n"                        
  37 "       ADDLS   PC, PC, R1, LSL #2 \n"             
  38 "       B       loc_FF873250 \n"     
  39                   
  40 "       B       loc_FF873050 \n"                       
  41 "       B       loc_FF8730B4 \n"                       
  42 "       B       loc_FF8730F0 \n"                       
  43 "       B       loc_FF873104 \n"                       
  44 "       B       loc_FF8730FC \n"                       
  45 "       B       loc_FF87310C \n"                       
  46 "       B       loc_FF873114 \n"                       
  47 "       B       loc_FF87311C \n"                       
  48 "       B       loc_FF873174 \n"                       
  49 "       B       loc_FF87319C \n"                       
  50 "       B       loc_FF873180 \n"                       
  51 "       B       loc_FF87318C \n"                       
  52 "       B       loc_FF873194 \n"                       
  53 "       B       loc_FF8731A4 \n"                       
  54 "       B       loc_FF8731AC \n"                       
  55 "       B       loc_FF8731B4 \n"                       
  56 "       B       loc_FF8731BC \n"                       
  57 "       B       loc_FF8731C4 \n"                       
  58 "       B       loc_FF8731D0 \n"                       
  59 "       B       loc_FF8731D8 \n"                       
  60 "       B       loc_FF8731E0 \n"                       
  61 "       B       loc_FF8731E8 \n"                       
  62 "       B       loc_FF8731F0 \n"                       
  63 "       B       loc_FF8731FC \n"                       
  64 "       B       loc_FF873204 \n"                       
  65 "       B       loc_FF87320C \n"                       
  66 "       B       loc_FF873214 \n"                       
  67 "       B       loc_FF87321C \n"                       
  68 "       B       loc_FF873228 \n"                       
  69 "       B       loc_FF87325C \n"  
  70                      
  71 "loc_FF873050:\n"
  72 "       BL      sub_FF8738DC \n"  
  73 "       BL      shooting_expo_param_override\n"                 // added                         
  74 "       BL      sub_FF870DCC \n"   
  75 
  76 //  this code added to avoid some incorrect behavior if overrides are used.
  77  //  but it can cause some unexpected side effects. In this case, remove this code!
  78 "               MOV R0, #0\n"
  79 "               STR R0, [R4,#0x24]\n"  // fixes overrides  behavior at short shutter press
  80                 
  81 "       LDR     R0, [R4, #0x24] \n"                  
  82 "       CMP     R0, #0 \n"                           
  83 "       BEQ     loc_FF87325C \n"                     
  84 "       BL      sub_FF8727F4 \n"                      
  85 "       MOV     R5, R0 \n"                           
  86 "       LDR     R0, [R4, #0x24] \n"                  
  87 "       CMP     R0, #0 \n"                           
  88 "       BEQ     loc_FF873098 \n"                     
  89 "       MOV     R0, #0xC \n"                         
  90 "       BL      sub_FF877A20 \n"                      
  91 "       TST     R0, #1 \n"                           
  92 "       STRNE   R9, [R6, #0x10] \n"                
  93 "       LDRNE   R0, [R5, #8] \n"                   
  94 "       ORRNE   R0, R0, #0x40000000 \n"            
  95 "       STRNE   R0, [R5, #8] \n"                   
  96 "       BNE     loc_FF87325C \n"  
  97                    
  98 "loc_FF873098:\n"
  99 "       MOV     R0, R5 \n"                           
 100 "       BL      sub_FF872A98 \n"                      
 101 "       MOV     R0, R5 \n"   
 102 
 103 //"     BL      sub_FF942410 \n" 
 104 "       BL      sub_FF942410_my \n"                     // patched 
 105                      
 106 "       TST     R0, #1 \n"                           
 107 "       STRNE   R9, [R6, #0x10] \n"                
 108 "       B       loc_FF87325C \n"
 109                        
 110 "loc_FF8730B4:\n"
 111 "       LDR     R0, [R4, #0x24] \n"                  
 112 "       CMP     R0, #0 \n"                           
 113 "       BNE     loc_FF8730E0 \n"                     
 114 "       MOV     R0, #0xC \n"                         
 115 "       BL      sub_FF877A20 \n"                      
 116 "       TST     R0, #1 \n"                           
 117 "       LDRNE   R0, [SP] \n"                       
 118 "       MOVNE   R1, #1 \n"                         
 119 "       LDRNE   R2, [R0, #0xC] \n"                 
 120 "       MOVNE   R0, #1 \n"                         
 121 "       BNE     loc_FF87316C \n"  
 122                    
 123 "loc_FF8730E0:\n"
 124 "       LDR     R0, [SP] \n"                         
 125 //"     BL      sub_FF873374 \n"   
 126   "     BL      sub_FF873374_my \n"                     // patched 
 127   
 128   
 129 "loc_FF8730E8:\n"
 130 "       STR     R7, [R4, #0x24] \n"                  
 131 "       B       loc_FF87325C \n"   
 132                     
 133 "loc_FF8730F0:\n"
 134 "       MOV     R0, #1 \n"                           
 135 "       BL      sub_FF873B30 \n"                      
 136 "       B       loc_FF87325C \n" 
 137                       
 138 "loc_FF8730FC:\n"
 139 "       BL      sub_FF87351C \n"                      
 140 "       B       loc_FF8730E8 \n"    
 141                    
 142 "loc_FF873104:\n"
 143 "       BL      sub_FF8738BC \n"                      
 144 "       B       loc_FF8730E8 \n"  
 145                      
 146 "loc_FF87310C:\n"
 147 "       BL      sub_FF8738C4 \n"                      
 148 "       B       loc_FF87325C \n"  
 149                      
 150 "loc_FF873114:\n"
 151 "       BL      sub_FF873A50 \n"                      
 152 "       B       loc_FF873178 \n"  
 153                      
 154 "loc_FF87311C:\n"
 155 "       LDR     R5, [R0, #0xC] \n"                   
 156 "       BL      sub_FF8738CC \n"                      
 157 "       MOV     R0, R5 \n"                           
 158 "       BL      sub_FF941228 \n"                      
 159 "       TST     R0, #1 \n"                           
 160 "       MOV     R8, R0 \n"                           
 161 "       BNE     loc_FF87315C \n"                     
 162 "       BL      sub_FF884AD8 \n"                      
 163 "       STR     R0, [R5, #0x18] \n"                  
 164 "       MOV     R0, R5 \n"                           
 165 "       BL      sub_FF942328 \n"                      
 166 "       MOV     R0, R5 \n"                           
 167 "       BL      sub_FF942724 \n"                      
 168 "       MOV     R8, R0 \n"                           
 169 "       LDR     R0, [R5, #0x18] \n"                  
 170 "       BL      sub_FF884CDC \n"                      
 171 "loc_FF87315C:\n"
 172 "       BL      sub_FF8738BC \n"                      
 173 "       MOV     R2, R5 \n"                           
 174 "       MOV     R1, #9 \n"                           
 175 "       MOV     R0, R8 \n"                           
 176 "loc_FF87316C:\n"
 177 "       BL      sub_FF8712B8 \n"                      
 178 "       B       loc_FF87325C \n"  
 179 
 180                      
 181 "loc_FF873174:\n"
 182 "       BL      sub_FF873AB0 \n"                      
 183 "loc_FF873178:\n"
 184 "       BL      sub_FF870DCC \n"                      
 185 "       B       loc_FF87325C \n"                       
 186 "loc_FF873180:\n"
 187 "       LDR     R0, [R4, #0x54] \n"                  
 188 "       BL      sub_FF873EBC \n"                      
 189 "       B       loc_FF87325C \n"                       
 190 "loc_FF87318C:\n"
 191 "       BL      sub_FF874170 \n"                      
 192 "       B       loc_FF87325C \n"                       
 193 "loc_FF873194:\n"
 194 "       BL      sub_FF874204 \n"                      
 195 "       B       loc_FF87325C \n"                       
 196 "loc_FF87319C:\n"
 197 "       BL      sub_FF8738BC \n"                      
 198 "       B       loc_FF87325C \n"                       
 199 "loc_FF8731A4:\n"
 200 "       BL      sub_FF941440 \n"                      
 201 "       B       loc_FF87325C \n"                       
 202 "loc_FF8731AC:\n"
 203 "       BL      sub_FF941654 \n"                      
 204 "       B       loc_FF87325C \n"                       
 205 "loc_FF8731B4:\n"
 206 "       BL      sub_FF9416EC \n"                      
 207 "       B       loc_FF87325C \n"                       
 208 "loc_FF8731BC:\n"
 209 "       BL      sub_FF9417BC \n"                      
 210 "       B       loc_FF87325C \n"                       
 211 "loc_FF8731C4:\n"
 212 "       MOV     R0, #0 \n"                           
 213 "       BL      sub_FF941A0C \n"                      
 214 "       B       loc_FF87325C \n"                       
 215 "loc_FF8731D0:\n"
 216 "       BL      sub_FF941B5C \n"                      
 217 "       B       loc_FF87325C \n"                       
 218 "loc_FF8731D8:\n"
 219 "       BL      sub_FF941BEC \n"                      
 220 "       B       loc_FF87325C \n"                       
 221 "loc_FF8731E0:\n"
 222 "       BL      sub_FF941CAC \n"                      
 223 "       B       loc_FF87325C \n"                       
 224 "loc_FF8731E8:\n"
 225 "       BL      sub_FF873CA8 \n"                      
 226 "       B       loc_FF87325C \n"                       
 227 "loc_FF8731F0:\n"
 228 "       BL      sub_FF873D48 \n"                      
 229 "       BL      sub_FF835F18 \n"                      
 230 "       B       loc_FF87325C \n"                       
 231 "loc_FF8731FC:\n"
 232 "       BL      sub_FF941888 \n"                      
 233 "       B       loc_FF87325C \n"                       
 234 "loc_FF873204:\n"
 235 "       BL      sub_FF9418F4 \n"                      
 236 "       B       loc_FF87325C \n"                       
 237 "loc_FF87320C:\n"
 238 "       BL      sub_FF8761D0 \n"                      
 239 "       B       loc_FF87325C \n"                       
 240 "loc_FF873214:\n"
 241 "       BL      sub_FF876238 \n"                      
 242 "       B       loc_FF87325C \n"                       
 243 "loc_FF87321C:\n"
 244 "       BL      sub_FF876294 \n"                      
 245 "       BL      sub_FF876254 \n"                      
 246 "       B       loc_FF87325C \n"                       
 247 "loc_FF873228:\n"
 248 "       MOV     R0, #1 \n"                           
 249 "       BL      sub_FF942F68 \n"                      
 250 "       MOV     R0, #1 \n"                           
 251 "       BL      sub_FF943078 \n"                      
 252 "       LDRH    R0, [R4, #0x98] \n"                 
 253 "       CMP     R0, #4 \n"                           
 254 "       BNE     loc_FF87325C \n"                     
 255 "       BL      sub_FF876238 \n"                      
 256 "       BL      sub_FF876674 \n"                      
 257 "       B       loc_FF87325C \n"    
 258                    
 259 "loc_FF873250:\n"
 260 "       LDR     R1, =0x709 \n"                       
 261 "       LDR     R0, =0xFF872B14 \n"                
 262 "       BL      sub_FF81E88C \n"   
 263                    
 264 "loc_FF87325C:\n"
 265 "       LDR     R0, [SP] \n"                         
 266 "       LDR     R1, [R0, #4] \n"                     
 267 "       LDR     R0, [R6] \n"                         
 268 "       BL      sub_FF87C7DC \n"                      
 269 "       LDR     R5, [SP] \n"                         
 270 "       LDR     R0, [R5, #8] \n"                     
 271 "       CMP     R0, #0 \n"                           
 272 "       LDREQ   R1, =0x132 \n"                     
 273 "       LDREQ   R0, =0xFF872B14 \n"                
 274 "       BLEQ    sub_FF81E88C \n"                    
 275 "       STR     R7, [R5, #8] \n"                     
 276 "       B       loc_FF872F98 \n"             
 277         );
 278 }
 279 
 280 
 281 /*----------------------------------------------------------------------
 282         sub_FF942410_my()  - capt_seq_task()
 283 -----------------------------------------------------------------------*/
 284 void __attribute__((naked,noinline)) sub_FF942410_my() {
 285 asm volatile (
 286 "       STMFD   SP!, {R0-R8,LR} \n"                
 287 "       MOV     R4, R0 \n"                           
 288 "       BL      sub_FF943264 \n"                      
 289 "       MVN     R1, #0 \n"                           
 290 "       BL      sub_FF87C810 \n"                      
 291 "       LDR     R5, =0x6718 \n"                      
 292 "       LDR     R0, [R5, #0xC] \n"                   
 293 "       CMP     R0, #0 \n"                           
 294 "       BNE     loc_FF942460 \n"                     
 295 "       MOV     R1, #1 \n"                           
 296 "       MOV     R0, #0 \n"                           
 297 "       BL      sub_FF838610 \n"                      
 298 "       STR     R0, [R5, #0xC] \n"                   
 299 "       MOV     R3, #0 \n"                           
 300 "       STR     R3, [SP] \n"                         
 301 "       LDR     R3, =0xFF941D9C \n"                
 302 "       LDR     R0, =0xFF94268C \n"                  
 303 "       MOV     R2, #0x400 \n"                       
 304 "       MOV     R1, #0x17 \n"                        
 305 "       BL      sub_FF8385DC \n"                      
 306 "loc_FF942460:\n"
 307 "       MOV     R2, #4 \n"                           
 308 "       ADD     R1, SP, #8 \n"                       
 309 "       MOV     R0, #0x8A \n"                        
 310 "       BL      sub_FF884948 \n"                      
 311 "       TST     R0, #1 \n"                           
 312 "       LDRNE   R1, =0x3C5 \n"                     
 313 "       LDRNE   R0, =0xFF942034 \n"              
 314 "       BLNE    sub_FF81E88C \n"                    
 315 "       LDR     R6, =0x37BCC \n"                     
 316 "       LDR     R8, =0x37B08 \n"                     
 317 "       LDRSH   R2, [R6, #0xC] \n"                 
 318 "       LDRSH   R1, [R6, #0xE] \n"                 
 319 "       LDR     R0, [R8, #0x8C] \n"                  
 320 "       BL      sub_FF90B548 \n"                      
 321 "       BL      sub_FF85BC98 \n"                      
 322 "       LDR     R3, =0x6720 \n"                      
 323 "       STRH    R0, [R4, #0xA4] \n"                 
 324 "       SUB     R2, R3, #4 \n"                       
 325 "       STRD    R2, [SP]\n"   
 326 "       MOV     R1, R0 \n"                           
 327 "       LDRH    R0, [R8, #0x5C] \n"                 
 328 "       LDRSH   R2, [R6, #0xC] \n"                 
 329 "       SUB     R3, R3, #8 \n"                       
 330 "       BL      sub_FF9448A8 \n"     
 331  
 332 "       BL      wait_until_remote_button_is_released\n"
 333 "       BL      capt_seq_hook_set_nr\n"
 334  
 335 "       B       sub_FF9424C0 \n"   // go back to the ROM                    
 336         );
 337 }
 338 
 339 
 340         
 341 /*----------------------------------------------------------------------
 342         sub_FF873374_my() - capt_seq_task()
 343 -----------------------------------------------------------------------*/
 344 void __attribute__((naked,noinline)) sub_FF873374_my() {
 345 asm volatile (
 346 "       STMFD   SP!, {R4-R6,LR} \n"                
 347 "       LDR     R4, [R0, #0xC] \n"                   
 348 "       LDR     R6, =0x37B08 \n"                     
 349 "       LDR     R0, [R4, #8] \n"                     
 350 "       MOV     R5, #0 \n"                           
 351 "       ORR     R0, R0, #1 \n"                       
 352 "       STR     R0, [R4, #8] \n"                     
 353 "       LDR     R0, [R6, #0x24] \n"                  
 354 "       CMP     R0, #0 \n"                           
 355 "       MOVEQ   R0, #2 \n"                         
 356 "       BLEQ    sub_FF86F4AC \n"                    
 357 "       BL      sub_FF8738CC \n"                      
 358 "       LDR     R0, [R6, #0x24] \n"                  
 359 "       CMP     R0, #0 \n"                           
 360 "       BNE     loc_FF87343C \n"                     
 361 "       MOV     R0, #0 \n"                           
 362 "       BL      sub_FF942F68 \n"                      
 363 "       MOV     R0, #0 \n"                           
 364 "       BL      sub_FF943078 \n"                      
 365 "       MOV     R0, R4 \n"                           
 366 "       BL      sub_FF873C50 \n"                      
 367 "       MOV     R0, R4 \n"                           
 368 "       BL      sub_FF940E78 \n"                      
 369 "       CMP     R0, #0 \n"                           
 370 "       BEQ     loc_FF873404 \n"                     
 371 "       BL      sub_FF942FA8 \n"                      
 372 "       BL      sub_FF9430BC \n"                      
 373 "       BL      sub_FF94310C \n"                      
 374 "       MOV     R0, R4 \n"                           
 375 "       BL      sub_FF940F5C \n"                      
 376 "       TST     R0, #1 \n"                           
 377 "       MOVNE   R2, R4 \n"                         
 378 "       LDMNEFD SP!, {R4-R6,LR} \n"              
 379 "       MOVNE   R1, #1 \n"                         
 380 "       BNE     sub_FF8712B8 \n"                     
 381 "       B       loc_FF873418 \n"                       
 382 "loc_FF873404:\n"
 383 "       MOV     R0, R4 \n"                           
 384 "       BL      sub_FF940EF8 \n"                      
 385 "       BL      sub_FF942FA8 \n"                      
 386 "       BL      sub_FF9430BC \n"                      
 387 "       BL      sub_FF94310C \n"                      
 388 "loc_FF873418:\n"
 389 "       MOV     R0, R4 \n"                           
 390 "       BL      sub_FF872A98 \n"                      
 391 "       MOV     R0, R4 \n"                           
 392 "       BL      sub_FF942328 \n"                      
 393 "       BL      sub_FF942DA0 \n"                      
 394 "       MOV     R0, R4 \n"     
 395                         
 396 //"     BL      sub_FF942410 \n"     
 397 "       BL      sub_FF942410_my \n"                             // patched        
 398             
 399 "       MOV     R5, R0 \n"  
 400 "       BL              capt_seq_hook_raw_here\n"  //----------->>                            
 401 "       B       loc_FF87344C \n"   
 402 // ---------------------------------------------------------------------------
 403 
 404                     
 405 "loc_FF87343C:\n"
 406 "       LDR     R0, =0x2988 \n"                      
 407 "       LDR     R0, [R0, #0x10] \n"                  
 408 "       CMP     R0, #0 \n"                           
 409 "       MOVNE   R5, #0x1D \n"
 410                       
 411 "loc_FF87344C:\n"
 412 "       BL      sub_FF876238 \n"                      
 413 "       BL      sub_FF876280 \n"                      
 414 "       BL      sub_FF8762C0 \n"                      
 415 "       MOV     R2, R4 \n"                           
 416 "       MOV     R1, #1 \n"                           
 417 "       MOV     R0, R5 \n"                           
 418 "       BL      sub_FF8712B8 \n"                      
 419 "       BL      sub_FF9426C8 \n"                      
 420 "       CMP     R0, #0 \n"                           
 421 "       LDRNE   R0, [R4, #8] \n"                   
 422 "       ORRNE   R0, R0, #0x2000 \n"                
 423 "       STRNE   R0, [R4, #8] \n"                   
 424 "       LDMFD   SP!, {R4-R6,PC} \n"                     
 425         );
 426 }
 427 
 428 
 429 /*----------------------------------------------------------------------
 430         exp_drv_task()  0xFF8B2F58
 431 -----------------------------------------------------------------------*/
 432 void __attribute__((naked,noinline)) exp_drv_task() {
 433 asm volatile (
 434 "       STMFD   SP!, {R4-R8,LR} \n"                
 435 "       SUB     SP, SP, #0x20 \n"                    
 436 "       LDR     R8, =0xBB8 \n"                       
 437 "       LDR     R7, =0x3C80 \n"                      
 438 "       LDR     R5, =0x3C760 \n"                     
 439 "       MOV     R0, #0 \n"                           
 440 "       ADD     R6, SP, #0x10 \n"                    
 441 "       STR     R0, [SP, #0xC] \n"                   
 442 "loc_FF8B2F78:\n"
 443 "       LDR     R0, [R7, #0x20] \n"                  
 444 "       MOV     R2, #0 \n"                           
 445 "       ADD     R1, SP, #0x1C \n"                    
 446 "       BL      sub_FF837DC8 \n"                      
 447 "       LDR     R0, [SP, #0xC] \n"                   
 448 "       CMP     R0, #1 \n"                           
 449 "       BNE     loc_FF8B2FC4 \n"                     
 450 "       LDR     R0, [SP, #0x1C] \n"                  
 451 "       LDR     R0, [R0] \n"                         
 452 "       CMP     R0, #0x13 \n"                        
 453 "       CMPNE   R0, #0x14 \n"                      
 454 "       CMPNE   R0, #0x15 \n"                      
 455 "       CMPNE   R0, #0x16 \n"                      
 456 "       BEQ     loc_FF8B30E0 \n"                     
 457 "       CMP     R0, #0x28 \n"                        
 458 "       BEQ     loc_FF8B30B8 \n"                     
 459 "       ADD     R1, SP, #0xC \n"                     
 460 "       MOV     R0, #0 \n"                           
 461 "       BL      sub_FF8B2F08 \n"                      
 462 "loc_FF8B2FC4:\n"
 463 "       LDR     R0, [SP, #0x1C] \n"                  
 464 "       LDR     R1, [R0] \n"                         
 465 "       CMP     R1, #0x2D \n"                        
 466 "       BNE     loc_FF8B2FF4 \n"                     
 467 "       LDR     R0, [SP, #0x1C] \n"                  
 468 "       BL      sub_FF8B41C8 \n"                      
 469 "       LDR     R0, [R7, #0x1C] \n"                  
 470 "       MOV     R1, #1 \n"                           
 471 "       BL      sub_FF87C7DC \n"                      
 472 "       BL      sub_FF81E844 \n"                      
 473 "       ADD     SP, SP, #0x20 \n"                    
 474 "       LDMFD   SP!, {R4-R8,PC} \n"                
 475 "loc_FF8B2FF4:\n"
 476 "       CMP     R1, #0x2C \n"                        
 477 "       BNE     loc_FF8B3010 \n"                     
 478 "       LDR     R2, [R0, #0x8C]! \n"                 
 479 "       LDR     R1, [R0, #4] \n"                     
 480 "       MOV     R0, R1 \n"                           
 481 "       BLX     R2 \n"                               
 482 "       B       loc_FF8B3508 \n"                       
 483 "loc_FF8B3010:\n"
 484 "       CMP     R1, #0x26 \n"                        
 485 "       BNE     loc_FF8B3060 \n"                     
 486 "       LDR     R0, [R7, #0x1C] \n"                  
 487 "       MOV     R1, #0x80 \n"                        
 488 "       BL      sub_FF87C810 \n"                      
 489 "       LDR     R0, =0xFF8AF668 \n"                
 490 "       MOV     R1, #0x80 \n"                        
 491 "       BL      sub_FF936238 \n"                      
 492 "       LDR     R0, [R7, #0x1C] \n"                  
 493 "       MOV     R2, R8 \n"                           
 494 "       MOV     R1, #0x80 \n"                        
 495 "       BL      sub_FF87C71C \n"                      
 496 "       TST     R0, #1 \n"                           
 497 "       LDRNE   R1, =0xE54 \n"                     
 498 "       BNE     loc_FF8B30A4 \n"                     
 499 "loc_FF8B304C:\n"
 500 "       LDR     R1, [SP, #0x1C] \n"                  
 501 "       LDR     R0, [R1, #0x90] \n"                  
 502 "       LDR     R1, [R1, #0x8C] \n"                  
 503 "       BLX     R1 \n"                               
 504 "       B       loc_FF8B3508 \n"                       
 505 "loc_FF8B3060:\n"
 506 "       CMP     R1, #0x27 \n"                        
 507 "       BNE     loc_FF8B30B0 \n"                     
 508 "       ADD     R1, SP, #0xC \n"                     
 509 "       BL      sub_FF8B2F08 \n"                      
 510 "       LDR     R0, [R7, #0x1C] \n"                  
 511 "       MOV     R1, #0x100 \n"                       
 512 "       BL      sub_FF87C810 \n"                      
 513 "       LDR     R0, =0xFF8AF678 \n"                
 514 "       MOV     R1, #0x100 \n"                       
 515 "       BL      sub_FF9364C0 \n"                      
 516 "       LDR     R0, [R7, #0x1C] \n"                  
 517 "       MOV     R2, R8 \n"                           
 518 "       MOV     R1, #0x100 \n"                       
 519 "       BL      sub_FF87C71C \n"                      
 520 "       TST     R0, #1 \n"                           
 521 "       BEQ     loc_FF8B304C \n"                     
 522 "       LDR     R1, =0xE5E \n"                       
 523 "loc_FF8B30A4:\n"
 524 "       LDR     R0, =0xFF8AFCDC \n"                
 525 "       BL      sub_FF81E88C \n"                      
 526 "       B       loc_FF8B304C \n"                       
 527 "loc_FF8B30B0:\n"
 528 "       CMP     R1, #0x28 \n"                        
 529 "       BNE     loc_FF8B30C8 \n"                     
 530 "loc_FF8B30B8:\n"
 531 "       LDR     R0, [SP, #0x1C] \n"                  
 532 "       ADD     R1, SP, #0xC \n"                     
 533 "       BL      sub_FF8B2F08 \n"                      
 534 "       B       loc_FF8B304C \n"                       
 535 "loc_FF8B30C8:\n"
 536 "       CMP     R1, #0x2B \n"                        
 537 "       BNE     loc_FF8B30E0 \n"                     
 538 "       BL      sub_FF8A3178 \n"                      
 539 "       BL      sub_FF8A3D9C \n"                      
 540 "       BL      sub_FF8A38F0 \n"                      
 541 "       B       loc_FF8B304C \n"                       
 542 "loc_FF8B30E0:\n"
 543 "       LDR     R0, [SP, #0x1C] \n"                  
 544 "       MOV     R4, #1 \n"                           
 545 "       LDR     R1, [R0] \n"                         
 546 "       CMP     R1, #0x11 \n"                        
 547 "       CMPNE   R1, #0x12 \n"                      
 548 "       BNE     loc_FF8B3150 \n"                     
 549 "       LDR     R1, [R0, #0x7C] \n"                  
 550 "       ADD     R1, R1, R1, LSL #1 \n"               
 551 "       ADD     R1, R0, R1, LSL #2 \n"               
 552 "       SUB     R1, R1, #8 \n"                       
 553 "       LDMIA   R1, {R2-R4} \n"                    
 554 "       STMIA   R6, {R2-R4} \n"                    
 555 "       BL      sub_FF8B181C \n"                      
 556 "       LDR     R0, [SP, #0x1C] \n"                  
 557 "       LDR     R1, [R0, #0x7C] \n"                  
 558 "       LDR     R3, [R0, #0x8C] \n"                  
 559 "       LDR     R2, [R0, #0x90] \n"                  
 560 "       ADD     R0, R0, #4 \n"                       
 561 "       BLX     R3 \n"                               
 562 "       LDR     R0, [SP, #0x1C] \n"                  
 563 "       BL      sub_FF8B4588 \n"                      
 564 "       LDR     R0, [SP, #0x1C] \n"                  
 565 "       LDR     R1, [R0, #0x7C] \n"                  
 566 "       LDR     R3, [R0, #0x94] \n"                  
 567 "       LDR     R2, [R0, #0x98] \n"                  
 568 "       ADD     R0, R0, #4 \n"                       
 569 "       BLX     R3 \n"                               
 570 "       B       loc_FF8B3448 \n"                       
 571 "loc_FF8B3150:\n"
 572 "       CMP     R1, #0x13 \n"                        
 573 "       CMPNE   R1, #0x14 \n"                      
 574 "       CMPNE   R1, #0x15 \n"                      
 575 "       CMPNE   R1, #0x16 \n"                      
 576 "       BNE     loc_FF8B3208 \n"                     
 577 "       ADD     R3, SP, #0xC \n"                     
 578 "       MOV     R2, SP \n"                           
 579 "       ADD     R1, SP, #0x10 \n"                    
 580 "       BL      sub_FF8B1B04 \n"                      
 581 "       CMP     R0, #1 \n"                           
 582 "       MOV     R4, R0 \n"                           
 583 "       CMPNE   R4, #5 \n"                         
 584 "       BNE     loc_FF8B31A4 \n"                     
 585 "       LDR     R0, [SP, #0x1C] \n"                  
 586 "       MOV     R2, R4 \n"                           
 587 "       LDR     R1, [R0, #0x7C]! \n"                 
 588 "       LDR     R12, [R0, #0x10]! \n"                
 589 "       LDR     R3, [R0, #4] \n"                     
 590 "       MOV     R0, SP \n"                           
 591 "       BLX     R12 \n"                              
 592 "       B       loc_FF8B31DC \n"                       
 593 "loc_FF8B31A4:\n"
 594 "       LDR     R0, [SP, #0x1C] \n"                  
 595 "       CMP     R4, #2 \n"                           
 596 "       LDR     R3, [R0, #0x90] \n"                  
 597 "       CMPNE   R4, #6 \n"                         
 598 "       BNE     loc_FF8B31F0 \n"                     
 599 "       LDR     R12, [R0, #0x8C] \n"                 
 600 "       MOV     R0, SP \n"                           
 601 "       MOV     R2, R4 \n"                           
 602 "       MOV     R1, #1 \n"                           
 603 "       BLX     R12 \n"                              
 604 "       LDR     R0, [SP, #0x1C] \n"                  
 605 "       MOV     R2, SP \n"                           
 606 "       ADD     R1, SP, #0x10 \n"                    
 607 "       BL      sub_FF8B2C1C \n"                      
 608 "loc_FF8B31DC:\n"
 609 "       LDR     R0, [SP, #0x1C] \n"                  
 610 "       LDR     R2, [SP, #0xC] \n"                   
 611 "       MOV     R1, R4 \n"                           
 612 "       BL      sub_FF8B2EA8 \n"                      
 613 "       B       loc_FF8B3448 \n"                       
 614 "loc_FF8B31F0:\n"
 615 "       LDR     R1, [R0, #0x7C] \n"                  
 616 "       LDR     R12, [R0, #0x8C] \n"                 
 617 "       ADD     R0, R0, #4 \n"                       
 618 "       MOV     R2, R4 \n"                           
 619 "       BLX     R12 \n"                              
 620 "       B       loc_FF8B3448 \n"                       
 621 "loc_FF8B3208:\n"
 622 "       CMP     R1, #0x22 \n"                        
 623 "       CMPNE   R1, #0x23 \n"                      
 624 "       BNE     loc_FF8B3254 \n"                     
 625 "       LDR     R1, [R0, #0x7C] \n"                  
 626 "       ADD     R1, R1, R1, LSL #1 \n"               
 627 "       ADD     R1, R0, R1, LSL #2 \n"               
 628 "       SUB     R1, R1, #8 \n"                       
 629 "       LDMIA   R1, {R2-R4} \n"                    
 630 "       STMIA   R6, {R2-R4} \n"                    
 631 "       BL      sub_FF8B0D6C \n"                      
 632 "       LDR     R0, [SP, #0x1C] \n"                  
 633 "       LDR     R1, [R0, #0x7C] \n"                  
 634 "       LDR     R3, [R0, #0x8C] \n"                  
 635 "       LDR     R2, [R0, #0x90] \n"                  
 636 "       ADD     R0, R0, #4 \n"                       
 637 "       BLX     R3 \n"                               
 638 "       LDR     R0, [SP, #0x1C] \n"                  
 639 "       BL      sub_FF8B1060 \n"                      
 640 "       B       loc_FF8B3448 \n"                       
 641 "loc_FF8B3254:\n"
 642 "       ADD     R1, R0, #4 \n"                       
 643 "       LDMIA   R1, {R2,R3,R12} \n"                
 644 "       STMIA   R6, {R2,R3,R12} \n"                
 645 "       LDR     R1, [R0] \n"                         
 646 "       CMP     R1, #0x25 \n"                        
 647 "       ADDLS   PC, PC, R1, LSL #2 \n"             
 648 "       B       loc_FF8B3428 \n"   
 649                    
 650 "       B       loc_FF8B3308 \n"                       
 651 "       B       loc_FF8B3308 \n"                       
 652 "       B       loc_FF8B3310 \n"                       
 653 "       B       loc_FF8B3318 \n"                       
 654 "       B       loc_FF8B3318 \n"                       
 655 "       B       loc_FF8B3318 \n"                       
 656 "       B       loc_FF8B3308 \n"                       
 657 "       B       loc_FF8B3310 \n"                       
 658 "       B       loc_FF8B3318 \n"                       
 659 "       B       loc_FF8B3318 \n"                       
 660 "       B       loc_FF8B3330 \n"                       
 661 "       B       loc_FF8B3330 \n"                       
 662 "       B       loc_FF8B341C \n"                       
 663 "       B       loc_FF8B3424 \n"                       
 664 "       B       loc_FF8B3424 \n"                       
 665 "       B       loc_FF8B3424 \n"                       
 666 "       B       loc_FF8B3424 \n"                       
 667 "       B       loc_FF8B3428 \n"                       
 668 "       B       loc_FF8B3428 \n"                       
 669 "       B       loc_FF8B3428 \n"                       
 670 "       B       loc_FF8B3428 \n"                       
 671 "       B       loc_FF8B3428 \n"                       
 672 "       B       loc_FF8B3428 \n"                       
 673 "       B       loc_FF8B3320 \n"                       
 674 "       B       loc_FF8B3328 \n"                       
 675 "       B       loc_FF8B3328 \n"                       
 676 "       B       loc_FF8B333C \n"                       
 677 "       B       loc_FF8B333C \n"                       
 678 "       B       loc_FF8B3344 \n"                       
 679 "       B       loc_FF8B3374 \n"                       
 680 "       B       loc_FF8B33A4 \n"                       
 681 "       B       loc_FF8B33D4 \n"                       
 682 "       B       loc_FF8B3404 \n"                       
 683 "       B       loc_FF8B3404 \n"                       
 684 "       B       loc_FF8B3428 \n"                       
 685 "       B       loc_FF8B3428 \n"                       
 686 "       B       loc_FF8B340C \n"                       
 687 "       B       loc_FF8B3414 \n"  
 688 
 689                      
 690 "loc_FF8B3308:\n"
 691 "       BL      sub_FF8AFB80 \n"                      
 692 "       B       loc_FF8B3428 \n"   
 693                     
 694 "loc_FF8B3310:\n"
 695 "       BL      sub_FF8AFE08 \n"                      
 696 "       B       loc_FF8B3428 \n"  
 697                      
 698 "loc_FF8B3318:\n"
 699 "       BL      sub_FF8B0010 \n"                      
 700 "       B       loc_FF8B3428 \n"  
 701       
 702           
 703 "loc_FF8B3320:\n"
 704 "       BL      sub_FF8B0288 \n"                      
 705 "       B       loc_FF8B3428 \n"  
 706                      
 707 "loc_FF8B3328:\n"
 708 "       BL      sub_FF8B0480 \n"                      
 709 "       B       loc_FF8B3428 \n"  
 710                      
 711 "loc_FF8B3330:\n"
 712 //"     BL      sub_FF8B07B4 \n"  
 713 "       BL      sub_FF8B07B4_my \n"     //----->>>
 714                
 715                            
 716 "       MOV     R4, #0 \n"                           
 717 "       B       loc_FF8B3428 \n"  
 718                      
 719 "loc_FF8B333C:\n"
 720 "       BL      sub_FF8B087C \n"                      
 721 "       B       loc_FF8B3428 \n" 
 722                       
 723 "loc_FF8B3344:\n"
 724 "       LDRH    R1, [R0, #4] \n"                    
 725 "       STRH    R1, [SP, #0x10] \n"                 
 726 "       LDRH    R1, [R5, #2] \n"                    
 727 "       STRH    R1, [SP, #0x12] \n"                 
 728 "       LDRH    R1, [R5, #4] \n"                    
 729 "       STRH    R1, [SP, #0x14] \n"                 
 730 "       LDRH    R1, [R5, #6] \n"                    
 731 "       STRH    R1, [SP, #0x16] \n"                 
 732 "       LDRH    R1, [R0, #0xC] \n"                  
 733 "       STRH    R1, [SP, #0x18] \n"                 
 734 "       BL      sub_FF8B423C \n"                      
 735 "       B       loc_FF8B3428 \n" 
 736                       
 737 "loc_FF8B3374:\n"
 738 "       LDRH    R1, [R0, #4] \n"                    
 739 "       STRH    R1, [SP, #0x10] \n"                 
 740 "       LDRH    R1, [R5, #2] \n"                    
 741 "       STRH    R1, [SP, #0x12] \n"                 
 742 "       LDRH    R1, [R5, #4] \n"                    
 743 "       STRH    R1, [SP, #0x14] \n"                 
 744 "       LDRH    R1, [R5, #6] \n"                    
 745 "       STRH    R1, [SP, #0x16] \n"                 
 746 "       LDRH    R1, [R5, #8] \n"                    
 747 "       STRH    R1, [SP, #0x18] \n"                 
 748 "       BL      sub_FF8B43A0 \n"                      
 749 "       B       loc_FF8B3428 \n" 
 750                       
 751 "loc_FF8B33A4:\n"
 752 "       LDRH    R1, [R5] \n"                        
 753 "       STRH    R1, [SP, #0x10] \n"                 
 754 "       LDRH    R1, [R0, #6] \n"                    
 755 "       STRH    R1, [SP, #0x12] \n"                 
 756 "       LDRH    R1, [R5, #4] \n"                    
 757 "       STRH    R1, [SP, #0x14] \n"                 
 758 "       LDRH    R1, [R5, #6] \n"                    
 759 "       STRH    R1, [SP, #0x16] \n"                 
 760 "       LDRH    R1, [R5, #8] \n"                    
 761 "       STRH    R1, [SP, #0x18] \n"                 
 762 "       BL      sub_FF8B444C \n"                      
 763 "       B       loc_FF8B3428 \n" 
 764                       
 765 "loc_FF8B33D4:\n"
 766 "       LDRH    R1, [R5] \n"                        
 767 "       STRH    R1, [SP, #0x10] \n"                 
 768 "       LDRH    R1, [R5, #2] \n"                    
 769 "       STRH    R1, [SP, #0x12] \n"                 
 770 "       LDRH    R1, [R5, #4] \n"                    
 771 "       STRH    R1, [SP, #0x14] \n"                 
 772 "       LDRH    R1, [R5, #6] \n"                    
 773 "       STRH    R1, [SP, #0x16] \n"                 
 774 "       LDRH    R1, [R0, #0xC] \n"                  
 775 "       STRH    R1, [SP, #0x18] \n"                 
 776 "       BL      sub_FF8B44EC \n"                      
 777 "       B       loc_FF8B3428 \n" 
 778                       
 779 "loc_FF8B3404:\n"
 780 "       BL      sub_FF8B0BC4 \n"                      
 781 "       B       loc_FF8B3428 \n" 
 782                       
 783 "loc_FF8B340C:\n"
 784 "       BL      sub_FF8B1164 \n"                      
 785 "       B       loc_FF8B3428 \n"   
 786                     
 787 "loc_FF8B3414:\n"
 788 "       BL      sub_FF8B13A0 \n"                      
 789 "       B       loc_FF8B3428 \n" 
 790                       
 791 "loc_FF8B341C:\n"
 792 "       BL      sub_FF8B151C \n"                      
 793 "       B       loc_FF8B3428 \n"  
 794                      
 795 "loc_FF8B3424:\n"
 796 "       BL      sub_FF8B16B8 \n"  
 797                     
 798 "loc_FF8B3428:\n"
 799 "       LDR     R0, [SP, #0x1C] \n"                  
 800 "       LDR     R1, [R0, #0x7C] \n"                  
 801 "       LDR     R3, [R0, #0x8C] \n"                  
 802 "       LDR     R2, [R0, #0x90] \n"                  
 803 "       ADD     R0, R0, #4 \n"                       
 804 "       BLX     R3 \n"                               
 805 "       CMP     R4, #1 \n"                           
 806 "       BNE     loc_FF8B3490 \n"
 807                      
 808 "loc_FF8B3448:\n"
 809 "       LDR     R0, [SP, #0x1C] \n"                  
 810 "       MOV     R2, #0xC \n"                         
 811 "       LDR     R1, [R0, #0x7C] \n"                  
 812 "       ADD     R1, R1, R1, LSL #1 \n"               
 813 "       ADD     R0, R0, R1, LSL #2 \n"               
 814 "       SUB     R4, R0, #8 \n"                       
 815 "       LDR     R0, =0x3C760 \n"                     
 816 "       ADD     R1, SP, #0x10 \n"                    
 817 "       BL      sub_FFB07784 \n"                      
 818 "       LDR     R0, =0x3C76C \n"                     
 819 "       MOV     R2, #0xC \n"                         
 820 "       ADD     R1, SP, #0x10 \n"                    
 821 "       BL      sub_FFB07784 \n"                      
 822 "       LDR     R0, =0x3C778 \n"                     
 823 "       MOV     R2, #0xC \n"                         
 824 "       MOV     R1, R4 \n"                           
 825 "       BL      sub_FFB07784 \n"                      
 826 "       B       loc_FF8B3508 \n"                       
 827 "loc_FF8B3490:\n"
 828 "       LDR     R0, [SP, #0x1C] \n"                  
 829 "       LDR     R0, [R0] \n"                         
 830 "       CMP     R0, #0xB \n"                         
 831 "       BNE     loc_FF8B34D8 \n"                     
 832 "       MOV     R3, #0 \n"                           
 833 "       STR     R3, [SP] \n"                         
 834 "       MOV     R3, #1 \n"                           
 835 "       MOV     R2, #1 \n"                           
 836 "       MOV     R1, #1 \n"                           
 837 "       MOV     R0, #0 \n"                           
 838 "       BL      sub_FF8AF988 \n"                      
 839 "       MOV     R3, #0 \n"                           
 840 "       STR     R3, [SP] \n"                         
 841 "       MOV     R3, #1 \n"                           
 842 "       MOV     R2, #1 \n"                           
 843 "       MOV     R1, #1 \n"                           
 844 "       MOV     R0, #0 \n"                           
 845 "       B       loc_FF8B3504 \n"                       
 846 "loc_FF8B34D8:\n"
 847 "       MOV     R3, #1 \n"                           
 848 "       MOV     R2, #1 \n"                           
 849 "       MOV     R1, #1 \n"                           
 850 "       MOV     R0, #1 \n"                           
 851 "       STR     R3, [SP] \n"                         
 852 "       BL      sub_FF8AF988 \n"                      
 853 "       MOV     R3, #1 \n"                           
 854 "       MOV     R2, #1 \n"                           
 855 "       MOV     R1, #1 \n"                           
 856 "       MOV     R0, #1 \n"                           
 857 "       STR     R3, [SP] \n"  
 858                        
 859 "loc_FF8B3504:\n"
 860 "       BL      sub_FF8AFAC8 \n"  
 861                     
 862 "loc_FF8B3508:\n"
 863 "       LDR     R0, [SP, #0x1C] \n"                  
 864 "       BL      sub_FF8B41C8 \n"                      
 865 "       B       loc_FF8B2F78 \n"        );
 866 }
 867 
 868 
 869 /*----------------------------------------------------------------------
 870         sub_FF8B07B4_my() - exp_drv_task()
 871 -----------------------------------------------------------------------*/
 872 void __attribute__((naked,noinline)) sub_FF8B07B4_my() {
 873 asm volatile (
 874 "       STMFD   SP!, {R4-R8,LR} \n"                
 875 "       LDR     R7, =0x3C80 \n"                      
 876 "       MOV     R4, R0 \n"                           
 877 "       LDR     R0, [R7, #0x1C] \n"                  
 878 "       MOV     R1, #0x3E \n"                        
 879 "       BL      sub_FF87C810 \n"                      
 880 "       LDRSH   R0, [R4, #4] \n"                   
 881 "       MOV     R2, #0 \n"                           
 882 "       MOV     R1, #0 \n"                           
 883 "       BL      sub_FF8AF6EC \n"                      
 884 "       MOV     R6, R0 \n"                           
 885 "       LDRSH   R0, [R4, #6] \n"                   
 886 "       BL      sub_FF8AF7FC \n"                      
 887 "       LDRSH   R0, [R4, #8] \n"                   
 888 "       BL      sub_FF8AF854 \n"                      
 889 "       LDRSH   R0, [R4, #0xA] \n"                 
 890 "       BL      sub_FF8AF8AC \n"                      
 891 "       LDRSH   R0, [R4, #0xC] \n"                 
 892 "       MOV     R1, #0 \n"                           
 893 "       BL      sub_FF8AF904 \n"                      
 894 "       MOV     R5, R0 \n"                           
 895 "       LDR     R0, [R4] \n"                         
 896 "       LDR     R8, =0x3C778 \n"                     
 897 "       CMP     R0, #0xB \n"                         
 898 "       MOVEQ   R6, #0 \n"                         
 899 "       MOVEQ   R5, #0 \n"                         
 900 "       BEQ     loc_FF8B07D0 \n"                     
 901 "       CMP     R6, #1 \n"                           
 902 "       BNE     loc_FF8B07D0 \n"                     
 903 "       LDRSH   R0, [R4, #4] \n"                   
 904 "       LDR     R1, =0xFF8AF658 \n"                
 905 "       MOV     R2, #2 \n"                           
 906 "       BL      sub_FF93638C \n"                      
 907 "       STRH    R0, [R4, #4] \n"                    
 908 "       MOV     R0, #0 \n"                           
 909 "       STR     R0, [R7, #0x28] \n"                  
 910 "       B       loc_FF8B07D8 \n"                       
 911 "loc_FF8B07D0:\n"
 912 "       LDRH    R0, [R8] \n"                        
 913 "       STRH    R0, [R4, #4] \n"                    
 914 "loc_FF8B07D8:\n"
 915 "       CMP     R5, #1 \n"                           
 916 "       LDRNEH  R0, [R8, #8] \n"                  
 917 "       BNE     loc_FF8B07F4 \n"                     
 918 "       LDRSH   R0, [R4, #0xC] \n"                 
 919 "       LDR     R1, =0xFF8AF6DC \n"                
 920 "       MOV     R2, #0x20 \n"                        
 921 "       BL      sub_FF8B41F8 \n"                      
 922 "loc_FF8B07F4:\n"
 923 "       STRH    R0, [R4, #0xC] \n"                  
 924 "       LDRSH   R0, [R4, #6] \n" 
 925                   
 926 //"     BL      sub_FF8A2F60 \n"   
 927 "       BL      sub_FF8A2F60_my \n"   //------------->>>   
 928                    
 929 "       LDRSH   R0, [R4, #8] \n"                   
 930 "       MOV     R1, #1 \n"                           
 931 "       BL      sub_FF8A3638 \n"                      
 932 "       MOV     R1, #0 \n"                           
 933 "       ADD     R0, R4, #8 \n"                       
 934 "       BL      sub_FF8A36C0 \n"                      
 935 "       LDRSH   R0, [R4, #0xE] \n"                 
 936 "       BL      sub_FF8AB1AC \n"                      
 937 "       LDR     R4, =0xBB8 \n"                       
 938 "       CMP     R6, #1 \n"                           
 939 "       BNE     loc_FF8B084C \n"                     
 940 "       LDR     R0, [R7, #0x1C] \n"                  
 941 "       MOV     R2, R4 \n"                           
 942 "       MOV     R1, #2 \n"                           
 943 "       BL      sub_FF87C71C \n"                      
 944 "       TST     R0, #1 \n"                           
 945 "       SUBNE   R1, R4, #0x620 \n"                 
 946 "       LDRNE   R0, =0xFF8AFCDC \n"                
 947 "       BLNE    sub_FF81E88C \n"                    
 948 "loc_FF8B084C:\n"
 949 "       CMP     R5, #1 \n"                           
 950 "       LDMNEFD SP!, {R4-R8,PC} \n"              
 951 "       LDR     R0, [R7, #0x1C] \n"                  
 952 "       MOV     R2, R4 \n"                           
 953 "       MOV     R1, #0x20 \n"                        
 954 "       BL      sub_FF87C71C \n"                      
 955 "       TST     R0, #1 \n"                           
 956 "       LDRNE   R1, =0x59D \n"                     
 957 "       LDRNE   R0, =0xFF8AFCDC \n"              
 958 "       LDMNEFD SP!, {R4-R8,LR} \n"              
 959 "       BNE     sub_FF81E88C \n"                     
 960 "       LDMFD   SP!, {R4-R8,PC} \n"               
 961         );
 962 }
 963 
 964 
 965 /*----------------------------------------------------------------------
 966         sub_FF8A2F60_my() - exp_drv_task()
 967 -----------------------------------------------------------------------*/
 968 void __attribute__((naked,noinline)) sub_FF8A2F60_my() {
 969 asm volatile (
 970 "       STMFD   SP!, {R4-R6,LR} \n"                
 971 "       LDR     R5, =0x3998 \n"                      
 972 "       MOV     R4, R0 \n"                           
 973 "       LDR     R0, [R5, #4] \n"                     
 974 "       CMP     R0, #1 \n"                           
 975 "       LDRNE   R1, =0x146 \n"                     
 976 "       LDRNE   R0, =0xFF8A2CEC \n"                
 977 "       BLNE    sub_FF81E88C \n"                    
 978 "       CMN     R4, #0xC00 \n"                       
 979 "       LDREQSH R4, [R5, #2] \n"                 
 980 "       CMN     R4, #0xC00 \n"                       
 981 "       MOVEQ   R1, #0x14C \n"                     
 982 "       LDREQ   R0, =0xFF8A2CEC \n"                
 983 "       STRH    R4, [R5, #2] \n"                    
 984 "       BLEQ    sub_FF81E88C \n"                    
 985 "       MOV     R0, R4 \n"    
 986 
 987 //"     BL      sub_FF9D5360 \n"        // old??? apex2us                   
 988 "       BL      apex2us\n"              //--------------->>            
 989                      
 990 "       MOV     R4, R0 \n"                           
 991 //"     BL      sub_FF8D7AE8 \n"                      
 992 "       MOV     R0, R4 \n"                           
 993 "       BL      sub_FF8DB75C \n"                      
 994 "       TST     R0, #1 \n"                           
 995 "       LDRNE   R1, =0x151 \n"                     
 996 "       LDMNEFD SP!, {R4-R6,LR} \n"              
 997 "       LDRNE   R0, =0xFF8A2CEC \n"                
 998 "       BNE     sub_FF81E88C \n"                     
 999 "       LDMFD   SP!, {R4-R6,PC} \n"               
1000         );
1001 }
1002 

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