Autor Tópico: Nomes Longos a Partir da USB (Philips DVP5965K/55)  (Lida 14851 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: Nomes Longos a Partir da USB (Philips DVP5965K/55)
« Responder #10 Online: Fevereiro 13, 2008, 08:23:47 pm »
Para mudar Address3 acho que é preciso ajustar os endereços em INI_ARM, e INI_MoveArmCode.

Não sei se no seu firmware é distinto, mas até onde eu sei ArmUnk1 e ArmUnk2 não corresponden com Address1 e Address 2...

Posso estar enganado, mas acho que é assim:

ArmUnk1 -> CD_Text
ArmUnk2 -> Address 2
ArmUnk3 -> Address 1
ArmUnk5 -> Address 1
ArmUnk6 -> Address 2
INI_ARM -> Address 3
INI_MoveArmCode -> Address 3

São dois rotinas para cada endereço (exceto CD_Text).

Offline doctorxyz

  • Novato Prolixo
  • **
  • Mensagens: 63
  • Aprovação: +4/-0
    • Ver Perfil
Re: Nomes Longos a Partir da USB (Philips DVP5965K/55)
« Responder #11 Online: Fevereiro 15, 2008, 10:44:49 pm »
Para mudar Address3 acho que é preciso ajustar os endereços em INI_ARM, e INI_MoveArmCode.
O jeito implícito típico do Assembly, complicou um pouco as coisas para mim...  :dashhead1: Mas já tinha consciência que isso não é fácil mesmo, tem que por a cabeça para funcionar... :-[

Todo caso, sua sugestão foi super útil e foi a partir dela que resolvi a Primeira parte da charada do Address3. :clapping:

Recomendo que faça uma busca por "risc replacement" no grupo MT13x9.
Achei, obrigado (encontrei fórum do hej456)!

Link normal
http://www.hej456.com/forum/viewtopic.php?t=222&sid=0f9ee97d23d5a436d89d70f4b7b39de4
Link - Versão para impressão:
http://www.hej456.com/forum/viewtopic_print.php?t=222&start=0&sid=8472513b8e6dc07dd05c29682a594291

A segunda parte da charada deve ser resolvida a partir deste mesmo link acima (acho que foi daqui que saiu sua recomendação)...
Você pode comparar os firmwares B7 e B8 do Ferguson D780. São exatamente iguais. A única diferença foi que em um deles o NewAge usou um RISC diferente e fez um patch (não sei o que faz o patch, mas é para o RISC). Você tem que mudar os bytes diferentes e copiar o patch que o NewAge adicionou.
Vou analisar isso na semana que vem... A parte boa  :) - ou ruim  :( - é que isso deve ser a última coisa que preciso descobrir para aplicar o RISC Replacement!!! :yahoo!:

Primeira parte da charada - Resolvido

Segue desabafo e a solução:

Se a rotina INI_MoveArmCode estivesse escrita assim...

B0:768F 75 43 00              mov   RAM_43, #0              ; RISC Replacement -> ADDRESS_3 -> 0x03770000
B0:7692 75 42 00              mov   RAM_42, #0              ; RISC Replacement -> ADDRESS_3 -> 0x03770000
B0:7695 75 41 00              mov   RAM_41, #0x77 ;  'w'    ; RISC Replacement -> ADDRESS_3 -> 0x03770000
B0:7698 75 40 00              mov   RAM_40, #0              ; RISC Replacement -> ADDRESS_3 -> 0x03770000
B0:769B 7E 00                 mov   R6, #0                  ; RISC Replacement -> ADDRESS_3 -> 0x03770000
B0:769C 12 F3 20              lcall B0_F320                 ; RISC Replacement -> ADDRESS_3 -> 0x03770000


... em vez de...

B0:768F E4                    clr   A                       ; RISC Replacement -> ADDRESS_3 -> 0x03770000
B0:7690 F5 43                 mov   RAM_43, A               ; RISC Replacement -> ADDRESS_3 -> 0x03770000
B0:7692 F5 42                 mov   RAM_42, A               ; RISC Replacement -> ADDRESS_3 -> 0x03770000
B0:7694 75 41 77              mov   RAM_41, #0x77 ; 'w'     ; RISC Replacement -> ADDRESS_3 -> 0x03770000
B0:7697 F5 40                 mov   RAM_40, A               ; RISC Replacement -> ADDRESS_3 -> 0x03770000
B0:7699 7F 60                 mov   R7, #0x60 ; '`'
B0:769B FE                    mov   R6, A
B0:769C 12 F3 20              lcall B0_F320


... teria resolvido isso bem antes! :dashhead1: :dashhead1: :dashhead1:

Só após ler este post de alguém com o problema parecido com o meu (no fórum hej456), que cheguei nesta conclusão.

Então, se usar o candidato "a", tenho que alterar os opcodes de INI_MoveArmCode para

B0:768F 75 43 00              mov   RAM_43, #0
B0:7692 75 42 00              mov   RAM_42, #0xF0
B0:7695 75 41 00              mov   RAM_41, #0x76
B0:7698 75 40 00              mov   RAM_40, #0
B0:769B 7E 00                 mov   R6, #0


Se usar o candidato "b", tenho que alterar os opcodes de INI_MoveArmCode para

B0:768F 75 43 00              mov   RAM_43, #0
B0:7692 75 42 00              mov   RAM_42, #0xD0
B0:7695 75 41 00              mov   RAM_41, #0x76
B0:7698 75 40 00              mov   RAM_40, #0
B0:769B 7E 00                 mov   R6, #0


 :rtfm: Note que tenho que alterar TODOS estes bytes, devido a forma implícia com que estava escrito antes (zerava o acumulador e atrbuía o mesmo zero para RAM_43, RAM_42, RAM_40 e até para R6)!

Não sei se no seu firmware é distinto
Para o meu azar, é distinto :( Constatei que o script "MT1389_Misc.idc" encontra automaticamente as seguintes rotinas por aparelho:
- Philips DVP5100 -> ARM_GetChar, ARM_PutChar, ARM_Unk1, ARM_Unk2, ARM_Unk3, ARM_Unk5, ARM_Unk6 e ARM_CDTEXT
- Philips DVP5965K/55 -> ARM_Unk1, ARM_Unk2 e ARM_CDTEXT.
Para encontrar no Philips DVP5965K/55 as rotinas ARM_GetChar e ARM_PutChar só alterando um pouco a string de pesquisa informada pelo Ryan/você no log de Descobertas;
já ARM_Unk3, ARM_Unk5 e ARM_Unk6 não encontrei. Mas ao que tudo indica, as rotinas B0:E168, B0:E776 e B0:E7CB sejam algo parecido com elas.

.
, mas até onde eu sei ArmUnk1 e ArmUnk2 não corresponden com Address1 e Address 2...
A relação entre estes rotinas ARM "desconhecidas" (Arm_Unk...) e o número do endereçamento (Adress...) só será igual em firmware que correspondam a todos
os padrões de busca relacionados no "MT1389_Misc.idc"; este procura e quando os encontra rotula rotinas e insere comentários nas mesmas.
Estes comentários dão a entender que uma Rotina ARM_UnkX deveria endereçar o AddressY, mas como foram lançados firmwares depois deste script,
então o mesmo pode estar desatualizado (o "MT1389_Misc.idc" que possuo é datado de 28.10.2006). É a melhor conclusão que cheguei. :-[

.
Posso estar enganado, mas acho que é assim:
ArmUnk1 -> CD_Text
ArmUnk2 -> Address 2
ArmUnk3 -> Address 1
ArmUnk5 -> Address 1
ArmUnk6 -> Address 2
INI_ARM -> Address 3
INI_MoveArmCode -> Address 3

São dois rotinas para cada endereço (exceto CD_Text).
A conclusão que cheguei :P, é que no Philips DVP5965K/55 a correspondência é:
ArmUnk1 -> Address 1
B0:E168 -> Address 1
B0:E776 -> Address 1
ArmUnk2 -> Address 2
B0:E7CB -> Address 2
Arm_GetChar -> Shared Memory
Arm_PutChar -> Shared Memory
Arm_CDTEXT -> CD_Text
INI_ARM -> Address 3 (Segunda parte da charada - TRABALHO EM ANDAMENTO!)
INI_MoveArmCode -> Address 3 (Primeira parte da charada - Resolvido!)

Relação Atualizada de Endereços, Rotinas, Bloco e End.8032 com de/para, Seqüência de busca de bytes e tudo mais...

    ADDRESS_1            = 0x0376C400
   **ADDRESS_2           = 0x0376C800
   **ADDRESS_2           = 0x0376C700
    SHARED MEMORY        = 0x0376CC00
   *CDTEXT BUFFER        = 0x0376EC00
   *ADDRESS_3            = 0x03770000

ArmAddressInfo                Rotina relacionada           Bloco e End.   De   P/"a"   P/"b"   Seqüência de busca de bytes
--------------                ------------------           ------------   --   -----   -----   ---------------------------
ADDRESS_1 -> 0x0376C400       Arm_Unk1                     B0:C3C0        C4    B4      94     "F5 ? EE 34 ? F5 ? E4 34 ? F5 ? E4 33 F5"
ADDRESS_1 -> 0x0376C400       Script IDA não atribui nome  B0:E168        C4    B4      94     "F5 ? EE 34 ? F5 ? E4 34 ? F5 ? E4 33 F5"
ADDRESS_1 -> 0x0376C400       Script IDA não atribui nome  B0:E776        C4    B4      94     "F5 ? EE 34 ? F5 ? E4 34 ? F5 ? E4 33 F5"
**ADDRESS_2 -> 0x0376C700     Arm_Unk2                     B0:C47A        C7    B7      97     "F5 ? EE 34 ? F5 ? E4 34 ? F5 ? E4 33 F5"
**ADDRESS_2 -> 0x0376C700     Script IDA não atribui nome  B0:E7CB        C7    B7      97     "F5 ? EE 34 ? F5 ? E4 34 ? F5 ? E4 33 F5"
SHARED MEMORY -> 0x0376CC00   Arm_GetChar                  B0:E8DD        CC    BC      9C     "E5 ? 24 ? FD 7F ? 7E"
SHARED MEMORY -> 0x0376CC00   Arm_PutChar                  B0:EC13        CC    BC      9C     "E5 ? 24 ? FD 7F ? 7E"
*CDTEXT BUFFER -> 0x0376EC00  Arm_CDTEXT                   B0:D1BF        EC    DC      BC     "F5 ? EE 34 ? F5 ? E4 34 ? F5 ? E4 33 F5"
**ADDRESS_3 -> 0x03770000     INI_MoveArmCode              Vide "Primeira parte da charada"    "E4 F5 ? F5 ? 75 ? ? F5 ? 7F 60 FE 12 F3 20"
**ADDRESS_3 -> 0x03770000     INI_ARM (A CONFIRMAR)        TRABALHO EM ANDAMENTO - TRABALHO EM ANDAMENTO - TRABALHO EM ANDAMENTO



FORUM.RYAN.COM.BR

Re: Nomes Longos a Partir da USB (Philips DVP5965K/55)
« Responder #11 Online: Fevereiro 15, 2008, 10:44:49 pm »

Offline doctorxyz

  • Novato Prolixo
  • **
  • Mensagens: 63
  • Aprovação: +4/-0
    • Ver Perfil
Re: Nomes Longos a Partir da USB (Philips DVP5965K/55)
« Responder #12 Online: Março 02, 2008, 05:46:31 am »
Apenas para conhecimento daqueles que acompanham: Não desisti.
É só o tempo para concluir a missão que anda escasso...

Offline doctorxyz

  • Novato Prolixo
  • **
  • Mensagens: 63
  • Aprovação: +4/-0
    • Ver Perfil
Procura-se: Alguém com DVP5965K/55 e com cabo de recuperação
« Responder #13 Online: Março 21, 2008, 11:04:16 pm »
Tem alguém com cabo de recuperação disposto a testar o RISC Replacement que pretendo fazer para solucionar esta questão de nomes longos a partir da USB?

Offline doctorxyz

  • Novato Prolixo
  • **
  • Mensagens: 63
  • Aprovação: +4/-0
    • Ver Perfil
Re: Procura-se: Alguém com DVP5965K/55 e com cabo de recuperação
« Responder #14 Online: Abril 07, 2008, 09:59:10 pm »
Tem alguém com cabo de recuperação disposto a testar o RISC Replacement que pretendo fazer para solucionar esta questão de nomes longos a partir da USB?

Dado o silêncio mortal... Desisto.

Sem ESTE apoio que pedi, não há como continuar.

Offline rafalibrenz

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 356
  • Aprovação: +28/-0
    • Ver Perfil
    • Blog
Re: Procura-se: Alguém com DVP5965K/55 e com cabo de recuperação
« Responder #15 Online: Abril 09, 2008, 04:55:33 am »
Desisto.

Que pena!

Infelizmente eu não posso ajudar.

Apesar de ter o cabo, não tenho um DVP5965.

Nem mesmo um "teste gambiarra" eu poderia fazer, como o Jefferson fez usando o firmware do 5980 no 5960, pois uma vez coloquei o RISC do 5965 no meu 5980 e ele morreu. Acho que os RISCs devem ter uma diferença mortal pra que isso aconteça, tornando os firmwares do 5965 incompatíveis com o 5980. Desconfio que seja por causa da diferença no loader e chips HDMI (acho que essas instruções ficam no RISC).

Mas doctorxyz, você não pensou em construir um cabo? Aquele esquema que o Jefferson colocou no site dele funciona direitinho. O único grande empecilho é conseguir o MAX3232, eu acho. Claro, tem a parte da montagem, mas se você não sabe fazer, pode mandar um técnico em eletrônica fazer. Não creio que seria muito caro. O que posso dizer é que ter o cabo é legal e vale a pena!

Offline dcampos

  • Seeder
  • Tagarela
  • ***
  • Mensagens: 220
  • Aprovação: +9/-0
    • Ver Perfil
Re: Nomes Longos a Partir da USB (Philips DVP5965K/55)
« Responder #16 Online: Abril 09, 2008, 11:44:53 am »
Ou pode usar um cabo USB de Siemens C55, desde que o mesmo venha com o Driver. Os programas mais novos como o MtkCom funcionam bem com esses cabos.

[]'s
Daniel

Offline doctorxyz

  • Novato Prolixo
  • **
  • Mensagens: 63
  • Aprovação: +4/-0
    • Ver Perfil
Re: Procura-se: Alguém com DVP5965K/55 e com cabo de recuperação
« Responder #17 Online: Abril 09, 2008, 10:26:40 pm »
rafalibrenz e dcampos,

Obrigado pela dicas... Mas a questão não é essa. Até poderia fazer o cabo, ou comprá-lo.
O real problema é que se abrir o aparelho para por o cabo, levo cartão amarelo lá em casa... e se perder a garantia, aí é o vermelho...rsrs

Pois é, meu aparelho ainda está em garantia, e mesmo assim fiz na base da coragem dois enxertos de RISCs "alienígenas" no Philips 5965K/55:
- fw Proview DVP-858 v.20.06 (Original) -> Feito com sucesso, porém som no divx entrecortado e disposicionamento das mensagens
- Ferguson D770HX versão A7 -> Matou meu aparelho e foi para assistência e lá ficou um mês.

E daí apostava (com base nas minhas experiências anteriores), que enxertar a última versão de fw do Proview DVP858(versão 3.0 do Eneris, disponível em www.eneris.k6.com.br) seria uma boa idéia para a causa!

Mas diante do exposto acima, ter um voluntário com o cabo de recuperação para fazer o teste é uma premissa básica.

Falou!

Um abraço,

FORUM.RYAN.COM.BR

Re: Procura-se: Alguém com DVP5965K/55 e com cabo de recuperação
« Responder #17 Online: Abril 09, 2008, 10:26:40 pm »