Autor Tópico: O Firmware Do Lenoxx Dv406  (Lida 38767 vezes)

0 Membros e 1 Visitante estão vendo este tópico.

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: O Firmware Do Lenoxx Dv406
« Responder #30 Online: Janeiro 17, 2007, 06:55:27 am »
Bem, baixei o firmware e respondendo o meu post anterior: O MTK Remaker não mostra o Sub_Style, nem achei a função no Banco1 (buscando "EE F0 A3 EF F0 7F 0E 12"). Vou buscar melhor mais tarde.

Como sei a compatibilidade das RISC´s dos firmware.

Há outros fatores, mas a primeira coisa a olhar e o endereço da memoria compartida (ShMem ou Shared Memory address). O último MTK Remaker diz o endereço da Shared Memory, e também o MTK ArmAddressInfo do NewAge.

(Nota: Estes dois programas entram em conflito com algums RISCs novos: Um indica uma ShMem e o outro indica uma ShMem diferente...  :blink:)

Atualmente a compatibilidade não é muito importante, porque trocando os endereços no 8032 voçê pode usar qualquer RISC.

Desculpem se ficou off-topic...

Offline eneris

  • Novato Prolixo
  • **
  • Mensagens: 85
  • Aprovação: +2/-0
  • The Cranberries em Recife Outubro/2010 Eu Vou!
    • Ver Perfil
    • ENERIS Online :: No Need To Argue
Re: O Firmware Do Lenoxx Dv406
« Responder #31 Online: Fevereiro 06, 2007, 09:40:08 pm »
olá galera,

Estou tendo problema com legendas curtas (frases curtas, tipo: adeus, obrigado), a legenda some muito rapido, ou então aparece ou sai antes do tempo.
Como posso resolver isto?

Agradeço.



Nota (Jefferson): O aparelho de eneris é um Philips dvp5965k. Esse problema existe no Lenoxx mas foi resolvido na versão 1.1 do meu firmware.
« Última modificação: Fevereiro 11, 2007, 10:39:34 am por Jefferson »
The Cranberries - em Recife Outubro/2010
Estarei la colado! Ta perto.

FORUM.RYAN.COM.BR

Re: O Firmware Do Lenoxx Dv406
« Responder #31 Online: Fevereiro 06, 2007, 09:40:08 pm »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: O Firmware Do Lenoxx Dv406
« Responder #32 Online: Fevereiro 06, 2007, 10:54:37 pm »
Esse é o chamado "Subtitle Timing Bug"

Eis a explicação de como é feito, dada no grupo MT13x9. Eu destaquei em vermelho o que é importante.

