The Legend Of Zelda

le ranmi be la zeldas


I have been working on translating The Legend of Zelda to Lojban. This page holds a copy of my notes while working on it.

Image Image Image Image Image Image

See clinoi be la'e lu le ranmi be la zeldas li'u for a translation of the instruction manual.

General notes on the encoding. VRAM loading is done by a few routines, the main one is described below.

The routine is given an address and does the following:

1. If the byte at the address has the high-bit set, we're done. Return.

2. Otherwise, read two bytes from that address, this is the address (big-endian) in VRAM that the data should be written to.

3. Read the next byte. If high bit (bit 7) is set, set the Inc32 bit of $2000. If bit 6 is set, perform RLE. (Explained below.) The remaining six bits are the length.

4. If performing RLE, read the next byte, write it length times, then go to 1.

5. Otherwise, read the next byte.

6. Write this byte.

7. Decrement length.

8. If length is not zero, go to 5.

9. Go to 1.

RLE: Stands for Run-Length Encoding. With RLE, you'll have pairs of bytes. The first gives you a run-length, the second is the data itself. When uncompressing, you simply repeat the data byte run-length times.

I do my romhacking with hexpose. It's pretty simple, but it does the job. I also used a disassembler at some point to figure out some of the above, but I ended up just gleaning it from various sources and how the data itself works.

Title screen starts at $1A879

Due to the nature of the loading routine, I can translate such that things take up less space, but I can't make them take more. That is, unless I can find where the reference addresses are stored. Hopefully, this won't cause too many issues.

Cave text $405C-$45B1:

Cave text is distinct from the usual routines, in that it has no way to set the VRAM address, rather there seems to be a separate sub-routine that pulls data from the table of cave text. It also assigns functions to the two high bits, which would be impossible out side of text.

Cave text starts at a certain point, and has three lines. Text starts on the first line. Line termination is achieved by setting high-bits on the last character in the line.:

  • Bit 7 (AND $80) moves to the second line.

  • Bit 6 (AND $40) moves to the third line.

  • Bits 6 and 7 (AND $C0), set together, terminate the text.

$405C 43 Bytes
-
  IT'S DANGEROUS TO GO
    ALONE! TAKE THIS.
-
   .o'i do po'o klama
    .i ko cpacu ti
-

$4087 42 Bytes
-
  MASTER USING IT AND
   YOU CAN HAVE THIS.
-
   do crebi'o semu'i
  le nu mi dunda ti do
-

$40B1 25 Bytes
-
 TAKE ANY ROAD YOU WANT.
-
 .e'a ko litru le seldji
-


$40C9 42 Bytes
-
 SECRET IS IN THE TREE
    AT THE DEAD-END.
-
  mipri ne'i le tricu
  poi zvati le fanmo
-

$40F3 34 Bytes
-
   LET'S PLAY MONEY
   MAKING GAME.
-
 .e'u mi'o kelci
 le nu jdini cpacu
-

$4115 41 Bytes
-
  PAY ME FOR THE DOOR
     REPAIR CHARGE.
-
    ko pleji fi mi
  le nu cikre le vorme
-

$413D 36 Bytes
-
    SHOW THIS TO THE
      OLD WOMAN.
-
  ko jarco tu'a ti
  le tolci'o ninmu
-

$4162 39 Bytes
-
    MEET THE OLD MAN
      AT THE GRAVE.
-
  ko penmi le tolci'o
   nanmu le mrostu
-

$4189 30 Bytes
-
  BUY MEDICINE BEFORE
  YOU GO.
-
 .o'i ko te vecnu
  lo ve mikce
-

$41A7 23 Bytes
-
  PAY ME AND I'LL TALK.

-
  mi tavla gi'o terle'i
-

$41BE 34 Bytes
-
    THIS AIN'T ENOUGH
        TO TALK.
-
     ti na banzu
    lenu mi tavla
-

$41E2 38 Bytes
-
       GO UP,UP,
   THE MOUNTAIN AHEAD.
-
     ko mo'iga'u
    litru lo cmana
-

$4208 54 Bytes
-
  GO NORTH,WEST,SOUTH,
  WEST TO THE FOREST
    OF MAZE.
-
ko mo'ibe'a mo'ivu'a
 mo'ine'u mo'ivu'a
 litru le ricfoi
-
$423C
-
    BOY, YOU'RE RICH!
-
     .ue do ricfu
-
$4151
-
 BUY SOMETHIN' WILL YA!
-
   .e'o vecnu fi ko
-
$4268
-
     BOY, THIS IS
   REAL EXPENSIVE!
-
  .ue ti mutce kargu
-
$428D
-
 TAKE ANY ONE YOU WANT.
-
    .e'a ko cuxna
-
$42A4
-
     IT'S A SECRET
     TO EVERYBODY.
-
       se mipri
      fi ro prenu
-
$42C8
-
   GRUMBLE, GRUMBLE...
-
   .oiro'oru'ebe'u
-
$42DD
-
  EASTMOST PENNINSULA
     IS THE SECRET.
-
  le traji bo stuna
   xabyplu cu mipri
-
$4305
-
 DODONGO DISLIKES SMOKE.
-
 la .dodan. ka'e spoja
-
$431D 64 Bytes
-
 DID YOU GET THE SWORD
 FROM THE OLD MAN ON
 TOP OF THE WATERFALL?
