NOVIDADES MEU POVO!!! Para a missão nomes longos a partir da USB estar concluída, só falta achar a(s) referências ao endereçamento "*ADDRESS_3" (apontado pelo ArmAddressInfo) no 8032 do Philips DVP5965K/55.
Alguém me confirma se este endereço é relamente necessário? Se sim, me ajudaria a encontrá-lo?
Por quê? Quero implementar USB LFN (nomes longos a partir da USB) do jeito "menos" difícil:
Através de um RISC Replacement (substituição do RISC) do Philips DVP5965K/55 por outro que tenha esta funcionalidade!!!
Os RISCs do Philips DVP5965K/55 e do Proview DVP858(versão 20.06 original da Proview) são plenamente compatíveis
, pois já testei e também agora sei devemos atender as seguintes...
Premissas dos aparelhos 1. Possuem a mesma versão RISC
2. Usam o mesmo endereçamento RISC para ShMem, Address1, Address2, Address3, SharedMemory e CDTextBuffer
3. Tem hardware compatível
Como descobri isso? Chequei as premissas 1 e 2 com o utilitário ArmAddressInfo (v0.9.9 by New Age), e a premissa 3 atualizando o firmware na marra*
, enxertando com sucesso o RISC do Proview DVP858(versão 20.06 original da Proview) no Philips DVP5965K/55. Só tive tempo de fazer um teste rapido lendo um arquivo AVI com legendas a partir da USB. O aparelho passou a apresentar nomes longos a partir da USB, e a leitura de DVD continuou funcionando (o que me permitiu voltar a versão anterior de firmware). Notei que as mensagens na tela ficaram disposicionadas e houveram problemas de som.
Porém, como é sabido historicamente por muitos deste forum e do clube Proview DVP858 do HT Forum, esta v20.06 era cheia de problemas
, tanto que a Proview lançou um pouco depois a v20.07 (com endereçamento RISC diferente da v20.06) e a comunidade atuou cuminando na versão v3.0 do Eneris (usando como base a v20.07).
Portanto, para termos no Philips DVP5965K/55 arquivos com nomes longos a partir da USB, temos alguns...
Candidatos a) RISC do Proview DVP858(versão 3.0 do Eneris, disponível em
www.eneris.k6.com.br) - Este firmware que acabei de comentar
Proview DVP-858 v3.0 (Eneris)
DVP858_ENERIS_v3.0 (ARM Code 1).bin
Version: 05.00.06.05
ADDRESS_1 = 0x0376B400
**ADDRESS_2 = 0x0376B800
**ADDRESS_2 = 0x0376B700
SHARED MEMORY = 0x0376BC00
*CDTEXT BUFFER = 0x0376DC00
*ADDRESS_3 = 0x0376F000
Addresses marked by * are calculated values!
Addresses marked by ** are calculated values too but in new firmwares they have the 2nd value!
Additional info (could be wrong):
DTS CD : YES
SACD : NO
DVD-Audio : YES
OGG, OGM : NO
Nero Digital : YES
DivX MF Menu : NO
USB Support : YES
WMV9 : NO
WMV9 VC-1 : NO
DTS Passthrough : NO INFO
DRAM Size : 8 MB
b) RISC do Philips DVP5980/12 (versão 2.0 do Tech25, publicado no fórum Softpedia em 16.11.2007)
Philips DVP5980_12_tech25_v2 16.11.2007
DVP5980_12_TECH25 (ARM Codes).bin
Version: 05.00.06.05
ADDRESS_1 = 0x03769400
**ADDRESS_2 = 0x03769800
**ADDRESS_2 = 0x03769700
SHARED MEMORY = 0x03769C00
*CDTEXT BUFFER = 0x0376BC00
*ADDRESS_3 = 0x0376D000
Addresses marked by * are calculated values!
Addresses marked by ** are calculated values too but in new firmwares they have the 2nd value!
Additional info (could be wrong):
DTS CD : YES
SACD : NO
DVD-Audio : NO
OGG, OGM : NO
Nero Digital : YES
DivX MF Menu : YES
USB Support : YES
WMV9 : NO
WMV9 VC-1 : NO
DTS Passthrough : YES
DRAM Size : 8 MB
c) RISC do Ferguson D770HX versão A7 (empresa húngara onde o New Age trabalha)
Ferguson D770HX vA7
D770HX_A7 (ARM Code 1).bin
Version: 05.00.06.05
ADDRESS_1 = 0x0376C400
**ADDRESS_2 = 0x0376C800
**ADDRESS_2 = 0x0376C700
SHARED MEMORY = 0x0376CC00
*CDTEXT BUFFER = 0x0376EC00
*ADDRESS_3 = 0x03770000
Addresses marked by * are calculated values!
Addresses marked by ** are calculated values too but in new firmwares they have the 2nd value!
Additional info (could be wrong):
DTS CD : YES
SACD : NO
DVD-Audio : NO
OGG, OGM : NO
Nero Digital : NO
DivX MF Menu : NO
USB Support : YES
WMV9 : NO
WMV9 VC-1 : NO
DTS Passthrough : NO INFO
DRAM Size : 8 MB
Sobre O RISC do Philips DVP5965K/55 Philips DVP5965K v2.2b by naasom -v.Packet Bitstream (18.12.2007)
ARMCodes.bin
Version: 05.00.06.05
ADDRESS_1 = 0x0376C400
**ADDRESS_2 = 0x0376C800
**ADDRESS_2 = 0x0376C700
SHARED MEMORY = 0x0376CC00
*CDTEXT BUFFER = 0x0376EC00
*ADDRESS_3 = 0x03770000
Addresses marked by * are calculated values!
Addresses marked by ** are calculated values too but in new firmwares they have the 2nd value!
Additional info (could be wrong):
DTS CD : YES
SACD : NO
DVD-Audio : NO
OGG, OGM : NO
Nero Digital : NO
DivX MF Menu : YES
USB Support : YES
WMV9 : NO
WMV9 VC-1 : NO
DTS Passthrough : YES
DRAM Size : 8 MB
Sobre os candidatos "a" -> Atende as premissas 1 e 3, devido ao teste que já fiz - enxertando com sucesso o RISC do Proview DVP858(versão 20.06 original da Proview) no Philips DVP5965K/55. Basta ajustar os endereços para atender a premissa 2.
"b" -> Atende a premissa 1. Basta ajustar os endereços para a atender a premissa 2. Um pouco da historia dele: O Ryan atualizou o Philips DVP5960/?? (não sei se é que vem depois da barra) dele com o firmware inteiro do beta do Philips DVP5980/12 (usando o RISC do Philips DVP5160/12) lançado pelo Tech25 um pouco antes da versão final (candidado "b" acima). Este beta tinha teoricamente word wrap + USB LFN (=nomes longos a partir da USB). Pois bem, a atualização funcionou, i.e., não travou o Philips DVP5960/??!!! Ele ainda constatou que apesar do word wrap não funcionar, o browser USB passou a mostrar 23 caracteres e o player ficou compatível com DVD-Rs multi-sessão. Infiro que a premissa 3 seja atendida também, pois consultei o site da Philips, e puxei as características técnica tanto do Philips DVP5960/?? como do Philips DVP5965K/55; são praticamente o mesmo modelo, com pequenas diferenças (acho que é só a questão do Karaokê)!
"c"-> Vetado! "Matou" o meu Philips DVP5965K/55 após o enxerto...
Fica parado na tela inicial, e nem mostra "Carregando" ou faz o barulho relacionado de carregamento de DVDs. Por que "matou"? Porque ele atendia apenas as premissas 1 e 2, mas não a premissa 3!
Bom, voltando à "vaca-fria"...
Eu poderia enxertar estes RISCs (candidatos "a" e "b") no firmware Beta 5 do NKVT (do HT Forum). Isso deve resultar em firmwares sem HDMI mas que com nomes longos a partir da USB. Daí elegemos o melhor.
Onde e como alterar o 8032 para atender a premissa 2 Para descobrir (parte das) rotinas relacionadas à alteração:
- Abri o bloco 8032 (extraído do firmware via MtkReMaker) no IDA Pro;
- Apliquei em seguida os scripts MT1389_8032_FULL.idc e MT1389_ARM.idc, que localizaram Arm_Unk1 em B0:C3B3, e Arm_Unk2 em B0:C46D;
- Localizei ARM_GetChar em B0:E8BB, procurando a sequência de bytes "D3 10 AF 01 C3 C0 D0 8E ? 8F ? 7F 60 7E 00";
- Localizei ARM_PutChar em B0:EBEF, procurando a sequência de bytes "D3 10 AF 01 C3 C0 D0 8E ? 8F ? 8D 5C 7F 60".
De/Para da substituição no bloco 8032, em função do RISC candidato
End. Relacionado Rotina relacionada Bloco e End. De P/"a" P/"b"
---------------- ------------------ ----------- -- ----- ------
ADDRESS_1 -> 0x0376C400 Arm_Unk1 B0:C3C0 C4 B4 94
ADDRESS_1 -> 0x0376C400 ? B0:E168 C4 B4 94
ADDRESS_1 -> 0x0376C400 ? B0:E776 C4 B4 94
**ADDRESS_2 -> 0x0376C700 Arm_Unk2 B0:C47A C7 B7 97
**ADDRESS_2 -> 0x0376C700 ? B0:E7CB C7 B7 97
SHARED MEMORY Arm_GetChar B0:E8DD CC BC 9C
SHARED MEMORY Arm_PutChar B0:EC13 CC BC 9C
*CDTEXT BUFFER Arm_CDTEXT B0:D1BF EC DC BC
**ADDRESS_3 -> 0x03770000 ? ? 77 76 76
**ADDRESS_3 -> 0x03770000 ? ? 00 F0 D0
Nota:
- O **ADDRESS_2 encontrado foi o segundo (já que o firmware é "novo" tomando como referência o informado pelo ArmAddressInfo)
- Faltou(será que falta?
) localizar o **ADDRESS_3
Ao que interessa...Preciso de voluntários para...I. Achar o endereçamento "*ADDRESS_3" (apontado pelo ArmAddressInfo) no 8032 do Philips DVP5965K/55. Alguém me confirma se este endereço é relamente necessário? Se sim, me ajudaria a encontrá-lo?
II. Item I endereçado, preciso de alguém para testar (com cabo de recuperação claro!). Posso postar os "Frankesteins", i.e., os firmwares com os enxertos aqui.
Saudações!!!
doctorxyz