Autor Tópico: Firmware MT13x9: Log de Descobertas  (Lida 272667 vezes)

0 Membros e 3 Visitantes estão vendo este tópico.

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: Firmware: log de descobertas
« Responder #110 Online: Julho 31, 2007, 03:30:19 pm »
Valeu Jmaraujo,  :yahoo!:

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

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: Firmware: log de descobertas
« Responder #111 Online: Julho 31, 2007, 04:31:00 pm »
Jefferson, ¿voçê tem este documento que estou anexando? Pode ser que ele resulte útil na hora de olhar as modificações no Sub_Style do DVP5100...

Saudações!

EDIT: Links relacionados - Patch do Sidekick:
http://tech.groups.yahoo.com/group/mt13x9/message/8098
http://tech.groups.yahoo.com/group/mt13x9/message/8102


PS: Antes de abrir renomeie e extensão do arquivo para rtf. (Update: Acho que não é preciso. O MS Word reconhece o arquivo mesmo com a extensão trocada).
PS2: Anexo imagen do exemplo do patch do Sidekick.
« Última modificação: Julho 31, 2007, 06:11:06 pm por jmaraujo »

FORUM.RYAN.COM.BR

Re: Firmware: log de descobertas
« Responder #111 Online: Julho 31, 2007, 04:31:00 pm »

Offline ramos80

  • Novato
  • *
  • Mensagens: 2
  • Aprovação: +0/-0
    • Ver Perfil
Re: Firmware: log de descobertas
« Responder #112 Online: Julho 31, 2007, 06:17:32 pm »
Primeiramente gostaria de parabenizar ao Ryan pelo fórum (achei pelo Google e estou gostando demais) e pelas novas descobertas.  :clapping: Acompanho tambem o forum do jmaraujo e as novidades do site do eneris.
Estou fazendo um mod no meu Philips 5960/12 seguindo o tópico do Ryan estou tentando alterar a posição da idTag como foi postado abaixo.


Agora sim, vamos mover as tags. São três bytes que determinam a coordenada do canto superior esquerdo do retângulo onde as tags começam a ser impressas:

B1:5796 90 FC 76    mov     DPTR, #XRAM_FC76      ; Coordenada horizontal (HI)
B1:5799 74 00       mov     A, #0
B1:579B F0          movx    @DPTR, A
B1:579C A3          inc     DPTR
B1:579D 74 25       mov     A, #0x25 ;
B1:579F F0          movx    @DPTR, A              ; FC76 e FC77 = 0x25
B1:579F                                           ; offset horizontal. Quanto menor, mais à esquerda a linha começa.
B1:57A0 EF          mov     A, R7                 ; R7 contém o número da TAG (linha) sendo exibida?
B1:57A1 75 F0 14    mov     B, #0x14              ; Altura presumida de cada linha
B1:57A1                                           ; 0x10 fará com que cada linha cubra a metade da anterior
B1:57A1                                           ; 0x16 funciona OK com a fonte original
B1:57A4 A4          mul     AB
B1:57A5 AE F0       mov     R6, B                 ; R6 contém agora a coordenada vertical de impressão da linha?
B1:57A7 24 F0       add     A, #0xF0 ;

Não compreendi onde deve ser modificado na rotina acima (os 3 bytes) e por qual valor.



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: Firmware: log de descobertas
« Responder #113 Online: Julho 31, 2007, 06:27:37 pm »
Baixei o doc jmaraujo, chegar em casa vou testar ele. Acho que este doc eu nao tinha.
The Cranberries - em Recife Outubro/2010
Estarei la colado! Ta perto.

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: Firmware: log de descobertas
« Responder #114 Online: Julho 31, 2007, 07:36:35 pm »
Seja bem ao forum ramos80. As trocas são feitas onde estão os #

B1:5799 74 00       mov     A, #0        (0)
B1:579D 74 25       mov     A, #0x25 ; (25)
B1:57A7 24 F0       add     A, #0xF0 ;  (F0)