Citar
ROM:3370 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E
¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
ROM:3370
ROM:3370 ; R0 = string
ROM:3370 ; R1 = len of first value
ROM:3370 ; R2 = for pow(10)
ROM:3370
ROM:3370 get_time_from_string
ROM:3370
ROM:3370
ROM:3370 var_18 = -0x18
ROM:3370
ROM:3370 F8 B5 PUSH {R3-R7,LR}
ROM:3372 0E 1C ADD R6, R1, #0 ; R6 = R1 = len of
first value
ROM:3374 04 1C ADD R4, R0, #0 ; R4 = R0 = string
ROM:3376 15 1C ADD R5, R2, #0 ; R5 = R2 = pow
ROM:3378 31 1C ADD R1, R6, #0 ; R1 = len of first
value
ROM:337A 20 1C ADD R0, R4, #0 ; R0 = string
ROM:337C FF F7 E6 FF BL tonumber ; In:
ROM:337C ; R0 = Source
ROM:337C ; R1 = Len
ROM:337C ;
ROM:337C ; Out:
ROM:337C ; R0 = Number
ROM:337C
ROM:3380 00 90 STR R0, [SP,#0x18+var_18] ; sp+#x18+var18
= hour
ROM:3382 A4 19 ADD R4, R4, R6
ROM:3384 60 1C ADD R0, R4, #1 ; skip ':'
ROM:3386 02 21 MOV R1, #2 ; ??:XX:xx,???
ROM:3388 FF F7 E0 FF BL tonumber ; In:
ROM:3388 ; R0 = Source
ROM:3388 ; R1 = Len
ROM:3388 ;
ROM:3388 ; Out:
ROM:3388 ; R0 = Number
ROM:3388
ROM:338C 06 1C ADD R6, R0, #0 ; R6 = minutes
ROM:338E 20 1D ADD R0, R4, #4
ROM:3390 02 21 MOV R1, #2 ; ??:xx:XX,???
ROM:3392 FF F7 DB FF BL tonumber ; In:
ROM:3392 ; R0 = Source
ROM:3392 ; R1 = Len
ROM:3392 ;
ROM:3392 ; Out:
ROM:3392 ; R0 = Number
ROM:3392
ROM:3396 07 1C ADD R7, R0, #0 ; R7 = seconds
ROM:3398 E0 1D ADD R0, R4, #7 ; ??:xx:xx,XX
ROM:339A *******************
ROM:339A * Patch this with for fix timing bug
ROM:339A *
ROM:339A * Original: 02 21 MOV R1, #2
ROM:339A * New: 29 1C ADD R1, R5, #0
ROM:339A *******************
ROM:339A 02 21 MOV R1, #2 ; <<< BUG!!!

ROM:339C FF F7 D6 FF BL tonumber ; In:
ROM:339C ; R0 = Source
ROM:339C ; R1 = Len
ROM:339C ;
ROM:339C ; Out:
ROM:339C ; R0 = Number
ROM:339C
ROM:33A0 02 1C ADD R2, R0, #0 ; R3 = x/100 seconds
ROM:33A2 01 20 MOV R0, #1
ROM:33A4 00 21 MOV R1, #0
ROM:33A6 02 E0 B test_to_complete
ROM:33A6
ROM:33A8 ; -----------------------------------------------
----------------------------
ROM:33A8 ; R0 = pow( 10, R5 )
ROM:33A8
ROM:33A8 loop
ROM:33A8 0A 23 MOV R3, #0xA
ROM:33AA 58 43 MUL R0, R3
ROM:33AC 01 31 ADD R1, #1
ROM:33AE
ROM:33AE test_to_complete
ROM:33AE A9 42 CMP R1, R5
ROM:33B0 FA D3 BCC loop
ROM:33B0
ROM:33B2 E1 23 MOV R3, #0xE1 ; 'ß'
ROM:33B4 00 99 LDR R1, [SP,#0x18+var_18]
ROM:33B6 1B 01 LSL R3, R3, #4 ; 3600
ROM:33B8 59 43 MUL R1, R3 ; R1 = hours * 3600
ROM:33BA 3C 23 MOV R3, #0x3C ; '<' ; 60
ROM:33BC 73 43 MUL R3, R6 ; R3 = minutes * 60
ROM:33BE C9 18 ADD R1, R1, R3 ; R1 = ( hours *
3600 ) + ( minutes * 60 )
ROM:33C0 C9 19 ADD R1, R1, R7 ; R1 = ( hours *
3600 ) + ( minutes * 60 ) + seconds
ROM:33C2 41 43 MUL R1, R0 ; R1 = ( ( hours *
3600 ) + ( minutes * 60 ) + seconds ) * multipler
ROM:33C4 8C 18 ADD R4, R1, R2 ; R4 = "x/100"
seconds + ( ( ( hours * 3600 ) + ( minutes * 60 ) + seconds ) *
multipler )
ROM:33C6 B6 49 LDR R1, =loc_15F90
ROM:33C8 22 F0 94 F8 BL sub_254F4
ROM:33C8
ROM:33CC 60 43 MUL R0, R4
ROM:33CE F8 BC POP {R3-R7}
ROM:33D0 08 BC POP {R3}
ROM:33D2 18 47 BX R3
ROM:33D2
ROM:33D2 ; End of function get_time_from_string
ROM:33D2

Foi a explicação acima que eu segui, mas ficará mais fácil se você seguir a explicação que jmaraujo deu no meu blog, que está bem mais "amigável". Pena que chegou depois de eu ter ralado bastante para entender e aplicar a original:


Citar
Olá, Jefferson! Faça o seguinte (o resto do pessoal so faça isso se tiver um cabo serial/usb):

1) Abra o firmware com o Remaker.
2) Guarde o "ArmCodes".
3) Abra o arquivo .bin do ArmCodes com um editor hexadecimal.
4) Busque "F8 B5 0E 1C 04 1C 15 1C 31 1C 20 1C".
5) A partir de esse ponto busque "07 1C E0 1D 02 21 FF F7".
6) Troque "02 21" por "29 1C".
7) Guarde as mudanças.
8) Abra o MTK Remaker e carregue o ArmCodes modificado na seção correspondente do Remaker.
Agora é só guardar o firmware e carregar no aparelho.

