MiFa

Untitled

Jun 20th, 2011
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ;W595 SW-R3EF001
  2. ;Selection an event by Timer
  3. ;For events you can set:
  4. ;item 1: standard action
  5. ;item 2: shutdown
  6. ;item 3: restart
  7. ;item 4: included the last profile from the list
  8. ;item 5: key lock
  9. ;item 6: play music when music not playing/stop music when music playing
  10. ;item 7: turn off Bluetooth
  11. ;item 8: turn on silent when silent is off/turn off silent when silent is on
  12. ;Added information about patch
  13. ;Ability to choose action by numeric buttons
  14. ;(!) Must be rollback patch "Shutting down the phone by an timer"
  15. ;(!) HeapShift (0x4BBF29F1)
  16. ;v 1.1
  17. ;(c) Sic
  18. ;(r) Ploik
  19. ;(e,p) jamesbond22
  20.  
  21. include "x.inc"
  22. include "lib\W902.inc"
  23.  
  24.  
  25. org 0x10FAAD76;10fa2ff6
  26. ;pg_TimerBook_Enter
  27.                 blx     R2
  28.  
  29. org 0x10FAADEC;10fa306c
  30. ;start_lng
  31.                 dw newcode+1
  32.  
  33. org 0x10FAAF90;10fa3210
  34. ;TimerBook_Exit
  35. ;sound id
  36.                 mov    R0, 0x18
  37.  
  38. org 0x10FAAFBE;10fa323e
  39.                 blx     R1
  40.  
  41. org 0x10FAAFD0;10fa3250
  42.                 blx     R0
  43.  
  44. org 0x10FAAFF0;10fa3270
  45. ;icon ;;;;;;; 0x2710
  46.                 ldr     R1, 0x10FAB03C;10FA32BC
  47.  
  48. org 0x10FAB00C;10fa328c
  49.                 blx     R2
  50.                 ldr     R0, [R5]
  51.                 nop
  52.                 nop
  53.  
  54. org 0x10FAB040;10fa32c0
  55.                 dw body+1
  56.  
  57. org 0x10FAB048;10fa32c8
  58. off_10FA32C8    dw body1+1
  59. dword_10FA32CC  dw 0xFBF;ACTION_OK
  60. dword_10FA32D0  dw 0xF8F7 ;bt_paired_camera_icn
  61. ;off_10FA32D4    DCD loc_10FA33B8+1 ;łączy hooki
  62.  
  63. org 0x10FAB058;10fa32d8
  64. off_10FA32D8    dw 0x10FAB0D0+1;10FA3350+1
  65. off_10FA32DC    dw body2+1
  66.  
  67. ;--------------------------------------------patchbody----------------------------------------------
  68. org 0x11D5C270;11f18da0
  69. newcode:
  70.                 ldr     R2, _start_lng
  71.                 ldr     R0, [R4]
  72.                 ;ldr     r0, [r5]
  73.                 push    {R0-R7,LR}
  74.                 ldr     R0, [R4]
  75.                 ldr     R1, _ACTION_NO
  76.                 adr     R2, loc_11F18E0C
  77.                 add     R2, 1
  78.                 bl      sub_11F19010
  79.                 ldr     R0, [R4]
  80.                 ldr     R1, _ACTION_NO
  81.                 ldr     R2, _tasks_lng
  82.                 bl      sub_11F19020
  83.                 ldr     R0, [R4]
  84.                 ldr     R1, _ACTION_NO
  85.                 mov     R2, 1
  86.                 bl      sub_11F19024
  87.                 ldr     R0, [R4]
  88.                 mov     R1, 1
  89.                 adr     R2, loc_11F18DE8
  90.                 add     R2, 1
  91.                 bl      sub_11F19010
  92.                 ldr     R0, [R4]
  93.                 mov     R1, 1
  94.                 ldr     R2, _Information_lng
  95.                 bl      sub_11F19020
  96.                 ldr     R0, [R4]
  97.                 mov     R1, 1
  98.                 mov     R2, 1
  99.                 bl      sub_11F19024
  100.                 pop     {R0-R7,PC}
  101.  
  102.  
  103. loc_11F18DE8:                          
  104.                 push    {R4,LR}
  105.                 adr     R0, aSelectionAnEve
  106.                 mov     R2, 0xFF
  107.                 mov     R1, 6
  108.                 bl      sub_11F18FEC
  109.                 add     R4, R0, 0
  110.                 mov     R0, 0
  111.                 mov     R1, 0
  112.                 push    {R0,R1}
  113.                 mov     R3, 1
  114.                 add     R1, R4, 0
  115.                 add     R0, R4, 0
  116.                 ldr     R2, dword_11F190B4
  117.                 bl      sub_11F18FE8
  118.                 add     SP, SP, 8
  119.                 pop     {R4,PC}
  120.  
  121.  
  122. loc_11F18E0C:                          
  123.                 push    {R4,LR}
  124.                 add     R4, R0, 0
  125.                 add     R0, R1, 0
  126.                 bl      sub_11F18FF0
  127.                 mov     R3, SP
  128.                 bl      sub_11F18FF8
  129.                 add     R0, R4, 0
  130.                 adr     R1, off_11F19054
  131.                 bl      sub_11F18FF4
  132.                 pop     {R4,PC}
  133.  
  134.  
  135. body3:
  136.                 push    {R0,R4,R5,LR}
  137.                 ldr     R5, off_loadfromheap
  138.                 ldrb    R5, [R5]
  139.                 add     R4, R1, 0
  140.                 add     R0, R4, 0
  141.                 bl      sub_11F18FFC
  142.                 str     R0, [R4,0x18]
  143.                 ldr     R1, _tasks_lng
  144.                 bl      sub_11F19000
  145.                 ldr     R0, [R4,0x18]
  146.                 mov     R1, 8
  147.                 bl      sub_11F19004
  148.                 ldr     R0, [R4,0x18]
  149.                 add     R1, R5, 0
  150.                 bl      sub_11F19008
  151.                 ldr     R0, [R4,0x18]
  152.                 ldr     R1, off_11F190FC
  153.                 mov     R2, 8
  154.                 bl      sub_11F1900C
  155.                 ldr     R0, [R4,0x18]
  156.                 mov     R1, 1
  157.                 bl      sub_11F1902C
  158.                 ldr     R0, [R4,0x18]
  159.                 ldr     R1, _ACTION_LONG_BACK
  160.                 adr     R2, loc_11F18EB4
  161.                 add     R2, 1
  162.                 bl      sub_11F19010
  163.                 ldr     R0, [R4,0x18]
  164.                 ldr     R1, _ACTION_SELECT1
  165.                 adr     R2, loc_11F18E90
  166.                 add     R2, 1
  167.                 bl      sub_11F19010
  168.                 ldr     R0, [R4,0x18]
  169.                 movl    R1, 0xFC0 ;ACTION_BACK
  170.                 adr     R2, loc_11F18EA8
  171.                 add     R2, 1
  172.                 bl      sub_11F19010
  173.                 ldr     R0, [R4,0x18]
  174.                 bl      sub_11F19014
  175.                 mov     R0, 1
  176.                 pop     {R3-R5,PC}
  177.  
  178.                 align 4
  179.  
  180.  
  181. loc_11F18E90:                          
  182.                 push    {R4,LR}
  183.                 add     R4, R0, 0
  184.                 add     R5, R1, 0
  185.                 add     R0, R1, 0
  186.                 bl      sub_11F19018
  187.                 ldr     R6, off_loadfromheap
  188.                 strb    R0, [R6]
  189.                 add     R0, R5, 0
  190.                 bl      sub_11F1901C
  191.                 pop     {R4,PC}
  192.  
  193.  
  194. loc_11F18EA8:                          
  195.                 push    {R0-R7,LR}
  196.                 add     R0, R1, 0
  197.                 bl      sub_11F1901C
  198.                 pop     {R0-R7,PC}
  199.  
  200.                 align 4
  201.  
  202.  
  203. loc_11F18EB4:                          
  204.                 push    {R0-R7,LR}
  205.                 ldr     R0, _RETURN_TO_STANDBY_EVENT
  206.                 bl      sub_11F19028
  207.                 pop     {R0-R7,PC}
  208.  
  209.  
  210.  
  211.  
  212. body:
  213.                                        
  214.                 add     R2, R4, 0
  215.                 push    {R0,R2-R7,LR}
  216.                 ldr     R5, off_loadfromheap
  217.                 ldrb    R5, [R5]
  218.                 cmp     R5, 1
  219.                 beq     loc_11F18EE6
  220.                 cmp     R5, 2
  221.                 beq     loc_11F18EEC
  222.                 cmp     R5, 3
  223.                 beq     loc_11F18EF2
  224.                 cmp     R5, 4
  225.                 beq     loc_11F18EF8
  226.                 cmp     R5, 5
  227.                 beq     loc_11F18EFE
  228.                 cmp     R5, 6
  229.                 beq     loc_11F18F04
  230.                 cmp     R5, 7
  231.                 beq     loc_11F18F0A
  232.                 ldr     R1, off_addr2
  233.                 B       locret_11F18F0E
  234.  
  235.  
  236. loc_11F18EE6:                          
  237.                 adr     R1, loc_11F18F10
  238.                 add     R1, 1
  239.                 B       locret_11F18F0E
  240.  
  241.  
  242. loc_11F18EEC:                          
  243.                 adr     R1, loc_11F18F20
  244.                 add     R1, 1
  245.                 B       locret_11F18F0E
  246.  
  247.  
  248. loc_11F18EF2:                          
  249.                 adr     R1, loc_11F18FBC
  250.                 add     R1, 1
  251.                 B       locret_11F18F0E
  252.  
  253.  
  254. loc_11F18EF8:                          
  255.                 adr     R1, loc_11F18FB0
  256.                 add     R1, 1
  257.                 B       locret_11F18F0E
  258.  
  259.  
  260. loc_11F18EFE:                          
  261.                 adr     R1, loc_11F18FCC
  262.                 add     R1, 1
  263.                 B       locret_11F18F0E
  264.  
  265.  
  266. loc_11F18F04:                          
  267.                 adr     R1, loc_11F18FD4
  268.                 add     R1, 1
  269.                 B       locret_11F18F0E
  270.  
  271.  
  272. loc_11F18F0A:                          
  273.                 adr     R1, loc_11F18FE0
  274.                 add     R1, 1
  275.  
  276. locret_11F18F0E:                        
  277.                                        
  278.                 pop     {R0,R2-R7,PC}
  279.  
  280.  
  281. loc_11F18F10:                          
  282.                 push    {LR}
  283.                 bl      sub_11F18F1A
  284.                 mov     R0, 1
  285.                 pop     {PC}
  286.  
  287.  
  288. sub_11F18F1A:                          
  289.  
  290. var_8           = -8
  291.                 ldr     R3, off_11F19118
  292.                 bx      R3              
  293.  
  294.                 align 4
  295.  
  296. loc_11F18F20:                          
  297.                 push    {LR}
  298.                 bl      sub_11F18F2A
  299.                 mov     R0, 1
  300.                 pop     {PC}
  301.  
  302.  
  303. sub_11F18F2A:                          
  304.  
  305.                 ldr     R3, off_restart
  306.                 bx      R3
  307.  
  308. body1:
  309.                                        
  310.                 add     R2, R4, 0
  311.                 push    {R1-R7,LR}
  312.                 ldr     R5, off_loadfromheap
  313.                 ldrb    R5, [R5]
  314.                 cmp     R5, 1
  315.                 beq     loc_11F18F56
  316.                 cmp     R5, 2
  317.                 beq     loc_11F18F5A
  318.                 cmp     R5, 3
  319.                 beq     loc_11F18F5E
  320.                 cmp     R5, 4
  321.                 beq     loc_11F18F62
  322.                 cmp     R5, 5
  323.                 beq     loc_11F18F66
  324.                 cmp     R5, 6
  325.                 beq     loc_11F18F6A
  326.                 cmp     R5, 7
  327.                 beq     loc_11F18F6E
  328.                 ldr     R0, _timer_lng
  329.                 B       locret_11F18F70
  330.  
  331.  
  332. loc_11F18F56:                          
  333.                 ldr     R0, _disabled_lng
  334.                 B       locret_11F18F70
  335.  
  336.  
  337. loc_11F18F5A:                          
  338.                 ldr     R0, _Retrieve_lng
  339.                 B       locret_11F18F70
  340.  
  341.  
  342. loc_11F18F5E:                          
  343.                 ldr     R0, _select_profile_lng
  344.                 B       locret_11F18F70
  345.  
  346.  
  347. loc_11F18F62:                          
  348.                 ldr     R0, _key_lock_lng
  349.                 B       locret_11F18F70
  350.  
  351.  
  352. loc_11F18F66:                          
  353.                 ldr     R0, _play_lng
  354.                 B       locret_11F18F70
  355.  
  356.  
  357. loc_11F18F6A:                          
  358.                 ldr     R0, dword_11F19168
  359.                 B       locret_11F18F70
  360.  
  361.  
  362. loc_11F18F6E:                          
  363.                 ldr     R0, _Turn_on_silent_lng
  364.  
  365. locret_11F18F70:                        
  366.                                        
  367.                 pop     {R1-R7,PC}
  368.  
  369.  
  370. body2:
  371.                                        
  372.                 push    {R0-R7,LR}
  373.                 ldr     R1, _ACTION_OK
  374.                 ldr     R0, [R5]
  375.                 ldr     R7, off_addr4
  376.                 blx     R7
  377.                 cmp     R0, 0
  378.                 beq     loc_11F18F88
  379.                 ldr     R1, _ACTION_OK
  380.                 ldr     R0, [R5]
  381.                 ldr     R7, off_11F190C4
  382.                 blx     R7
  383.  
  384. loc_11F18F88:                          
  385.                 adr     R2, loc_11F18F98
  386.                 add     R2, 1
  387.                 ldr     R1, _ACTION_OK
  388.                 ldr     R0, [R5]
  389.                 ldr     R7, off_11F190C0
  390.                 blx     R7
  391.                 pop     {R0-R7,PC}
  392.  
  393.                 align 4
  394.  
  395.  
  396. loc_11F18F98:                          
  397.                 push    {R0-R7,LR}
  398.                 ldr     R7, off_11F1910C
  399.                 blx     R7
  400.                 bl      body
  401.                 ldr     R7, off_addr2
  402.                 cmp     R7, R1
  403.                 beq     locret_11F18FAC
  404.                 add     R7, R1, 0
  405.                 blx     R7
  406.  
  407. locret_11F18FAC:                        
  408.                 pop     {R0-R7,PC}
  409.  
  410.                 align 4
  411.  
  412.  
  413. loc_11F18FB0:                          
  414.                 push    {R0,R4,R5,LR}
  415.                 ldr     R0, _UI_KEYLOCK_ACTIVATE_EVENT
  416.                 ldr     R4, off_11F19110
  417.                 blx     R4
  418.                 pop     {R3-R5,PC}
  419.  
  420.                 align 4
  421.  
  422.  
  423. loc_11F18FBC:                          
  424.                 push    {R0-R7,LR}
  425.                 ldr     R0, off_streaming_savequestion
  426.                 ldr     R0, [R0]
  427.                 mov     R1, 6
  428.                 ldr     R7, off_addr3
  429.                 blx     R7
  430.                 pop     {R0-R7,PC}
  431.  
  432.                 align 4
  433.  
  434.  
  435. loc_11F18FCC:                          
  436.                 push    {R0-R7,LR}
  437.                 ldr     R7, off_11F19120
  438.                 blx     R7
  439.                 pop     {R0-R7,PC}
  440.  
  441.  
  442. loc_11F18FD4:                          
  443.                 push    {R0-R7,LR}
  444.                 ;---
  445.                 mov     R0, 0
  446.                 ldr     R7, off_btdef
  447.                 blx     R7
  448.                 pop     {R0-R7,PC}
  449.  
  450.                 align 4
  451.  
  452.  
  453. loc_11F18FE0:                          
  454.                 push    {R0-R7,LR}
  455.                 ldr     R7, off_music
  456.                 blx     R7
  457.                 pop     {R0-R7,PC}
  458.  
  459. sub_11F18FE8:                          
  460.                 ldr     R6, off_11F190AC
  461.                 bx      R6              
  462.  
  463.  
  464.  
  465. sub_11F18FEC:                          
  466.                 ldr     R3, off_11F190B0
  467.                 bx      R3              
  468.  
  469.  
  470.  
  471. sub_11F18FF0:                          
  472.                 ldr     R3, off_11F190DC
  473.                 bx      R3
  474.  
  475.  
  476. sub_11F18FF4:                          
  477.                 ldr     R3, off_11F190E4
  478.                 bx      R3              
  479.  
  480.  
  481.  
  482. sub_11F18FF8:                          
  483.                 ldr     R6, off_addr1
  484.                 bx      R6
  485.  
  486.  
  487.  
  488. sub_11F18FFC:                          
  489.                 ldr     R3, off_11F190EC
  490.                 bx      R3              
  491.  
  492.  
  493. sub_11F19000:                          
  494.                 ldr     R3, off_11F190F0
  495.                 bx      R3              
  496.  
  497.  
  498. sub_11F19004:                          
  499.                 ldr     R3, off_11F190F4
  500.                 bx      R3              
  501.  
  502.  
  503. sub_11F19008:                          
  504.                 ldr     R3, off_11F190F8
  505.                 bx      R3              
  506.  
  507.  
  508. sub_11F1900C:                          
  509.                 ldr     R3, off_11F19100
  510.                 bx      R3              
  511.  
  512.  
  513. sub_11F19010:                          
  514.                                        
  515.                 ldr     R3, off_11F190C0
  516.                 bx      R3              
  517.  
  518. sub_11F19014:                          
  519.                 ldr     R3, off_11F19104
  520.                 bx      R3              
  521.  
  522. sub_11F19018:                          
  523.                 ldr     R3, off_11F19108
  524.                 bx      R3              
  525.  
  526. sub_11F1901C:                          
  527.                                        
  528.                 ldr     R3, off_11F19138
  529.                 bx      R3              
  530.  
  531. sub_11F19020:                          
  532.                                        
  533.                 ldr     R3, off_11F190B8
  534.                 bx      R3              
  535.  
  536.  
  537. sub_11F19024:                          
  538.                                        
  539.                 ldr     R3, off_11F190BC
  540.                 bx      R3              
  541.  
  542. sub_11F19028:                          
  543.                 ldr     R3, off_11F19110
  544.                 bx      R3              
  545.  
  546. sub_11F1902C:                          
  547.                 ldr     R3, off_11F1912C
  548.                 bx      R3              
  549.  
  550. aTimerbook_even db "TimerBook_Event_Page",0
  551.                 db 0xFF
  552.                 align 4
  553.  
  554. _enter_ac  dw 0xF
  555.                 dw body3+1
  556.                 dw 0
  557. off_11F19054    dw aTimerbook_even      
  558.                                        
  559.                 dw 0
  560.                 dw _enter_ac
  561. ;coment
  562. align 4
  563. aSelectionAnEve db "Selection an event by Timer",0xA
  564.                 db "v. 1.1",0xA
  565.                 ;db 0xA
  566.                 db "(c) Sic",0xA
  567.                 db "(r) Ploik",0xA
  568.                 db "(e) jamesbond22",0xA
  569.                 db "(p) MiFa",0
  570. ;end
  571. ;-----------------------------------------------------------------------------------------------------
  572. align 4
  573. _Information_lng                                                        dw 0x6AD
  574. off_11F190AC    dw MessageBox+1
  575. off_11F190B0    dw Str2ID+1
  576. dword_11F190B4                          dw 0xFFFF
  577. off_11F190B8    dw GUIObject_Softkeys_SetText+1
  578. off_11F190BC    dw GUIObject_SoftKeys_SetVisible+1
  579. off_11F190C0    dw GUIObject_Softkeys_SetAction+1
  580. off_11F190C4    dw GUIObject_SoftKeys_RemoveItem+1
  581. _ACTION_SELECT1                         dw 0xFC2
  582. _ACTION_OK                              dw 0xFBF
  583. _ACTION_NO                              dw 0xFBE
  584. _ACTION_LONG_BACK                       dw 0xFAF
  585. _RETURN_TO_STANDBY_EVENT                dw 0x840
  586. off_11F190DC    dw TimeInput_GetTimeInt+1
  587. off_addr1                                                               dw 0x10FAB330+1;10FA35B0+1
  588. off_11F190E4    dw BookObj_GotoPage+1  
  589. off_loadfromheap                                                        dw 0x4BBFF29B;4BBF29F1
  590. off_11F190EC    dw CreateOneOfMany+1
  591. off_11F190F0    dw GUIObject_SetTitleText+1
  592. off_11F190F4    dw OneOfMany_SetItemCount+1
  593. off_11F190F8    dw OneOfMany_SetChecked+1
  594. off_11F190FC    dw _standard_lng
  595. off_11F19100    dw OneOfMany_SetTexts+1
  596. off_11F19104    dw GUIObject_Show+1
  597. off_11F19108    dw OneOfMany_GetSelected+1
  598. off_11F1910C    dw FreeBook+1
  599. off_11F19110    dw UI_Event+1
  600. off_addr2                                                               dw 0x10FAB218+1;10FA3498+1
  601. off_11F19118    dw REQUEST_SYSTEM_SHUTDOWN+1
  602. off_restart                                                             dw 0x1151332C+1;114F2990+1
  603. off_11F19120    dw GoMusic+1            
  604. off_btdef                                                               dw 0x10A6CACC+1;10A6445C+1
  605. off_music                                                               dw 0x10D96AC4+1;10D8E748+1
  606. off_11F1912C    dw ListMenu_SetHotkeyMode+1
  607. off_streaming_savequestion                                              dw 0x11B61A7C+1;11B61A7F+1;11B3C0CB+1
  608. off_addr3                                                               dw 0x11AC0D1C+1;11A9B26C+1
  609. off_11F19138    dw GUIObject_Destroy+1 ;GUI_Free
  610. off_addr4                                                               dw 0x10815710+1;1080D6D0+1
  611. _UI_KEYLOCK_ACTIVATE_EVENT              dw 0x5E27
  612. ;lang
  613. _tasks_lng                                      dw 0x21B
  614. _timer_lng                                      dw 0x2876
  615. _start_lng                                      dw 0xD98
  616. _standard_lng                                   dw 0x774
  617. _disabled_lng                                   dw 0x867
  618. _Retrieve_lng                                   dw 0x57C
  619. _select_profile_lng                             dw 0x13D4
  620. _key_lock_lng                                   dw 0x234D
  621. _play_lng                                       dw 0x707
  622. dword_11F19168                                  dw 0x1ae ;Wyłącz bluetooth
  623. _Turn_on_silent_lng                             dw 0x1BC4
  624. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Advertisement
Add Comment
Please, Sign In to add comment