-
   xu do terdu'a lo
 cladakyxa'i le tolci'o
 nanmu ga'u lo jacfa'u
-
$435D 35 Bytes
-
     WALK INTO THE
       WATERFALL.
-
  ko cadzu mo'ine'i
     lo jacfa'u
-
$4380
-
  SECRET POWER IS SAID
   TO BE IN THE ARROW.
-
   lo ga'ardanti cu
    selmipri vlipa
-
$43AC
-
    DIGDOGGER HATES
 CERTAIN KIND OF SOUND.
-
  la .digdagr. xebni
    lo steci sance
-
$43D6 42 Bytes
-
    I BET YOU'D LIKE
   TO HAVE MORE BOMBS.
-
 ru'a do djica co ka'e
 ponse za'u lo jbama
-
$4400
-
    IF YOU GO IN THE
 DIRECTION OF THE ARROW.
-
   ko klama mo'ire'o
    lo ga'ardanti
-
$442C
-
    LEAVE YOUR LIFE
       OR MONEY.
-
     ko dunda lo
  se kanro ja jdini
-
$444F
-
 THERE ARE SECRETS WHERE
   FAIRIES DON'T LIVE.
-
 mipri vi le na se xabju
      be lo crida
-
$447D 34 Bytes
-
    AIM AT THE EYE
       OF GOHMA.
-
 ko celgunta le kanla
 be la .gomat.
-
$44A0
-
  SOUTH OF ARROW MARK
    HIDES A SECRET.
-
  ne'u le ga'ardanti
    barna cu mipri
-
$44C8
-
  THERE'S A SECRET IN
  THE TIP OF THE NOSE.
-
   ne'i le jipno be
   le nazbi cu mipri
-
$44F3
-
  SPECTACLE ROCK IS
  AN ENTRANCE TO DEATH.
-
    la .le'otcirok.
  ve nerkla lo nu morsi
-
$451E
-
10TH ENEMY HAS THE BOMB.
-
le 10moi cu jbama ponse
-
$4536 45 Bytes
-
 ONES WHO DOES NOT HAVE
 TRIFORCE CAN'T GO IN.
-
   da poi na ponse lo
 cibmakfa na ka'e nerkla
-
$4563
-
   PATRA HAS THE MAP.
-
la .patr. cartu ponse
-
$4578
-
  GO TO THE NEXT ROOM.
-
    ko ranji klama
-
$458E 36 Bytes
-
     EYES OF SKULL
     HAS A SECRET.
-
 lo kanla be le
 sedbo'u cu jai mipri
-


All of Treasures $91AB-$94BC:

These actually are in the ROM out of order from when they appear on screen.

These also seem to have their own sub-routine for display. This one starts with a byte indicating how far over to start the line. Lines are terminated with $FF. Some times you get two lines for descriptions, sometimes only one. The positioning of the lines seems to be decided somewhere that I haven't found.

Main menu is around 9D58

"ZELDA" appears at 9EFB for some reason

A969: 38 Bytes
-
THANKS LINK,YOU'RE
?
THE HERO OF HYRULE*
-
ki'e .link. do vudvri
<64>
  fi la .xairul.


AB17 has some more endgame stuff, which does not use the 8/7 bit method
-
FINALLY,PEACE RETURNS TO HYRULE.THIS ENDS THE STORY.
-
.uo di'a pacna vi la .xairul. .i ba'o ranmi
-
Credits at AC6F

AD45:
ANOTHER QUEST WILL START(AB)FROM HERE PRESS THE START BUTTON
YOU ARE GREAT
YOU HVE AN AMAZING WISDOM AND POWER
END OF "THE LEGEND OF ZELDA"


More main menu at 1A15C

1A2CB has death menu stuff

1A329 looks to have the pause menu stuff

Visible story screen runs from 1A454 to 1A827

THE LEGEND OF ZELDA

MANY  YEARS  AGO  PRINCE
DARKNESS   GANNON  STOLE
ONE OF THE TRIFORCE WITH
POWER     PRINCESS ZELDA
HAD  ONE OF THE TRIFORCE
WITH WISDOM  SHE DIVIDED
IT INTO  8 UNITS TO HIDE
IT FROM   GANNON  BEFORE
SHE WAS CAPTURED

GO FIND THE  8 UNITS
LINK TO SAVE HER
-----------|
  ranmi be la .zeldas.

le palci po'u la .ganyn.
puki zerle'a le cibmakfa
peloka tsali .i le nobli
po'u la  .zeldas.  ponse
le cibmakfa peloka prije
.i zy fendi  fi bi spisa
tezu'e le nu mipri fi gy
kei pu le nu zy se kavbu

   doi .link. ko cpacu
      le bi spisa
  tezu'e lenu nurgau zy


2109 " CMENE "

2112 " NI KANRO "

22A7 "CFARI TADJI"

22E7 "VIMCU TADJI"

REGISTER YOUR NAME
CUXNA LE DO CMENE
ELIMINATION MODE
  VIMCU TADJI
  -LIFE-
NI KANRO

USE B BUTTON
FOR THIS
KO PILNO BY

text


Created by rlpowell. Last Modification: Saturday 23 of December, 2006 19:50:12 GMT by bancus.