The Zelda Links Awakening source code was released in the original Gigaleak inside dmg.7z, itself stored inside Other.7z.
This part of the leak contains much more than a single source snapshot. The archive preserves the original SRD Japanese source tree, several Japanese and English revision folders, later US v2 and Canadian French revision folders, separate German and French localisation trees, and a companion character/tile asset folder under ใใฎไป.
Contains two subdirectories.
The DMG folder is the main location for all the assembly language source code that makes up the original Game Boy version of The Legend of Zelda: Linkโs Awakening.
The Source directory preserves several parallel development branches rather than just one final build. Each language branch is split into three disk-style folders matching the original floppy backups: 01 for core game logic, 02 for map, message, title, and sound data, and 03 for enemy logic. Most branches also include a matching Character folder containing .CHR graphics data and an RZ.ICE compressed asset.
In practice this means the leak documents how Linkโs Awakening moved from the original Japanese codebase into the early US build chain and then into the German, French, and Canadian French localisations.
The Source directory preserves several parallel development branches rather than just one final build. Each language branch is split into three disk-style folders matching the original floppy backups: 01 for core game logic, 02 for map, message, title, and sound data, and 03 for enemy logic. Most branches also include a matching Character folder containing .CHR graphics data and an RZ.ICE compressed asset.
In practice this means the leak documents how Linkโs Awakening moved from the original Japanese codebase into the early US build chain and then into the German, French, and Canadian French localisations.
This folder contains the source code for the Japanese version of Links Awakening by Systems Research and Development (SRD) where helped Nintendo work on various titles.
We are starting with this folder as it seems to be the original and the other folders are just localised changes to the files in this folder, so this is the most important folder in the whole leak.
When they were preserving the source code to Zelda Links Awakening they used 3 Floppy Disks for the source code and another for the Game Boy SDK and finally one for the documentation and other documents that they decided to call face.
This branch preserves both Japanese and US revision histories. The directory names show two Japanese v0 revisions, three Japanese v1 revisions, three US v0 revisions, and separate character data folders for the Japanese v1 and US v0 builds.
It is especially useful because it shows the project in transition from the Japanese source base into the earliest English localisation work, including .BAK backups left beside files such as ZEND.DMG and ZPL.DMG.
The DMG_Zelda_DE_FR tree contains three parallel localisation branches, each split into the same three floppy-style disks as the main source: German, French, and Canadian French. Each language also ships with its own Character folder containing the tile/font graphics used by that build.
The second disk for these branches swaps in language-specific music/message data files such as BGM_1G.HEX for German and BGM_1F.HEX for French and Canadian French.
DMG_Zelda_DE_FR_v1 is a slimmer follow-up tree that keeps only the German and French branches. Unlike the earlier DMG_Zelda_DE_FR folder, Canadian French is no longer present here.
This folder captures a later English branch labelled US_v2 alongside a CanadianFrench_v1 branch. As with the other localisation trees, each version is stored as three floppy-style source folders plus a matching Character asset folder.
The first disk contains the files described in the table below:
| File Name | Extension | Description |
|---|---|---|
| ZE8 | .DMG | Game Boy Z80 Assembly file for Enemy Data (it is only here because it couldnโt fit on Disk 3) |
| ZEND | .DMG | Game Boy Z80 Assembly file for the Ending Sequence, e.g Credits |
| ZES | .DMG | Game Boy Z80 Assembly file for the Enemy main logic |
| ZEX | .DMG | Game Boy Z80 Assembly file for extra subroutines |
| ZMA | .DMG | Game Boy Z80 Assembly file for Main game loop |
| ZPL | .DMG | Game Boy Z80 Assembly file for player control |
| ZRAM | .DMG | Game Boy Z80 Assembly file for RAM handling |
| ZROM | .DMG | Game Boy Z80 Assembly file for ROM handling |
The second disk contains the files described in the table below:
| File Name | Extension | Description |
|---|---|---|
| BGM_1 | .HEX | Background Music Data 1 |
| BGM_2 | .HEX | Background Music Data 2 |
| GBMSDT | .DMG | Game Boy Z80 Assembly file for Message Data |
| SE | .HEX | Sound Effects Data |
| ZBD | .DMG | Game Boy Z80 Assembly file for Background Character Bank data |
| ZBN | .DMG | Game Boy Z80 Assembly file for Background Character Number data |
| ZBS | .DMG | Game Boy Z80 Assembly file for Resident Subroutine 2 |
| ZCO | .DMG | Game Boy Z80 Assembly file for Resident Subroutine 1 |
| ZDB | .DMG | Game Boy Z80 Assembly file for Dungeon Background Data |
| ZED | .DMG | Game Boy Z80 Assembly file for Enemy Set Data |
| ZGB | .DMG | Game Boy Z80 Assembly file for Ground Background Data Address |
| ZGD | .DMG | Game Boy Z80 Assembly file for Ground Background Data |
| ZMS | .DMG | Game Boy Z80 Assembly file for Message Control Data |
| ZS1 | .DMG | Game Boy Z80 Assembly file for Title Sequence 2 |
| ZSD | .DMG | Game Boy Z80 Assembly file for Sound control |
| ZTI | .DMG | Game Boy Z80 Assembly file for Title Sequence 1 |
| ZVD | .DMG | Game Boy Z80 Assembly file for Demo Background VRAM Data |
The third disk contains the files for enemy logic described in the table below:
| File Name | Extension | Description |
|---|---|---|
| ZE2 | .DMG | Game Boy Z80 Assembly file for Enemy Data 2 |
| ZE3 | .DMG | Game Boy Z80 Assembly file for Enemy Data 3 |
| ZE4 | .DMG | Game Boy Z80 Assembly file for Enemy Data 4 |
| ZE5 | .DMG | Game Boy Z80 Assembly file for Enemy Data 5 |
| ZE6 | .DMG | Game Boy Z80 Assembly file for Enemy Data 6 |
| ZE7 | .DMG | Game Boy Z80 Assembly file for Enemy Data 7 |
| ZEN | .DMG | Game Boy Z80 Assembly file for Enemy Data 1 |
The face folder is a mixed backup disk containing developer notes, text resources, helper batch files, and a number of unidentified binary data files. Unlike the 1, 2, and 3 disks, it is not a clean source-only backup.
Several files are clearly readable text documents, but the numbered 21.DAT to 48.DAT files appear to be binary data blocks rather than plain text documentation.
The files in this folder are described in the table below:
| File Name | Extension | Description |
|---|---|---|
| 21 | .DAT | ย |
| 22 | .DAT | ย |
| 23 | .DAT | ย |
| 24 | .DAT | ย |
| 25 | .DAT | ย |
| 26 | .DAT | ย |
| 27 | .DAT | ย |
| 28 | .DAT | ย |
| 31 | .DAT | ย |
| 32 | .DAT | ย |
| 33 | .DAT | ย |
| 34 | .DAT | ย |
| 35 | .DAT | ย |
| 36 | .DAT | ย |
| 37 | .DAT | ย |
| 38 | .DAT | ย |
| 41 | .DAT | ย |
| 42 | .DAT | ย |
| 43 | .DAT | ย |
| 44 | .DAT | ย |
| 45 | .DAT | ย |
| 46 | .DAT | ย |
| 47 | .DAT | ย |
| 48 | .DAT | ย |
| BOM2 | .DAT | The game credits in French |
| BOM3 | .DAT | Dungeon room list e.g Tail Cave |
| BOM4 | .DAT | A lisgt of PC-98 games that it looks like they were going to share with each other (piracy?!) |
| BOMB | .DAT | list of instructions for finding seashells in the game |
| D1A0 | .DAT | List of all the Cave rooms e.g Fairy Fountain Cave, House of the Quadruplets |
| MRT | .DAT | A note titled โThe Old Man with a Beardโ about being an Older programmer by Kazuaki Morita |
| MRT2 | .DAT | Schedule for a 1993 Fishing Trip to Nanakawa Dam in Wakayama Prefecture |
| MRTX | .DAT | French translations of some of the in-game dialog |
| SA | .DAT | The game credits in English |
| SA2 | .DAT | The game credits in German |
| SA3 | .DAT | Code for special effects such as smoke and water splashes |
| SBA | .DAT | List of convenient subroutines for enemy use |
| SPECIAL | .TXT | Defines the Alphabet including German special characters |
| TEST | N/A | Seems to be the same as ZMA.DMG but with a bunch of modifications |
| ZCPG | .BAT | Not a real batch file its actually just text explaining the files for the German Translation |
| ZCPS | .BAT | Not a real batch file its actually just text explaining the files for the French Translation |
| ZE2 | .DMG | Game Boy Z80 Assembly file for Enemy 2 |
| ZED | .DMG | Game Boy Z80 Assembly file for Enemy set data |
The file MRT.DAT is a note written by Kazuaki Morita about being an older programmer in the Industry:
When someone starts fishing, the first catch is said to be a memorable one regardless of its size. Similarly, there are irreplaceable works for game developers. For me, itโs Super Mario Bros. The program area was a huge 32 kilobytes at the time, and I think I crammed a lot into it. If there were a few bytes of memory left, there would be an uproar.
Then there were Marioโs infinite replication and the secret worldโฆ I think thatโs when the term โcheat codeโ started to be used instead of โbug technique.โ It has been about eight years since then, and I have been involved in various works, but as I age, I feel a decrease in my mental agility and memory.
However, I think I have become more skilled at finding shortcuts. It is often said that a programmerโs career lasts until they are 30 years old, but this is a social convention that says โyou donโt have to program anymoreโ rather than โyou canโt program anymore.โ If I feel like I have reached my limit, I will quit this job, because there is no such thing as a โprogrammer who doesnโt program.โ
Programmer: Kazuaki Morita
The system folder contains the Nintendo Game Boy (DMG) software development toolchain used alongside the source backup. This includes assemblers, conversion utilities, shell helpers, and lookup tables required to build or process Game Boy assets on the original development setup.
The files in this folder are described in the table below:
| File Name | Extension | Description |
|---|---|---|
| A | .EXE | DMG Relocatable Macro Assembler Version 1.00 |
| ASMB | .EXE | 6502 Assembler Version 1.10 (Famicom tool created in 1987) |
| ASMD | .EXE | DMG Macro Assembler Version 1.01 |
| ASMDMG | .EXE | DMG Macro Assembler Version 1.01 (Identical to ASMD.EXE) |
| CGE2DMG | .EXE | Converts either CGE or DCG Character graphics to source code (.DMG) |
| CGEDCG | .BAT | Batch file for running FCV with the DCG2BYT script |
| DCG2BYT | .CVT | FCV Script to convert DCG Character Graphics files to assembly code (.DMG) |
| DCGDMG | .BAT | Batch file for character file conversion of a .DCG file to a .DMG source file |
| DMGFUNC | .TB0 | Custom binary format possibly used by ISD debugger tool contains the string โSENGOKUโ at the start |
| FCV | .EXE | File Convert Program Version 1.03 (Reads in .CVT files) |
| FDT | .EXE | FMS Debugger Version 2.02 (Famicom Tool?) |
| GENBYTE | .CVT | FCV Script to convert a .COM file to a NES/SNES .X65 source file |
| HDT | .EXE | MMC/HVC Debugger Version 03.05 (Famicom/NES Dubugger) |
| IS65 | .EXE | 6502,65816 Relocatable Macro Assembler version 1.00 (Why is there a SNES assembler in here?) |
| ISD | .EXE | I.S. Debugger Version 1.00c |
| ISDMG | .EXE | DMG Relocatable Macro Assembler Version 1.00 |
| ISLINK | .EXE | ISASM Linker Version 1.00 |
| L | .EXE | ISASM Linker Version 1.00 (Presumably just copied to have a shorter name) |
| PW | .EXE | P-ROM Support Program Version 1.26 |
| PW2 | .EXE, .TB0 | P-ROM Support Program Version 2.02d6 |
| SCR2DMG | .COM | MS-DOS Command File Executable for converting .scr files to .DMG files for assembling |
| SHL | .COM, .KEY | MS-DOS Command File Executable but not sure what it is for |
| SHVC | .EXE | SHVC Debugger Version 1.00a |
| VRAMTR | .CVT | VRAM Transfer script that converts a .SCR screen file to either a NES or SNES .X65 file |
| VUP | .EXE | Version UP Program Version 2.09 |
Referenced File Formats This SDK seems to use a number of different file formats, but it is not clear what exactly is the purpose of each:
Famicom SDK Files
One interesting file is that HDT.EXE is included here which is the NES/Famicom Debugger, as far as I know this is the first time a file from the Famicom SDK has ever been leaked. As no other official NES/Famicom SDK had been leaked this is quite remarkable. It was written by Intelligent Systems between 1986-1989 and seems to read in three file formats: CHR (Character/Tile Data), SCR (Screen data? or Source Data?) and CGD (No Idea, maybe Character Graphic Designer?).
SNES Assembler
Another interesting file is that IS65.EXE is included here which is the Official Super Nintendo Entertainment System assembler created by Intelligent Systems in 1990. It seems to have been written by the developer Toshio Sengoku.
The file VRAMTR.CVT which is a script in a custom programming language that is parsed by the FCV program. The comments at the beginning of the file indicate that it takes an input file with a โ.SCRโ extension and outputs a file with a โ.X65โ extension.
File Convert Program
The File Convert Program (FCV) tool was created in 1987 by Intelligent Systems so it is likely it was also part of the Famicom Software Development Kit.
The commands in the script appear to be performing various operations related to transferring data to VRAM. For example, the VRAD=$2000 command sets the screen address, and the DTPT=0 command initializes the data pointer. The script also includes commands for writing screen data and attribute data to VRAM.
Character conversion
The Bash script DCGDMG.BAT is used to convert a file with the extension โ.DCGโ (presumably containing character graphics) from the FM-R50 system (a Japanese computer system from the 80s) to a source code file with the extension โ.DMGโ.
The script assumes that the FM-R50 file is inserted into Drive A of the computer. The script then uses the FCV tool to do the conversion.
This potentially means that developers for Nintendo were using the Fujitsu FM-R50 or a compatible system to develop Game Boy games and possibly NES and SNES games too.
This folder contains the following sub-directories:
Since this is technically the second version of Disk 2 (with the SPD folder being the first version) we will only cover the changes made from SPD to save re-covering the same files.
The changes made to this version are mainly small code comment changes and are described in the table below:
| File Name | Extension | Changes made compared to previous version |
|---|---|---|
| ZBD | .DMG | Differences to BG Bank Data Comments for: Clerk 1/2, Boomerang, Rotating Turret, Test Marine, Fishing Clerk, Fishes |
| ZBN | .DMG | Differences to two comments from โไฝฟใฃใฆใญใผโ to โไฝฟใฃใฆใญใผใโ which both mean โDonโt use itโ, the final particle โใโ adds a more forceful tone |
| ZDB | .DMG | Change to one comment that reads โThis is the entrance above! You baldy!โ The Baldy part was added as an insult in this version |
| ZED | .DMG | HART1 was commented out and a few code comments were changed such as saying โMr. Noto can warp to the opposite platform at the Toba Kaido Station.โ |
| ZGD | .DMG | Added a comment to BOMGZ to say โFold in half to make an even number!โ |
| ZTI | .DMG | Just added a comment that says โUse Shibahara!โ |
| ZVD | .DMG | Just added a comment that says โNausicaa Leafโ |
The ใใฎไป branch translates to โmiscellaneousโ and contains a standalone Ver1JP/Character folder. Its contents match the sort of character/font graphics bundles used by the source branches, with C1.CHR through C8.CHR, RZ.ICE, and a GAL.BAT helper script.
This makes it a useful companion asset dump for the Japanese v1 build rather than executable gameplay source code.
This folder just contains the following sub-directories:
This folder in turn just contains the following sub-directories:
This folder just contains the following sub-directories:
Which in turn just contains graphics data created using the IS-Character development kit which was the official development kit used for graphics development on the original Game Boy.
All the .chr files can be opened in a tool like Tile Molester with the Codec set to 2bpp planar (2-bit per pixel is Game Boy Tile format.)
The files in the Character folder are described in the table below:
| File Name | Extension | Description |
|---|---|---|
| C1 | .CHR | Contains the tiles for the instruments and the numbers 0-9 and others like rupees |
| C2 | .CHR | Contains the tiles used for the dungeons |
| C3 | .CHR | Contains tiles but unclear exactly what they are |
| C4 | .CHR | Contains tiles used for the Title Screen (Japanese) |
| C5 | .CHR | Contains tiles used in the opening sequence |
| C6 | .CHR | Contains Non Player Character sprites |
| C7 | .CHR | Unsure what these tiles are |
| C8 | .CHR | Contains the tiles spelling out โPLAYERโ and what could be water tiles |
| GAL | .BAT | Windows Batch file for running ? |
| RZ | .ICE | File is related to the In-Circuit-Emulator used for debugging Game Boy Games seems to contain a list of file names such as BGM_1.HEX |
The GAL.BAT script which is used for assembling the source code contains the comment โๅ จใขใปใณใใซใใใคใ๏ผๆฃฎ็ฐในใใทใฃ๏ผ๏ผ๏ผ๏ผใซใในใฟ๏ผใโ which roughly translates to โAll Assemble! Hyper Morita Special Start!โ.
This likely means that the script is initiating a build process that is optimized for speed or efficiency, and that it was written by Kazuaki Morita.
Note: This page is currently unfinished, if you have any time to contribute please consider submitting a Pull Request to this page.