Welcome to z64.me. Here you will find a collection of Zelda 64 tools, guides, and patches. If you're a fan of Ocarina of Time or Majora's Mask, you've come to the right place.

For new visitors who found their way here on their quest for beta content, you may be looking for this.


z64compress release

posted Apr 29, 2021, 8:48 PM by z64me   [ updated Apr 29, 2021, 8:48 PM ]

My Zelda 64 rom compressor. Find it on GitHub.

new play-as pipeline released

posted Feb 12, 2021, 7:37 AM by z64me   [ updated Feb 12, 2021, 7:37 AM ]

It is pretty much final now.

The new Blender tutorial explains how to use everything.

A huge thank you to everyone who contributed. :)

Can't wait for the bug reports. ;(

gfxasm source code released

posted Dec 4, 2020, 10:31 AM by z64me   [ updated Dec 4, 2020, 10:32 AM ]

Something I've been meaning to open-source since I wrote it.

Find it on GitHub.

zzrtl revision 4

posted Aug 20, 2020, 12:57 PM by z64me   [ updated Aug 20, 2020, 1:14 PM ]

Remember this junk from the manual?

`repack` should always be false (0)
unless you modify MM's packing functionality;
this makes it so the re-encoded files fit at
the offsets of the original files within the
archives (this is to get around MM's hard-coded
references to the assets; if you happen to use
custom code for MM archive parsing, you can use
true (1)

It turns out that was dead wrong. The actual problem was, certain parts of a certain (few?) archive(s)'s file table(s) were being overwritten thanks to a hiccup in my alignment code. Thankfully, Aroenai was able to pinpoint one of these broken files and the bug was fixed in no time.

One less thing to haunt me; thanks again, Aroenai!

r4 credits
    - Aroenai - MM yaz archive bug report and testing

r4 changes
    - relocating yaz files within archives was not
      working properly due to alignment, but now it
      is; thanks for the bug report, Aroenai!

zztexview rev 1

posted Apr 30, 2020, 4:18 PM by z64me   [ updated Apr 30, 2020, 4:18 PM ]

Bug fix: could not edit value/text boxes after clicking drop-downs
Bug fix: "Scale" drop-down text now wraps properly when scrolling on it
Bug report credits: AriaHiro, Zeldaboy14

zztexview released

posted Apr 29, 2020, 4:33 PM by z64me   [ updated Apr 29, 2020, 4:34 PM ]

zzrtl revision 3

posted Apr 13, 2020, 3:14 PM by z64me   [ updated Apr 13, 2020, 3:14 PM ]

r3 credits
    - /Zel/ - MM script collaboration

r3 changes
    - final changes to make MM scripts possible
    - MM scripts are now available
    - updated OoT scripts
    - dump scripts now work on compressed roms
    - extension assertion: zzrtl now complains if
      provided with a file not of the extension .rtl
    - raw data assertion: zzrtl now complains if
      provided with a file that doesn't contain some
      form of "int main" (e.g. an html file saved
      with the .rtl extension)
    - added a function file_exists(fn) to check if a
      file exists (returns 1 if it does, 0 otherwise)
    - rom.inject_dma() function added for injecting
      a file over a known existing DMA entry
      (file-size must match file being overwritten)
      (rom.inject_raw_dma() also available)
    - rom.extract_dma() function added for extracting
      a file of a known DMA index
    - .next() and .remaining() are now able to be
      used with conf files of type list, for the
      purpose of stepping through list items
    - .name() and .value() functions for retrieving
      the name and value (as strings) of the
      selected conf list item have been added
    - an int_array() function to make up for zzrtl
      not supporting int array[32]; type declarations
    - a new_string() function for easy string building
    - rom version checking to reduce weird errors
      encountered from using a dump/build script with
      a rom not supported by it
    - loadfile() function added
    - tsv_col_row() function added

zzplayas revision 3

posted Mar 17, 2020, 10:18 AM by z64me   [ updated Mar 17, 2020, 10:19 AM ]

This revision eliminates a rare bug that was encountered when an old pointer and a new pointer share the same offset.

zzrtl project files are now supported as well. If you used an older dump script to generate your filesystem, you will have to edit your project.zzrpl file in Notepad++ so that the variables used by zzplayas are prefixed with ZZPLAYAS_, like so:

zzrtl                   v0.01
baserom                 "baserom.z64"
ZZPLAYAS_VROM_CODE      "'baserom.z64'+0x00B3C000"
ZZPLAYAS_VROM_PLAYER    "'baserom.z64'+0x00CA7F00"

The scripts on the repo have been updated to reflect this change.

Due to popular demand, the command line utility zzobjman.exe is included in the win32 folder of this release.

As always, you can find the update on the zzplayas download page.

Bug report and testing credits for this version: CrookedPoe and Skilar

zzrtl revision 2, and some more codecs

posted Feb 10, 2020, 12:43 PM by z64me   [ updated Feb 10, 2020, 12:44 PM ]

r2 changes
    - faster compression
    - compression ratio is now printed afterwards
    - removed zx7 codec (was slower than ucl and
      had a worse compression ratio than ucl)
    - added aplib codec (better ratio than ucl, and
      faster load times than ucl on Wii VC; the only
      downside is roms take a few minutes to compress)
    - lzo and aplib patches are now available

r2 credits
    - Mikau6 - hardware testing

zzrtl revision 1, codec patches

posted Feb 1, 2020, 5:29 PM by z64me   [ updated Feb 1, 2020, 5:29 PM ]

zzrtl has received the following updates. Also, codec patches are now available.

r1 changes
    - added compression codecs ucl, xz7, slowyaz
    - added support for deleted files in MM dmadata
      specification (aka pstart == pend == -1)
    - added rearchive(), file_dma(), and cloudpatch()
    - added --compress command line argument so zzrtl
      can be used as a standalone rom compressor
    - added --nocache command line argument for doing
      compression without generating a cache folder
    - added --cloudpatch command line argument for
      easy command line cloudpatching
    - added --help command line argument so a massive
      wall of documentation doesn't pop up and scare
      double-clickers away
    - stability improvements
    - when compressing a file makes it larger, its
      uncompressed counterpart is used instead
    - better compressed file packing

r1 notes
    - individual files compressed with slowyaz are
      byte-identical to those in retail roms; aside
      from weird corner cases, there is no reason
      you should use slowyaz; it is slower than yaz
      and produces files slightly larger than yaz...
    - it should now contain everything necessary
      to support Majora's Mask

r1 credits
    - Mikau6, CrookedPoe - hardware testing

1-10 of 30