Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;W902 SW-R3EG004
- ;Displays custom text in screen of Walkman
- ;Now color of text is readed from theme
- ;v. 1.5
- ;(c) jamesbond22
- ;(p) MiFa
- include "x.inc"
- include "lib\W902.inc"
- org 0x10AFAA08;10af21b4
- dw newcode+1
- ;--------------------------------------------patchbody--------------------------------------------
- org 0x11D5EFF0;11ae4da0
- newcode:
- push {R4-R6,LR}
- bl _skokhooka
- add R4, R0, 0
- mov R1, 0
- mov R0, 0x4F
- bl _getthemecolor
- add R5, R0, 0
- mov R1, 0
- mov R0, 0x4F
- bl _getthemecolor
- movl R1, 0x120
- ldr R6, [R4,R1]
- cmp R6, 0
- beq _koniec
- bl _display
- cmp R0, 0
- beq _portrait
- bl _getorient
- cmp R0, 0
- bne _landscape
- _portrait:
- mov R0, 0x11;Font
- bl _addr1
- add R2, R5, 0
- mov R1, 0
- mov R0, 0x18
- push {R0-R3}
- movl R1, 0x104
- mov R0, 0xF0 ;X2
- push {R0,R1}
- mov R2, 0xFF ;Y2 (Y2 = "FF" + "05" = 104 hex = 260 dec)
- mov R1, 6
- adr R0, aWalkman
- bl _str2id
- mov R3, 0xFA ;Y1
- mov R2, 0xA0 ;X1
- mov R1, 0 ;Aligment
- B _aligment
- _landscape:
- mov R0, 0x11 ;Font
- bl _addr1
- add R2, R5, 0
- mov R1, 0
- mov R0, 0x18
- push {R0-R3}
- mov R1, 0x56 ;Y2
- movl R0, 0x140 ;X2 (X2 = "FF" + "41" = 140 hex = 320 dec)
- push {R0,R1}
- mov R2, 0xFF
- mov R1, 6
- adr R0, aWalkman_0
- bl _str2id
- mov R3, 0x54 ;Y1
- mov R2, 0x8C ;X1
- mov R1, 0 ;Aligment
- _aligment:
- bl _drawstring
- add SP, SP, 0x18
- _koniec:
- pop {R4-R6,PC}
- _skokhooka:
- ldr R3, off_skokhooka
- bx R3
- _display:
- ldr R3, off_display
- bx R3
- _getorient:
- ldr R3, off_getorient
- bx R3
- _addr1:
- ldr R3, off_addr1
- bx R3
- _str2id:
- ldr R3, off_str2id
- bx R3
- _drawstring:
- push {R3}
- ldr R3, off_drawstring
- mov R12, R3
- pop {R3}
- bx R12
- _getthemecolor:
- ldr R3, off_getthemecolor
- bx R3
- ;---------------------------------------------------------------------------------
- off_drawstring dw 0x109D4728+1;109CC0B8+1
- off_addr1 dw 0x109D52A8+1;109CCC38+1
- off_skokhooka dw 0x10AF8744+1;10AEFD88+1
- off_str2id dw Str2ID+1
- off_display dw 0x10DF8180+1;10DF020C+1
- off_getorient dw BookObj_GetDisplayOrientation+1
- off_getthemecolor dw GetThemeColor+1
- offset=$
- org offset
- aWalkman db "WALKMAN",0
- dw 0
- dw 0
- dw 0
- dw 0
- aWalkman_0 db "WALKMAN",0
- dw 0
- dw 0
- dw 0
- dw 0
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement