PDA

Ver la versión completa : Idea para SysGFX en DB2020



MaxDamage
25/01/2008, 20:33:55
Hola TopSony

El otro dia lei un tutorial sobre puentes en direcciones hexadecimales en los firmwares. Se usan para colocar datos de mayor tamanio en un espacio desocupado del MAIN y hacer que el movil lea estos datos en lugar de los originales.

Como nosotros tenemos justamenete ese problema con los iconos en los DB2020 podriamos intentar lo siguiente: encontrar las direcciones que apuntan hacia los iconos y graficas de nuestra MAIN, parchar imagenes mas grandes en lugares desocupados (El final del MAIN, de puros ceros) y apuntar las direcciones hacia estas nuevas ubicaciones.

Deberia funcionar en teoria no?

m3m1t0
25/01/2008, 21:00:22
hacer ese trabajo seri acasi tan dificil como crear el parche sysgfx el cual redirecciona a la ruta usb/other/gfx, sin ocupar tanto espacio en el main.... la idea es buena pero para eso se penso y se creo el parche sysgfx en db2010, el cual evitaria posibles inestabilidades al saturar el main.....

vlycser
25/01/2008, 21:07:58
seria una buena idea, pero creo que al intentar hacer esto, podriamos generar inestabilidad en la MAIN y ps de ponernos en la investigacion de buscar haciendo direccionan las imagenes en la main, mejor buscamos que estas sean direccionadas a una carpeta como dice m3m1t0.

MaxDamage
25/01/2008, 21:09:14
Entonces una pregunta de rookie: si yo encontrara la direccion de un icono y simplemente reemplazara la direccion a una q hace referencia a /usb/others/gfx/image.png funcionaria?

m3m1t0
25/01/2008, 21:13:47
en teoria si... asi funciona el sysgfx.. pero el problema esta en poner los valores hexadecimales correctos en los bloques correctos.... sobre todo para ese parche que necesita modificar un buen de valores....

MaxDamage
25/01/2008, 21:18:07
Bueno voy a ver si encuentro las direcciones correctas... cualquier hallazgo aviso y empezamos a experimentar bien?

UmbreLla7
26/01/2008, 02:01:22
mis rspetos k790, tomarse ese trabajo es bastante complicado, pero en cuanto, a lo de las direcciones

no solo sysgfx, sino en cualquier documento que se encargue de configurar archivos, si posee la ruta de ubicacion del elemento a configurar, esta puede ser editada, siempre y cuando no se salga de la memoria del telefono, puesto que de sacarla a la ms, podrias volver inestable al equipo

saludos y espero que esto le sirva a alguien

evelio
26/01/2008, 03:22:43
se podria intentar modificando todos los iconos con la herramienta en la que se cambian los iconos. asi se podria saber la direccion de cada icono

friden2911
26/01/2008, 03:39:13
no puedes hacer eso


ya que las imagenes no vienen dentro en si del firm

vienen encriptadas y codificadas en bytes por colores TODAS LAS IMAGENES solo hay como 130 imagnes y mas de 1000 paquetes de bytes osea vendria siendo que tienes que redireccionar codad uno de los bytes

MaxDamage
26/01/2008, 04:31:56
no puedes hacer eso


ya que las imagenes no vienen dentro en si del firm

vienen encriptadas y codificadas en bytes por colores TODAS LAS IMAGENES solo hay como 130 imagnes y mas de 1000 paquetes de bytes osea vendria siendo que tienes que redireccionar codad uno de los bytes

Te equivocas amigo, no vienen encriptadas de ninguna manera. He analizado bastante ya y comparado con un parches SysGFX para DB2010 y lo que encontre fueron imagenes PNG normales pero sin algunos chunks de informacion, estan en su forma mas simple: Header, Data, Cierre. Lo que si me fije es que debido a que las imagenes no traen metadata ni las infos tipicas de profundidad de bits, etc... tienen un header adicional que proporciona informacion adicional como: resolucion, colores y otro byte que todavia no se que indica... creo que es HUE.
Esto explica porque las imagenes que exportamos con el ImageExtractor son mas grandes que en la firmware; el programa integra estos chunks "faltantes" y corrige el color en algunos casos ;)


se podria intentar modificando todos los iconos con la herramienta en la que se cambian los iconos. asi se podria saber la direccion de cada icono

Ese fue el primer paso, ahora esta lo dificil: encontrar las direcciones que apuntan a estos offsets, normalmente vienen invertidos de dos en dos, por ejemplo: 016CA775 -> 75A76C01, pero en este caso no... puede ser que hallan ordenado de otra manera las direcciones o haberlas expresado en otra codificacion, ya trate con hex y dec. sigo buscando... :P