Merge pull request #221 from yenatch/more-objects

analyze the bytes
This commit is contained in:
Bryan Bishop 2013-12-28 23:56:34 -08:00
commit 983ef29fd0
797 changed files with 73007 additions and 65039 deletions

1
.gitattributes vendored
View File

@ -6,7 +6,6 @@
*.lz diff=hex
*.2bpp diff=hex
*.1bpp diff=hex
*.pal diff=hex
*.bin diff=hex
*.blk diff=hex

42
.gitignore vendored
View File

@ -1,15 +1,12 @@
# global label defs are generated
# generated
globals.asm
*.tx
*.o
# precompiled python
*.pyc
# precompiled jython
*$py.class
# compiled object file
*.o
# no binaries
*.exe
@ -17,33 +14,24 @@ globals.asm
*.gbc
*.gb
# for any of the poor souls with save game files in their working directory
*.sgm
*.sav
*.rtc
# rgbds extras
*.map
*.sym
# generated
*.tx
# swap files for vim
.*.swp
# swap files for gedit
*~
# no data from extras/
extras/*.json
# for any of the poor souls with save game files in their working directory
baserom.sgm
baserom.sav
baserom.rtc
pokecrystal.sgm
pokecrystal.sav
pokecrystal.rtc
# compare.sh
baserom.txt
pokecrystal.txt
# for vim configuration
# url: http://www.vim.org/scripts/script.php?script_id=441
.lvimrc
# swap files for vim
.*.swp
# swap files for gedit
*~
# some users are dumping png.py into extras/
extras/png.py

View File

@ -1,184 +1,40 @@
# Getting Started
Assembling **pokecrystal.gbc** requires a certain **Pokemon Crystal** rom:
Assembling **pokecrystal.gbc** requires a certain **Pokémon Crystal** rom:
```
Pokemon - Crystal Version (UE) (V1.0) [C][!].gbc
md5: 9f2922b235a5eeb78d65594e82ef5dde
```
Pokemon - Crystal Version (UE) (V1.0) [C][!].gbc
md5: 9f2922b235a5eeb78d65594e82ef5dde
Save it as **baserom.gbc** in the repository.
Feel free to ask us on
**[nucleus.kafuka.org #skeetendo](https://kiwiirc.com/client/irc.nolimitzone.com/?#skeetendo)**
if something goes wrong.
# Windows
If you're on Windows and can't install Linux, **Cygwin** is a great alternative.
## Installing Cygwin
Cygwin provides a virtual Linux environment on Windows systems. Just get **setup.exe**.
**http://cygwin.com/install.html**
During the install:
* Keep the defaults.
* Most mirrors are molasses. Use **http://mirrors.kernel.org**.
* From the package selection, pick:
* **wget**
* **make**
* **git**
* **python**
* **python-setuptools**
* **unzip**
## Using Cygwin
Launch the **Cygwin terminal**.
Maybe you know your way around the Linux terminal ( **bash** ).
If not, a crash course:
```bash
# list files in current directory
ls
# show current directory
pwd
# change directory
cd /away/we/go
```
## Getting up and running
We need three things to assemble the source into a rom.
1. **rgbds**
2. a **pokecrystal** repository
3. a **base rom**
We use **rgbds** to spit out a Game Boy rom from source.
```bash
cd /usr/local/bin
wget http://iimarck.us/etc/rgbds-20130811.zip
unzip -j rgbds-20130811.zip
rm rgbds-20130811.zip
```
The **pokecrystal** repository contains the source files used to create the rom.
```bash
cd ~
git clone https://github.com/kanzure/pokecrystal
cd pokecrystal
# install python requirements
easy_install pip
pip install -r requirements.txt
```
Not everything is included in the source yet.
Missing patches are copied from a **base rom** (not included).
```
Pokemon - Crystal Version (UE) (V1.0) [C][!].gbc
md5: 9f2922b235a5eeb78d65594e82ef5dde
```
Name it **baserom.gbc**.
**pokecrystal** only compiles with the use of a git submodule. To activate the submodule type:
```
git submodule init
git submodule update
```
Now you should be able to build **pokecrystal.gbc** for the first time.
This compiles a new rom from the source code, with any patches filled in from the base rom.
```bash
make
```
This ought to take **between 3 and 15 seconds**, depending on your computer.
If the last line is `cmp baserom.gbc pokecrystal.gbc`, the build was successful!
Your first build processes every source file at once.
After that, **only modified source files have to be processed again**,
so compiling again should be a few seconds faster.
# Linux
```bash
sudo apt-get install make gcc bison git python python-setuptools
sudo easy_install pip
Linux dependencies. OSX users already have these after installing Xcode.
# install rgbds
git clone git://github.com/bentley/rgbds.git
cd rgbds
make
sudo make install
cd ..
# download pokecrystal
git clone git://github.com/kanzure/pokecrystal.git
cd pokecrystal
# grab extras/ which is required for compiling
git submodule init
git submodule update
# install python requirements
pip install -r extras/requirements.txt
# use hexdump to diff binary files
git config diff.hex.textconv hexdump
```
Put your base rom in the pokecrystal repository. Name it **baserom.gbc**.
To compile the rom from source:
```bash
make
```
That will take between 3 and 15 seconds, depending on your computer.
If you see `cmp baserom.gbc pokecrystal.gbc` as the last line, the build was successful! Rejoice!
sudo apt-get install make gcc bison git python python-setuptools
# Now what?
Set up the **pokecrystal** repository:
**[pokecrystal.asm](https://github.com/kanzure/pokecrystal/blob/master/pokecrystal.asm)** is a good starting point.
The structure of the source is laid out here.
git clone git://github.com/kanzure/pokecrystal.git
cd pokecrystal
./init.sh
Copy the Pokémon Crystal rom to this directory. Name it **baserom.gbc**.
Now you should be able to build **pokecrystal.gbc** for the first time.
make
Your first build may take about 30 seconds. Subsequent builds are much faster (2-10 seconds).
* Other **make targets** that may come in handy:
# OSX
* `make clean` deletes any preprocessed source files (.tx), rgbds object files and pokecrystal.gbc.
* `make pngs` decompresses any **lz** files in gfx/ and then exports any graphics files to **png**.
* `make lzs` does the reverse. This is already part of the build process, so **modified pngs will automatically be converted to 2bpp and lz-compressed** without any additional work.
Download and install **Xcode**. Then follow the Linux instructions.
* **Can't find something?**
Anyone can add to the source. There's lots to be uncovered.
# Windows
* **Do your own thing!**
The asm source is hack-friendly, and the supplementary scripts in extras/ can be used for other projects.
Not yet.
We'll be happy to answer any **questions** on
**[nucleus.kafuka.org #skeetendo](https://kiwiirc.com/client/irc.nolimitzone.com/?#skeetendo)**.
Other **make targets** that may come in handy:
`make clean` deletes any preprocessed source files (.tx), rgbds object files and pokecrystal.gbc, in case something goes wrong.
`make pngs` decompresses any **lz** files in gfx/ and then exports any graphics files to **png**.
`make lzs` does the reverse. This is already part of the build process, so **modified pngs will automatically be converted to 2bpp and lz-compressed** without any additional work.

134
Makefile
View File

@ -1,88 +1,120 @@
PYTHON := python
.SUFFIXES: .asm .tx .o .gbc .png .2bpp .lz
.PHONY: all clean pngs gfx
POKEMONTOOLS := extras/pokemontools
.SUFFIXES: .asm .tx .o .gbc .png .2bpp .1bpp .lz .pal .bin
.PHONY: all clean crystal pngs
.SECONDEXPANSION:
TEXTFILES := $(shell find ./ -type f -name '*.asm' | grep -v globals.asm)
TEXTQUEUE :=
CRYSTAL_OBJS := \
wram.o \
main.o \
home.o \
audio.o \
maps_crystal.o \
engine/events.o \
engine/scripting_crystal.o \
engine/events_2.o \
engine/credits_crystal.o \
stats/egg_moves_crystal.o \
stats/evos_attacks_crystal.o
stats/evos_attacks_crystal.o \
stats/pokedex/entries_crystal.o \
misc/crystal_misc.o \
gfx/pics.o
OBJS := $(CRYSTAL_OBJS)
ROMS := pokecrystal.gbc
PNGS := $(shell find gfx/ -type f -name '*.png')
LZS := $(shell find gfx/ -type f -name '*.lz')
_2BPPS := $(shell find gfx/ -type f -name '*.2bpp')
_1BPPS := $(shell find gfx/ -type f -name '*.1bpp')
ALL_DEPENDENCIES :=
# generate a list of dependencies for each object file
$(shell \
$(foreach obj, $(OBJS), \
$(eval OBJ_$(obj:.o=) := \
$(shell $(PYTHON) scan_includes.py $(obj:.o=.asm) | sed s/globals.asm//g)) \
) \
)
$(shell $(foreach obj, $(OBJS), \
$(eval $(obj:.o=)_DEPENDENCIES := $(shell $(PYTHON) $(POKEMONTOOLS)/scan_includes.py $(obj:.o=.asm) | sed s/globals.asm//g)) \
))
$(shell $(foreach obj, $(OBJS), \
$(eval ALL_DEPENDENCIES += $($(obj:.o=)_DEPENDENCIES)) \
))
all: $(ROMS)
crystal: pokecrystal.gbc
all: baserom.gbc globals.asm $(ROMS)
cmp baserom.gbc pokecrystal.gbc
clean:
rm -f $(ROMS)
rm -f $(OBJS)
rm -f globals.asm globals.tx
@echo 'Removing preprocessed .tx files...'
@rm -f $(TEXTFILES:.asm=.tx)
rm -f globals.asm
find -iname '*.tx' -exec rm {} +
baserom.gbc:
baserom.gbc: ;
@echo "Wait! Need baserom.gbc first. Check README and INSTALL for details." && false
%.asm: ;
.asm.tx:
$(eval TEXTQUEUE := $(TEXTQUEUE) $<)
@rm -f $@
globals.asm: $(TEXTFILES:.asm=.tx)
@echo "Creating globals.asm..."
@touch globals.asm
@echo "Preprocessing .asm to .tx..."
@$(PYTHON) prequeue.py $(TEXTQUEUE) globals.asm
globals.asm: $(ALL_DEPENDENCIES:.asm=.tx) $(OBJS:.o=.tx)
@touch $@
@$(PYTHON) prequeue.py $(TEXTQUEUE)
globals.tx: globals.asm
@cp $< $@
$(OBJS): $$(patsubst %.o,%.tx,$$@) $$(patsubst %.asm,%.tx,$$(OBJ_$$(patsubst %.o,%,$$@)))
rgbasm -o $@ $(@:.o=.tx)
$(OBJS): $$*.tx $$(patsubst %.asm, %.tx, $$($$*_DEPENDENCIES))
rgbasm -o $@ $*.tx
pokecrystal.gbc: $(CRYSTAL_OBJS)
rgblink -n pokecrystal.sym -m pokecrystal.map -o pokecrystal.gbc $^
pokecrystal.gbc: globals.tx $(CRYSTAL_OBJS)
rgblink -n $*.sym -m $*.map -o $@ $(CRYSTAL_OBJS)
rgbfix -Cjv -i BYTE -k 01 -l 0x33 -m 0x10 -p 0 -r 3 -t PM_CRYSTAL $@
cmp baserom.gbc $@
pngs:
$(PYTHON) extras/pokemontools/gfx.py mass-decompress
$(PYTHON) extras/pokemontools/gfx.py dump-pngs
$(PYTHON) $(POKEMONTOOLS)/gfx.py mass-decompress
$(PYTHON) $(POKEMONTOOLS)/gfx.py dump-pngs
gfx: $(LZS) $(_2BPPS) $(_1BPPS)
@:
gfx/pics/%/front.lz:: gfx/pics/%/tiles.2bpp gfx/pics/%/front.png
$(PYTHON) $(POKEMONTOOLS)/gfx.py png-to-lz --front $^
gfx/pics/%/front.2bpp:: gfx/pics/%/front.lz
$(PYTHON) $(POKEMONTOOLS)/gfx.py front-to-2bpp $<
gfx/pics/%/front.png:: gfx/pics/%/front.2bpp
$(PYTHON) $(POKEMONTOOLS)/gfx.py 2bpp-to-png $<
gfx/pics/%/tiles.2bpp:: gfx/pics/%/front.lz
$(PYTHON) $(POKEMONTOOLS)/gfx.py anim-from-front $<
gfx/pics/%/tiles.2bpp:: gfx/pics/%/tiles.png
$(PYTHON) $(POKEMONTOOLS)/gfx.py png-to-2bpp $<
gfx/pics/%/tiles.png:: gfx/pics/%/tiles.2bpp
$(PYTHON) $(POKEMONTOOLS)/gfx.py 2bpp-to-png $<
gfx/pics/%/back.lz:: gfx/pics/%/back.png
$(PYTHON) $(POKEMONTOOLS)/gfx.py png-to-lz --vert $<
gfx/pics/%/back.png:: gfx/pics/%/back.lz
$(PYTHON) $(POKEMONTOOLS)/gfx.py lz-to-png --vert $<
gfx/trainers/%.lz:: gfx/trainers/%.png
$(PYTHON) $(POKEMONTOOLS)/gfx.py png-to-lz --vert $<
gfx/trainers/%.png:: gfx/trainers/%.lz
$(PYTHON) $(POKEMONTOOLS)/gfx.py lz-to-png --vert $<
%.lz:: %.png
$(PYTHON) $(POKEMONTOOLS)/gfx.py png-to-lz $<
%.png:: %.lz
$(PYTHON) $(POKEMONTOOLS)/gfx.py lz-to-png $<
%.2bpp:: %.png
$(PYTHON) $(POKEMONTOOLS)/gfx.py png-to-2bpp $<
%.png:: %.2bpp
$(PYTHON) $(POKEMONTOOLS)/gfx.py 2bpp-to-png $<
%.1bpp:: %.png
$(PYTHON) $(POKEMONTOOLS)/gfx.py png-to-1bpp $<
%.png:: %.1bpp
$(PYTHON) $(POKEMONTOOLS)/gfx.py 1bpp-to-png $<
%.pal: ;
%.bin: ;
gfx/pics/%/front.lz: gfx/pics/%/tiles.2bpp gfx/pics/%/front.png
$(PYTHON) extras/pokemontools/gfx.py png-to-lz --front $^
gfx/pics/%/tiles.2bpp: gfx/pics/%/tiles.png
$(PYTHON) extras/pokemontools/gfx.py png-to-2bpp $<
gfx/pics/%/back.lz: gfx/pics/%/back.png
$(PYTHON) extras/pokemontools/gfx.py png-to-lz --vert $<
gfx/trainers/%.lz: gfx/trainers/%.png
$(PYTHON) extras/pokemontools/gfx.py png-to-lz --vert $<
.png.lz:
$(PYTHON) extras/pokemontools/gfx.py png-to-lz $<
.png.2bpp:
$(PYTHON) extras/pokemontools/gfx.py png-to-2bpp $<
.png.1bpp:
$(PYTHON) extras/pokemontools/gfx.py png-to-1bpp $<
%.2bpp:
@:
%.1bpp:
@:

View File

@ -1,33 +1,19 @@
# Pokémon Crystal
This is a hand-crafted disassembly of Pokémon Crystal.
This is a disassembly of Pokémon Crystal.
The source code in this project successfully converts back into a ROM image. All source code is meticulously commented.
The source code in this project successfully converts back into a ROM image.
The following rom is used as a base:
## Base ROM
Pokemon - Crystal Version (UE) (V1.0) [C][!].gbc
md5: 9f2922b235a5eeb78d65594e82ef5dde
The following rom is required for compiling:
```
Pokemon - Crystal Version (UE) (V1.0) [C][!].gbc
md5: 9f2922b235a5eeb78d65594e82ef5dde
```
Eventually this will not be necessary.
## What can I do?
* Are we missing something? Make a pull request! Contributions are welcome.
* Take a look at some of the disasm tools in **extras/**. Most of the scripts are generalized enough to take apart other Game Boy games.
* Tackle some **[issues](https://github.com/kanzure/pokecrystal/issues)**!
To set up the repository, see [**INSTALL.md**](INSTALL.md).
## See also
* Hang out with us on irc: **[nucleus.kafuka.org #skeetendo](https://kiwiirc.com/client/irc.nolimitzone.com/?#skeetendo)**
* Disassembly of [**Pokémon Red**](https://github.com/iimarckus/pokered)
* Disassembly of **[Pokémon Red](http://bitbucket.org/iimarckus/pokered)**.
* irc: **nucleus.kafuka.org** [**#skeetendo**](https://kiwiirc.com/client/irc.nolimitzone.com/?#skeetendo)

173
audio.asm Normal file
View File

@ -0,0 +1,173 @@
INCLUDE "includes.asm"
SECTION "Audio", ROMX, BANK[AUDIO]
INCLUDE "audio/engine.asm"
; What music plays when a trainer notices you
INCLUDE "audio/trainer_encounters.asm"
Music:
INCLUDE "audio/music_pointers.asm"
INCLUDE "audio/music/nothing.asm"
Cries:
INCLUDE "audio/cry_pointers.asm"
SFX:
INCLUDE "audio/sfx_pointers.asm"
SECTION "Songs 1", ROMX, BANK[SONGS_1]
INCLUDE "audio/music/route36.asm"
INCLUDE "audio/music/rivalbattle.asm"
INCLUDE "audio/music/rocketbattle.asm"
INCLUDE "audio/music/elmslab.asm"
INCLUDE "audio/music/darkcave.asm"
INCLUDE "audio/music/johtogymbattle.asm"
INCLUDE "audio/music/championbattle.asm"
INCLUDE "audio/music/ssaqua.asm"
INCLUDE "audio/music/newbarktown.asm"
INCLUDE "audio/music/goldenrodcity.asm"
INCLUDE "audio/music/vermilioncity.asm"
INCLUDE "audio/music/titlescreen.asm"
INCLUDE "audio/music/ruinsofalphinterior.asm"
INCLUDE "audio/music/lookpokemaniac.asm"
INCLUDE "audio/music/trainervictory.asm"
SECTION "Songs 2", ROMX, BANK[SONGS_2]
INCLUDE "audio/music/route1.asm"
INCLUDE "audio/music/route3.asm"
INCLUDE "audio/music/route12.asm"
INCLUDE "audio/music/kantogymbattle.asm"
INCLUDE "audio/music/kantotrainerbattle.asm"
INCLUDE "audio/music/kantowildbattle.asm"
INCLUDE "audio/music/pokemoncenter.asm"
INCLUDE "audio/music/looklass.asm"
INCLUDE "audio/music/lookofficer.asm"
INCLUDE "audio/music/route2.asm"
INCLUDE "audio/music/mtmoon.asm"
INCLUDE "audio/music/showmearound.asm"
INCLUDE "audio/music/gamecorner.asm"
INCLUDE "audio/music/bicycle.asm"
INCLUDE "audio/music/looksage.asm"
INCLUDE "audio/music/pokemonchannel.asm"
INCLUDE "audio/music/lighthouse.asm"
INCLUDE "audio/music/lakeofrage.asm"
INCLUDE "audio/music/indigoplateau.asm"
INCLUDE "audio/music/route37.asm"
INCLUDE "audio/music/rockethideout.asm"
INCLUDE "audio/music/dragonsden.asm"
INCLUDE "audio/music/ruinsofalphradio.asm"
INCLUDE "audio/music/lookbeauty.asm"
INCLUDE "audio/music/route26.asm"
INCLUDE "audio/music/ecruteakcity.asm"
INCLUDE "audio/music/lakeofragerocketradio.asm"
INCLUDE "audio/music/magnettrain.asm"
INCLUDE "audio/music/lavendertown.asm"
INCLUDE "audio/music/dancinghall.asm"
INCLUDE "audio/music/contestresults.asm"
INCLUDE "audio/music/route30.asm"
SECTION "Songs 3", ROMX, BANK[SONGS_3]
INCLUDE "audio/music/violetcity.asm"
INCLUDE "audio/music/route29.asm"
INCLUDE "audio/music/halloffame.asm"
INCLUDE "audio/music/healpokemon.asm"
INCLUDE "audio/music/evolution.asm"
INCLUDE "audio/music/printer.asm"
SECTION "Songs 4", ROMX, BANK[SONGS_4]
INCLUDE "audio/music/viridiancity.asm"
INCLUDE "audio/music/celadoncity.asm"
INCLUDE "audio/music/wildpokemonvictory.asm"
INCLUDE "audio/music/successfulcapture.asm"
INCLUDE "audio/music/gymleadervictory.asm"
INCLUDE "audio/music/mtmoonsquare.asm"
INCLUDE "audio/music/gym.asm"
INCLUDE "audio/music/pallettown.asm"
INCLUDE "audio/music/profoakspokemontalk.asm"
INCLUDE "audio/music/profoak.asm"
INCLUDE "audio/music/lookrival.asm"
INCLUDE "audio/music/aftertherivalfight.asm"
INCLUDE "audio/music/surf.asm"
INCLUDE "audio/music/nationalpark.asm"
INCLUDE "audio/music/azaleatown.asm"
INCLUDE "audio/music/cherrygrovecity.asm"
INCLUDE "audio/music/unioncave.asm"
INCLUDE "audio/music/johtowildbattle.asm"
INCLUDE "audio/music/johtowildbattlenight.asm"
INCLUDE "audio/music/johtotrainerbattle.asm"
INCLUDE "audio/music/lookyoungster.asm"
INCLUDE "audio/music/tintower.asm"
INCLUDE "audio/music/sprouttower.asm"
INCLUDE "audio/music/burnedtower.asm"
INCLUDE "audio/music/mom.asm"
INCLUDE "audio/music/victoryroad.asm"
INCLUDE "audio/music/pokemonlullaby.asm"
INCLUDE "audio/music/pokemonmarch.asm"
INCLUDE "audio/music/goldsilveropening.asm"
INCLUDE "audio/music/goldsilveropening2.asm"
INCLUDE "audio/music/lookhiker.asm"
INCLUDE "audio/music/lookrocket.asm"
INCLUDE "audio/music/rockettheme.asm"
INCLUDE "audio/music/mainmenu.asm"
INCLUDE "audio/music/lookkimonogirl.asm"
INCLUDE "audio/music/pokeflutechannel.asm"
INCLUDE "audio/music/bugcatchingcontest.asm"
SECTION "Songs 5", ROMX, BANK[SONGS_5]
INCLUDE "audio/music/mobileadaptermenu.asm"
INCLUDE "audio/music/buenaspassword.asm"
INCLUDE "audio/music/lookmysticalman.asm"
INCLUDE "audio/music/crystalopening.asm"
INCLUDE "audio/music/battletowertheme.asm"
INCLUDE "audio/music/suicunebattle.asm"
INCLUDE "audio/music/battletowerlobby.asm"
INCLUDE "audio/music/mobilecenter.asm"
SECTION "Extra Songs 1", ROMX, BANK[EXTRA_SONGS_1]
INCLUDE "audio/music/credits.asm"
INCLUDE "audio/music/clair.asm"
INCLUDE "audio/music/mobileadapter.asm"
SECTION "Extra Songs 2", ROMX, BANK[EXTRA_SONGS_2]
INCLUDE "audio/music/postcredits.asm"
SECTION "Sound Effects", ROMX, BANK[SOUND_EFFECTS]
INCBIN "baserom.gbc",$f0941, $f2787 - $f0941
SECTION "Crystal Sound Effects", ROMX, BANK[CRYSTAL_SOUND_EFFECTS]
INCBIN "baserom.gbc",$17982d, $1799ef - $17982d
SECTION "Cries", ROMX, BANK[CRIES]
CryHeaders: INCLUDE "audio/cry_headers.asm"
INCBIN "baserom.gbc",$f2d69, $f3fb6 - $f2d69

View File

@ -15,14 +15,14 @@ Music_AfterTheRivalFight_Ch1: ; f5133
stereopanning $f0
notetype $c, $b2
octave 2
note G#, 3
note G#, 3
note G#, 4
note G#, 4
intensity $82
octave 3
note G#, 1
note G#, 1
note G#, 1
note G#, 1
note G#, 2
note G#, 2
note G#, 2
note G#, 2
loopchannel 0, Music_AfterTheRivalFight_branch_f4fb1
Music_AfterTheRivalFight_Ch2: ; f5153
@ -31,37 +31,37 @@ Music_AfterTheRivalFight_Ch2: ; f5153
stereopanning $f
notetype $c, $c2
octave 4
note G#, 3
note G#, 3
note G#, 4
note G#, 4
intensity $a2
note G#, 1
note G#, 1
note G#, 1
note G#, 1
note G#, 2
note G#, 2
note G#, 2
note G#, 2
loopchannel 0, Music_AfterTheRivalFight_branch_f502e
Music_AfterTheRivalFight_Ch3: ; f516a
notetype $c, $28
octave 3
note D#, 1
note __, 1
note D#, 1
note __, 1
note G#, 1
note F#, 1
note F_, 1
note D#, 1
note D#, 2
note __, 2
note D#, 2
note __, 2
note G#, 2
note F#, 2
note F_, 2
note D#, 2
loopchannel 0, Music_AfterTheRivalFight_branch_f509d
Music_AfterTheRivalFight_Ch4: ; f517a
togglenoise $3
stereopanning $f
notetype $c
note D_, 3
note D_, 3
note D#, 1
note D_, 1
note D_, 1
note D_, 1
note D_, 4
note D_, 4
note D#, 2
note D_, 2
note D_, 2
note D_, 2
loopchannel 0, Music_AfterTheRivalFight_branch_f5118
; f518a

File diff suppressed because it is too large Load Diff

View File

@ -18,105 +18,105 @@ Music_BattleTowerLobby_Ch1: ; 179497
Music_BattleTowerLobby_branch_1794a9: ; 1794a9
notetype $c, $72
octave 3
note G#, 1
note G#, 2
notetype $c, $73
octave 2
note B_, 1
note B_, 2
octave 3
note E_, 1
note G#, 1
note E_, 1
note E_, 2
note G#, 2
note E_, 2
octave 2
note B_, 1
note B_, 2
octave 3
note E_, 1
note G#, 1
notetype $c, $72
note F#, 1
notetype $c, $73
octave 2
note B_, 1
octave 3
note F#, 1
note E_, 1
note D#, 1
octave 2
note B_, 1
octave 3
note D#, 1
note F#, 1
notetype $c, $72
note G#, 1
notetype $c, $73
octave 2
note B_, 1
octave 3
note E_, 1
note G#, 1
octave 2
note B_, 1
octave 3
note E_, 1
note B_, 1
octave 4
note E_, 1
note E_, 2
note G#, 2
notetype $c, $72
note F#, 2
notetype $c, $73
note D_, 0
note E_, 1
octave 3
note B_, 1
note G#, 1
note E_, 1
note G#, 1
note B_, 1
notetype $c, $72
note C#, 1
notetype $c, $73
note D#, 1
note E_, 1
note C#, 0
octave 2
note B_, 0
note A_, 3
notetype $c, $62
note A_, 3
notetype $c, $72
note B_, 1
notetype $c, $73
note B_, 2
octave 3
note C#, 1
note D#, 1
note E_, 0
note F#, 0
note G#, 3
notetype $c, $62
note F#, 2
note E_, 2
note D#, 2
octave 2
note G#, 3
notetype $c, $72
note A_, 1
notetype $c, $73
note B_, 1
note B_, 2
octave 3
note C#, 1
note D_, 0
note E_, 0
note D_, 1
note E_, 1
note F#, 1
note A_, 1
note D#, 2
note F#, 2
notetype $c, $72
note B_, 1
note G#, 2
notetype $c, $73
note B_, 3
note A_, 0
note G#, 0
octave 2
note B_, 2
octave 3
note E_, 2
note G#, 2
octave 2
note B_, 2
octave 3
note E_, 2
note B_, 2
octave 4
note E_, 2
notetype $c, $72
note F#, 3
notetype $c, $73
note D_, 1
note E_, 2
octave 3
note B_, 2
note G#, 2
note E_, 2
note G#, 2
note B_, 2
notetype $c, $72
note C#, 2
notetype $c, $73
note D#, 2
note E_, 2
note C#, 1
octave 2
note B_, 1
note A_, 4
notetype $c, $62
note A_, 4
notetype $c, $72
note B_, 2
notetype $c, $73
octave 3
note C#, 2
note D#, 2
note E_, 1
note F#, 1
note G#, 4
notetype $c, $62
octave 2
note G#, 4
notetype $c, $72
note A_, 2
notetype $c, $73
note B_, 2
octave 3
note C#, 2
note D_, 1
note E_, 1
note D_, 2
note E_, 2
note F#, 2
note A_, 2
notetype $c, $72
note B_, 2
notetype $c, $73
note B_, 4
note A_, 1
note G#, 1
notetype $c, $72
note F#, 4
notetype $c, $75
octave 2
note B_, 3
note B_, 4
loopchannel 0, Music_BattleTowerLobby_branch_1794a9
Music_BattleTowerLobby_Ch2: ; 17953a
@ -128,80 +128,80 @@ Music_BattleTowerLobby_Ch2: ; 17953a
Music_BattleTowerLobby_branch_179544: ; 179544
notetype $c, $82
octave 4
note E_, 1
note E_, 3
note E_, 2
note E_, 4
octave 3
note B_, 0
note B_, 1
octave 4
note E_, 0
note B_, 3
note A_, 1
note G#, 1
note E_, 1
note B_, 4
note A_, 2
note E_, 0
note G#, 2
note A_, 3
note E_, 1
octave 3
note B_, 3
note B_, 4
notetype $c, $65
note F#, 3
note F#, 4
octave 2
note B_, 3
note B_, 4
notetype $c, $82
octave 4
note E_, 1
note E_, 3
note E_, 2
note E_, 4
octave 3
note B_, 0
note B_, 1
octave 4
note E_, 0
note B_, 3
note A_, 1
note G#, 1
note E_, 1
note B_, 4
note A_, 2
note F#, 0
notetype $c, $87
note G#, 11
notetype $c, $82
octave 3
note A_, 1
notetype $c, $84
note G#, 2
note A_, 3
note F#, 0
note G#, 0
note A_, 3
notetype $c, $82
note C#, 3
octave 4
note G#, 1
notetype $c, $84
note G#, 3
note F#, 0
note G#, 0
note E_, 3
notetype $c, $82
octave 3
note E_, 3
octave 4
note F#, 1
notetype $c, $84
note F#, 3
note A_, 0
note G#, 0
note A_, 3
note D_, 3
notetype $c, $87
note G#, 12
notetype $c, $82
note E_, 1
octave 3
note A_, 2
notetype $c, $84
note E_, 3
note F#, 0
note E_, 0
note D#, 3
note A_, 4
note F#, 1
note G#, 1
note A_, 4
notetype $c, $82
note C#, 4
octave 4
note G#, 2
notetype $c, $84
note G#, 4
note F#, 1
note G#, 1
note E_, 4
notetype $c, $82
octave 3
note E_, 4
octave 4
note F#, 2
notetype $c, $84
note F#, 4
note A_, 1
note G#, 1
note A_, 4
note D_, 4
notetype $c, $82
note E_, 2
notetype $c, $84
note E_, 4
note F#, 1
note E_, 1
note D#, 4
notetype $c, $73
octave 3
note D#, 0
note F#, 0
note B_, 0
note D#, 1
note F#, 1
note B_, 1
octave 4
note D#, 0
note D#, 1
loopchannel 0, Music_BattleTowerLobby_branch_179544
Music_BattleTowerLobby_Ch3: ; 1795ae
@ -209,96 +209,96 @@ Music_BattleTowerLobby_Ch3: ; 1795ae
Music_BattleTowerLobby_branch_1795b1: ; 1795b1
octave 2
note B_, 1
note B_, 2
octave 3
note E_, 1
note __, 1
note E_, 1
note __, 1
note E_, 1
note __, 1
note E_, 1
note E_, 2
note __, 2
note E_, 2
note __, 2
note E_, 2
note __, 2
note E_, 2
octave 2
note B_, 1
note B_, 2
octave 3
note E_, 1
note __, 1
note E_, 1
note __, 1
note D#, 1
note __, 1
note D#, 1
note E_, 2
note __, 2
note E_, 2
note __, 2
note D#, 2
note __, 2
note D#, 2
octave 2
note B_, 1
note B_, 2
octave 3
note E_, 1
note __, 1
note E_, 1
note __, 1
note E_, 1
note __, 1
note E_, 1
note E_, 2
note __, 2
note E_, 2
note __, 2
note E_, 2
note __, 2
note E_, 2
octave 2
note A_, 1
note A_, 2
octave 3
note D_, 1
note __, 1
note D_, 2
note __, 2
octave 2
note A_, 1
note B_, 1
note A_, 2
note B_, 2
octave 3
note E_, 1
note __, 1
note E_, 1
note E_, 2
note __, 2
note E_, 2
octave 2
note A_, 1
note A_, 2
octave 3
note C#, 1
note C#, 2
octave 2
note E_, 1
note E_, 2
octave 3
note E_, 1
note E_, 2
octave 2
note A_, 1
note A_, 2
octave 3
note C#, 1
note E_, 1
note __, 1
note C#, 2
note E_, 2
note __, 2
octave 2
note B_, 1
note B_, 2
octave 3
note E_, 1
note E_, 2
octave 2
note E_, 1
note E_, 2
octave 3
note E_, 1
note E_, 2
octave 2
note G#, 1
note B_, 1
note G#, 2
note B_, 2
octave 3
note E_, 1
note __, 1
note D_, 1
note E_, 2
note __, 2
note D_, 2
octave 2
note F#, 1
note A_, 1
note F#, 2
note A_, 2
octave 3
note F#, 1
note F#, 2
octave 2
note F#, 1
note A_, 1
note F#, 2
note A_, 2
octave 3
note D_, 1
note F#, 1
note E_, 1
note D_, 2
note F#, 2
note E_, 2
octave 2
note B_, 1
note E_, 1
note B_, 1
note F#, 1
note E_, 1
note D#, 1
note F#, 1
note B_, 2
note E_, 2
note B_, 2
note F#, 2
note E_, 2
note D#, 2
note F#, 2
loopchannel 0, Music_BattleTowerLobby_branch_1795b1
Music_BattleTowerLobby_Ch4: ; 179610
@ -306,10 +306,10 @@ Music_BattleTowerLobby_Ch4: ; 179610
Music_BattleTowerLobby_branch_179612: ; 179612
notetype $c
note __, 1
note F_, 3
note F_, 3
note F_, 1
note F_, 3
note __, 2
note F_, 4
note F_, 4
note F_, 2
note F_, 4
loopchannel 0, Music_BattleTowerLobby_branch_179612
; 17961d

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -14,92 +14,92 @@ Music_BurnedTower_Ch1: ; f6aa5
vibrato $8, $45
stereopanning $f0
notetype $c, $91
note __, 1
note __, 2
octave 2
note A_, 3
note A_, 3
note A_, 1
note A_, 4
note A_, 4
note A_, 2
intensity $80
octave 3
note D#, 5
note D#, 6
intensity $91
note D_, 3
note D_, 3
note D_, 1
note D_, 4
note D_, 4
note D_, 2
intensity $80
note C#, 5
note C#, 6
Music_BurnedTower_branch_f6ac8: ; f6ac8
intensity $91
octave 2
note A_, 3
note A_, 3
note A_, 1
note A_, 4
note A_, 4
note A_, 2
intensity $80
note A#, 5
note A#, 6
loopchannel 2, Music_BurnedTower_branch_f6ac8
tempo 150
Music_BurnedTower_branch_f6ad8: ; f6ad8
intensity $b1
octave 2
note A_, 3
note A_, 3
note A_, 1
note A_, 4
note A_, 4
note A_, 2
intensity $a0
octave 3
note D#, 5
note D#, 6
intensity $b1
note D_, 3
note D_, 3
note D_, 1
note D_, 4
note D_, 4
note D_, 2
intensity $a0
note C#, 5
note C#, 6
intensity $b1
octave 2
note A_, 3
note A_, 3
note A_, 1
note A_, 4
note A_, 4
note A_, 2
intensity $a0
note A#, 5
note A#, 6
intensity $b1
note A_, 3
note A_, 3
note A_, 1
note A_, 4
note A_, 4
note A_, 2
intensity $b3
note A#, 15
note A#, 15
note A#, 15
note G#, 5
note A#, 16
note A#, 16
note A#, 16
note G#, 6
intensity $b1
note A_, 3
note A_, 3
note A_, 1
note A_, 4
note A_, 4
note A_, 2
intensity $a0
note A#, 5
note A#, 6
intensity $b1
note B_, 3
note B_, 3
note B_, 1
note B_, 4
note B_, 4
note B_, 2
intensity $a0
octave 3
note F_, 5
note F_, 6
intensity $b1
note E_, 3
note E_, 3
note E_, 1
note E_, 4
note E_, 4
note E_, 2
intensity $a0
note D#, 5
note D#, 6
Music_BurnedTower_branch_f6b17: ; f6b17
intensity $b1
octave 2
note B_, 3
note B_, 3
note B_, 1
note B_, 4
note B_, 4
note B_, 2
intensity $a0
octave 3
note C_, 5
note C_, 6
loopchannel 2, Music_BurnedTower_branch_f6b17
loopchannel 0, Music_BurnedTower_branch_f6ad8
@ -115,139 +115,139 @@ Music_BurnedTower_branch_f6b39: ; f6b39
callchannel Music_BurnedTower_branch_f6b8e
intensity $c1
dutycycle $3
note __, 1
note __, 2
octave 2
note A_, 3
note A_, 3
note A_, 1
note A_, 4
note A_, 4
note A_, 2
intensity $b0
octave 3
note D#, 5
note D#, 6
intensity $c1
note D_, 3
note D_, 3
note D_, 1
note D_, 4
note D_, 4
note D_, 2
intensity $b0
note C#, 5
note C#, 6
intensity $c1
octave 2
note A_, 3
note A_, 3
note A_, 1
note A_, 4
note A_, 4
note A_, 2
intensity $b0
note A#, 3
note A#, 4
intensity $c1
intensity $c2
octave 3
note A_, 0
note G_, 0
note A_, 0
note A_, 1
note G_, 1
note A_, 1
octave 4
note C_, 0
note C_, 1
vibrato $0, $0
intensity $3d
note E_, 7
note E_, 8
vibrato $20, $83
intensity $b0
octave 2
note G_, 3
note G_, 4
dutycycle $2
intensity $b0
octave 3
note F#, 3
note E_, 1
note F#, 1
note G_, 3
note B_, 3
note F#, 4
note E_, 2
note F#, 2
note G_, 4
note B_, 4
octave 4
note C#, 3
note D_, 1
note C#, 1
note C#, 4
note D_, 2
note C#, 2
octave 3
note B_, 3
note G_, 3
note F#, 3
note E_, 1
note F#, 1
note G_, 3
note E_, 3
note B_, 4
note G_, 4
note F#, 4
note E_, 2
note F#, 2
note G_, 4
note E_, 4
intensity $b7
note F#, 15
note F#, 16
loopchannel 0, Music_BurnedTower_branch_f6b39
; f6b8e
Music_BurnedTower_branch_f6b8e: ; f6b8e
octave 3
note E_, 3
note D_, 1
note E_, 1
note F_, 3
note A_, 3
note B_, 3
note E_, 4
note D_, 2
note E_, 2
note F_, 4
note A_, 4
note B_, 4
octave 4
note C_, 1
note C_, 2
octave 3
note B_, 1
note A_, 3
note F_, 3
note E_, 3
note D_, 1
note E_, 1
note F_, 3
note D_, 3
note E_, 15
note B_, 2
note A_, 4
note F_, 4
note E_, 4
note D_, 2
note E_, 2
note F_, 4
note D_, 4
note E_, 16
endchannel
Music_BurnedTower_Ch3: ; f6ba2
stereopanning $f
notetype $c, $14
note __, 15
note __, 15
note __, 15
note __, 11
note __, 16
note __, 16
note __, 16
note __, 12
octave 3
note D#, 3
note D#, 4
Music_BurnedTower_branch_f6bad: ; f6bad
octave 2
note A_, 1
note A_, 2
octave 3
note E_, 1
note __, 1
note E_, 1
note __, 1
note E_, 1
note F_, 3
note E_, 2
note __, 2
note E_, 2
note __, 2
note E_, 2
note F_, 4
octave 2
note A_, 1
note A_, 2
octave 3
note E_, 1
note __, 1
note E_, 1
note __, 1
note E_, 1
note D#, 3
note E_, 2
note __, 2
note E_, 2
note __, 2
note E_, 2
note D#, 4
loopchannel 4, Music_BurnedTower_branch_f6bad
Music_BurnedTower_branch_f6bc3: ; f6bc3
octave 2
note B_, 1
note B_, 2
octave 3
note F#, 1
note __, 1
note F#, 1
note __, 1
note F#, 1
note G_, 3
note F#, 2
note __, 2
note F#, 2
note __, 2
note F#, 2
note G_, 4
octave 2
note B_, 1
note B_, 2
octave 3
note F#, 1
note __, 1
note F#, 1
note __, 1
note F#, 1
note F_, 3
note F#, 2
note __, 2
note F#, 2
note __, 2
note F#, 2
note F_, 4
loopchannel 2, Music_BurnedTower_branch_f6bc3
loopchannel 0, Music_BurnedTower_branch_f6bad
@ -256,16 +256,16 @@ Music_BurnedTower_Ch4: ; f6bdd
notetype $c
Music_BurnedTower_branch_f6be1: ; f6be1
note __, 15
note __, 16
loopchannel 4, Music_BurnedTower_branch_f6be1
note __, 1
note __, 2
Music_BurnedTower_branch_f6be7: ; f6be7
stereopanning $f0
note G_, 1
note G#, 1
note G_, 3
note G#, 1
note G_, 3
note G_, 2
note G#, 2
note G_, 4
note G#, 2
note G_, 4
loopchannel 0, Music_BurnedTower_branch_f6be7
; f6bf2

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -12,43 +12,43 @@ Music_ContestResults_Ch1: ; efb4a
notetype $c, $51
Music_ContestResults_branch_efb52: ; efb52
note __, 1
note __, 2
octave 2
note G_, 0
note __, 2
note G_, 0
note __, 2
note G_, 0
note __, 2
note G_, 0
note __, 0
note G_, 1
note __, 3
note G_, 1
note __, 3
note G_, 1
note __, 3
note G_, 1
note __, 1
note A_, 0
note __, 2
note A_, 0
note __, 2
note A_, 0
note __, 2
note A_, 0
note __, 0
note A_, 1
note __, 3
note A_, 1
note __, 3
note A_, 1
note __, 3
note A_, 1
note __, 1
note A_, 0
note __, 2
note A_, 0
note __, 2
note A_, 0
note __, 2
note A_, 0
note __, 0
note A_, 1
note __, 3
note A_, 1
note __, 3
note A_, 1
note __, 3
note A_, 1
note __, 1
note B_, 0
note __, 2
note A#, 0
note __, 2
note A_, 0
note __, 2
note G_, 0
note __, 0
note B_, 1
note __, 3
note A#, 1
note __, 3
note A_, 1
note __, 3
note G_, 1
note __, 1
loopchannel 0, Music_ContestResults_branch_efb52
Music_ContestResults_Ch2: ; efb7b
@ -56,78 +56,78 @@ Music_ContestResults_Ch2: ; efb7b
Music_ContestResults_branch_efb7e: ; efb7e
octave 2
note C_, 1
note C_, 2
octave 3
note E_, 0
note __, 0
note E_, 1
note __, 1
octave 1
note G_, 1
note G_, 2
octave 3
note E_, 0
note __, 0
note E_, 1
note __, 1
octave 1
note A_, 1
note A_, 2
octave 3
note E_, 0
note __, 0
note E_, 1
note __, 1
octave 1
note B_, 1
note B_, 2
octave 3
note E_, 0
note __, 0
note E_, 1
note __, 1
octave 2
note D_, 1
note D_, 2
octave 3
note F_, 0
note __, 0
note F_, 1
note __, 1
octave 1
note A_, 1
note A_, 2
octave 3
note F_, 0
note __, 0
note F_, 1
note __, 1
octave 1
note B_, 1
note B_, 2
octave 3
note F_, 0
note __, 0
note F_, 1
note __, 1
octave 2
note C#, 1
note C#, 2
octave 3
note F_, 0
note __, 0
note F_, 1
note __, 1
Music_ContestResults_branch_efba6: ; efba6
octave 2
note D_, 1
note D_, 2
octave 3
note F_, 0
note __, 0
note F_, 1
note __, 1
octave 1
note A_, 1
note A_, 2
octave 3
note F_, 0
note __, 0
note F_, 1
note __, 1
loopchannel 2, Music_ContestResults_branch_efba6
octave 2
note G_, 2
octave 3
note G_, 1
octave 3
note G_, 0
note __, 0
note __, 1
octave 2
note D_, 2
octave 3
note F#, 1
note __, 1
octave 2
note G_, 2
octave 3
note F_, 1
note __, 1
octave 2
note D_, 2
octave 3
note D_, 1
octave 3
note F#, 0
note __, 0
octave 2
note G_, 1
octave 3
note F_, 0
note __, 0
octave 2
note D_, 1
octave 3
note D_, 0
note __, 0
note __, 1
loopchannel 0, Music_ContestResults_branch_efb7e
Music_ContestResults_Ch3: ; efbcc
@ -136,24 +136,24 @@ Music_ContestResults_Ch3: ; efbcc
Music_ContestResults_branch_efbd2: ; efbd2
octave 4
note E_, 4
note __, 0
note E_, 0
note F_, 0
note G_, 3
note E_, 5
note __, 1
note E_, 1
note F_, 1
note G_, 4
octave 5
note C_, 3
note C_, 4
octave 4
note B_, 7
note A_, 7
note D_, 4
note __, 0
note D_, 0
note E_, 0
note F_, 3
note B_, 3
note A_, 7
note G_, 7
note B_, 8
note A_, 8
note D_, 5
note __, 1
note D_, 1
note E_, 1
note F_, 4
note B_, 4
note A_, 8
note G_, 8
loopchannel 0, Music_ContestResults_branch_efbd2
Music_ContestResults_Ch4: ; efbe9
@ -161,21 +161,21 @@ Music_ContestResults_Ch4: ; efbe9
notetype $6
Music_ContestResults_branch_efbed: ; efbed
note C#, 3
note C#, 3
note C#, 1
note C#, 1
note C#, 1
note C#, 1
note C#, 3
note C#, 3
note G_, 0
note G_, 0
note G_, 0
note G_, 0
note G_, 0
note G_, 0
note G_, 0
note G_, 0
note C#, 4
note C#, 4
note C#, 2
note C#, 2
note C#, 2
note C#, 2
note C#, 4
note C#, 4
note G_, 1
note G_, 1
note G_, 1
note G_, 1
note G_, 1
note G_, 1
note G_, 1
note G_, 1
loopchannel 0, Music_ContestResults_branch_efbed
; efc01

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More