NewsIl GruppoTraduzioniGuidaUtilitàLinks
Guida all'uso del Thingy

- Introduzione -

Questo documento è basato sul file di spiegazioni che accompagna lo zip del Thingy. Esso comunque non è una semplice traduzione, ma vuole essere un valido supporto per meglio utilizzare il programma. Tale documento è utile sia per l'uso della versione inglese del che per quella italiana (che è quella che preferiamo, vero?).
Notate bene che la comprensione di alcuni punti richiede una minima conoscenza di che cosa sia l'alfabeto esadecimale e di come sia strutturata una ROM. Questo comunque è il minimo richiesto per iniziare una qualsiasi traduzione.

- I file tabella (*.tbl) -

In una ROM, a meno che il testo non sia compresso in qualche modo particolare, il testo è in formato esadecimale (HEX). Ciò vuol dire che ad ogni lettera (o anche sillabe, il più delle volte quelle di maggiore ricorrenza) viene associato un valore esadecimale. Questo valore esadecimale altro non è che un numero di un particolare sistema di numerazione a base 16 (utilizza i numeri da 0 a 9 e le lettere da A a F), che si presenta nel seguente modo: 01, 02, 03, 04, 05, 06, 07, 08, 09, 0A, 0B, 0C, 0D, 0E, 0F, 10, ... e così continuando fino a FF (il che significa 255 differenti caratteri). Ognuno di questi HEX byte può riferirsi ad una lettera o ad un indirizzo nella ROM ed è per questo motivo che ad ognuno di essi deve essere assegnato il valore corrispondente. Ed è proprio questo che noi facciamo con il file "table": assegnamo il giusto valore all'HEX byte in modo che il Thingy lo possa modificare con quello di nostra scelta.

- Creare un file tabella -

[NOTA: Il procedimento che vado a spiegare prende volutamente in considerazione un caso molto facile di ricerca del testo e serve a farvi capire come potervi muovere. Per le problematiche relative a DTE e MTE potete far riferimento alla nostra guida.]

Innanzitutto consiglio di procurarsi l'utility chiamata SearchR che potete scaricare alla sezione Utilità. Essa permette di cercare stringhe di testo all'interno della ROM.
Come esempio utilizziamo la ROM di Final Fantasy III proviamo a cercare il nome della protagonista Terra. Nella stessa directory mettiamo la ROM e il SearchR. Lanciamo SearchR, apriamo la ROM, e scriviamo "terra" nel campo "search for:". Come risultato otteniamo:

Offset: 0047C0
Hex Bytes: 93 84 91 91 80 FF 8B 8E
Ascii text: [........]
Rel.Offset: a=80 A=?? 1=??
Rel.Text: [terra.lo]

In FFIII il nome di default di un personaggio è proposto tutto in lettere maiuscole. Così i numeri trovati in precedenza corrispondono tutti a lettere maiuscole: 93 = T, 84 = E, 91 = R, 80 = A.
In questo modo abbiamo trovato i valori corrispondenti alle lettere maiuscole della nostra tabella dei font. Per trovare anche i valori corrispondenti alle lettere minuscole ripetiamo il procedimento con una parola che sappiamo essere scritta tutta i minuscolo e voilà, il gioco è fatto.
Una volta trovato l'"alfabeto" non resta che creare materialmente la table. Hai due strade:

  1. Usi un editor di testi come il Notepad di Windows e ti crei manualmente la tua "table", che deve essere organizzata nel seguente modo:

    80=A
    81=B
    82=C
    83=D
    84=E
    85=F
    .......
    .......
    9A=a
    9B=b
    9C=c
    9D=d
    9E=e
    9F=f
    .......
    .......
    B4=0
    B5=1
    B6=2
    B7=3
    B8=4
    .......

    avendo cura, una volta finito, di attribuirgli l'estensione ".tbl".

  2. Utilizzi un comodo programma che fa tutto il lavoro per te (uno è disponibile alla nostra sezione utilità, il TaBuLar).

Il Thingy inoltre riconosce alcuni simboli speciali nelle proprie tabelle, che hanno uno specifico significato. I più importanti sono:

*XX Corrisponde al tasto "Invio" della tastiera. In pratica manda il testo su una nuova riga. Possono essere anche più di uno con significati diversi. In Chrono Trigger erano ben tre!

/XX Corrisponde alla fine di una stringa di testo.

N.B.: XX è il valore esadecimale che assume all'interno della ROM con cui state lavorando.

