-Data base W715 R1GA030 GEN
-Portado W760 R3EF001



Código:
include "x.inc"
include "w760.lib.asm"

;W760 R3EF001
;Additional Shortcuts and StuffPlayer in the Walkman
;-Is added Menu "Shortcuts":
;->FM Radio
;->VideoDJ
;--------------------------------------------------------
;-Is added Menu "Stuff Player"(elfs):
;->MusicTagger ELF (/usb/other/ZBin/MusicTagger.elf)
;->MusicWidget ELF (/usb/other/ZBin/IMW.elf)
;->ClearBass ELF (/usb/other/ZBin/Clearbass.elf)
;->SongChanger ELF (/usb/other/ZBin/A2SongChanger.elf)
;->Visualizacion ELF (/usb/other/ZBin/Visualization.elf)
;--------------------------------------------------------
;-Is added information in items Shortcuts and Stuff Player
;-Link MusicTagger to current song in Walkman
;(i) Should edit LNG file:
;0x2979 - "Additional Shortcuts in Walkman"
;0x297A - "Fast access to ELFS in walkman"
;v. 2
;(c) Antoniomun
;(p) josthyn05

org 0x10D235E4 ; 14FDE4BC
                       LDR     R3, off_14FDE4C0
                       BLX     R3

 off_14FDE4C0    DCD body+1

                       NOP

org 0x12841990
body:                
                    
        LDR    R0, [R4,0x1C]
        ADD    R2, R5,    0
        MOV    R1, 0xE1
        BL    sub_15DC9086
        LDR    R0, [R4,0x1C]
        BL    sub_15DC904E
        MOV    R1, 0xE1
        BL    sub_15DC908A
        LDR    R0, [R4,0x1C]
        LDR    R2, dword_15DC90E4
        MOV    R1, 0xE1
        BL    sub_15DC9092
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE1
        MOV    R2, 0xE2
        BL    sub_15DC9096
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE2
        LDR    R2, dword_15DC90DC
        BL    sub_15DC908A
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE2
        LDR    R2, off_15DC90A0
        BL    sub_15DC9086
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE1
        MOV    R2, 0xE3
        BL    sub_15DC9096
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE3
        LDR    R2, dword_15DC90E0
        BL    sub_15DC908A
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE3
        LDR    R2, off_15DC90A8
        BL    sub_15DC9086
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE4
        BL    sub_15DC9086
        LDR    R0, [R4,0x1C]
        BL    sub_15DC9054
        MOV    R1, 0xE4
        BL    sub_15DC908A
        LDR    R0, [R4,0x1C]
        LDR    R2, dword_15DC90E8
        MOV    R1, 0xE4
        BL    sub_15DC9092
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE4
        MOV    R2, 0xE5
        BL    sub_15DC9096
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE5
        LDR    R2, off_15DC90C8
        BL    sub_15DC9086
        LDR    R0, [R4,0x1C]
        BL    sub_15DC905A
        MOV    R1, 0xE5
        BL    sub_15DC908A
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE4
        MOV    R2, 0xE7
        BL    sub_15DC9096
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE7
        LDR    R2, off_15DC90CC
        BL    sub_15DC9086
        LDR    R0, [R4,0x1C]
        BL    sub_15DC9060
        MOV    R1, 0xE7
        BL    sub_15DC908A
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE4
        MOV    R2, 0xE9
        BL    sub_15DC9096
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE9
        LDR    R2, off_15DC90D0
        BL    sub_15DC9086
        LDR    R0, [R4,0x1C]
        BL    sub_15DC9066
        MOV    R1, 0xE9
        BL    sub_15DC908A
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE4
        MOV    R2, 0xEB
        BL    sub_15DC9096
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xEB
        LDR    R2, off_15DC90D4
        BL    sub_15DC9086
        LDR    R0, [R4,0x1C]
        BL    sub_15DC906C
        MOV    R1, 0xEB
        BL    sub_15DC908A
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xE4
        MOV    R2, 0xED
        BL    sub_15DC9096
        LDR    R0, [R4,0x1C]
        MOV    R1, 0xED
        LDR    R2, off_15DC90D8
        BL    sub_15DC9086
        LDR    R0, [R4,0x1C]
        BL    sub_15DC9072
        MOV    R1, 0xED
        BL    sub_15DC908A
        LDR    R3, off_15DC909C
        BLX    R3

loc_15DC903E:                
        PUSH    {R0-R7,LR}
        LDR    R0, off_15DC90A4
        B    loc_15DC9048



loc_15DC9044:                
        PUSH    {R0-R7,LR}
        LDR    R0, off_15DC90AC


loc_15DC9048:                
        BL    sub_15DC9082
        POP    {R0-R7,PC}





sub_15DC904E:                
        PUSH    {R0,R1,R3-R7,LR}
        adr    R0, aShortcuts    
        B    loc_15DC9076






sub_15DC9054:                
        PUSH    {R0,R1,R3-R7,LR}
        adr    R0, aStuffPlayer 
        B    loc_15DC9076






sub_15DC905A:                
        PUSH    {R0,R1,R3-R7,LR}
        adr    R0, aMusictagger 
        B    loc_15DC9076






sub_15DC9060:                
        PUSH    {R0,R1,R3-R7,LR}
        adr    R0, aMusicwidget 
        B    loc_15DC9076