Abra o banco 8032 em um editor hexadecimal, procure pelos endereços e substitua pelos novos valores.
The Cranberries - em Recife Outubro/2010
Estarei la colado! Ta perto.

Offline evb62

  • Novato
  • *
  • Mensagens: 14
  • Aprovação: +0/-0
    • Ver Perfil
Re: PUOs - Prohibited User Operations
« Responder #115 Online: Agosto 01, 2007, 01:49:14 am »
jmaraujo, muito obrigado!

Esse documento sobre UOPs foi muito útil. Eu não achava nada no grupo mt13x9 porque procurava "PUOs", que é como esse (inconveniente) 'feature' era chamado no site Doom9. Mas a Wikipedia menciona UOP, mesmo.

Não consegui achar a função Set_UOP, mesmo examinando todas as referências a "UOP_Bytes" no firmware (são muitas). Porém a função ReadNStore_UOP é a mesma que eu já tinha achado antes, só lhe faltava um nome. Então apliquei os patches apenas nessa função. Funcionou para "A Era do Gelo" (que eu já tinha testado com o patch da troca de máscara) e funcionou com o DVD da Barbie "As 12 Princesas Bailarinas", que tem uma quantidade infindável de menus e avisos com todo tipo de proibição. O DVD da Barbie era resistente à simples troca de máscara.

Ah, e tudo isso funcionou com a máscara original, mesmo sem a troca sugerida pelo mosarella.

Citar
Infelizmente ese patch não funciona em todos os casos, mas permite pular trailers, warnings, etcétera, onde anteriormente não era possivel.
Funcionou para o DVD da Barbie, então já fiquei feliz!

Aqui estão as modificações para o Proview DVP-858 (incluindo a troca da máscara):

