Postar resposta

Observação: Este post não será mostrado enquanto não for aprovado por um moderador.

Nome:
Email:
Assunto:
Ícone de mensagem:

Verificação:
Escreva as letras mostradas na imagem
Escutar as letras / Pedir uma nova imagem

Escreva as letras mostradas na imagem:
Escreva "convidado" (sem as aspas) na caixa ao lado (ou abaixo).:

atalhos: pressione alt+s para enviar ou alt+p para pré-visualizar


Resumo do Tópico

Enviado por: jmaraujo
« Online: Fevereiro 09, 2008, 06:21:03 pm »

Só achei algo sobre isso, nestes dois posts aqui:

http://ryan.com.br/smf/index.php?topic=179.msg9172079#msg9172079

http://ryan.com.br/smf/index.php?topic=179.msg9172475#msg9172475

No primeiro, só fala para alterar em dois endereços. Fiz igual e nada.

Ah, desculpe. Não sabía que no Proview era diferente. Eu estava falando desta mudança, que tem sempre que ser feita, no DVP5100, DVP5960, DVP5965 e DVP5980 (mais específicamente na parte que diz: "O DVP5960 tem um ponto a mais que precisa ser mudado...")

Aqui, neste tópico do HTForum, você mesmo comenta que existe uma limitação no ARM:

http://www.htforum.com/vb/showpost.php?p=714055&postcount=1499

Sim, existe uma limitação no ARM (50 caracteres), do mesmo jeito que existe uma limitação nos carateres pasados pelo ARM para os mp3s tags (30 caracteres).
Enviado por: dcampos
« Online: Fevereiro 09, 2008, 01:27:50 pm »

Só achei algo sobre isso, nestes dois posts aqui:

http://ryan.com.br/smf/index.php?topic=179.msg9172079#msg9172079

http://ryan.com.br/smf/index.php?topic=179.msg9172475#msg9172475

No primeiro, só fala para alterar em dois endereços. Fiz igual e nada.

Aqui, neste tópico do HTForum, você mesmo comenta que existe uma limitação no ARM:

http://www.htforum.com/vb/showpost.php?p=714055&postcount=1499

[]'s
Daniel

Enviado por: jmaraujo
« Online: Fevereiro 09, 2008, 01:38:24 am »

Sim. Cincuenta é o máximo que o Arm pasa, mas se passar os caracteres em formato Unicode, o límite é disminuido para 25, porque Unicode usa 2 bytes por caracter, em lugar de somente um byte por caracter.

Unicode, para aquí, para os nossos países (Sul-América) é completamente innecesario. Não sei se o Proview tem suporte a unicode ou não, mas acho que -caso tenha- a Proview não precisava ter dado suporte a Unicode... não faz falta.
Enviado por: dcampos
« Online: Fevereiro 09, 2008, 01:34:37 am »

Estou tendo dificuldade para aumentar o número de caracteres exibíveis na linha de diretório do browser para além de 25. Já alterei o limite na rotina Dir_Disp_DirLine, mas não teve efeito. Creio ter lido em algum lugar que essa limitação é no ARM e é relacionada com o tal do Unicode.
Alguém tem alguma dica de como resolver?

[]'s
Daniel
Enviado por: dcampos
« Online: Fevereiro 08, 2008, 01:41:24 am »

Poxa, mas eu segui a risca todas as instruções.

- Busquei no bloco 8032 pelas sequências "7F ? 7E 00 12 04 B1", "7F ? 7E 00 02 04 B1" e "7F ? 7E 00 ? 4E 30"
- Busquei também nos menus dos tipos 0008, 0010, 000A, 0006 e 0015.

Será que faltou algum outro passo?

[]'s
Daniel
Enviado por: jmaraujo
« Online: Fevereiro 08, 2008, 01:31:03 am »

O engraçado é que, primeiro, cheguei a testar o menu usando o endereço 0x03, mas quando fui testar o firmware no aparelho, o menu não conseguia escrever nenhum valor para o endereço. Eu tentava selecionar qualquer uma das opções, mas quando saía e voltava ao menu, ele sempre vinha setado com o valor inicial (0), pois a fonte selecionada no menu era sempre a "fonte 1". Será que é possível que esse endereço 0x03 na EEPROM seja protegido contra gravação?
Eu acho que o seu mapa da EEPROM deve estar incompleto...

     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

Primeiro porque tem muitos espaços vazíos, e poucos espaços ocupados, o que me faz suspeitar que o mapa esteja incompleto.

Segundo porque as primeiras duas linhas (00-1F) geralmente estão completamente (ou quase completamente) ocupadas... No seu 00, 01, 02 e 03 estam livres. Acho estranho. Esqueça o que eu disse...
Enviado por: Jefferson
« Online: Fevereiro 08, 2008, 01:24:52 am »

Foi isso que eu quis dizer com:
 
