[GBA] Dragon Ball Z : Buu's Fury

Si vous pensez que tel ou tel jeu mériterait une traduction française, faites-le-nous savoir ici.
Avatar de l’utilisateur
Ti Dragon
Est devenu grand
Messages : 12441
Inscription : 25 févr. 2002, 18:25
Localisation : Dans mon lit c'est mieux
Contact :

Re: [GBA] Dragon Ball Z : Buu's Fury - RH [En Cours]

Message non lu par Ti Dragon » 22 août 2009, 11:47

Ah... Au temps pour moi.

Ceci dit, c'est vrai qu'avec l'algorithme que tu proposes, un programmeur devrait pouvoir faire quelque chose.
"Heureusement qu'il n'avait que deux mots à nous dire... je plains son auditoire lorsqu'il doit faire un long discours"
(c) Le gardien du square
--
La scène de la traduction francophone : http://traf.romhack.org/

Avatar de l’utilisateur
Badmike95
Nouveau Floodeur
Messages : 17
Inscription : 11 juil. 2006, 15:13

Re: [GBA] Dragon Ball Z : Buu's Fury - RH

Message non lu par Badmike95 » 22 août 2009, 17:28

Hmm, Oui j'avais contacté Loki il y a quelques jours car je venais de remarquer l'algo (après un long moment de stand-by du projet) qu'il avait mis à disposition sur le sujet et bon vue qu'il a fait le plus important je vais essayer de me débrouiller pour le reste.
M'enfin, je n'avais pas vraiment demandé à ce Zeyukan de parler à ma place mais bon vue que le sujet est relancé, si ça intéresse quelqu'un qu'il me contact ^^ Et puis c'est tout, pour le moment je viens de découvrir l'algo donc je ne vais pas trop en faire toute une histoire moi qui voulait être discret ^^'
Petit deviendra Grand alors ne désespère jamais ;)

Avatar de l’utilisateur
darkvadd7
Amateur Suprême du Flood
Messages : 124
Inscription : 06 juil. 2007, 18:09
Contact :

Re: [GBA] Dragon Ball Z : Buu's Fury - RH

Message non lu par darkvadd7 » 01 avr. 2011, 16:30

Je viens de tester l'algo, mais je ne suis pas trop sur de moi :

Offset 0x7A04F0 :

01 00 00 00 C2 FF 00 00 91 64 00 20 47 C2 23 A0
\_-> Passage en binaire par tranche de 32 bits.

a -> 10000000000000000000000001100001
b -> 01111111100000000000000001001000
c -> 10110010000000000001000001000111
d -> 110000100010001110100000...

a -> Lire 1 bit -> 1
\_-> Lire 7 bits -> 0000000 -> 0x00

b -> Lire 1 bit -> 0
\_-> Lire 2 bits -> 11
\_-> Lire 11 bits -> 111111000 00
\_-> X = 111111000 = 0x1F8
Z = (00 + 1) x 2 + 1 = 3
\_-> Lire Z caractères à l'adresse : position - offset -> ??

c -> Lire 1 bit -> 1
\_-> Lire 7 bits -> 0110010 -> 0x32

En fait c'est surtout sur le point b, je ne sais pas s'il faut faire une conversion en hexa, en décimal ou ne rien convertir du tout. Après il faudra aussi que je trouve la table des caractères qui correspond aux octets trouvés.

Avatar de l’utilisateur
BahaBulle
Bub'n'Bob Pawa!
Messages : 6465
Inscription : 06 août 2002, 09:34
Localisation : Sur une bulle
Contact :

Re: [GBA] Dragon Ball Z : Buu's Fury - RH

Message non lu par BahaBulle » 03 mai 2011, 22:32

1. Pour ça, il faut que tu apprennes comment fonctionne une compression LZ

2. loki n'a pas donné toutes les infos. Le premier octet (ici 0x01) indique que ces données sont compressés. Les 7 octets suivants sont zappés. Ils sont peut-être utilisés plus tard mais je n'ai pas regardé.
Ce qui veut dire que les véritables données commencent au 91.

3. De ce que j'ai vu, l'algo de loki ne me semble pas complet.

Pour info, voilà la routine :

Code : Tout sélectionner