sub_15DC9066:                
        PUSH    {R0,R1,R3-R7,LR}
        adr    R0, aClearBass    
        B    loc_15DC9076






sub_15DC906C:                
        PUSH    {R0,R1,R3-R7,LR}
        adr    R0, aSongchanger 
        B    loc_15DC9076






sub_15DC9072:                
        PUSH    {R0,R1,R3-R7,LR}
        adr    R0, aVisualization 

loc_15DC9076:                
                    
        MOV    R1, 0
        MOV    R2, 0xFF
        BL    sub_15DC908E
        ADD    R2, R0,    0
        POP    {R0,R1,R3-R7,PC}






sub_15DC9082:                
        LDR    R3, off_15DC90B0
        BX    R3        






sub_15DC9086:                
                    
        LDR    R3, off_15DC90B4
        BX    R3        






sub_15DC908A:                
                    
        LDR    R3, off_15DC90B8
        BX    R3        






sub_15DC908E:                
        LDR    R3, off_15DC90BC
        BX    R3        






sub_15DC9092:                
                    
        LDR    R3, off_15DC90C4
        BX    R3        






sub_15DC9096:                
                    
        LDR    R3, off_15DC90C0
        BX    R3        



        align 4
off_15DC909C    dw 0x10D235EE+1 ; 14FDE4C6+1    
off_15DC90A0    dw loc_15DC903E+1    
off_15DC90A4    dw 0x11C27BC0 ; 15BA08F0 ; aFmradio        
                    
off_15DC90A8    dw loc_15DC9044+1    
off_15DC90AC    dw 0x11C27AB0 ; 15BA07E0 ; aVideodj        
                    
off_15DC90B0    dw Shortcut_Run+1    
                    
off_15DC90B4    dw GUIObject_SoftKeys_SetAction+1 
                    
off_15DC90B8    dw GUIObject_SoftKeys_SetText+1 
                    
off_15DC90BC    dw Str2ID+1        
                    
off_15DC90C0    dw GUIObject_SoftKeys_SetItemAsSubItem+1 
                    
off_15DC90C4    dw GUIObject_SoftKeys_SetInfoText+1 
                    
off_15DC90C8    dw loc_15DC9198    
off_15DC90CC    dw loc_15DC9218    
off_15DC90D0    dw loc_15DC926C    
off_15DC90D4    dw loc_15DC92D0    
off_15DC90D8    dw loc_15DC9334    
dword_15DC90DC    dw 0x2322 ; 1C7A        
dword_15DC90E0    dw 0x7A2 ; 1253        
dword_15DC90E4    dw 0x1A0 ; 2979 ; "Additional Shortcuts in Walkman"        
dword_15DC90E8    dw 0x1A1 ; 297A ; "Fast access to ELFS in walkman"        
aVisualization    du    "Visualization",0 
aSongchanger    du    "SongChanger",0 
aClearBass    du    "Clear Bass ",0 
aMusicwidget    du    "MusicWidget",0 
aMusictagger    du    "MusicTagger",0 
aShortcuts    du    "Shortcuts",0 
aStuffPlayer    du    "Stuff Player",0 
        align 4

code32
loc_15DC9198:

        STMFD    SP!, {R4,LR}
        adr    R0, aUsbOtherZbinMu 
        MOV    R1, 0
        MOV    R2, 0
        MOV    R3, 0
        SWI    0x10D
        MOV    R0, 0
        LDMFD    SP!, {R4,PC}
                
        
aUsbOtherZbinMu    du    "/usb/other/Zbin/MusicTagger.elf",0 
        dw 0


loc_15DC9218:                
        STMFD    SP!, {R4,LR}
        adr    R0, aUsbOtherZbinIm 
        MOV    R1, 0
        MOV    R2, 0
        MOV    R3, 0
        SWI    0x10D
        MOV    R0, 0
        LDMFD    SP!, {R4,PC}

aUsbOtherZbinIm    du    "/usb/other/Zbin/IMW.elf",0 
        dw 0


loc_15DC926C:                
        STMFD    SP!, {R4,LR}
        adr    R0, aUsbOtherZbinCl 
        MOV    R1, 0
        MOV    R2, 0
        MOV    R3, 0
        SWI    0x10D
        MOV    R0, 0
        LDMFD    SP!, {R4,PC}

aUsbOtherZbinCl    du    "/usb/other/Zbin/ClearBass.elf",0 
        dw 0
        dw 0


loc_15DC92D0:                
        STMFD    SP!, {R4,LR}
        adr    R0, aUsbOtherZbinA2 
        MOV    R1, 0
        MOV    R2, 0
        MOV    R3, 0
        SWI    0x10D
        MOV    R0, 0
        LDMFD    SP!, {R4,PC}

aUsbOtherZbinA2    du    "/usb/other/Zbin/A2SongChanger.elf",0 


loc_15DC9334:                
        STMFD    SP!, {R4,LR}
        adr    R0, aUsbOtherZbinVi 
        MOV    R1, 0
        MOV    R2, 0
        MOV    R3, 0
        SWI    0x10D
        MOV    R0, 0
        LDMFD    SP!, {R4,PC}

aUsbOtherZbinVi    du    "/usb/other/Zbin/Visualization.elf",0