Re: Participa en la creación del Parche "Volumen -" para K310@W200
@m1ch43lzm:
Cita:
Iniciado por
m1ch43lzm
...Los "eventos", son solo cadenas de texto, en ASCII
Creo que no he señalado lo contrario.
Cita:
Iniciado por
Xtephan
... 1. La primera parte de la imagen muestra la definición de las variables, en este caso, terminan todas con la palabra EVENT... 2. La segunda parte, definiría el comportamiento de las variables y sería donde tendríamos que meter mano
Ya se que es texto ASCII, por algo se puede leer y al alterarlo no ocurre nada, quizás no me expresé bien, pero lo que me refería es que en ese lugar se señala el nombre de cada evento o variable.
Cita:
En los hechos, el parche reemplaza el evento MARCACIÓN POR VOZ por el evento BLOQUEAR TECLADO y permite incluso desbloquear el teléfono al mantener presionada la tecla volumen (+).
Como ves, ya había mencionado eso. Lo que ocurre y por que el parche es tan largo, es que cambia dos eventos:
1. Marcación por voz -> Bloqueo de Teclado
2. Presionar Tecla Volumen (+) mientras el teclado esta bloqueado -> Desbloquear el teclado.
Creo que el primer evento del número dos debería ser (en la imagen) "Keylock_Bypass_Volumeup_long_pressed_event".
Lo otro que realiza el parche es eliminar el mensaje "Teclado Bloqueado", pero creo que eso es consecuencia de la forma en que se bloquea éste.
Cita:
Sería bueno saber si todas las etiquetas de arriba o EVENTos son modificados en la sección que pegué...
Lo otro, es que en la sección tras los Text Strings (Cadenas de texto que terminan en EVENT) sea utilizada para establecer la dirección de los eventos.
Cita:
...VOLUMEDOWNKEY_PRESSED, VOLUMEUPKEY_PRESSED, VOLUMEDOWNKEY_LONG_PRESSED, VOLUMEUPKEY_SHORT_PRESSED, CAMERAKEY_PRESSED, MEDIAPLAYER_PRESSED (Si, están las dos), ETC. Esto está a partir del OFFSET: 387208.
Los eventos que aparecen en la imagen, agregan una instrucción a los eventos anteriores, por ejemplo KEYLOCK_BYPASS_VOLUMEDOWN_LONG_EVENT o UI_APPLICATION_VOLUMEUP_EVENT
* No le haz dado una vuelta a la vinculación de ambos eventos?
* Usaste el Ida Pro para desensamblar el Firmware o encontraste otro programa mejor?
Re: Participa en la creación del Parche "Volumen -" para K310@W200
vean este foro, es muy buena la solución para bajar el volumen. aunque seria mejor si tuvieramos el parche
http://www.topsony.com/forum_es/showthread.php?t=35604
Re: Participa en la creación del Parche "Volumen -" para K310@W200
@Xtephan
Si, usando IDA Pro, lo que no encuentro son las referencias a esas cadenas de texto
Sobre el parche para bloquear teclado manteniendo presionada la tecla de volumen +, la reducción que hice hace esto:
-Si el teclado no está bloqueado, manteniendo presionado el botón volumen +, bloquea el teclado
-Si el teclado está bloqueado, y aparece el reloj, manteniendo presionado el botón volumen +, desbloquea el teclado sin salir del reloj (se enciende la pantalla y las luces del teclado, presionar cualquier tecla para regresar)
El parche como estaba, cambia esto (considerando que no hay boton de volumen - en el K310 :D), solo lo he separado para que se entienda mejor:
Código:
;W200 R4HA014
;Cambia boton lateral presionado largo (+) -> bloquea teclado(*+bloquear)
;Elimina el mensaje “Presione *” después “desbloquear” en esta funcion
;Elimina el mensaje “Ahora presione debloquear" en esta funcion
;(c) billnick
;(c) Top Sony
;(e) m1ch43lzm
444c9314: 3d121245 ed013a45 ;mantener boton vol +, para bloquear teclado
444c9318: C1070000 04000000 ;probablemente el codigo hex de la tecla?
444c931c: 3d121245 1d23fd44 ;mantener boton vol -, para otra cosa
444c9320: a3070000 04000000
444c9324: 85013a45 b512fd444 ;otra cosa, cambiada a otra cosa
444c2328: ef060000 7000000
Re: Participa en la creación del Parche "Volumen -" para K310@W200
ROM:450CC51C 9D A2 82 44 off_450CC51C DCD aMediaplayer_vo ; DATA XREF: ROM:450CC4DCr
ROM:450CC51C ; "MediaPlayer_Volume"
ROM:450CC520 9D C3 0C 45 off_450CC520 DCD aIG4Hr+1 ; DATA XREF: ROM:450CC4EAr
ROM:450CC524 C1 C3 0C 45 off_450CC524 DCD locret_450CC3C0+1 ; DATA XREF: ROM:450CC4FAr
ROM:450CC528 C5 C3 0C 45 off_450CC528 DCD loc_450CC3C4+1 ; DATA XREF: ROM:450CC502r
ROM:450CC52C 6D C4 0C 45 off_450CC52C DCD loc_450CC46C+1 ; DATA XREF: ROM:450CC50Ar
ROM:450CC530 79 C4 0C 45 off_450CC530 DCD loc_450CC478+1 ; DATA XREF: ROM:450CC512r
dejo esta info si sirve de algo.
m1ch43lzm : como hiciste para desensamblar el firm, me podrias explicar los pasos?porque algunas partes no me salen bien, y depende el analisis que haga, queda distinto.gracias
Re: Participa en la creación del Parche "Volumen -" para K310@W200
Aquí hay un tutorial para aprender a usar el IDA Pro:
Modifying/creating Advanced Patches - SE-NSE Forums
Aún no lo he revisado bien, pero por lo menos están los datos para realizar el Disassembling.
Nota: En esta parte
Cita:
In second window: ROM start address: 0x44020000 and Loading address: 0x44020000.*
reemplaza 44020000 por 44140000 (Supongo que sabes por que ;) )
Re: Participa en la creación del Parche "Volumen -" para K310@W200
leyendo ahi logre hacer lo que tengo hasta ahora, pero muchos lugares quedan mal analizados.y como el de michael, parece mas claro por eso pregunto.si seleccionamos texto no analizado y le ponemos ver como cadena en C, muchas veces se ordena y nos muestra los que contiene de texto ese sector, pero no funciona en todos lados.
Ademas hay codigo que esta en modo thumb y codigo en modo Arm por lo que lei, asi que tambien eso deberiamos saber.
Re: Participa en la creación del Parche "Volumen -" para K310@W200
alguien pude postear los manuales y los tutoriales para aprender a crear parches???
soy programador y me gustaria cooperar
Re: Participa en la creación del Parche "Volumen -" para K310@W200
Re: Participa en la creación del Parche "Volumen -" para K310@W200
Reviviendo este tema :D
Un gran avance :D (recien conseguí otro K310@W200, que tengo que devolver ahora :(, es el tercero :D)
Basandome en este parche:
Código:
;Z550 SW-R6GA004
;Boton "Play / Pause" al mantener presionados botones de volumen
;Predeterminado - mantener presionado el botón de bajar volumen, para cambiar de botón,
; ponerle un ; a la primera linea y quitar el ; de la segunda linea
;(c) IronMaster
;(p) m1ch43lzm
4525AD9C: 41 3A ; Mantener boton de bajar volumen
;4525AD98: 3E 3A ; Mantener boton de subir volumen
Hice esto:
Código:
;W200 R4HA014
;Cambia función del botón volumen + manteniendolo presionado
;(c) m1ch43lzm
451132F0: 3E 3A ;no hace nada, lo desactiva, yo queria un botón de Play/pause :(
;451132F0: 3E 34 ;Abre la cámara
Lo unico que logré, es que mantener presionado el boton de subir volumen/ex-activity menu, no hace nada :confused: (ya no cambia a la cancion anterior, ni activa marcación por voz :(), el botón al presionarlo una vez sube volumen, como normalmente lo hace
Ahora solo falta encontrar el botón de Walkman, pero tengo que devolver este K310 :(
Pero estamos cerca :D
Código:
ROM:451132F0
ROM:451132F0 loc_451132F0 ; CODE XREF: ROM:451132ACj
ROM:451132F0 3E 20 MOV R0, #0x3E ; long vol +
ROM:451132F2 2A E0 B loc_4511334A
ROM:451132F4 ; ---------------------------------------------------------------------------
ROM:451132F4
ROM:451132F4 loc_451132F4 ; CODE XREF: ROM:451132B0j
ROM:451132F4 41 20 MOV R0, #0x41 ; long vol -
ROM:451132F6 28 E0 B loc_4511334A
Mas abajo encuentro una referencia a esto:
" ***** Bookshelf_NullKeyHandler: User pressed a key while no gui object in focus."
Parece la parte que controla las teclas...
Entonces, quedaria probar cambiando el segundo valor (el que puse como 3A), primero probar con valores cercanos, hasta que abra el Walkman, de ahi se puede hacer lo inverso, encontrar el botón de Walkman, y probar cual es el botón de volumen...
Pero se requiere desensamblar el firmware, y probar varias veces, es algo dificil sin tener un K310@W200 a la mano...
PD: Acabo de cambiarlo a 34 (basandome en lo que está mas arriba del codigo, y me abre la cámara al mantener presionado el botón de volumen +/activity menu :D, hay que seguir buscando valores, para hacer lo inverso, hasta que abra el Walkman
Re: Participa en la creación del Parche "Volumen -" para K310@W200
aporto mi granito de arena:
ya encontre el valor que abre el walkman es 3B