[0300:0040] e92d4ff0 stmfd sp!, {r4-r11,lr}                 
[0300:0044] e3a05008 mov r5, #0x8                           
[0300:0048] e3a0a000 mov r10, #0x0                          
[0300:004c] e3a0c001 mov r12, #0x1                          
[0300:0050] ea000003 b $03000064       
[0300:0054] e1a08003 mov r8, r3
[0300:0058] eb00008b bl $0300028c       
[0300:005c] e0877004 add r7, r7, r4                         
[0300:0060] e4c07001 strb r7, [r0], #0x1                    
[0300:0064] e25aa001 subs r10, r10, #0x1                    
[0300:0068] 44916004 ldrmi r6, [r1], #0x4                   
[0300:006c] 43a0a01f movmi r10, #0x1f                       
[0300:0070] e0966006 adds r6, r6, r6                        
[0300:0074] 2afffff6 bcs $03000054       
[0300:0078] e25aa001 subs r10, r10, #0x1                    
[0300:007c] 44916004 ldrmi r6, [r1], #0x4                   
[0300:0080] 43a0a01f movmi r10, #0x1f                       
[0300:0084] e0966006 adds r6, r6, r6                        
[0300:0088] 2a00003b bcs $0300017c                          
[0300:008c] e25aa001 subs r10, r10, #0x1                    
[0300:0090] 44916004 ldrmi r6, [r1], #0x4                   
[0300:0094] 43a0a01f movmi r10, #0x1f                       
[0300:0098] e0966006 adds r6, r6, r6                        
[0300:009c] 3a000023 bcc $03000130
[0300:00a0] e3a08004 mov r8, #0x4
[0300:00a4] eb000078 bl $0300028c       
[0300:00a8] e2577001 subs r7, r7, #0x1                      
[0300:00ac] 0affffeb beq $03000060
[0300:00b0] 5a00001c bpl $03000128      
[0300:00b4] e25aa001 subs r10, r10, #0x1                    
[0300:00b8] 44916004 ldrmi r6, [r1], #0x4                   
[0300:00bc] 43a0a01f movmi r10, #0x1f                       
[0300:00c0] e0966006 adds r6, r6, r6                        
[0300:00c4] 3a00000b bcc $030000f8                          
[0300:00c8] e3a09f40 mov r9, #0x100                         
[0300:00cc] e3a08008 mov r8, #0x8
[0300:00d0] eb00006d bl $0300028c
[0300:00d4] e4c07001 strb r7, [r0], #0x1
[0300:00d8] e2599001 subs r9, r9, #0x1
[0300:00dc] 1afffffa bne $030000cc
[0300:00e0] e25aa001 subs r10, r10, #0x1
[0300:00e4] 44916004 ldrmi r6, [r1], #0x4
[0300:00e8] 43a0a01f movmi r10, #0x1f
[0300:00ec] e0966006 adds r6, r6, r6
[0300:00f0] 2afffff4 bcs $030000c8
[0300:00f4] eaffffda b $03000064
[0300:00f8] e3a04000 mov r4, #0x0                           
[0300:00fc] e25aa001 subs r10, r10, #0x1                    
[0300:0100] 44916004 ldrmi r6, [r1], #0x4                   
[0300:0104] 43a0a01f movmi r10, #0x1f                       
[0300:0108] e0966006 adds r6, r6, r6                        
[0300:010c] e2a43007 adc r3, r4, #0x7                       
[0300:0110] e3530008 cmps r3, #0x8                          
[0300:0114] 0affffd2 beq $03000064                          
[0300:0118] e3a08008 mov r8, #0x8
[0300:011C] eb00005a bl $0300028c       
[0300:0120] e1a04007 mov r4, r7                             
[0300:0124] eaffffce b $03000064          
[0300:0128] e7507007 ldrb r7, [r0, -r7]                     
[0300:012c] eaffffcb b $03000060                
[0300:0130] e3a08007 mov r8, #0x7
[0300:0134] eb000054 bl $0300028c       
[0300:0138] e3570000 cmps r7, #0x0                          
[0300:013c] 0a000006 beq $0300015c                          
[0300:0140] e1a0c007 mov r12, r7
[0300:0144] e3a08002 mov r8, #0x2
[0300:0148] eb00004f bl $0300028c        
[0300:014C] e2879002 add r9, r7, #0x2
[0300:0150] e35c0001 cmps r12, #0x1                         
[0300:0154] 1a000042 bne $03000264
[0300:0158] ea000046 b $03000278
[0300:015c] e3a08002 mov r8, #0x2
[0300:0160] eb000049 bl $0300028c       
[0300:0164] e3570000 cmps r7, #0x0                          
[0300:0168] 0a000059 beq $030002d4
[0300:016C] e2878003 add r8, r7, #0x03
[0300:0170] eb000045 bl $0300028c       
[0300:0174] e1a05007 mov r5, r7                             
[0300:0178] eaffffb9 b $03000064                                                                      
[0300:017c] e3a09001 mov r9, #0x1                           
[0300:0180] e25aa001 subs r10, r10, #0x1                    
[0300:0184] 44916004 ldrmi r6, [r1], #0x4                   
[0300:0188] 43a0a01f movmi r10, #0x1f                       
[0300:018c] e0966006 adds r6, r6, r6                        
[0300:0190] e0a99009 adc r9, r9, r9                         
[0300:0194] e25aa001 subs r10, r10, #0x1                    
[0300:0198] 44916004 ldrmi r6, [r1], #0x4                   
[0300:019c] 43a0a01f movmi r10, #0x1f                       
[0300:01a0] e0966006 adds r6, r6, r6                        
[0300:01a4] 2afffff5 bcs $03000180                          
[0300:01a8] e3590002 cmps r9, #0x2                          
[0300:01ac] 1a00000d bne $030001e8                          -
[0300:01b0] e3a09001 mov r9, #0x1                           
[0300:01b4] e25aa001 subs r10, r10, #0x1                    
[0300:01b8] 44916004 ldrmi r6, [r1], #0x4                   
[0300:01bc] 43a0a01f movmi r10, #0x1f                       
[0300:01c0] e0966006 adds r6, r6, r6                        
[0300:01c4] e0a99009 adc r9, r9, r9                         
[0300:01c8] e25aa001 subs r10, r10, #0x1                    
[0300:01cc] 44916004 ldrmi r6, [r1], #0x4                   
[0300:01d0] 43a0a01f movmi r10, #0x1f                       
[0300:01d4] e0966006 adds r6, r6, r6                        
[0300:01d8] 2afffff5 bcs $030001b4                          
[0300:01dc] e35c0001 cmps r12, #0x1                         
[0300:01e0] 1a00001f bne $03000264                          
[0300:01e4] ea000023 b $03000278        
[0300:01e8] e2499003 sub r9, r9, #0x3                       
[0300:01ec] e1a08005 mov r8, r5
[0300:01f0] eb000025 bl $0300028c        
[0300:01f4] e087c519 add r12, r7, r9, lsl r5                
[0300:01f8] e3a09001 mov r9, #0x1                           
[0300:01fc] e25aa001 subs r10, r10, #0x1                    
[0300:0200] 44916004 ldrmi r6, [r1], #0x4                   
[0300:0204] 43a0a01f movmi r10, #0x1f                       
[0300:0208] e0966006 adds r6, r6, r6                        
[0300:020c] e0a99009 adc r9, r9, r9                         
[0300:0210] e25aa001 subs r10, r10, #0x1                    
[0300:0214] 44916004 ldrmi r6, [r1], #0x4                   
[0300:0218] 43a0a01f movmi r10, #0x1f                       
[0300:021c] e0966006 adds r6, r6, r6                        
[0300:0220] 2afffff5 bcs $030001fc                          
[0300:0224] e35c0b40 cmps r12, #0x10000
[0300:0228] 22899003 addcs r9, r9, #0x3                     
[0300:022c] 2a00000c bcs $03000264                          
[0300:0230] e59f80f0 ldr r8, [$03000328] (=$000037ff)       
[0300:0234] e15c0008 cmps r12, r8                           
[0300:0238] 22899002 addcs r9, r9, #0x2                     
[0300:023c] 2a000008 bcs $03000264                          
[0300:0240] e59f80e4 ldr r8, [$0300032c] (=$0000027f)       
[0300:0244] e15c0008 cmps r12, r8                           
[0300:0248] 22899001 addcs r9, r9, #0x1                     
[0300:024c] 2a000004 bcs $03000264                          
[0300:0250] e35c007f cmps r12, #0x7f                        
[0300:0254] 8a000002 bhi $03000264                          
[0300:0258] e2899004 add r9, r9, #0x4                       
[0300:025c] e35c0001 cmps r12, #0x1                         
[0300:0260] 0a000004 beq $03000278
[0300:0264] e750800c ldrb r8, [r0, -r12]                    
[0300:0268] e4c08001 strb r8, [r0], #0x1                    
[0300:026c] e2599001 subs r9, r9, #0x1                      
[0300:0270] 1afffffb bne $03000264                          
[0300:0274] eaffff7a b $03000064
[0300:0278] e750800c ldrb r8, [r0, -r12]                    
[0300:027c] e4c08001 strb r8, [r0], #0x1                    
[0300:0280] e2599001 subs r9, r9, #0x1                      
[0300:0284] 1afffffc bne $0300027c                          
[0300:0288] eaffff75 b $03000064                                                                                        
[0300:028c] e35a0000 cmps r10, #0x0                         
[0300:0290] 04916004 ldreq r6, [r1], #0x4                   
[0300:0294] 03a0a020 moveq r10, #0x20                       
[0300:0298] e1a0b008 mov r11, r8                            
[0300:029c] e15b000a cmps r11, r10                          
[0300:02a0] 81a0b00a movhi r11, r10                         
[0300:02a4] e26b7020 rsb r7, r11, #0x20                     
[0300:02a8] e1a07736 mov r7, r6, lsr r7                     
[0300:02ac] e1a06b16 mov r6, r6, lsl r11                    
[0300:02b0] e04aa00b sub r10, r10, r11                      
[0300:02b4] e058800b subs r8, r8, r11                       
[0300:02b8] 012fff1e bxeq lr                  
[0300:02bc] e4916004 ldr r6, [r1], #0x4                     
[0300:02c0] e268a020 rsb r10, r8, #0x20                     
[0300:02c4] e1a0ba36 mov r11, r6, lsr r10                   
[0300:02c8] e08b7817 add r7, r11, r7, lsl r8                
[0300:02cc] e1a06816 mov r6, r6, lsl r8                     
[0300:02d0] e12fff1e bx lr
[0300:02d4] e8bd4ff0 ldmfd sp!, {r4-r11,lr}                 
[0300:02d8] e12fff1e bx lr                                  