Eu pretendo incluir isso no meu mtkmodtoolbox, mas ainda não fiz isso.


Editado: Me lembrei porque não fiz a inclusão no mtkModtoolbox. A alteração precisa ser feita na parte ARM do firmware, que é armazenada comprimida. Então fazer o patch é significativamente mais complicado, porque eu teria que extrair a seção ARM descompactando-a, fazer o patch e inserir de volta a seção recomprimindo-a. É fácil quando se sabe, mas eu não sei.

Uma alternativa é meu programa ter uma ajudinha dos programas MtkExtract e mtkReplacer do NewAge.
« Última modificação: Fevereiro 11, 2007, 10:34:35 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: O Firmware Do Lenoxx Dv406
« Responder #33 Online: Fevereiro 06, 2007, 11:48:42 pm »
Ygor,

Só hoje vi esse post.


Você poderia aos poucos trabalhar algum tutorial de como ir modificando a firmware, aplicando aqueles patches - já coloquei o  IDA PRO 5.0, baixei o kit de diassembler do MTK para o IDA

Eu não sei usar o IDA. Ainda não peguei "o fio da meada" e, por não entender assembly, fico perdido. Está mais fácil incluir os patches no meu mtkmodtoolbox, quando é possível fazer isso automaticamente.

- mas estou na duvida, de como devo usar o MTK Remaker pra extrair a parte do ARM / RISC 8032 -bem como saber sobre a compatibilidade de parte dos códigos.

A verificação da compatibilidade do RISC é feita com o ArmAddressinfo do New Age

E, como disse o JmAraujo, o mtkRemaker
« Última modificação: Fevereiro 07, 2007, 12:22:37 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline eneris

  • Novato Prolixo
  • **
  • Mensagens: 85
  • Aprovação: +2/-0
  • The Cranberries em Recife Outubro/2010 Eu Vou!
    • Ver Perfil
    • ENERIS Online :: No Need To Argue
Re: O Firmware Do Lenoxx Dv406
« Responder #34 Online: Fevereiro 07, 2007, 02:27:33 am »
oi,

Este procedimento da legenda vale tambem pro Philips?
Tenho que salvar o ARM todo, ou ARM1, ARM2, ... ?

Agradeço.
The Cranberries - em Recife Outubro/2010
Estarei la colado! Ta perto.

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: O Firmware Do Lenoxx Dv406
« Responder #35 Online: Fevereiro 07, 2007, 02:38:05 am »
oi,

Este procedimento da legenda vale tambem pro Philips?

Teóricamente, sim. Mas se vai funcionar no DVP5965 é você quem vai dizer.
Eu já estou incluindo a coisa no mtkModToolbox e o trecho de código existe no ARM do DVP5965K.

Tenho que salvar o ARM todo, ou ARM1, ARM2, ... ?


Pode salvar o bloco todo, descomprimido.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: O Firmware Do Lenoxx Dv406
« Responder #36 Online: Fevereiro 07, 2007, 06:05:16 am »
eneris,