Original:
Código: [Selecionar]
ROM:0008799A 01 7A          LDRB    R1, [R0,#8]     ; R1 = Prohibit Byte 3
...
ROM:0008799E 41 7A          LDRB    R1, [R0,#9]     ; R1 = Prohibit Byte 2
...
ROM:000879A2 81 7A          LDRB    R1, [R0,#0xA]  ; R1 = Prohibit Byte 1
...
ROM:000879A6 C0 7A          LDRB    R0, [R0,#0xB]  ; R1 = Prohibit Byte 0
...
ROM:000879CC 08 43          ORR     R0, R1
...
ROM:000879F4 08 43          ORR     R0, R1
...
ROM:00087D64 F8 FF FD FF  dword_87D64     DCD 0xFFFDFFF8

Alterado:
Código: [Selecionar]
ROM:0008799A 00 21          MOV R1, #0
...
ROM:0008799E 00 21          MOV R1, #0
...
ROM:000879A2 00 21          MOV R1, #0
...
ROM:000879A6 00 21          MOV R1, #0
...
ROM:000879CC 00 21          MOV R1, #0
...
ROM:000879F4 00 21          MOV R1, #0
...
ROM:00087D64 F8 FF CD FF  dword_87D64     DCD 0xFFCDFFF8

Offline Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: Firmware: log de descobertas
« Responder #116 Online: Agosto 01, 2007, 01:22:01 pm »
vPlayerShowLogo

Esta rotina é responsável pela exibição das imagens de background.

Minha investigação teve como ponto de partida este post de teo_abs. A seqüência indicada por ele não funcionou comigo, mas foi fácil adaptá-la.

Exemplo do DVP5960/37:

Nota: analisar esta rotina não é realmente importante. Estou transcrevendo-a aqui para que se possa tentar localizá-la por comparação, se minha seqüência de busca não funcionar em algum firmware específico.

[size=08pt]
B3:BE2E             ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
B3:BE2E
B3:BE2E
B3:BE2E             vPlayerShowLogo:              ; DATA XREF: B0:B0_BS_162_B3_BE2Eo
B3:BE2E                                           ; vPlayerShowLogoB1_BSo ...
B3:BE2E 90 FB B4    mov     DPTR, #XRAM_FBB4
B3:BE31 EF          mov     A, R7
B3:BE32 F0          movx    @DPTR, A
B3:BE33 A3          inc     DPTR
B3:BE34 EC          mov     A, R4
B3:BE35 F0          movx    @DPTR, A
B3:BE36 A3          inc     DPTR
B3:BE37 ED          mov     A, R5
B3:BE38 F0          movx    @DPTR, A
B3:BE39 90 FB B4    mov     DPTR, #XRAM_FBB4
B3:BE3C E0          movx    A, @DPTR
B3:BE3D FF          mov     R7, A
B3:BE3E 64 04       xrl     A, #4
B3:BE40 70 03       jnz     B3_BE45
B3:BE42 02 BE F1    ljmp    B3_BEF1
B3:BE45             ; ---------------------------------------------------------------------------
B3:BE45
B3:BE45             B3_BE45:                      ; CODE XREF: vPlayerShowLogo+12j
B3:BE45 EF          mov     A, R7
B3:BE46 64 03       xrl     A, #3
B3:BE48 60 03       jz      B3_BE4D
B3:BE4A 02 BE DD    ljmp    B3_BEDD
B3:BE4D             ; ---------------------------------------------------------------------------
B3:BE4D
B3:BE4D             B3_BE4D:                      ; CODE XREF: vPlayerShowLogo+1Aj
B3:BE4D 90 FB B6    mov     DPTR, #XRAM_FBB6
B3:BE50 E0          movx    A, @DPTR
B3:BE51 54 0F       anl     A, #0xF
B3:BE53 C4          swap    A
B3:BE54 F8          mov     R0, A
B3:BE55 54 0F       anl     A, #0xF
B3:BE57 C8          xch     A, R0
B3:BE58 68          xrl     A, R0
B3:BE59 FF          mov     R7, A
B3:BE5A E4          clr     A
B3:BE5B C4          swap    A
B3:BE5C 54 F0       anl     A, #0xF0
B3:BE5E 48          orl     A, R0
B3:BE5F A3          inc     DPTR
B3:BE60 EF          mov     A, R7
B3:BE61 F0          movx    @DPTR, A
B3:BE62 FD          mov     R5, A
B3:BE63 7F 50       mov     R7, #0x50 ; 'P'
B3:BE65 7E 00       mov     R6, #0
B3:BE67 12 1B A8    lcall   B3_BS_104_B0_E9CC
B3:BE6A 90 FB B5    mov     DPTR, #XRAM_FBB5
B3:BE6D E0          movx    A, @DPTR
B3:BE6E C4          swap    A
B3:BE6F F8          mov     R0, A
B3:BE70 54 F0       anl     A, #0xF0
B3:BE72 C8          xch     A, R0
B3:BE73 68          xrl     A, R0
B3:BE74 FE          mov     R6, A
B3:BE75 A3          inc     DPTR
B3:BE76 E0          movx    A, @DPTR
B3:BE77 C4          swap    A
B3:BE78 54 0F       anl     A, #0xF
B3:BE7A 48          orl     A, R0
B3:BE7B FF          mov     R7, A
B3:BE7C 90 FB B5    mov     DPTR, #XRAM_FBB5
B3:BE7F EE          mov     A, R6
B3:BE80 F0          movx    @DPTR, A
B3:BE81 A3          inc     DPTR
B3:BE82 EF          mov     A, R7
B3:BE83 F0          movx    @DPTR, A
B3:BE84 54 0F       anl     A, #0xF
B3:BE86 C4          swap    A
B3:BE87 F8          mov     R0, A
B3:BE88 54 0F       anl     A, #0xF
B3:BE8A C8          xch     A, R0
B3:BE8B 68          xrl     A, R0
B3:BE8C FF          mov     R7, A
B3:BE8D E4          clr     A
B3:BE8E C4          swap    A
B3:BE8F 54 F0       anl     A, #0xF0
B3:BE91 48          orl     A, R0
B3:BE92 A3          inc     DPTR
B3:BE93 EF          mov     A, R7
B3:BE94 F0          movx    @DPTR, A
B3:BE95 FD          mov     R5, A
B3:BE96 7F 51       mov     R7, #0x51 ; 'Q'
B3:BE98 7E 00       mov     R6, #0
B3:BE9A 12 1B A8    lcall   B3_BS_104_B0_E9CC
B3:BE9D 90 FB B5    mov     DPTR, #XRAM_FBB5
B3:BEA0 E0          movx    A, @DPTR
B3:BEA1 C4          swap    A
B3:BEA2 F8          mov     R0, A
B3:BEA3 54 F0       anl     A, #0xF0
B3:BEA5 C8          xch     A, R0
B3:BEA6 68          xrl     A, R0
B3:BEA7 FE          mov     R6, A
B3:BEA8 A3          inc     DPTR
B3:BEA9 E0          movx    A, @DPTR
B3:BEAA C4          swap    A
B3:BEAB 54 0F       anl     A, #0xF
B3:BEAD 48          orl     A, R0
B3:BEAE FF          mov     R7, A
B3:BEAF 90 FB B5    mov     DPTR, #XRAM_FBB5
B3:BEB2 EE          mov     A, R6
B3:BEB3 F0          movx    @DPTR, A
B3:BEB4 A3          inc     DPTR
B3:BEB5 EF          mov     A, R7
B3:BEB6 F0          movx    @DPTR, A
B3:BEB7 54 0F       anl     A, #0xF
B3:BEB9 C4          swap    A
B3:BEBA F8          mov     R0, A
B3:BEBB 54 0F       anl     A, #0xF
B3:BEBD C8          xch     A, R0
B3:BEBE 68          xrl     A, R0
B3:BEBF FF          mov     R7, A
B3:BEC0 E4          clr     A
B3:BEC1 C4          swap    A
B3:BEC2 54 F0       anl     A, #0xF0
B3:BEC4 48          orl     A, R0
B3:BEC5 A3          inc     DPTR
B3:BEC6 EF          mov     A, R7
B3:BEC7 F0          movx    @DPTR, A
B3:BEC8 FD          mov     R5, A
B3:BEC9 7F 52       mov     R7, #0x52 ; 'R'
B3:BECB 7E 00       mov     R6, #0
B3:BECD 12 1B A8    lcall   B3_BS_104_B0_E9CC
B3:BED0 E4          clr     A
B3:BED1 90 FB F5    mov     DPTR, #XRAM_FBF5
B3:BED4 F0          movx    @DPTR, A
B3:BED5 FB          mov     R3, A
B3:BED6 7D 03       mov     R5, #3
B3:BED8 7F 30       mov     R7, #0x30 ; '0'
B3:BEDA 02 DE 81    ljmp    BankSw_102_B3_DE81
B3:BEDD             ; ---------------------------------------------------------------------------
B3:BEDD
B3:BEDD             B3_BEDD:                      ; CODE XREF: vPlayerShowLogo+1Cj
B3:BEDD 90 FB B4    mov     DPTR, #XRAM_FBB4
B3:BEE0 E0          movx    A, @DPTR
B3:BEE1 FD          mov     R5, A
B3:BEE2 90 FB B6    mov     DPTR, #XRAM_FBB6
B3:BEE5 E0          movx    A, @DPTR
B3:BEE6 FB          mov     R3, A
B3:BEE7 E4          clr     A
B3:BEE8 90 FB F5    mov     DPTR, #XRAM_FBF5
B3:BEEB F0          movx    @DPTR, A
B3:BEEC 7F 30       mov     R7, #0x30 ; '0'
B3:BEEE 12 DE 81    lcall   BankSw_102_B3_DE81
B3:BEF1
B3:BEF1             B3_BEF1:                      ; CODE XREF: vPlayerShowLogo+14j
B3:BEF1 22          ret
B3:BEF1             ; End of function vPlayerShowLogo
[/size]

Para encontrá-la, procure por:

90 ? ? EF F0 A3 EC F0 A3 ED F0 90 ? ? E0 FF 64 04 70 03 02 ? ? EF

Esta seqüência aparece uma vez em todos os firmwares que testei, no topo da rotina vPlayerShowLogo

Testado com:

  • Philips DVP3040K/55
  • Philips DVP5100K/78
  • Philips DVP5960/37
  • Philips DVP5965K/55
  • Philips DVP5980/12
  • Philips DVP5140/37
  • Proview DVP-858
  • Lenoxx DV-406

Não funcionou com:
  • Philips PET725


Para exibir o background à sua escolha entre os existentes no firmware, basta chamar a rotina assim:

B1:5667 7D 02       mov     R5, #2 //02 é o número do background (veja no mtkRemaker)
B1:5669 7C 00       mov     R4, #0
B1:566B 7F 01       mov     R7, #1
B1:566D 12 1D 04    lcall   vPlayerShowLogoB1_BS
 
« Última modificação: Agosto 01, 2007, 01:54:09 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 Jefferson

  • Zelador
  • Hero Member
  • *****
  • Mensagens: 1854
  • Aprovação: +0/-0
    • Ver Perfil
    • http://ryan.com.br
Re: Firmware: log de descobertas
« Responder #117 Online: Agosto 01, 2007, 01:23:05 pm »
Como definir uma imagem de background só para MP3/WMA

Em vários firmwares, isso é facílimo. Já existe uma chamada para vPlayerShowLogo no início de  MP3_TagDisplay. Você só precisa inserir no firmware um background extra e mudar o valor carregado em R5 para que aponte para ele.

Por exemplo, no DVP5960/37, MP3_TagDisplay começa assim:

B1:565C             MP3_TagDisplay:               ; CODE XREF: B1_6AC0:B1_6BF4j
B1:565C                                           ; B1_AB8D+B1p
B1:565C                                           ; DATA XREF: ...
B1:565C E4          clr     A                     ; Rotina de exibiþÒo das TAGS ID3
B1:565D 90 FB B3    mov     DPTR, #XRAM_FBB3
B1:5660 F0          movx    @DPTR, A
B1:5661 90 FB AC    mov     DPTR, #XRAM_FBAC
B1:5664 74 06       mov     A, #6                 
B1:5666 F0          movx    @DPTR, A
B1:5667 7D 02       mov     R5, #2
B1:5669 7C 00       mov     R4, #0
B1:566B 7F 01       mov     R7, #1
B1:566D 12 1D 04    lcall   vPlayerShowLogoB1_BS


Eu usei o mtkremaker para inserir um novo background como MPEG1 (esta posição existe, mas é vazia no firmware) e fiz a simples modificação:

B1:5667 7D 01       mov     R5, #1

E agora ao selecionar um MP3 qualquer o meu background específico é carregado.

Isso deve abrir muitas possibilidades estéticas para nós, criadores de firmware. No espaço "morto" que vai ficar quando redimensionarmos o browser para reposicionar as tags MP3, podemos fazer uma decoração ou colocar outras informações.


Agora resta saber como acrescentar mais backgrounds além do limite de 3 da maioria dos firmwares. Isso permitiria ter um background específico para imagens.
« Última modificação: Agosto 01, 2007, 01:30:34 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 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: Firmware: log de descobertas
« Responder #118 Online: Agosto 01, 2007, 01:32:01 pm »
Para inserir varios background usando o remaker, eu substituo o parte SKIN toda com outra que possui varias imagens MPEG.
The Cranberries - em Recife Outubro/2010
Estarei la colado! Ta perto.

Offline jmaraujo

  • Seeder
  • Colaboradores
  • Papagaio
  • *
  • Mensagens: 409
  • Aprovação: +41/-0
  • Saudações desde Rivera, Uruguay!!! ;)
    • Ver Perfil
    • Fórum DVP5100K
Re: Firmware: log de descobertas
« Responder #119 Online: Agosto 01, 2007, 01:34:32 pm »
A do DVP720, por exemplo, que tem 5 lugares...

FORUM.RYAN.COM.BR

Re: Firmware: log de descobertas
« Responder #119 Online: Agosto 01, 2007, 01:34:32 pm »