Avatar de l’utilisateur
darkvadd7
Amateur Suprême du Flood
Messages : 124
Inscription : 06 juil. 2007, 18:09
Contact :

Re: [GBA] Dragon Ball Z : Buu's Fury - RH

Message non lu par darkvadd7 » 06 nov. 2012, 12:42

Gros déterrage de sujet...

Une subite envie de me remettre au romhacking (jusqu'à ce que je n'ai encore plus de temps...), et me voila reparti sur Buu's Fury.

J'ai pu retrouver la routine indiquée grâce au débogueur de VBA, la ligne 030026C est atteinte juste avant l'affichage d'une fenêtre de texte. Petite question, peut-être idiote, comment savoir qu'il s'agit bien de la routine de décompression (grâce au stmfd ?) et surtout comment savoir quels octets sont passés à cette routine de décompression ?

J'ai trouvé un site sympa sur l'assembleur des processeurs ARM, de ce que j'ai vu cela me permettrai de pouvoir coder quelque chose quand j'aurai toutes les infos.

Avatar de l’utilisateur
soloetflo
Nouveau Floodeur
Messages : 22
Inscription : 17 janv. 2007, 23:01
Localisation : Kyaro

Re: [GBA] Dragon Ball Z : Buu's Fury - RH

Message non lu par soloetflo » 27 mai 2015, 19:52