- Caricamento del programma -

Una volta creato il file TBL esso va messo nella directory dove risiede il Thingy, dopodichè caricatelo digitando al prompt ciò che segue:

thingy <nome della ROM> <nome del file tbl>.tbl <altro file>.tbl

Si, il Thingy può caricare due files TBL contemporaneamente. Questo è molto utile quando vi sono le DTE. Infatti io uso un file per le lettere singole ed uno con le singole più le DTE. Perché?
Spesso le DTE non possono venire usate in ogni parte della ROM (in Chrono Trigger non potevano usarsi nel menu) e in questo modo si richiamano ogni qualvolta servono. Esiste anche altro modo per disabilitare le DTE (lo vedremo più avanti) ma è un po' più complicato.

- I comandi del Thingy -

1) Sullo schermo principale

SPAZIO: serve per selezionare il testo da modificare. Posizione il cursore che vedi sul punto che vuoi modificare. La prima volta che lo premi non accade nulla. La seconda volta invece entri nell'editor. In questo modo puoi selezionare tutto quello che vuoi modificare.

TAB: serve per passare da un file TBL all'altro (se ne hai caricato due).

D: seleziona l'inizio e la fine di una stringa di testo che vuoi dumpare. Una volta fatta la scelta viene chiesto il nome del file di output dove viene scritto il testo scelto. Scrivere: <nome file>.txt
Il file è posto nella directory del Thingy.

I: serve per fare l'operazione opposta al dump, cioè ti permette di inserire un testo all'interno della ROM.
ATTENZIONE! Questa non è un'operazione che consiglio ai principianti. E' meglio fare un po' di esperienza di traduzioni ed imparare come funzionano le ROM prima di passare a questo, o rischiate di danneggiare la ROM stessa. Attenzione: non funziona molto bene!

J: salta ad un altro "indirizzo" della ROM. La prima volta che lo premi esce un menu con "Manual Address" (se selezioni questo vai ad un indirizzo di tua scelta) e "Add Address" (crea un bookmark che puoi richiamare in seguito). Una volta scritto l'indirizzo premi INVIO ed il Thingy ti ci porta. L'indirizzo può essere scritto nella forma decimale o in quella esadecimale (in questo caso dovete aggiunge il suffisso "h" alla fine dell' indirizzo).

S: abilita la funzione Cerca. Scrivi il testo che vuoi cercare e premi il tasto ESC per cominciarla.

R: riprende la Ricerca, cioé cerca ancora.

F10: Apre la schermata "Altre Funzioni" che permettono di:

  1. correggere checksum (GB/GBC);
  2. creare tabella;
  3. edita tabella attuale.

U: permette di annullare le modifiche effettuate.

Q: esce dal Thingy.

1) Nell'editor

Alt+H: serve per l'input manuale di un valore HEX. Può essere usato anche durante la ricerca del testo.

Alt+M: serve per abilitare/disabilitare le DTE. La prima volta che digitate la combinazione esce scritto in basso a destra "No MTE". Da questo momento in poi le DTE vengono disabilitate finché non ripeti un'altra volta la combinazione. Può essere usato anche durante la ricerca del testo.

ESC: salva ciò che hai scritto e ritorna sullo schermo principale.

Alt+D: da usare durante la ricerca del testo. Abilita/disabilita la ricerca normale o a 16 bits.

Alt+R: da usare durante la ricerca del testo. Abilita/disabilita la ricerca relativa o esatta.

- Bookmarks -

I bookmarks sono utili se vuoi salvare un indirizzo sulla ROM (dove comincia il testo, dov'è situato l'inventario, etc.) al quale devi tornare molte volte.
Per creare un bookmark:

  1. muovere il cursore all'indirizzo che vogliamo memorizzare;
  2. premere "j" e selezionare "Add address";
  3. scrivere il testo che identifica il bookmark (p.es.: Testo 1);

Un bookmark può essere fatto editando manualmente il file TBL aggiungendo una linea simile a questa:

(80600h)Testo 1

dove il numero è l'indirizzo e il testo è la descrizione.

Per ulteriori chiarimenti scrivete pure a mickey, specificando di aver letto sia questa guida sia la guida alle traduzioni, spiegando il punto preciso in cui si trova difficoltà. Le domande la cui risposta può essere trovata su queste guide non saranno prese in considerazione.

Grazie a Necrosaro per il Thingy

Ad majora!