Bueno, pues no espero a mañana.
Fichero START.DAT (textos con las opciones de configuración, principalmente)

Para sacar cada archivo que contiene hay que mirar la cabecera del fichero, sabiendo que para cada archivo se necesitan 16 bytes (esto se averigua con la práctica):
- los 4 primeros bytes corresponden al offset donde está el archivo
- los siguientes 4 bytes son la longitud del archivo
- los otros 8 bytes no tengo ni idea
El primer offset que se indica es 00000060, así que tenemos que leer hasta ahí para tomar la información de los distintos ficheros (6 en este caso).
Con el offset y el tamaño se extrae el archivo y se guarda. El nombre es lo de menos, pero yo, en casos como éste, suelo utilizar un número que añado al nombre del fichero original (START.DAT.001, START.DAT.002, etc.). Así luego resulta más fácil volver a empaquetarlos.
Una vez extraídos los archivos vamos a por el sexto (START.DAT.006), que es el que contiene los textos (offset 0004C0FF, longitud 00001245 bytes).

Este fichero se compone de varios textos. Al principio del fichero tenemos los offsets a cada texto, después van los textos, que siempre terminan con el código 00, y al final otro 00 para terminar el archivo.
El primer offset es 0200, así que hasta ahí tenemos que leer para tomar cada texto. Hay varios textos repetidos, que se indican poniendo el mismo offset (los dos primeros offsets son 0200, que hacen referencia al mismo texto).
Aquí se puede hacer como antes, ir grabando cada texto en un archivo (eso ya es a elección de cada uno).
Una vez tenemos todos los textos ya sólo queda traducirlos, respetando cualquier código de control que aparezca en ellos, que son todos los caracteres "extraños" que aparecen. El 01 significa cambio de línea, el 0402 era el nombre del personaje (si no recuerdo mal), etc. Lo que significa cada código no importa mucho, excepto el 01 para cuando queremos dividir un texto en varias líneas.
Cuando terminemos de traducir ya sólo nos queda coger todo y volverlo a empaquetar. La tabla de offsets del archivo tendrá el mismo tamaño (los 0200 bytes), así que a partir de 0200 es donde tendremos que ir poniendo los textos traducidos, pero habrá que ir calculando el offset siguiente porque con la traducción la longitud del texto será diferente. Por ejemplo, el primer texto a traducir es el que lleva ese "YES", que habremos traducido por "SI", que es un carácter menos, así que el siguiente texto, en vez de ir en 020D tendrá que ir en 020C.
Una vez empaquetados todos los textos volvemos a unir los archivos para generar el nuevo START.DAT con la traducción. Es igual que antes, tan sólo tendremos que prestar atención al offset donde se graba y su tamaño.