Bonjour,
Désolé pour le déterrage de sujet.
Je m'amuse et passe un peu de temps à coder en vba en ce moment. Pour m'entrainer j'essaie de coder cet algo mais il me manque quelques infos.
Je rajoute mes questions sur l'algo de Loki.

Debut boucle lecture par pas de 32 bits

Lire 1 bit

Si bit = 1
Lire 7 bits : XXXXXXX = caractère ASCII Que fait-on ensuite de ce caractère ?

Sinon bit = 0
Lire 2 bits

Si bits = 00
Lire 9 bits : XXXXXXX YY : X = offset et Y = longueur - 2 Longueur en Bits ? En caractères ? Quand vous dites caractères, ça veut dire 16 bits ?
Lire Y + 2 caractères à l'adresse position - X
Sauvegarder X
Fin Si

Si bits = 01
Lire 4 bits : XXXX = offset + 1
Lire le caractère situé à l'adresse : position - offset + 1 Même question pour ce caractère
Fin Si

Si bits = 10
Lire 3 bits : Y = longueur - 1
Lire Y + 1 caractères à l'adresse : position - sauvegarde de X Sauvegarde de X précédemment obtenu dans une autre plage de 32 bits qui est passé dans le Si bits = 00 ? Et que faire des caractères récupérés ?
Fin Si

Si bits = 11
Lire 11 bits : XXXXXXXXX YY : X = offset et Y = longueur --> Z = (Y + 1) x 2 + 1
Lire Z caractères à l'adresse : position - offset Que faire des caractères ?
Fin Si
Fin Sinon
Fin Boucle

