Autor Tópico: Firmware Proview DVP-816 (desenvolvimento)  (Lida 20435 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: Firmware Proview DVP-816 (desenvolvimento)
« Responder #10 Online: Fevereiro 06, 2008, 06:46:05 pm »
Abra o bloco 8032 completo.

Busque "7F ? 7E 00 ? mm nn" (onde mm nn é o endereço do bank jump para PREF_GetChar.
(No DVP5100 ROM:05D7, por tanto mm nn = 0D 57)

Ou busque primeiro com "7F ? 7E 00 12 mm nn", e depois com "7F ? 7E 00 02 mm nn".

Anote em um papel ou caderno todos os valores achados para o primeiro "?" (Exemplo: 7F 02 7E 00 ? mm nn -> anote 02). Anote todos os valores de EEPROM usados no menu original.

Update: Para certificar-se de não estar esquecendo nenhum endereço usado, abra com o IDA o banco que contém a rutina PREF_GetChar, e busque a seguinte seqüencia: "7F ? 7E 00 ? yy zz", onde yy zz é o endereço real de PREF_GetChar. Anote todos os valores achados para o primeiro "?".

Por último faça a tabela mapeando a EEPROM. Os valores usados são de 00 a 7F. Endereços maiores são usados para outras coisas.

Exemplo de mapa da EEPROM:

     x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF
   |=================================================
0x | 00 01 02 03 04 05 06 07 08 09 0A 0B    0D 0E 0F
1x | 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
2x |    21    23 24    26 27    29    2B 2C 2D    2F
3x | 30 31 32    34    36    38 39 3A 3B    3D 3E 3F
4x | 40 41 42    44 45 46 47    49 4A 4B 4C 4D 4E 4F
5x |    51    53 54    56    58 59       5C    5E 5F
6x | 60 61    63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F
7x | 70 71 72 73    75 76 77 78    7A 7B           

Os espaços livres estão disponíveis.
« Última modificação: Fevereiro 07, 2008, 12:45:49 am por jmaraujo »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: Firmware Proview DVP-816 (desenvolvimento)
« Responder #11 Online: Fevereiro 06, 2008, 09:02:44 pm »
Abra o bloco 8032 completo.

Busque "7F ? 7E 00 ? mm nn" (onde mm nn é o endereço do bank jump para PREF_SetChar.
(No DVP5100 ROM:05D7, por tanto mm nn = 0D 57)

Você quis dizer PREF_GetChar, não?
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?!

FORUM.RYAN.COM.BR

Re: Firmware Proview DVP-816 (desenvolvimento)
« Responder #11 Online: Fevereiro 06, 2008, 09:02:44 pm »

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: Firmware Proview DVP-816 (desenvolvimento)
« Responder #12 Online: Fevereiro 06, 2008, 09:10:21 pm »
Você quis dizer PREF_GetChar, não?

Isso mesmo. Desculpem o erro. Pensei uma coisa e acabei escrevendo outra... ¡duas vezes!

O outro erro está aquí:
Citar
(No DVP5100 ROM:05D7, por tanto mm nn = 0D 57)

Correção: No DVP5100 o endereço do bank jump para PREF_GetChar é ROM:05D7, por tanto mm nn => 05 D7
« Última modificação: Fevereiro 06, 2008, 09:15:00 pm por jmaraujo »

Offline dcampos

  • Seeder
  • Tagarela
  • ***
  • Mensagens: 220
  • Aprovação: +9/-0
    • Ver Perfil
Re: Firmware Proview DVP-816 (desenvolvimento)
« Responder #13 Online: Fevereiro 06, 2008, 09:28:42 pm »
Isso mesmo. Desculpem o erro. Pensei uma coisa e acabei escrevendo outra... ¡duas vezes!

Ah bom, já tinha até acabado de achar o bank jump para a Pref_SetChar. O bank jump para a Pref_GetChar eu já sabia.
Aqui estão os endereços dos bank jumps caso alguém necessite para uma pesquisa futura:

Pref_GetChar - B#:04B1
Pref_SetChar - B#:056B


Vou realizar os passos indicados e depois posto os resultados aqui.
Obrigado Jmaraujo!

[]'s
Daniel

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: Firmware Proview DVP-816 (desenvolvimento)
« Responder #14 Online: Fevereiro 06, 2008, 09:32:41 pm »
Daniel,

Para compor uma lista rápida de todos os endereços usados no menu, faça o seguinte:
  • Abra o firmware no mtkRemaker e vá até o menu.
  • Clique com o botão direito e peça para COPIAR;
  • Cole o conteúdo em um editor que faça SORT, como o PSPAD;
  • Ordene e procure o bloco de linhas que começa em 0008

Nota: que eu me recorde, apenas os itens 0008 gravam na EEPROM. Tem algo a dizer sobre isso, Juan?

Usando o PSPAD você pode ir além na ordenação:

  • Apague todas as linhas que não pertencem ao bloco desejado. Como está ordenado, é só um bloco acima e outro abaixo.
  • Peça para ordenar de novo e desta vez especifique por coluna (de 25 a 30). A lista vai ficar ordenada por endereço EEPROM.

O resultado para o DVP816 20.07 (somente menus 0008) é:

 [size=09pt]
     0008 FFFF 0326 04C5 0004 02C0 0003 0019 FF381B 094F - ROM:3827
     0008 FFFF 032B 032C 0005 02C1 0001 0001 FF384A 08CB - ROM:3850
     0008 FFFF 00DF 015B 0006 0022 0006 001F FF354B 0000 - ROM:3560
     0008 FFFF 04C2 04C2 0007 0000 0001 0000 FF2F91 08E3 - ROM:2F97
     0008 FFFF 0099 00BF 0008 0020 0001 0000 FF2EA5 08CB - ROM:2EAB
     0008 FFFF 00E0 015C 0009 0021 0007 0008 FF35AD 08B3 - ROM:35C5
     0008 FFFF 00DE 0148 000A 0024 0008 000D FF34EA 0937 - ROM:3505
     0008 FFFF 00DC 0146 000B 0026 0008 000D FF348A 0937 - ROM:34A5
     0008 FFFF 00DD 0147 000C 0028 0008 000D FF34BA 0937 - ROM:34D5
     0008 FFFF 0094 00BA 000D 002A 0003 0000 FF2DF1 08CB - ROM:2DFD
     0008 FFFF 0093 009B 000E 002B 0003 0000 FF2DB4 08CB - ROM:2DC0
     0008 FFFF 0096 00BC 000F 0000 0002 0001 FF2E50 08D7 - ROM:2E59
     0008 FFFF 0095 00BB 0010 0000 0001 0000 FF2E20 08D1 - ROM:2E26
     0008 FFFF 018A 0217 0013 003D 0001 0000 FF2ECE 08CB - ROM:2ED4
     0008 FFFF 0191 0218 0014 06E0 0001 0000 FF2EF7 08CB - ROM:2EFD
     0008 FFFF 00D4 00D4 0015 0000 0001 0000 FF2C00 08B3 - ROM:2C06
     0008 FFFF 0098 00BE 0016 0033 0001 0001 FF2E7C 08CB - ROM:2E82
     0008 FFFF 01EC 01EC 0017 003F 0006 0000 FF3DAE 0985 - ROM:3DC3
     0008 FFFF 0097 00BD 0029 0000 0002 0001 FF2F65 08DD - ROM:2F6E
     0008 FFFF 028D 028E 002F 0000 0002 0001 FF3029 08EF - ROM:3032
     0008 FFFF 017D 021B 0030 0000 0001 0000 FF3055 08F5 - ROM:305B
     0008 FFFF 00C2 04CF 0031 0000 0002 0001 FF3085 08F5 - ROM:308E
     0008 FFFF 00C3 0118 0032 0000 0002 0001 FF30B8 08F5 - ROM:30C1
     0008 FFFF 00C4 011C 0033 0000 0001 0000 FF30E4 08F5 - ROM:30EA
     0008 FFFF 00C5 011F 0036 0000 0001 0001 FF310D 08FB - ROM:3113
     0008 FFFF 00CA 00CA 0037 0000 0002 0002 FF3152 0901 - ROM:315B
     0008 FFFF 035D 035E 0038 0000 0001 0000 FF3219 090D - ROM:321F
     0008 FFFF 0172 0173 003C 0000 0007 0000 FF327D 0913 - ROM:3295
     0008 FFFF 018B 018B 0048 0000 0001 0001 FF362A 0943 - ROM:3630
     0008 FFFF 045C 045C 0052 0000 0003 0001 FF3C95 097F - ROM:3CA1
     0008 FFFF 0379 0379 0067 0000 0002 0001 FF3A33 095B - ROM:3A64
     0008 FFFF 0353 0353 006A 0000 0007 0000 FF3C26 0979 - ROM:3C3E
     0008 FFFF 037C 037D 006E 0000 0003 0001 FF3A58 0961 - ROM:3A79
     0008 FFFF 0387 0388 006F 0000 0001 0001 FF3A9C 0967 - ROM:3AA2
     0008 FFFF 039A 039B 0070 0000 0007 0003 FF3B4A 0973 - ROM:3B62
     0008 FFFF 0390 0391 0071 0000 0006 0003 FF3AE8 096D - ROM:3AFD
     0008 FFFF 01B9 01B9 0072 0000 0001 0001 FF32B8 0919 - ROM:32BE
     0008 FFFF 01BA 01BA 0073 0000 0001 0001 FF32E1 091F - ROM:32E7
     0008 FFFF 01BB 01BB 0074 0000 0001 0001 FF330A 0925 - ROM:3310
     0008 FFFF 019C 019C 007A 0041 0002 0001 FF3733 08CB - ROM:373C
     0008 FFFF 023D 023D 007E 0042 0003 0000 FF3881 08CB - ROM:388D
     0008 FFFF 02B5 02B5 0080 0049 0001 0001 FF3774 08CB - ROM:377A
     0008 FFFF 00C8 0128 0088 0000 0003 0000 FF33AA 092B - ROM:33B6
     0008 FFFF 0376 0376 008B 0000 0002 0001 FF2FE1 08E9 - ROM:2FEA
     0008 FFFF 0131 0298 FFFF 0000 0000 0000 FF2C22 08B9 - ROM:2C25
     0008 FFFF 00E1 015A FFFF 0000 0000 0000 FF35E1 093D - ROM:35E4
[/size]
« Última modificação: Fevereiro 06, 2008, 09:40:52 pm 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 jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: Firmware Proview DVP-816 (desenvolvimento)
« Responder #15 Online: Fevereiro 06, 2008, 09:39:42 pm »
Nota: que eu me recorde, apenas os itens 0008 gravam na EEPROM. Tem algo a dizer sobre isso, Juan?

Os menús especiais* também. Por exemplo:
3. Subtitle position | Set the subtitle position
   02 0591 0592 01 FFFA0B 0000 - ROM:FA00
  1. No Pic. | Position %f8%11d %f0%3d | Position
     000A FFFF 0593 0594 0058 0000 0030 0000 000000 0000 - ROM:FA0E

Escreve no endereço 0x58 da EEPROM o valor da posição das legendas.

* Dependendo do tipo de menú. Por exemplo, algums somente mostam texto na tela. Outros são links...
« Última modificação: Fevereiro 06, 2008, 09:42:42 pm por jmaraujo »

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: Firmware Proview DVP-816 (desenvolvimento)
« Responder #16 Online: Fevereiro 06, 2008, 09:43:16 pm »
Os menús especiais* também. Por exemplo:

Então são apenas os 0008 e 000A?

Obrigado!
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: Firmware Proview DVP-816 (desenvolvimento)
« Responder #17 Online: Fevereiro 06, 2008, 09:50:45 pm »

Ah bom, já tinha até acabado de achar o bank jump para a Pref_SetChar. O bank jump para a Pref_GetChar eu já sabia.
Aqui estão os endereços dos bank jumps caso alguém necessite para uma pesquisa futura:

Pref_GetChar - B#:04B1
Pref_SetChar - B#:056B


Tem que ser Pref_GetChar porque, até onde sei, este é o único modo de ler preferências na EEPROM, mas existem pelo menos três meios de se gravar as preferências:

  • Pref_SetChar;
  • O mecanismo dos menus;
  • Na fábrica (valores que nunca mudam, como a identificação de modelo do DVP5980);

Se bem que ainda é incerto se a identificação de modelo está mesmo na área lida por Pref_GetChar
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 jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: Firmware Proview DVP-816 (desenvolvimento)
« Responder #18 Online: Fevereiro 06, 2008, 09:52:19 pm »
Não sei, tendría que checar bem, mas acho que os que SIM gravam na eeprom são: 0008, 0010, 000A, 0006 e 0015.

UPDATE: Confirmado que esses tipos de menús escrevem na EEPROM.
« Última modificação: Fevereiro 06, 2008, 10:10:42 pm por jmaraujo »

Offline dcampos

  • Seeder
  • Tagarela
  • ***
  • Mensagens: 220
  • Aprovação: +9/-0
    • Ver Perfil
Re: Firmware Proview DVP-816 (desenvolvimento)
« Responder #19 Online: Fevereiro 06, 2008, 11:26:34 pm »
Não sei, tendría que checar bem, mas acho que os que SIM gravam na eeprom são: 0008, 0010, 000A, 0006 e 0015.

UPDATE: Confirmado que esses tipos de menús escrevem na EEPROM.

Jefferson,

Quando eu vi seu post, já tinha feito da maneira mais difícil, no "olhômetro". Seguindo a sua dica, refiz a conferência, mas usei o Excel para fazer o Sort no texto dos Menus. Deu o mesmo resultado.

Jmaraujo,

Obrigado por elucidar quais tipos de menus gravavam na EEPROM. O mapa do 816, ficou como abaixo:

     x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF
   |================================================
0x |             04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
1x | 10    12 13 14 15 16 17 18 19 1A 1B 1C 1D
2x |          23                29                2F
3x | 30 31 32 33       36 37 38 39       3C
4x |                         48 49    4B
5x |       52                   59
6x | 60                   67       6A          6E 6F
7x | 70 71 72 73 74          78 79 7A 7B 7C    7E
8x | 80             85    87 88    8A 8B
9x |
Ax |
Bx |
Cx |    C1 C2


Com relação a busca, só achei endereços combinando com a sequência "7F ? 7E 00 12 04 B1", mas não achei nada combinando com "7F ? 7E 00 02 04 B1".

O endereço 0x87 só está sendo usado mesmo pelo meu menu de ajuste da cor da legenda.
Achei vários endereços além do endereço 0x7F. Cheguei a descobrir até endereços 0xC1 e 0xC2.

[]'s
Daniel
« Última modificação: Fevereiro 07, 2008, 01:08:28 am por dcampos »

FORUM.RYAN.COM.BR

Re: Firmware Proview DVP-816 (desenvolvimento)
« Responder #19 Online: Fevereiro 06, 2008, 11:26:34 pm »