encontrar endereços que funcionem nos menus é uma tarefa de arrancar os cabelos. Endereços aparentemente livres simplesmente se recusam a gravar os valores.
Enviado por: dcampos
« Online: Fevereiro 08, 2008, 01:18:54 am »

Vou tentar, no próximo release do firmware, usar algum desses endereços que estão em branco no mapa e ver se funciona de acordo.

Acabei de testar o meu firmware usando um outro endereço EEPROM para a escolha do tipo de fonte para a legenda. Deixei de usar o endereço 0x06 e estou usando, agora, o 0x86.
Testei por alto e ainda não vi nenhum efeito colateral. Se não der nenhum problema, vou estar deixando assim para o próximo release.

O engraçado é que, primeiro, cheguei a testar o menu usando o endereço 0x03, mas quando fui testar o firmware no aparelho, o menu não conseguia escrever nenhum valor para o endereço. Eu tentava selecionar qualquer uma das opções, mas quando saía e voltava ao menu, ele sempre vinha setado com o valor inicial (0), pois a fonte selecionada no menu era sempre a "fonte 1". Será que é possível que esse endereço 0x03 na EEPROM seja protegido contra gravação?

[]'s
Daniel
Enviado por: dcampos
« Online: Fevereiro 07, 2008, 01:09:46 am »

Obrigado por confirmar! Já atualizei a tabela do outro post.

Vou tentar, no próximo release do firmware, usar algum desses endereços que estão em branco no mapa e ver se funciona de acordo.
Tenho que corrigir também o tal "Subtitle Timing Bug", pois só agora descobri que o 816 veio com isso de fábrica.  :dashhead1:  (Na verdade, eu já o corrigi no firmware que está rodando no meu aparelho. Usei o maravilhoso MtkModToolBox para isso. Obrigado Jefferson  :clapping:)
Pensava que esse bug assim como o "60 char bug" havia sido corrigido pela Proview, mas não foi o caso.

[]'s
Daniel
Enviado por: Jefferson
« Online: Fevereiro 07, 2008, 01:00:01 am »

Era só esse mesmo. Eu fiz uma confusão aqui  :dashhead1:
Enviado por: dcampos
« Online: Fevereiro 07, 2008, 12:48:52 am »

Eu encontrei no meu teste com o firmware do DVP-816 pelo menos três endereços que o Daniel não colocou no mapa dele.

Pelo que eu entendi, você também fez a busca utilizando o endereço real da rotina Pref_GetChar certo? E que no caso do 816 está em B5:4E30, certo?

Realizei a busca usando esse endereço, mas só achei mais um endereço apenas (0x39). Quais foram os outros que você localizou?

Usei a string "7F 2E 7E 00 2E 4E 30" para fazer a busca no XVI32.

[]'s
Daniel
Enviado por: jmaraujo
« Online: Fevereiro 07, 2008, 12:41:18 am »

Você está certo. Faltaríam anotar esse endereços.

Vou adicionar isso no post anterior.
Enviado por: Jefferson
« Online: Fevereiro 07, 2008, 12:35:20 am »

Juan, com todo respeito devido ao Jakob, eu acho que esse procedimento está incompleto.

Faz tempo que não mexo com firmware, por isso ainda estou em marcha lenta, mas pelo que eu verifiquei aqui nas minhas anotações está faltando uma parte do processo:

No firmware do DVP5100 0E.0A:


Todas as chamadas de Bank Switching para Pref_GetChar são feitas com 12 05 D7 ou 02 05 D7. Até aí, tudo bem.

Mas Pref_GetChar está fisicamente localizada no banco 4 em B4:E0AE

Então qualquer chamada para Pref_GetChar no banco 4 é feita com 12 E0 AE (existem oito) ou 02 E0 AE (não há nenhuma), porque no mesmo banco onde está a rotina não se passa pelo Bank Switching.

No caso do DVP5100, pelo que apurei aqui, não faz diferença, porque todos os endereços usados no banco 4 já estão na sua tabela. Mas ignorar as chamadas de um banco inteiro é sempre um tiro no escuro.

Eu encontrei no meu teste com o firmware do DVP-816 pelo menos três endereços que o Daniel não colocou no mapa dele.

Ou eu estou misturando alguma coisa?
Enviado por: jmaraujo
« Online: Fevereiro 06, 2008, 11:50:31 pm »

Achei vários endereços além do endereço 0x7F. Cheguei a descobrir até endereços 0xC1 e 0xC2.

Quem sabe nos players novo é distinto... Eu aprendi isso com o mestre Jakob (hej456).

Citar
A small EEPROM is used to store preferences. It stores 128 bytes, addresses 0x00 to 0x7F.

How to find eeprom values?
==========================
The EEPROMs used are different from each firmware - You must go through the menu and see if eeprom value is used there... next you can do a search in the 8032 code for codes like this:

"7F x 7E 00 ? mm nn", where mm nn is the bank jump to PrefGetChar.

The values you find in such a sequence for x seems to be used.
Enviado por: dcampos
« 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