Si une âme bienveillante passe par là et connais les réponses, merci d'avance :)

Avatar de l’utilisateur
soloetflo
Nouveau Floodeur
Messages : 22
Inscription : 17 janv. 2007, 23:01
Localisation : Kyaro

Re: [GBA] Dragon Ball Z : Buu's Fury

Message non lu par soloetflo » 01 juin 2015, 20:12

Voici un aperçu de ce que j'arrive à récupérer pour l'instant.
Des données en binaire. :)
Image

Avatar de l’utilisateur
BahaBulle
Bub'n'Bob Pawa!
Messages : 6465
Inscription : 06 août 2002, 09:34
Localisation : Sur une bulle
Contact :

Re: [GBA] Dragon Ball Z : Buu's Fury

Message non lu par BahaBulle » 01 juin 2015, 22:14

1. Ben c'est un caractère ASCII donc faut l'écrire dans le fichier texte de sortie.

2. Est-ce que tu t'es documenté sur les compressions LZ ? Est-ce que tu as au moins compris le principe de cette compression ?
La longueur est un nombre d'octets. Et ici, un caractère est codé sur 1 octet (8 bits). Donc quand c'est dit 2 caractères, c'est 2 octets (16 bits).

3. Ben tu écris le caractère dans le fichier texte de sortie.

4. Ben j'imagine que ce n'est pas forcément dans un autre header de 32 bits mais c'est l'idée.
Et tu écris les caractères dans le fichier de sortie.

5. Tu écris les caractères dans le fichier de sortie.

Avatar de l’utilisateur
soloetflo
Nouveau Floodeur
Messages : 22
Inscription : 17 janv. 2007, 23:01
Localisation : Kyaro

Re: [GBA] Dragon Ball Z : Buu's Fury

Message non lu par soloetflo » 02 juin 2015, 21:58

Merci BahaBulle.
1) un caractère tout seul ? Je vois pas trop quoi en faire ensuite.
2) Non c'est compliqué comme compression

Je pense qu'il y a des choses que j'ai pas compris. Le texte que ça me récupère ne ressemble à rien du tout.
fichier texte

Image

Avatar de l’utilisateur
BahaBulle
Bub'n'Bob Pawa!
Messages : 6465
Inscription : 06 août 2002, 09:34
Localisation : Sur une bulle
Contact :

Re: [GBA] Dragon Ball Z : Buu's Fury

Message non lu par BahaBulle » 02 juin 2015, 22:34

1. Est-ce que tu as compris qu'il s'agit de texte compressé ? Donc un caractère plus un caractère plus un caractère, ça fait des mots puis des phrases.

2. Pourtant c'est une des plus simple à comprendre.

Tu commences ta décompression à la mauvaise adresse. Je t'invite à relire un de mes messages juste au-dessus pour trouver ton erreur ;)

DCX
Messages : 1
Inscription : 21 juil. 2015, 00:00

Re: [GBA] Dragon Ball Z : Buu's Fury

Message non lu par DCX » 21 juil. 2015, 00:20

Si quelqu'un a réussit à décompresser les dialogues de la ROM, je suis partant pour traduire l'intégralité des textes US en français.
N'hésitez pas à me contacter! Merci !

Tailo
Messages : 1
Inscription : 15 juil. 2018, 00:44

Re: [GBA] Dragon Ball Z : Buu's Fury

Message non lu par Tailo » 15 juil. 2018, 01:00

Salut tout le monde, je suis nouveau ici et je suis arrivé ici pour ce sujet.

Cela fait un moment que le sujet a été discuté, donc je ne sais pas si quelqu'un sera toujours intéressé par le sujet, mais je vous le ferai savoir au cas où.

Je traduis 100% ROM en espagnol, qui est ma langue maternelle, en plus de modifier les graphiques et les sprites.

Le texte le laissera en vue comme le sont les descriptions des personnages et des objets pour que celui qui le souhaite puisse le modifier ou le traduire dans une autre langue, en français dans votre cas.

Tengro traduit environ 40% du jeu, je vais un peu lent car ce n'est pas facile. Si quelqu'un est intéressé, vous pouvez rechercher mon nom (Tailo) sur Internet ainsi que le nom du jeu et le travail que je fais apparaîtra. Cependant, si vous êtes toujours intéressé par la traduction et que vous voulez savoir comment le progrès progresse, je peux également le faire dans ce forum.

Salutations.

Répondre