Eu criei uma nova versão de mtkModToolbox que, pelo menos nos meus testes, conseguiu fazer a correção no firmware do DVP5965K
http://ryan.com.br/smf/index.php?topic=38.msg9170906#msg9170906

Só use se tiver o cabo!
« Última modificação: Fevereiro 07, 2007, 06:26:57 am por Jefferson »
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline eneris

  • Novato Prolixo
  • **
  • Mensagens: 85
  • Aprovação: +2/-0
  • The Cranberries em Recife Outubro/2010 Eu Vou!
    • Ver Perfil
    • ENERIS Online :: No Need To Argue
Re: O Firmware Do Lenoxx Dv406
« Responder #37 Online: Fevereiro 07, 2007, 04:05:18 pm »
eneris,

Eu criei uma nova versão de mtkModToolbox que, pelo menos nos meus testes, conseguiu fazer a correção no firmware do DVP5965K
http://ryan.com.br/smf/index.php?topic=38.msg9170906#msg9170906

Só use se tiver o cabo!

oi.

Seu link tah com problema, e o que há de novo nesta versão? As legendas conseguir resolver o problema, te mandei uma MP agradecendo so que a mensagem fica voltando, algum problema no forum?

Valeu.
The Cranberries - em Recife Outubro/2010
Estarei la colado! Ta perto.

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: O Firmware Do Lenoxx Dv406
« Responder #38 Online: Fevereiro 07, 2007, 07:40:42 pm »
Seu link tah com problema, e o que há de novo nesta versão? As legendas conseguir resolver o problema, te mandei uma MP agradecendo so que a mensagem fica voltando, algum problema no forum?

Um erro na configuração estava fazendo com que toda a board "firmware" estivesse invisível para muitos usuários.

Tente de novo agora.

Mas o motivo da MP ficar voltando eu não sei.
http://jefferson-ryan.blogspot.com
http://ryan.com.br

Se o que você escreve não merece sua atenção, vai merecer a atenção de quem?!

Offline ygor.almeida

  • Novato Prolixo
  • **
  • Mensagens: 73
  • Aprovação: +1/-0
  • My Name is Neo
    • Ver Perfil
    • eXtremeMods
Re: O Firmware Do Lenoxx Dv406
« Responder #39 Online: Fevereiro 15, 2007, 06:27:29 pm »
Bem, baixei o firmware e respondendo o meu post anterior: O MTK Remaker não mostra o Sub_Style, nem achei a função no Banco1 (buscando "EE F0 A3 EF F0 7F 0E 12"). Vou buscar melhor mais tarde.

Como sei a compatibilidade das RISC´s dos firmware.

Há outros fatores, mas a primeira coisa a olhar e o endereço da memoria compartida (ShMem ou Shared Memory address). O último MTK Remaker diz o endereço da Shared Memory, e também o MTK ArmAddressInfo do NewAge.

(Nota: Estes dois programas entram em conflito com algums RISCs novos: Um indica uma ShMem e o outro indica uma ShMem diferente...  :blink:)

Atualmente a compatibilidade não é muito importante, porque trocando os endereços no 8032 voçê pode usar qualquer RISC.

Desculpem se ficou off-topic...

JM,

Não sei se ainda estamos tanto no off-topic, mas vasculhei algumas instruções no yahoo group e não achei extamente o que eu queria.
Tem alguma explicação mais facil, de como mudar o Shared Memory usando o IDA ou alguma outra ferramenta.

Alias, aproveitando o tópico. Posso copiar ou substituir uma rotina completa como as postadas no yahoo group e outros documentos, dentro da firmware - bem ao estilo Copy/Paste !?.

 :yahoo!: :clapping: :rtfm:
www.eXtremeMods.com.br
Hardware IT News & OverClock

FORUM.RYAN.COM.BR

Re: O Firmware Do Lenoxx Dv406
« Responder #39 Online: Fevereiro 15, 2007, 06:27:29 pm »