mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-15 04:14:34 +00:00
Merge branch 'main' into doc/cutscene_index
This commit is contained in:
commit
bee188dcd8
53 changed files with 1078 additions and 927 deletions
18
Jenkinsfile
vendored
18
Jenkinsfile
vendored
|
@ -29,10 +29,10 @@ pipeline {
|
|||
// The ROMs are built in an order that maximizes compiler flags coverage in a "fail fast" approach.
|
||||
// Specifically we start with a retail ROM for BSS ordering, and make sure we cover all of
|
||||
// N64/GC/NTSC/PAL/MQ/DEBUG as quickly as possible.
|
||||
stage('Build ntsc-1.2') {
|
||||
stage('Build ntsc-1.0') {
|
||||
steps {
|
||||
script {
|
||||
build('ntsc-1.2', 'oot-ntsc-1.2-us.z64')
|
||||
build('ntsc-1.0', 'oot-ntsc-1.0-us.z64')
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -64,6 +64,13 @@ pipeline {
|
|||
}
|
||||
}
|
||||
}
|
||||
stage('Build ntsc-1.2') {
|
||||
steps {
|
||||
script {
|
||||
build('ntsc-1.2', 'oot-ntsc-1.2-us.z64')
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('Build gc-us') {
|
||||
steps {
|
||||
script {
|
||||
|
@ -99,6 +106,13 @@ pipeline {
|
|||
}
|
||||
}
|
||||
}
|
||||
stage('Build ntsc-1.1') {
|
||||
steps {
|
||||
script {
|
||||
build('ntsc-1.1', 'oot-ntsc-1.1-us.z64')
|
||||
}
|
||||
}
|
||||
}
|
||||
stage('Build gc-us-mq') {
|
||||
steps {
|
||||
script {
|
||||
|
|
7
Makefile
7
Makefile
|
@ -23,6 +23,8 @@ ORIG_COMPILER ?= 0
|
|||
COMPILER ?= ido
|
||||
# Target game version. Ensure the corresponding input ROM is placed in baseroms/$(VERSION)/baserom.z64.
|
||||
# Currently the following versions are supported:
|
||||
# ntsc-1.0 N64 NTSC 1.0 (Japan/US depending on REGION)
|
||||
# ntsc-1.1 N64 NTSC 1.1 (Japan/US depending on REGION)
|
||||
# pal-1.0 N64 PAL 1.0 (Europe)
|
||||
# ntsc-1.2 N64 NTSC 1.2 (Japan/US depending on REGION)
|
||||
# pal-1.1 N64 PAL 1.1 (Europe)
|
||||
|
@ -34,9 +36,6 @@ COMPILER ?= ido
|
|||
# gc-eu GameCube Europe/PAL
|
||||
# gc-eu-mq GameCube Europe/PAL Master Quest
|
||||
# gc-jp-ce GameCube Japan (Collector's Edition disc)
|
||||
# The following versions are work-in-progress and not yet matching:
|
||||
# ntsc-1.0 N64 NTSC 1.0 (Japan/US depending on REGION)
|
||||
# ntsc-1.1 N64 NTSC 1.1 (Japan/US depending on REGION)
|
||||
VERSION ?= gc-eu-mq-dbg
|
||||
# Number of threads to extract and compress with.
|
||||
N_THREADS ?= $(shell nproc)
|
||||
|
@ -62,13 +61,11 @@ ifeq ($(VERSION),ntsc-1.0)
|
|||
REGION ?= JP
|
||||
PLATFORM := N64
|
||||
DEBUG := 0
|
||||
COMPARE := 0
|
||||
else ifeq ($(VERSION),ntsc-1.1)
|
||||
REGIONAL_CHECKSUM := 1
|
||||
REGION ?= JP
|
||||
PLATFORM := N64
|
||||
DEBUG := 0
|
||||
COMPARE := 0
|
||||
else ifeq ($(VERSION),pal-1.0)
|
||||
REGION ?= EU
|
||||
PLATFORM := N64
|
||||
|
|
|
@ -29,6 +29,8 @@ It builds the following versions:
|
|||
|
||||
| Name | Build timestamp | Description | MD5 hash of input ROM(s) |
|
||||
|--------------|-------------------|-------------------------------------------|--------------------------|
|
||||
| ntsc-1.0 | 98-10-21 04:56:31 | NTSC 1.0 (Japan/US) | `9f04c8e68534b870f707c247fa4b50fc`<br>`5bd1fe107bf8106b2ab6650abecd54d6` |
|
||||
| ntsc-1.1 | 98-10-26 10:58:45 | NTSC 1.1 (Japan/US) | `1bf5f42b98c3e97948f01155f12e2d88`<br>`721fdcc6f5f34be55c43a807f2a16af4` |
|
||||
| pal-1.0 | 98-11-10 14:34:22 | PAL 1.0 (Europe) | `e040de91a74b61e3201db0e2323f768a` |
|
||||
| ntsc-1.2 | 98-11-12 18:17:03 | NTSC 1.2 (Japan/US) | `2258052847bdd056c8406a9ef6427f13`<br>`57a9719ad547c516342e1a15d5c28c3d` |
|
||||
| pal-1.1 | 98-11-18 17:36:49 | PAL 1.1 (Europe) | `d714580dd74c2c033f5e1b6dc0aeac77` |
|
||||
|
|
|
@ -2408,7 +2408,11 @@ CHAN_0EDC:
|
|||
|
||||
.layer LAYER_1029
|
||||
/* 0x1029 [0xC6 0x2F ] */ instr SF0_INST_47
|
||||
#if OOT_VERSION < PAL_1_0
|
||||
/* 0x102B [0xCB 0x66 0x4C 0xF0 ] */ env ENVELOPE_664C, 240
|
||||
#else
|
||||
/* 0x102B [0xCB 0x66 0x4C 0xFF ] */ env ENVELOPE_664C, 255
|
||||
#endif
|
||||
/* 0x102F [0x7E 0x0C 0x6C ] */ notedv PITCH_B5, FRAMERATE_CONST(12, 15), 108
|
||||
/* 0x1032 [0xFF ] */ end
|
||||
|
||||
|
|
|
@ -603,7 +603,9 @@ LAYER_0452:
|
|||
/* 0x046C [0xE9 0x0E ] */ notepri 0, 14
|
||||
/* 0x046E [0xE5 0x01 ] */ reverbidx 1
|
||||
/* 0x0470 [0xD4 0x28 ] */ reverb 40
|
||||
#if OOT_VERSION >= PAL_1_0
|
||||
/* 0x0472 [0xC6 0x00 ] */ font Soundfont_0_ID
|
||||
#endif
|
||||
/* 0x0474 [0xFC 0x01 0x56 ] */ call CHAN_0156
|
||||
/* 0x0477 [0xFD 0x60 ] */ delay 96
|
||||
/* 0x0479 [0xFC 0x01 0x56 ] */ call CHAN_0156
|
||||
|
@ -1147,7 +1149,7 @@ ENVELOPE_08BA:
|
|||
point 20, 20000
|
||||
hang
|
||||
|
||||
#if !OOT_PAL_N64
|
||||
#if OOT_VERSION == NTSC_1_2 || PLATFORM_GC
|
||||
.filter FILTER_0932
|
||||
filter 0, 0, 0, 0, 0, 0, 0, 0
|
||||
|
||||
|
|
|
@ -1,433 +1,436 @@
|
|||
<!-- This file is only for extraction of vanilla data. For other purposes see assets/audio/samplebanks/ -->
|
||||
<SampleBank Name="SampleBank_0" Index="0">
|
||||
<Sample Name="SAMPLE_0_0" FileName="Sample000" Offset="0x000000" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_1" FileName="Sample001" Offset="0x0005B0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_2" FileName="Sample002" Offset="0x000780" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_3" FileName="Sample003" Offset="0x000C70" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_4" FileName="Sample004" Offset="0x001730" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_5" FileName="Sample005" Offset="0x001ED0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_6" FileName="Sample006" Offset="0x002D10" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_7" FileName="Sample007" Offset="0x004250" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_8" FileName="Sample008" Offset="0x005480" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_9" FileName="Sample009" Offset="0x0077D0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_10" FileName="Sample010" Offset="0x0097E0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_11" FileName="Sample011" Offset="0x00B660" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_12" FileName="Sample012" Offset="0x00BC80" SampleRate="32000" BaseNote="F3"/>
|
||||
<Sample Name="SAMPLE_0_13" FileName="Sample013" Offset="0x00E4B0" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_14" FileName="Sample014" Offset="0x011D80" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_15" FileName="Sample015" Offset="0x01C4A0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_16" FileName="Sample016" Offset="0x027DA0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_17" FileName="Sample017" Offset="0x033800" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_18" FileName="Sample018" Offset="0x0393F0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_19" FileName="Sample019" Offset="0x03D090" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_20" FileName="Sample020" Offset="0x03E360" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_21" FileName="Sample021" Offset="0x03ECE0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_22" FileName="Sample022" Offset="0x03F770" SampleRate="16000" BaseNote="G4"/>
|
||||
<Sample Name="SAMPLE_0_23" FileName="Sample023" Offset="0x040000" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_24" FileName="Sample024" Offset="0x040AA0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_25" FileName="Sample025" Offset="0x0414F0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_26" FileName="Sample026" Offset="0x041A20" SampleRate="8000" BaseNote="G3"/>
|
||||
<Sample Name="SAMPLE_0_27" FileName="Sample027" Offset="0x041CD0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_28" FileName="Sample028" Offset="0x0439A0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_29" FileName="Sample029" Offset="0x046810" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_30" FileName="Sample030" Offset="0x048840" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_31" FileName="Sample031" Offset="0x04A510" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_32" FileName="Sample032" Offset="0x04A6A0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_33" FileName="Sample033" Offset="0x04F790" SampleRate="23220" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_34" FileName="Sample034" Offset="0x053210" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_35" FileName="Sample035" Offset="0x055BA0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_36" FileName="Sample036" Offset="0x057D10" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_37" FileName="Sample037" Offset="0x05B590" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_38" FileName="Sample038" Offset="0x05CBA0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_39" FileName="Sample039" Offset="0x060240" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_40" FileName="Sample040" Offset="0x061B90" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_41" FileName="Sample041" Offset="0x063350" SampleRate="16000" BaseNote="AF4"/>
|
||||
<Sample Name="SAMPLE_0_42" FileName="Sample042" Offset="0x063B70" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_43" FileName="Sample043" Offset="0x064600" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_44" FileName="Sample044" Offset="0x064F70" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_45" FileName="Sample045" Offset="0x065580" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_46" FileName="Sample046" Offset="0x067FA0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_47" FileName="Sample047" Offset="0x068CC0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_48" FileName="Sample048" Offset="0x069130" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_49" FileName="Sample049" Offset="0x06A040" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_50" FileName="Sample050" Offset="0x06BA00" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_51" FileName="Sample051" Offset="0x06C3C0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_52" FileName="Sample052" Offset="0x06D5B0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_53" FileName="Sample053" Offset="0x071C70" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_54" FileName="Sample054" Offset="0x0732A0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_55" FileName="Sample055" Offset="0x074790" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_56" FileName="Sample056" Offset="0x077010" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_57" FileName="Sample057" Offset="0x077BA0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_58" FileName="Sample058" Offset="0x07AFD0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_59" FileName="Sample059" Offset="0x07D290" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_60" FileName="Sample060" Offset="0x07F3F0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_61" FileName="Sample061" Offset="0x07FC90" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_62" FileName="Sample062" Offset="0x080E00" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_63" FileName="Sample063" Offset="0x082000" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_64" FileName="Sample064" Offset="0x082ED0" SampleRate="22050" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_65" FileName="Sample065" Offset="0x084380" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_66" FileName="Sample066" Offset="0x087030" SampleRate="22050" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_67" FileName="Sample067" Offset="0x087440" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_68" FileName="Sample068" Offset="0x088620" SampleRate="22050" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_69" FileName="Sample069" Offset="0x088A50" SampleRate="45530" BaseNote="F1"/>
|
||||
<Sample Name="SAMPLE_0_70" FileName="Sample070" Offset="0x08A4B0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_71" FileName="Sample071" Offset="0x08E160" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_72" FileName="Sample072" Offset="0x08F6F0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_73" FileName="Sample073" Offset="0x093DB0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_74" FileName="Sample074" Offset="0x094B10" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_75" FileName="Sample075" Offset="0x098B00" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_76" FileName="Sample076" Offset="0x09D5F0" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_77" FileName="Sample077" Offset="0x0A0260" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_78" FileName="Sample078" Offset="0x0A14A0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_79" FileName="Sample079" Offset="0x0A2590" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_80" FileName="Sample080" Offset="0x0A9EF0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_81" FileName="Sample081" Offset="0x0AB9E0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_82" FileName="Sample082" Offset="0x0ADBA0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_83" FileName="Sample083" Offset="0x0AF0A0" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_84" FileName="Sample084" Offset="0x0B0960" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_85" FileName="Sample085" Offset="0x0B3600" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_86" FileName="Sample086" Offset="0x0B3B10" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_87" FileName="Sample087" Offset="0x0B4B90" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_88" FileName="Sample088" Offset="0x0B5A80" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_89" FileName="Sample089" Offset="0x0B8690" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_90" FileName="Sample090" Offset="0x0BA0D0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_91" FileName="Sample091" Offset="0x0BBB00" SampleRate="32000" BaseNote="B1"/>
|
||||
<Sample Name="SAMPLE_0_92" FileName="Sample092" Offset="0x0C42B0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_93" FileName="Sample093" Offset="0x0C5140" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_94" FileName="Sample094" Offset="0x0C88C0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_95" FileName="Sample095" Offset="0x0CAF60" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_96" FileName="Sample096" Offset="0x0D16F0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_97" FileName="Sample097" Offset="0x0D2110" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_98" FileName="Sample098" Offset="0x0D3DC0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_99" FileName="Sample099" Offset="0x0D57A0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_100" FileName="Sample100" Offset="0x0DE0A0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_101" FileName="Sample101" Offset="0x0E01F0" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_102" FileName="Sample102" Offset="0x0E2510" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_103" FileName="Sample103" Offset="0x0E44A0" SampleRate="22050" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_104" FileName="Sample104" Offset="0x0E4B00" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_105" FileName="Sample105" Offset="0x0E5B70" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_106" FileName="Sample106" Offset="0x0EA760" SampleRate="8000" BaseNote="A0"/>
|
||||
<Sample Name="SAMPLE_0_107" FileName="Sample107" Offset="0x0EAFC0" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_108" FileName="Sample108" Offset="0x0EB5B0" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_109" FileName="Sample109" Offset="0x0ECF40" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_110" FileName="Sample110" Offset="0x0EEB80" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_111" FileName="Sample111" Offset="0x0F2FE0" SampleRate="22050" BaseNote="GF3"/>
|
||||
<Sample Name="SAMPLE_0_112" FileName="Sample112" Offset="0x0F5350" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_113" FileName="Sample113" Offset="0x0F5A90" SampleRate="22050" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_114" FileName="Sample114" Offset="0x0F72A0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_115" FileName="Sample115" Offset="0x0FAD40" SampleRate="32000" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_0_116" FileName="Sample116" Offset="0x0FDFC0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_117" FileName="Sample117" Offset="0x1026F0" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_118" FileName="Sample118" Offset="0x106C20" SampleRate="22050" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_0_119" FileName="Sample119" Offset="0x108690" SampleRate="32000" BaseNote="F2"/>
|
||||
<Sample Name="SAMPLE_0_120" FileName="Sample120" Offset="0x10CD20" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_121" FileName="Sample121" Offset="0x10EFF0" SampleRate="32000" BaseNote="D4"/>
|
||||
<Sample Name="SAMPLE_0_122" FileName="Sample122" Offset="0x111520" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_123" FileName="Sample123" Offset="0x1129E0" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_124" FileName="Sample124" Offset="0x114D70" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_125" FileName="Sample125" Offset="0x1165E0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_126" FileName="Sample126" Offset="0x1176B0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_127" FileName="Sample127" Offset="0x118910" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_128" FileName="Sample128" Offset="0x119870" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_129" FileName="Sample129" Offset="0x11A270" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_130" FileName="Sample130" Offset="0x11B0E0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_131" FileName="Sample131" Offset="0x11B790" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_132" FileName="Sample132" Offset="0x11BE20" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_133" FileName="Sample133" Offset="0x11D6D0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_134" FileName="Sample134" Offset="0x11EE50" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_135" FileName="Sample135" Offset="0x11FB00" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_136" FileName="Sample136" Offset="0x120D60" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_137" FileName="Sample137" Offset="0x121BF0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_138" FileName="Sample138" Offset="0x122C10" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_139" FileName="Sample139" Offset="0x1243F0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_140" FileName="Sample140" Offset="0x125A90" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_141" FileName="Sample141" Offset="0x126ED0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_142" FileName="Sample142" Offset="0x128DA0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_143" FileName="Sample143" Offset="0x12AC80" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_144" FileName="Sample144" Offset="0x12CD30" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_145" FileName="Sample145" Offset="0x133AB0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_146" FileName="Sample146" Offset="0x139D70" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_147" FileName="Sample147" Offset="0x13AF50" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_148" FileName="Sample148" Offset="0x13C040" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_149" FileName="Sample149" Offset="0x13D3B0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_150" FileName="Sample150" Offset="0x13E870" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_151" FileName="Sample151" Offset="0x13F6B0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_152" FileName="Sample152" Offset="0x140FC0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_153" FileName="Sample153" Offset="0x141960" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_154" FileName="Sample154" Offset="0x143690" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_155" FileName="Sample155" Offset="0x146490" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_156" FileName="Sample156" Offset="0x1478F0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_157" FileName="Sample157" Offset="0x148390" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_158" FileName="Sample158" Offset="0x1493C0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_159" FileName="Sample159" Offset="0x14B440" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_160" FileName="Sample160" Offset="0x14C250" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_161" FileName="Sample161" Offset="0x151520" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_162" FileName="Sample162" Offset="0x15A6A0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_163" FileName="Sample163" Offset="0x15BE50" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_164" FileName="Sample164" Offset="0x15DCB0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_165" FileName="Sample165" Offset="0x15F4B0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_166" FileName="Sample166" Offset="0x1617F0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_167" FileName="Sample167" Offset="0x163280" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_168" FileName="Sample168" Offset="0x166790" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_169" FileName="Sample169" Offset="0x167800" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_170" FileName="Sample170" Offset="0x168650" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_171" FileName="Sample171" Offset="0x1698E0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_172" FileName="Sample172" Offset="0x16A450" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_173" FileName="Sample173" Offset="0x16AEA0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_174" FileName="Sample174" Offset="0x16B3E0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_175" FileName="Sample175" Offset="0x16CE20" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_176" FileName="Sample176" Offset="0x16EEA0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_177" FileName="Sample177" Offset="0x16FE60" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_178" FileName="Sample178" Offset="0x170E80" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_179" FileName="Sample179" Offset="0x171DA0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_180" FileName="Sample180" Offset="0x173320" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_181" FileName="Sample181" Offset="0x174240" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_182" FileName="Sample182" Offset="0x175140" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_183" FileName="Sample183" Offset="0x175C30" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_184" FileName="Sample184" Offset="0x177480" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_185" FileName="Sample185" Offset="0x178D40" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_186" FileName="Sample186" Offset="0x1795F0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_187" FileName="Sample187" Offset="0x17E6C0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_188" FileName="Sample188" Offset="0x182EC0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_189" FileName="Sample189" Offset="0x1844E0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_190" FileName="Sample190" Offset="0x185BA0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_191" FileName="Sample191" Offset="0x188170" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_192" FileName="Sample192" Offset="0x18A560" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_193" FileName="Sample193" Offset="0x18B650" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_194" FileName="Sample194" Offset="0x18D090" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_195" FileName="Sample195" Offset="0x18E480" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_196" FileName="Sample196" Offset="0x190200" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_197" FileName="Sample197" Offset="0x193410" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_198" FileName="Sample198" Offset="0x196950" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_199" FileName="Sample199" Offset="0x1971A0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_200" FileName="Sample200" Offset="0x197500" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_201" FileName="Sample201" Offset="0x198F30" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_202" FileName="Sample202" Offset="0x19F6D0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_203" FileName="Sample203" Offset="0x1A1670" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_204" FileName="Sample204" Offset="0x1A2580" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_205" FileName="Sample205" Offset="0x1A71E0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_206" FileName="Sample206" Offset="0x1A79C0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_207" FileName="Sample207" Offset="0x1AF2E0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_208" FileName="Sample208" Offset="0x1AFEE0" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_209" FileName="Sample209" Offset="0x1B3F50" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_210" FileName="Sample210" Offset="0x1B6530" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_211" FileName="Sample211" Offset="0x1B7B40" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_212" FileName="Sample212" Offset="0x1B8DB0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_213" FileName="Sample213" Offset="0x1B9D70" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_214" FileName="Sample214" Offset="0x1BB410" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_215" FileName="Sample215" Offset="0x1BC380" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_216" FileName="Sample216" Offset="0x1BFA40" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_217" FileName="Sample217" Offset="0x1C0F80" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_218" FileName="Sample218" Offset="0x1C2510" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_219" FileName="Sample219" Offset="0x1C6870" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_220" FileName="Sample220" Offset="0x1CC560" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_221" FileName="Sample221" Offset="0x1CF9C0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_222" FileName="Sample222" Offset="0x1D25C0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_223" FileName="Sample223" Offset="0x1D58F0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_224" FileName="Sample224" Offset="0x1D74B0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_225" FileName="Sample225" Offset="0x1D8420" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_226" FileName="Sample226" Offset="0x1D9880" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_227" FileName="Sample227" Offset="0x1DDA40" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_228" FileName="Sample228" Offset="0x1DE3C0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_229" FileName="Sample229" Offset="0x1DF040" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_230" FileName="Sample230" Offset="0x1E0140" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_231" FileName="Sample231" Offset="0x1E3160" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_232" FileName="Sample232" Offset="0x1E48E0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_233" FileName="Sample233" Offset="0x1E55F0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_234" FileName="Sample234" Offset="0x1E6000" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_235" FileName="Sample235" Offset="0x1E7E90" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_236" FileName="Sample236" Offset="0x1E9960" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_237" FileName="Sample237" Offset="0x1EB6B0" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_238" FileName="Sample238" Offset="0x1EC2B0" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_239" FileName="Sample239" Offset="0x1EC990" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_240" FileName="Sample240" Offset="0x1EE390" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_241" FileName="Sample241" Offset="0x1EF1B0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_242" FileName="Sample242" Offset="0x1EFCE0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_243" FileName="Sample243" Offset="0x1F1600" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_244" FileName="Sample244" Offset="0x1F3020" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_245" FileName="Sample245" Offset="0x1F4010" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_246" FileName="Sample246" Offset="0x1F4EB0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_247" FileName="Sample247" Offset="0x1F5E50" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_248" FileName="Sample248" Offset="0x1F7220" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_249" FileName="Sample249" Offset="0x1F9490" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_250" FileName="Sample250" Offset="0x1FA230" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_251" FileName="Sample251" Offset="0x1FB850" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_252" FileName="Sample252" Offset="0x1FEA30" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_253" FileName="Sample253" Offset="0x1FFD80" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_254" FileName="Sample254" Offset="0x200840" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_255" FileName="Sample255" Offset="0x206D10" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_256" FileName="Sample256" Offset="0x209E40" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_257" FileName="Sample257" Offset="0x20B580" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_258" FileName="Sample258" Offset="0x20BDA0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_259" FileName="Sample259" Offset="0x20C9E0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_260" FileName="Sample260" Offset="0x20DE70" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_261" FileName="Sample261" Offset="0x20F440" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_262" FileName="Sample262" Offset="0x2115A0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_263" FileName="Sample263" Offset="0x212040" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_264" FileName="Sample264" Offset="0x2147A0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_265" FileName="Sample265" Offset="0x214E10" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_266" FileName="Sample266" Offset="0x215810" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_267" FileName="Sample267" Offset="0x216210" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_268" FileName="Sample268" Offset="0x216D00" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_269" FileName="Sample269" Offset="0x2187D0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_270" FileName="Sample270" Offset="0x2193E0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_271" FileName="Sample271" Offset="0x219F10" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_272" FileName="Sample272" Offset="0x21A810" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_273" FileName="Sample273" Offset="0x21AA80" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_274" FileName="Sample274" Offset="0x21ACF0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_275" FileName="Sample275" Offset="0x21B150" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_276" FileName="Sample276" Offset="0x21B370" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_277" FileName="Sample277" Offset="0x21BBC0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_278" FileName="Sample278" Offset="0x21C330" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_279" FileName="Sample279" Offset="0x21CF00" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_280" FileName="Sample280" Offset="0x21DDB0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_281" FileName="Sample281" Offset="0x220770" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_282" FileName="Sample282" Offset="0x2222F0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_283" FileName="Sample283" Offset="0x222BA0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_284" FileName="Sample284" Offset="0x2230B0" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_285" FileName="Sample285" Offset="0x223C90" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_286" FileName="Sample286" Offset="0x224FD0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_287" FileName="Sample287" Offset="0x228A70" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_288" FileName="Sample288" Offset="0x22C380" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_289" FileName="Sample289" Offset="0x22DD50" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_290" FileName="Sample290" Offset="0x233280" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_291" FileName="Sample291" Offset="0x236F80" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_292" FileName="Sample292" Offset="0x237BA0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_293" FileName="Sample293" Offset="0x23AD60" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_294" FileName="Sample294" Offset="0x23D490" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_295" FileName="Sample295" Offset="0x240600" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_296" FileName="Sample296" Offset="0x241690" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_297" FileName="Sample297" Offset="0x241C20" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_298" FileName="Sample298" Offset="0x243440" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_299" FileName="Sample299" Offset="0x244DD0" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_300" FileName="Sample300" Offset="0x247290" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_301" FileName="Sample301" Offset="0x249810" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_302" FileName="Sample302" Offset="0x24AB70" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_303" FileName="Sample303" Offset="0x24BBE0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_304" FileName="Sample304" Offset="0x24C2C0" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_305" FileName="Sample305" Offset="0x24E060" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_306" FileName="Sample306" Offset="0x24F440" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_307" FileName="Sample307" Offset="0x24FED0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_308" FileName="Sample308" Offset="0x250E20" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_309" FileName="Sample309" Offset="0x2516D0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_310" FileName="Sample310" Offset="0x252B10" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_311" FileName="Sample311" Offset="0x255720" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_312" FileName="Sample312" Offset="0x2564A0" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_313" FileName="Sample313" Offset="0x2581C0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_314" FileName="Sample314" Offset="0x258360" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_315" FileName="Sample315" Offset="0x259120" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_316" FileName="Sample316" Offset="0x259BF0" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_317" FileName="Sample317" Offset="0x25AAC0" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_318" FileName="Sample318" Offset="0x25C140" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_319" FileName="Sample319" Offset="0x25CD60" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_320" FileName="Sample320" Offset="0x25DB50" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_321" FileName="Sample321" Offset="0x25E9E0" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_322" FileName="Sample322" Offset="0x25FC50" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_323" FileName="Sample323" Offset="0x260420" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_324" FileName="Sample324" Offset="0x261790" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_325" FileName="Sample325" Offset="0x262170" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_326" FileName="Sample326" Offset="0x263270" SampleRate="22050" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_327" FileName="Sample327" Offset="0x264B60" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_328" FileName="Sample328" Offset="0x26A060" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_329" FileName="Sample329" Offset="0x26AAD0" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_330" FileName="Sample330" Offset="0x26B960" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_331" FileName="Sample331" Offset="0x26BEF0" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_332" FileName="Sample332" Offset="0x26CE70" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_333" FileName="Sample333" Offset="0x26DF40" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_334" FileName="Sample334" Offset="0x26FC60" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_335" FileName="Sample335" Offset="0x270E40" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_336" FileName="Sample336" Offset="0x271A70" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_337" FileName="Sample337" Offset="0x273860" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_338" FileName="Sample338" Offset="0x274EA0" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_339" FileName="Sample339" Offset="0x2765B0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_340" FileName="Sample340" Offset="0x27C0A0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_341" FileName="Sample341" Offset="0x27E260" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_342" FileName="Sample342" Offset="0x280C70" SampleRate="16000" BaseNote="G3"/>
|
||||
<Sample Name="SAMPLE_0_343" FileName="Sample343" Offset="0x283440" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_344" FileName="Sample344" Offset="0x2869C0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_345" FileName="Sample345" Offset="0x28BF50" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_346" FileName="Sample346" Offset="0x28CE90" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_347" FileName="Sample347" Offset="0x2938F0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_348" FileName="Sample348" Offset="0x29B480" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_349" FileName="Sample349" Offset="0x29EB20" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_350" FileName="Sample350" Offset="0x29FE30" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_351" FileName="Sample351" Offset="0x2A4D40" SampleRate="32000" BaseNote="G4"/>
|
||||
<Sample Name="SAMPLE_0_352" FileName="Sample352" Offset="0x2A8500" SampleRate="32000" BaseNote="C2"/>
|
||||
<Sample Name="SAMPLE_0_353" FileName="Sample353" Offset="0x2AF020" SampleRate="22050" BaseNote="GF4"/>
|
||||
<Sample Name="SAMPLE_0_354" FileName="Sample354" Offset="0x2B43B0" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_355" FileName="Sample355" Offset="0x2B9E60" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_356" FileName="Sample356" Offset="0x2C8510" SampleRate="22050" BaseNote="A5"/>
|
||||
<Sample Name="SAMPLE_0_357" FileName="Sample357" Offset="0x2CFEE0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_358" FileName="Sample358" Offset="0x2D96A0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_359" FileName="Sample359" Offset="0x2DFF40" SampleRate="22050" BaseNote="G3"/>
|
||||
<Sample Name="SAMPLE_0_360" FileName="Sample360" Offset="0x2E7410" SampleRate="22050" BaseNote="DF3"/>
|
||||
<Sample Name="SAMPLE_0_361" FileName="Sample361" Offset="0x2EF650" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_362" FileName="Sample362" Offset="0x2F3300" SampleRate="32000" BaseNote="DF3"/>
|
||||
<Sample Name="SAMPLE_0_363" FileName="Sample363" Offset="0x2F8690" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_364" FileName="Sample364" Offset="0x2F9A90" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_365" FileName="Sample365" Offset="0x2FD270" SampleRate="32000" BaseNote="F3"/>
|
||||
<Sample Name="SAMPLE_0_366" FileName="Sample366" Offset="0x301EC0" SampleRate="32000" BaseNote="AF5"/>
|
||||
<Sample Name="SAMPLE_0_367" FileName="Sample367" Offset="0x304E30" SampleRate="22000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_368" FileName="Sample368" Offset="0x309BD0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_369" FileName="Sample369" Offset="0x30C360" SampleRate="32000" BaseNote="D4"/>
|
||||
<Sample Name="SAMPLE_0_370" FileName="Sample370" Offset="0x30EAF0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_371" FileName="Sample371" Offset="0x317260" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_372" FileName="Sample372" Offset="0x31F640" SampleRate="32000" BaseNote="C6"/>
|
||||
<Sample Name="SAMPLE_0_373" FileName="Sample373" Offset="0x324660" SampleRate="32000" BaseNote="E4"/>
|
||||
<Sample Name="SAMPLE_0_374" FileName="Sample374" Offset="0x328D10" SampleRate="32000" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_0_375" FileName="Sample375" Offset="0x32CA00" SampleRate="32000" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_0_376" FileName="Sample376" Offset="0x32ECB0" SampleRate="32000" BaseNote="E4"/>
|
||||
<Sample Name="SAMPLE_0_377" FileName="Sample377" Offset="0x332D10" SampleRate="32000" BaseNote="A2"/>
|
||||
<Sample Name="SAMPLE_0_378" FileName="Sample378" Offset="0x335740" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_379" FileName="Sample379" Offset="0x337A10" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_380" FileName="Sample380" Offset="0x338450" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_381" FileName="Sample381" Offset="0x33A980" SampleRate="32000" BaseNote="AF2"/>
|
||||
<Sample Name="SAMPLE_0_382" FileName="Sample382" Offset="0x33BC30" SampleRate="32000" BaseNote="EF5"/>
|
||||
<Sample Name="SAMPLE_0_383" FileName="Sample383" Offset="0x33D130" SampleRate="32000" BaseNote="DF5"/>
|
||||
<Sample Name="SAMPLE_0_384" FileName="Sample384" Offset="0x3403F0" SampleRate="32000" BaseNote="D3"/>
|
||||
<Sample Name="SAMPLE_0_385" FileName="Sample385" Offset="0x343870" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_386" FileName="Sample386" Offset="0x34D670" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_387" FileName="Sample387" Offset="0x351810" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_388" FileName="Sample388" Offset="0x359170" SampleRate="24000" BaseNote="AF5"/>
|
||||
<Sample Name="SAMPLE_0_389" FileName="Sample389" Offset="0x35C900" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_390" FileName="Sample390" Offset="0x35D100" SampleRate="22050" BaseNote="A3"/>
|
||||
<Sample Name="SAMPLE_0_391" FileName="Sample391" Offset="0x364580" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_392" FileName="Sample392" Offset="0x36FE80" SampleRate="27777" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_393" FileName="Sample393" Offset="0x374C20" SampleRate="32000" BaseNote="D3"/>
|
||||
<Sample Name="SAMPLE_0_394" FileName="Sample394" Offset="0x378360" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_395" FileName="Sample395" Offset="0x37A6B0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_396" FileName="Sample396" Offset="0x37B2A0" SampleRate="32000" BaseNote="F4"/>
|
||||
<Sample Name="SAMPLE_0_397" FileName="Sample397" Offset="0x382830" SampleRate="32000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_398" FileName="Sample398" Offset="0x384ED0" SampleRate="32000" BaseNote="BF2"/>
|
||||
<Sample Name="SAMPLE_0_399" FileName="Sample399" Offset="0x387060" SampleRate="48000" BaseNote="D3"/>
|
||||
<Sample Name="SAMPLE_0_400" FileName="Sample400" Offset="0x38F000" SampleRate="32000" BaseNote="BF4"/>
|
||||
<Sample Name="SAMPLE_0_401" FileName="Sample401" Offset="0x3926D0" SampleRate="32000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_402" FileName="Sample402" Offset="0x396F80" SampleRate="32000" BaseNote="C6"/>
|
||||
<Sample Name="SAMPLE_0_403" FileName="Sample403" Offset="0x397FA0" SampleRate="32000" BaseNote="G5"/>
|
||||
<Sample Name="SAMPLE_0_404" FileName="Sample404" Offset="0x399790" SampleRate="24000" BaseNote="GF5"/>
|
||||
<Sample Name="SAMPLE_0_405" FileName="Sample405" Offset="0x39A6B0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_406" FileName="Sample406" Offset="0x3A4BE0" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_407" FileName="Sample407" Offset="0x3AA6E0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_408" FileName="Sample408" Offset="0x3ACC20" SampleRate="32000" BaseNote="DF4"/>
|
||||
<Sample Name="SAMPLE_0_409" FileName="Sample409" Offset="0x3AE1C0" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_410" FileName="Sample410" Offset="0x3B45D0" SampleRate="32000" BaseNote="AF5"/>
|
||||
<Sample Name="SAMPLE_0_411" FileName="Sample411" Offset="0x3B5490" SampleRate="32000" BaseNote="E4"/>
|
||||
<Sample Name="SAMPLE_0_412" FileName="Sample412" Offset="0x3B63F0" SampleRate="32000" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_0_413" FileName="Sample413" Offset="0x3B71F0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_414" FileName="Sample414" Offset="0x3B94B0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_415" FileName="Sample415" Offset="0x3BBC80" SampleRate="22050" BaseNote="F6"/>
|
||||
<Sample Name="SAMPLE_0_416" FileName="Sample416" Offset="0x3BE750" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_417" FileName="Sample417" Offset="0x3BF6A0" SampleRate="32000" BaseNote="A1"/>
|
||||
<Sample Name="SAMPLE_0_418" FileName="Sample418" Offset="0x3C0360" SampleRate="24000" BaseNote="AF5"/>
|
||||
<Sample Name="SAMPLE_0_419" FileName="Sample419" Offset="0x3C2B40" SampleRate="24000" BaseNote="F4"/>
|
||||
<Sample Name="SAMPLE_0_420" FileName="Sample420" Offset="0x3C4D00" SampleRate="24000" BaseNote="BF2"/>
|
||||
<Sample Name="SAMPLE_0_421" FileName="Sample421" Offset="0x3C6BD0" SampleRate="32000" BaseNote="EF3"/>
|
||||
<Sample Name="SAMPLE_0_422" FileName="Sample422" Offset="0x3CAC50" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_423" FileName="Sample423" Offset="0x3CF8A0" SampleRate="16000" BaseNote="DF6"/>
|
||||
<Sample Name="SAMPLE_0_424" FileName="Sample424" Offset="0x3D0140" SampleRate="22050" BaseNote="B5"/>
|
||||
<Sample Name="SAMPLE_0_425" FileName="Sample425" Offset="0x3D0C00" SampleRate="32000" BaseNote="BF4"/>
|
||||
<Sample Name="SAMPLE_0_426" FileName="Sample426" Offset="0x3D3A40" SampleRate="32000" BaseNote="EF4"/>
|
||||
<Sample Name="SAMPLE_0_427" FileName="Sample427" Offset="0x3D62E0" SampleRate="16000" BaseNote="C2"/>
|
||||
<Sample Name="SAMPLE_0_428" FileName="Sample428" Offset="0x3E3F50" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_429" FileName="Sample429" Offset="0x3E8BB0" SampleRate="32000" BaseNote="BF2"/>
|
||||
<Sample Name="SAMPLE_0_0" FileName="Sample000" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_1" FileName="Sample001" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_2" FileName="Sample002" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_3" FileName="Sample003" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_4" FileName="Sample004" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_5" FileName="Sample005" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_6" FileName="Sample006" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_7" FileName="Sample007" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_8" FileName="Sample008" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_9" FileName="Sample009" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_10" FileName="Sample010" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_11" FileName="Sample011" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_12" FileName="Sample012" SampleRate="32000" BaseNote="F3"/>
|
||||
<Sample Name="SAMPLE_0_13" FileName="Sample013" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_14" FileName="Sample014" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_15" FileName="Sample015" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_16" FileName="Sample016" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_17" FileName="Sample017" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_18" FileName="Sample018" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_19" FileName="Sample019" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_20" FileName="Sample020" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_21" FileName="Sample021" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_22" FileName="Sample022" SampleRate="16000" BaseNote="G4"/>
|
||||
<Sample Name="SAMPLE_0_23" FileName="Sample023" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_24" FileName="Sample024" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_25" FileName="Sample025" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_26" FileName="Sample026" SampleRate="8000" BaseNote="G3"/>
|
||||
<Sample Name="SAMPLE_0_27" FileName="Sample027" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_28" FileName="Sample028" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_29" FileName="Sample029" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_30" FileName="Sample030" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_31" FileName="Sample031" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_32" FileName="Sample032" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_33" FileName="Sample033" SampleRate="23220" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_34" FileName="Sample034" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_35" FileName="Sample035" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_36" FileName="Sample036" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_37" FileName="Sample037" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_38" FileName="Sample038" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_39" FileName="Sample039" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_40" FileName="Sample040" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_41" FileName="Sample041" SampleRate="16000" BaseNote="AF4"/>
|
||||
<Sample Name="SAMPLE_0_42" FileName="Sample042" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_43" FileName="Sample043" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_44" FileName="Sample044" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_45" FileName="Sample045" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_46" FileName="Sample046" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_47" FileName="Sample047" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_48" FileName="Sample048" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_49" FileName="Sample049" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_50" FileName="Sample050" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_51" FileName="Sample051" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_52" FileName="Sample052" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_53" FileName="Sample053" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_54" FileName="Sample054" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_55" FileName="Sample055" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_56" FileName="Sample056" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_57" FileName="Sample057" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_58" FileName="Sample058" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_59" FileName="Sample059" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_60" FileName="Sample060" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_61" FileName="Sample061" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_62" FileName="Sample062" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_63" FileName="Sample063" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_64" FileName="Sample064" SampleRate="22050" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_65" FileName="Sample065" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_66" FileName="Sample066" SampleRate="22050" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_67" FileName="Sample067" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_68" FileName="Sample068" SampleRate="22050" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_69" FileName="Sample069" SampleRate="45530" BaseNote="F1"/>
|
||||
<Sample Name="SAMPLE_0_70" FileName="Sample070" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_71" FileName="Sample071" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_72" FileName="Sample072" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_73" FileName="Sample073" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_74" FileName="Sample074" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_75" FileName="Sample075" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_76" FileName="Sample076" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_77" FileName="Sample077" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_78" FileName="Sample078" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_79" FileName="Sample079" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_80" FileName="Sample080" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_81" FileName="Sample081" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_82" FileName="Sample082" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_83" FileName="Sample083" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_84" FileName="Sample084" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_85" FileName="Sample085" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_86" FileName="Sample086" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_87" FileName="Sample087" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_88" FileName="Sample088" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_89" FileName="Sample089" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_90" FileName="Sample090" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_91" FileName="Sample091" SampleRate="32000" BaseNote="B1"/>
|
||||
<Sample Name="SAMPLE_0_92" FileName="Sample092" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_93" FileName="Sample093" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_94" FileName="Sample094" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_95" FileName="Sample095" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_96" FileName="Sample096" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_97" FileName="Sample097" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_98" FileName="Sample098" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_99" FileName="Sample099" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_100" FileName="Sample100" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_101" FileName="Sample101" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_102" FileName="Sample102" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_103" FileName="Sample103" SampleRate="22050" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_104" FileName="Sample104" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_105" FileName="Sample105" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_106" FileName="Sample106" SampleRate="8000" BaseNote="A0"/>
|
||||
<Sample Name="SAMPLE_0_107" FileName="Sample107" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_108" FileName="Sample108" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_109" FileName="Sample109" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_110" FileName="Sample110" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_111" FileName="Sample111" SampleRate="22050" BaseNote="GF3"/>
|
||||
<Sample Name="SAMPLE_0_112" FileName="Sample112" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_113" FileName="Sample113" SampleRate="22050" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_114" FileName="Sample114" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_115" FileName="Sample115" SampleRate="32000" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_0_116" FileName="Sample116" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_117" FileName="Sample117" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_118" FileName="Sample118" SampleRate="22050" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_0_119" FileName="Sample119" SampleRate="32000" BaseNote="F2"/>
|
||||
<Sample Name="SAMPLE_0_120" FileName="Sample120" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_121" FileName="Sample121" SampleRate="32000" BaseNote="D4"/>
|
||||
<Sample Name="SAMPLE_0_122" FileName="Sample122" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_123" FileName="Sample123" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_124" FileName="Sample124" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_125" FileName="Sample125" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_126" FileName="Sample126" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_127" FileName="Sample127" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_128" FileName="Sample128" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_129" FileName="Sample129" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_130" FileName="Sample130" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_131" FileName="Sample131" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_132" FileName="Sample132" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_133" FileName="Sample133" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_134" FileName="Sample134" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_135" FileName="Sample135" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_136" FileName="Sample136" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_137" FileName="Sample137" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_138" FileName="Sample138" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_139" FileName="Sample139" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_140" FileName="Sample140" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_141" FileName="Sample141" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_142" FileName="Sample142" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_143" FileName="Sample143" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_144" FileName="Sample144" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_145" FileName="Sample145" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_146" FileName="Sample146" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_147" FileName="Sample147" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_148" FileName="Sample148" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_149" FileName="Sample149" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_150" FileName="Sample150" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_151" FileName="Sample151" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_152" FileName="Sample152" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_153" FileName="Sample153" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_154" FileName="Sample154" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_155" FileName="Sample155" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_156" FileName="Sample156" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_157" FileName="Sample157" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_158" FileName="Sample158" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_159" FileName="Sample159" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_160" FileName="Sample160" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_161" FileName="Sample161" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_162" FileName="Sample162" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_163" FileName="Sample163" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_164" FileName="Sample164" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_165" FileName="Sample165" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_166" FileName="Sample166" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_167" FileName="Sample167" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_168" FileName="Sample168" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_169" FileName="Sample169" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_170" FileName="Sample170" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_171" FileName="Sample171" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_172" FileName="Sample172" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_173" FileName="Sample173" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_174" FileName="Sample174" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_175" FileName="Sample175" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_176" FileName="Sample176" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_177" FileName="Sample177" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_178" FileName="Sample178" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_179" FileName="Sample179" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_180" FileName="Sample180" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_181" FileName="Sample181" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_182" FileName="Sample182" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_183" FileName="Sample183" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_184" FileName="Sample184" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_185" FileName="Sample185" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_186" FileName="Sample186" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_187" FileName="Sample187" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_188" FileName="Sample188" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_189" FileName="Sample189" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_190" FileName="Sample190" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_191" FileName="Sample191" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_192" FileName="Sample192" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_193" FileName="Sample193" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_194" FileName="Sample194" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_195" FileName="Sample195" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_196" FileName="Sample196" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_197" FileName="Sample197" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_198" FileName="Sample198" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_199" FileName="Sample199" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_200" FileName="Sample200" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_201" FileName="Sample201" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_202" FileName="Sample202" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_203" FileName="Sample203" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_204" FileName="Sample204" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_205" FileName="Sample205" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_206" FileName="Sample206" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_207" FileName="Sample207" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_208" FileName="Sample208" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_209" FileName="Sample209" SampleRate="20000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_210" FileName="Sample210" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_211" FileName="Sample211" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_212" FileName="Sample212" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_213" FileName="Sample213" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_214" FileName="Sample214" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_215" FileName="Sample215" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_216" FileName="Sample216" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_217" FileName="Sample217" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_218" FileName="Sample218" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_219" FileName="Sample219" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_220" FileName="Sample220" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_221" FileName="Sample221" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_222" FileName="Sample222" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_223" FileName="Sample223" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_224" FileName="Sample224" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_225" FileName="Sample225" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_226" FileName="Sample226" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_227" FileName="Sample227" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_228" FileName="Sample228" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_229" FileName="Sample229" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_230" FileName="Sample230" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_231" FileName="Sample231" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_232" FileName="Sample232" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_233" FileName="Sample233" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_234" FileName="Sample234" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_235" FileName="Sample235" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_236" FileName="Sample236" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_237" FileName="Sample237" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_238" FileName="Sample238" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_239" FileName="Sample239" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_240" FileName="Sample240" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_241" FileName="Sample241" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_242" FileName="Sample242" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_243" FileName="Sample243" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_244" FileName="Sample244" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_245" FileName="Sample245" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_246" FileName="Sample246" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_247" FileName="Sample247" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_248" FileName="Sample248" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_249" FileName="Sample249" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_250" FileName="Sample250" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_251" FileName="Sample251" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_252" FileName="Sample252" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_253" FileName="Sample253" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_254" FileName="Sample254" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_255" FileName="Sample255" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_256" FileName="Sample256" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_257" FileName="Sample257" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_258" FileName="Sample258" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_259" FileName="Sample259" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_260" FileName="Sample260" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_261" FileName="Sample261" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_262" FileName="Sample262" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_263" FileName="Sample263" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_264" FileName="Sample264" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_265" FileName="Sample265" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_266" FileName="Sample266" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_267" FileName="Sample267" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_268" FileName="Sample268" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_269" FileName="Sample269" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_270" FileName="Sample270" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_271" FileName="Sample271" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_272" FileName="Sample272" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_273" FileName="Sample273" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_274" FileName="Sample274" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_275" FileName="Sample275" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_276" FileName="Sample276" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_277" FileName="Sample277" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_278" FileName="Sample278" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_279" FileName="Sample279" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_280" FileName="Sample280" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_281" FileName="Sample281" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_282" FileName="Sample282" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_283" FileName="Sample283" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_284" FileName="Sample284" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_285" FileName="Sample285" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_286" FileName="Sample286" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_287" FileName="Sample287" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_288" FileName="Sample288" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_289" FileName="Sample289" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_290" FileName="Sample290" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_291" FileName="Sample291" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_292" FileName="Sample292" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_293" FileName="Sample293" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_294" FileName="Sample294" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_295" FileName="Sample295" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_296" FileName="Sample296" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_297" FileName="Sample297" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_298" FileName="Sample298" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_299" FileName="Sample299" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_300" FileName="Sample300" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_301" FileName="Sample301" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_302" FileName="Sample302" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_303" FileName="Sample303" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_304" FileName="Sample304" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_305" FileName="Sample305" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_306" FileName="Sample306" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_307" FileName="Sample307" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_308" FileName="Sample308" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_309" FileName="Sample309" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_310" FileName="Sample310" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_311" FileName="Sample311" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_312" FileName="Sample312" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_313" FileName="Sample313" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_314" FileName="Sample314" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_315" FileName="Sample315" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_316" FileName="Sample316" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_317" FileName="Sample317" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_318" FileName="Sample318" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_319" FileName="Sample319" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_320" FileName="Sample320" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_321" FileName="Sample321" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_322" FileName="Sample322" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_323" FileName="Sample323" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_324" FileName="Sample324" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_325" FileName="Sample325" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_326" FileName="Sample326" SampleRate="22050" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_327" FileName="Sample327" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_328" FileName="Sample328" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_329" FileName="Sample329" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_330" FileName="Sample330" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_331" FileName="Sample331" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_332" FileName="Sample332" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_333" FileName="Sample333" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_334" FileName="Sample334" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_335" FileName="Sample335" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_336" FileName="Sample336" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_337" FileName="Sample337" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_338" FileName="Sample338" SampleRate="16000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_339" FileName="Sample339" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_340" FileName="Sample340" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_341" FileName="Sample341" SampleRate="16000" BaseNote="AF3"/>
|
||||
<Sample Name="SAMPLE_0_342" FileName="Sample342" SampleRate="16000" BaseNote="G3"/>
|
||||
<Sample Name="SAMPLE_0_343" FileName="Sample343" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_344" FileName="Sample344" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_345" FileName="Sample345" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_346" FileName="Sample346" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_347" FileName="Sample347" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_348" FileName="Sample348" SampleRate="16000" BaseNote="C0"/>
|
||||
<Sample Name="SAMPLE_0_349" FileName="Sample349" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_350" FileName="Sample350" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_351" FileName="Sample351" SampleRate="32000" BaseNote="G4"/>
|
||||
<Sample Name="SAMPLE_0_352" FileName="Sample352" SampleRate="32000" BaseNote="C2"/>
|
||||
<Sample Name="SAMPLE_0_353" FileName="Sample353" SampleRate="22050" BaseNote="GF4"/>
|
||||
<Sample Name="SAMPLE_0_354" FileName="Sample354" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_355" FileName="Sample355" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_356" FileName="Sample356" SampleRate="22050" BaseNote="A5"/>
|
||||
<Sample Name="SAMPLE_0_357" FileName="Sample357" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_358" FileName="Sample358" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_359" FileName="Sample359" SampleRate="22050" BaseNote="G3"/>
|
||||
<Sample Name="SAMPLE_0_360" FileName="Sample360" SampleRate="22050" BaseNote="DF3"/>
|
||||
<Sample Name="SAMPLE_0_361" FileName="Sample361" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_362" FileName="Sample362" SampleRate="32000" BaseNote="DF3"/>
|
||||
<Sample Name="SAMPLE_0_363" FileName="Sample363" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_364" FileName="Sample364" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_365" FileName="Sample365" SampleRate="32000" BaseNote="F3"/>
|
||||
<Sample Name="SAMPLE_0_366" FileName="Sample366" SampleRate="32000" BaseNote="AF5"/>
|
||||
<Sample Name="SAMPLE_0_367" FileName="Sample367" SampleRate="22000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_368" FileName="Sample368" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_369" FileName="Sample369" SampleRate="32000" BaseNote="D4"/>
|
||||
<Sample Name="SAMPLE_0_370" FileName="Sample370" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_371" FileName="Sample371" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_372" FileName="Sample372" SampleRate="32000" BaseNote="C6"/>
|
||||
<Sample Name="SAMPLE_0_373" FileName="Sample373" SampleRate="32000" BaseNote="E4"/>
|
||||
<Sample Name="SAMPLE_0_374" FileName="Sample374" SampleRate="32000" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_0_375" FileName="Sample375" SampleRate="32000" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_0_376" FileName="Sample376" SampleRate="32000" BaseNote="E4"/>
|
||||
<Sample Name="SAMPLE_0_377" FileName="Sample377" SampleRate="32000" BaseNote="A2"/>
|
||||
<Sample Name="SAMPLE_0_378" FileName="Sample378" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_379" FileName="Sample379" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_380" FileName="Sample380" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_381" FileName="Sample381" SampleRate="32000" BaseNote="AF2"/>
|
||||
<Sample Name="SAMPLE_0_382" FileName="Sample382" SampleRate="32000" BaseNote="EF5"/>
|
||||
<Sample Name="SAMPLE_0_383" FileName="Sample383" SampleRate="32000" BaseNote="DF5"/>
|
||||
<Sample Name="SAMPLE_0_384" FileName="Sample384" SampleRate="32000" BaseNote="D3"/>
|
||||
<Sample Name="SAMPLE_0_385" FileName="Sample385" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_386" FileName="Sample386" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_387" FileName="Sample387" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_388" FileName="Sample388" SampleRate="24000" BaseNote="AF5"/>
|
||||
<Sample Name="SAMPLE_0_389" FileName="Sample389" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_390" FileName="Sample390" SampleRate="32000" BaseNote="C4" VersionInclude="ntsc-1.0,ntsc-1.1"/>
|
||||
<Sample Name="SAMPLE_0_391" FileName="Sample391" SampleRate="16000" BaseNote="C4" VersionInclude="ntsc-1.0,ntsc-1.1"/>
|
||||
<Sample Name="SAMPLE_0_392" FileName="Sample392" SampleRate="16000" BaseNote="C2" VersionInclude="ntsc-1.0,ntsc-1.1"/>
|
||||
<Sample Name="SAMPLE_0_393" FileName="Sample393" SampleRate="22050" BaseNote="A3"/>
|
||||
<Sample Name="SAMPLE_0_394" FileName="Sample394" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_395" FileName="Sample395" SampleRate="27777" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_396" FileName="Sample396" SampleRate="32000" BaseNote="D3"/>
|
||||
<Sample Name="SAMPLE_0_397" FileName="Sample397" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_398" FileName="Sample398" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_399" FileName="Sample399" SampleRate="32000" BaseNote="F4"/>
|
||||
<Sample Name="SAMPLE_0_400" FileName="Sample400" SampleRate="32000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_401" FileName="Sample401" SampleRate="32000" BaseNote="BF2"/>
|
||||
<Sample Name="SAMPLE_0_402" FileName="Sample402" SampleRate="48000" BaseNote="D3"/>
|
||||
<Sample Name="SAMPLE_0_403" FileName="Sample403" SampleRate="32000" BaseNote="BF4"/>
|
||||
<Sample Name="SAMPLE_0_404" FileName="Sample404" SampleRate="32000" BaseNote="BF3"/>
|
||||
<Sample Name="SAMPLE_0_405" FileName="Sample405" SampleRate="32000" BaseNote="C6"/>
|
||||
<Sample Name="SAMPLE_0_406" FileName="Sample406" SampleRate="32000" BaseNote="G5"/>
|
||||
<Sample Name="SAMPLE_0_407" FileName="Sample407" SampleRate="24000" BaseNote="GF5"/>
|
||||
<Sample Name="SAMPLE_0_408" FileName="Sample408" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_409" FileName="Sample409" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_410" FileName="Sample410" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_411" FileName="Sample411" SampleRate="32000" BaseNote="DF4"/>
|
||||
<Sample Name="SAMPLE_0_412" FileName="Sample412" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_413" FileName="Sample413" SampleRate="32000" BaseNote="AF5"/>
|
||||
<Sample Name="SAMPLE_0_414" FileName="Sample414" SampleRate="32000" BaseNote="E4"/>
|
||||
<Sample Name="SAMPLE_0_415" FileName="Sample415" SampleRate="32000" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_0_416" FileName="Sample416" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_417" FileName="Sample417" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_418" FileName="Sample418" SampleRate="22050" BaseNote="F6"/>
|
||||
<Sample Name="SAMPLE_0_419" FileName="Sample419" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_420" FileName="Sample420" SampleRate="32000" BaseNote="A1"/>
|
||||
<Sample Name="SAMPLE_0_421" FileName="Sample421" SampleRate="24000" BaseNote="AF5"/>
|
||||
<Sample Name="SAMPLE_0_422" FileName="Sample422" SampleRate="24000" BaseNote="F4"/>
|
||||
<Sample Name="SAMPLE_0_423" FileName="Sample423" SampleRate="24000" BaseNote="BF2"/>
|
||||
<Sample Name="SAMPLE_0_424" FileName="Sample424" SampleRate="32000" BaseNote="EF3"/>
|
||||
<Sample Name="SAMPLE_0_425" FileName="Sample425" SampleRate="22050" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_426" FileName="Sample426" SampleRate="16000" BaseNote="DF6"/>
|
||||
<Sample Name="SAMPLE_0_427" FileName="Sample427" SampleRate="22050" BaseNote="B5"/>
|
||||
<Sample Name="SAMPLE_0_428" FileName="Sample428" SampleRate="32000" BaseNote="BF4"/>
|
||||
<Sample Name="SAMPLE_0_429" FileName="Sample429" SampleRate="32000" BaseNote="EF4"/>
|
||||
<Sample Name="SAMPLE_0_430" FileName="Sample430" SampleRate="16000" BaseNote="C2" VersionExclude="ntsc-1.0,ntsc-1.1"/>
|
||||
<Sample Name="SAMPLE_0_431" FileName="Sample431" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_0_432" FileName="Sample432" SampleRate="32000" BaseNote="BF2"/>
|
||||
</SampleBank>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- This file is only for extraction of vanilla data. For other purposes see assets/audio/samplebanks/ -->
|
||||
<SampleBank Name="SampleBank_2" Index="2">
|
||||
<Sample Name="SAMPLE_2_0" FileName="Sample0" Offset="0x000000" SampleRate="32000" BaseNote="F4"/>
|
||||
<Sample Name="SAMPLE_2_0" FileName="Sample0" SampleRate="32000" BaseNote="F4"/>
|
||||
</SampleBank>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<!-- This file is only for extraction of vanilla data. For other purposes see assets/audio/samplebanks/ -->
|
||||
<SampleBank Name="SampleBank_3" Index="3">
|
||||
<Sample Name="SAMPLE_3_0" FileName="Sample0" Offset="0x000000" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_3_1" FileName="Sample1" Offset="0x008BC0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_3_2" FileName="Sample2" Offset="0x00A590" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_3_3" FileName="Sample3" Offset="0x00B3B0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_3_4" FileName="Sample4" Offset="0x016480" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_3_0" FileName="Sample0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_3_1" FileName="Sample1" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_3_2" FileName="Sample2" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_3_3" FileName="Sample3" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_3_4" FileName="Sample4" SampleRate="32000" BaseNote="C4"/>
|
||||
</SampleBank>
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<!-- This file is only for extraction of vanilla data. For other purposes see assets/audio/samplebanks/ -->
|
||||
<SampleBank Name="SampleBank_4" Index="4">
|
||||
<Sample Name="SAMPLE_4_0" FileName="Sample0" Offset="0x000000" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_4_1" FileName="Sample1" Offset="0x006410" SampleRate="32000" BaseNote="AF5"/>
|
||||
<Sample Name="SAMPLE_4_2" FileName="Sample2" Offset="0x0072D0" SampleRate="32000" BaseNote="E4"/>
|
||||
<Sample Name="SAMPLE_4_3" FileName="Sample3" Offset="0x008230" SampleRate="32000" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_4_4" FileName="Sample4" Offset="0x009030" SampleRate="32000" BaseNote="DF4"/>
|
||||
<Sample Name="SAMPLE_4_0" FileName="Sample0" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_4_1" FileName="Sample1" SampleRate="32000" BaseNote="AF5"/>
|
||||
<Sample Name="SAMPLE_4_2" FileName="Sample2" SampleRate="32000" BaseNote="E4"/>
|
||||
<Sample Name="SAMPLE_4_3" FileName="Sample3" SampleRate="32000" BaseNote="E3"/>
|
||||
<Sample Name="SAMPLE_4_4" FileName="Sample4" SampleRate="32000" BaseNote="DF4"/>
|
||||
</SampleBank>
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
<!-- This file is only for extraction of vanilla data. For other purposes see assets/audio/samplebanks/ -->
|
||||
<SampleBank Name="SampleBank_5" Index="5">
|
||||
<Sample Name="SAMPLE_5_0" FileName="Sample0" Offset="0x000000" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_5_1" FileName="Sample1" Offset="0x002540" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_5_2" FileName="Sample2" Offset="0x004800" SampleRate="22050" BaseNote="BF4"/>
|
||||
<Sample Name="SAMPLE_5_3" FileName="Sample3" Offset="0x0072D0" SampleRate="16000" BaseNote="DF6"/>
|
||||
<Sample Name="SAMPLE_5_4" FileName="Sample4" Offset="0x007B70" SampleRate="22050" BaseNote="B5"/>
|
||||
<Sample Name="SAMPLE_5_5" FileName="Sample5" Offset="0x008630" SampleRate="22050" BaseNote="A3"/>
|
||||
<Sample Name="SAMPLE_5_0" FileName="Sample0" SampleRate="16000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_5_1" FileName="Sample1" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_5_2" FileName="Sample2" SampleRate="22050" BaseNote="BF4"/>
|
||||
<Sample Name="SAMPLE_5_3" FileName="Sample3" SampleRate="16000" BaseNote="DF6"/>
|
||||
<Sample Name="SAMPLE_5_4" FileName="Sample4" SampleRate="22050" BaseNote="B5"/>
|
||||
<Sample Name="SAMPLE_5_5" FileName="Sample5" SampleRate="22050" BaseNote="A3"/>
|
||||
</SampleBank>
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
<!-- This file is only for extraction of vanilla data. For other purposes see assets/audio/samplebanks/ -->
|
||||
<SampleBank Name="SampleBank_6" Index="6">
|
||||
<Sample Name="SAMPLE_6_0" FileName="Sample0" Offset="0x000000" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_6_1" FileName="Sample1" Offset="0x00B0D0" SampleRate="32000" BaseNote="BF2"/>
|
||||
<Sample Name="SAMPLE_6_2" FileName="Sample2" Offset="0x00E120" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_6_3" FileName="Sample3" Offset="0x0103E0" SampleRate="22050" BaseNote="BF4"/>
|
||||
<Sample Name="SAMPLE_6_4" FileName="Sample4" Offset="0x012EB0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_6_5" FileName="Sample5" Offset="0x01D3E0" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_6_6" FileName="Sample6" Offset="0x022EE0" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_6_0" FileName="Sample0" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_6_1" FileName="Sample1" SampleRate="32000" BaseNote="BF2"/>
|
||||
<Sample Name="SAMPLE_6_2" FileName="Sample2" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_6_3" FileName="Sample3" SampleRate="22050" BaseNote="BF4"/>
|
||||
<Sample Name="SAMPLE_6_4" FileName="Sample4" SampleRate="32000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_6_5" FileName="Sample5" SampleRate="24000" BaseNote="C4"/>
|
||||
<Sample Name="SAMPLE_6_6" FileName="Sample6" SampleRate="24000" BaseNote="C4"/>
|
||||
</SampleBank>
|
||||
|
|
|
@ -5,16 +5,19 @@
|
|||
<Envelope Name="Env1"/>
|
||||
<Envelope Name="Env2"/>
|
||||
<Envelope Name="Env3"/>
|
||||
<Envelope Name="Env4"/>
|
||||
<Envelope Name="Env4" VersionExclude="ntsc-1.0,ntsc-1.1"/>
|
||||
</Envelopes>
|
||||
<Instruments>
|
||||
<Instrument ProgramNumber="0" Name="INST_0" VersionInclude="ntsc-1.0,ntsc-1.1"/>
|
||||
<Instrument ProgramNumber="1" Name="INST_1" VersionInclude="ntsc-1.0,ntsc-1.1"/>
|
||||
<Instrument ProgramNumber="2" Name="INST_2" VersionInclude="ntsc-1.0,ntsc-1.1"/>
|
||||
<Instrument ProgramNumber="3" Name="INST_3"/>
|
||||
<Instrument ProgramNumber="5" Name="INST_5"/>
|
||||
<Instrument ProgramNumber="6" Name="INST_6"/>
|
||||
<Instrument ProgramNumber="10" Name="INST_10"/>
|
||||
<Instrument ProgramNumber="11" Name="INST_11"/>
|
||||
<Instrument ProgramNumber="12" Name="INST_12"/>
|
||||
<Instrument ProgramNumber="13" Name="INST_13"/>
|
||||
<Instrument ProgramNumber="10" Name="INST_10" VersionExclude="ntsc-1.0,ntsc-1.1"/>
|
||||
<Instrument ProgramNumber="11" Name="INST_11" VersionExclude="ntsc-1.0,ntsc-1.1"/>
|
||||
<Instrument ProgramNumber="12" Name="INST_12" VersionExclude="ntsc-1.0,ntsc-1.1"/>
|
||||
<Instrument ProgramNumber="13" Name="INST_13" VersionExclude="ntsc-1.0,ntsc-1.1"/>
|
||||
</Instruments>
|
||||
<Drums>
|
||||
<Drum Name="DRUM_0"/>
|
||||
|
|
|
@ -389,12 +389,18 @@ ALIGNED(4) typedef struct PreNmiBuff {
|
|||
} PreNmiBuff; // size = 0x18 (actually osAppNMIBuffer is 0x40 bytes large but the rest is unused)
|
||||
|
||||
typedef enum ViModeEditState {
|
||||
#if OOT_VERSION < PAL_1_0
|
||||
/* -2 */ VI_MODE_EDIT_STATE_NEGATIVE_2 = -2,
|
||||
/* -1 */ VI_MODE_EDIT_STATE_NEGATIVE_1,
|
||||
/* 0 */ VI_MODE_EDIT_STATE_INACTIVE,
|
||||
/* 1 */ VI_MODE_EDIT_STATE_2, // active, more adjustments
|
||||
/* 2 */ VI_MODE_EDIT_STATE_3 // active, more adjustments, print comparison with NTSC LAN1 mode
|
||||
#else
|
||||
/* 0 */ VI_MODE_EDIT_STATE_INACTIVE,
|
||||
/* 1 */ VI_MODE_EDIT_STATE_ACTIVE,
|
||||
/* 2 */ VI_MODE_EDIT_STATE_2, // active, more adjustments
|
||||
/* 3 */ VI_MODE_EDIT_STATE_3 // active, more adjustments, print comparison with NTSC LAN1 mode
|
||||
#endif
|
||||
} ViModeEditState;
|
||||
|
||||
typedef struct ViMode {
|
||||
|
|
|
@ -146,8 +146,9 @@ typedef struct ActorShape {
|
|||
//
|
||||
#define ACTOR_FLAG_10 (1 << 10)
|
||||
|
||||
//
|
||||
#define ACTOR_FLAG_ENKUSA_CUT (1 << 11)
|
||||
// A clump of grass (EN_KUSA) has been destroyed.
|
||||
// This flag is used to communicate with the spawner actor (OBJ_MURE).
|
||||
#define ACTOR_FLAG_GRASS_DESTROYED (1 << 11)
|
||||
|
||||
// Actor will not shake when a quake occurs
|
||||
#define ACTOR_FLAG_IGNORE_QUAKE (1 << 12)
|
||||
|
@ -155,11 +156,11 @@ typedef struct ActorShape {
|
|||
//
|
||||
#define ACTOR_FLAG_13 (1 << 13)
|
||||
|
||||
//
|
||||
#define ACTOR_FLAG_14 (1 << 14)
|
||||
// When hit by an arrow, the actor will be able to attach to the arrow and fly with it in the air
|
||||
#define ACTOR_FLAG_CAN_ATTACH_TO_ARROW (1 << 14)
|
||||
|
||||
//
|
||||
#define ACTOR_FLAG_15 (1 << 15)
|
||||
// Actor is currently attached to an arrow and flying with it in the air
|
||||
#define ACTOR_FLAG_ATTACHED_TO_ARROW (1 << 15)
|
||||
|
||||
// Player automatically accepts a Talk Offer without needing to press the A button.
|
||||
// Player still has to meet all conditions to be able to receive a talk offer (for example, being in range).
|
||||
|
|
2
spec
2
spec
|
@ -219,7 +219,9 @@ beginseg
|
|||
include "$(BUILD_DIR)/assets/audio/soundfonts/Soundfont_35.o"
|
||||
include "$(BUILD_DIR)/assets/audio/soundfonts/Soundfont_36.o"
|
||||
include "$(BUILD_DIR)/assets/audio/soundfonts/Soundfont_37.o"
|
||||
#if OOT_VERSION >= PAL_1_0
|
||||
include "$(BUILD_DIR)/assets/audio/audiobank_padding.o"
|
||||
#endif
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#if PLATFORM_N64
|
||||
|
||||
#pragma increment_block_number "ntsc-1.2:0 pal-1.0:0 pal-1.1:0"
|
||||
#pragma increment_block_number "ntsc-1.0:0 ntsc-1.1:0 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
|
||||
#include "global.h"
|
||||
#include "fault.h"
|
||||
|
@ -8,7 +8,7 @@
|
|||
#include "stack.h"
|
||||
#include "terminal.h"
|
||||
|
||||
#pragma increment_block_number "ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
|
||||
#pragma increment_block_number "ntsc-1.0:192 ntsc-1.1:192 ntsc-1.2:96 pal-1.0:96 pal-1.1:96"
|
||||
|
||||
typedef struct FaultMgr {
|
||||
OSThread thread;
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
#define GFXPOOL_TAIL_MAGIC 0x5678
|
||||
|
||||
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \
|
||||
"ntsc-1.2:160 pal-1.0:160 pal-1.1:160"
|
||||
"ntsc-1.0:192 ntsc-1.1:192 ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
|
||||
|
||||
/**
|
||||
* The time at which the previous `Graph_Update` ended.
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
extern uintptr_t gSegments[NUM_SEGMENTS];
|
||||
|
||||
#pragma increment_block_number "gc-eu:252 gc-eu-mq:252 gc-jp:252 gc-jp-ce:252 gc-jp-mq:252 gc-us:252 gc-us-mq:252" \
|
||||
"ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
"ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
|
||||
extern struct PreNmiBuff* gAppNmiBufferPtr;
|
||||
extern struct Scheduler gScheduler;
|
||||
|
@ -24,7 +24,7 @@ extern struct IrqMgr gIrqMgr;
|
|||
#endif
|
||||
|
||||
#pragma increment_block_number "gc-eu:160 gc-eu-mq:160 gc-jp:160 gc-jp-ce:160 gc-jp-mq:160 gc-us:160 gc-us-mq:160" \
|
||||
"ntsc-1.2:148 pal-1.0:146 pal-1.1:146"
|
||||
"ntsc-1.0:151 ntsc-1.1:151 ntsc-1.2:151 pal-1.0:149 pal-1.1:149"
|
||||
|
||||
extern u8 _buffersSegmentEnd[];
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
#include "sys_math3d.h"
|
||||
|
||||
#pragma increment_block_number "gc-eu:103 gc-eu-mq:103 gc-jp:103 gc-jp-ce:103 gc-jp-mq:103 gc-us:103 gc-us-mq:103" \
|
||||
"ntsc-1.2:79 pal-1.0:80 pal-1.1:80"
|
||||
"ntsc-1.0:80 ntsc-1.1:80 ntsc-1.2:79 pal-1.0:80 pal-1.1:80"
|
||||
|
||||
s32 Math3D_LineVsLineClosestTwoPoints(Vec3f* lineAPointA, Vec3f* lineAPointB, Vec3f* lineBPointA, Vec3f* lineBPointB,
|
||||
Vec3f* lineAClosestToB, Vec3f* lineBClosestToA);
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
#include "assets/objects/object_bdoor/object_bdoor.h"
|
||||
|
||||
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \
|
||||
"ntsc-1.2:0 pal-1.0:0 pal-1.1:0"
|
||||
"ntsc-1.0:0 ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0"
|
||||
|
||||
static CollisionPoly* sCurCeilingPoly;
|
||||
static s32 sCurCeilingBgId;
|
||||
|
@ -2072,7 +2072,7 @@ s32 func_8002F9EC(PlayState* play, Actor* actor, CollisionPoly* poly, s32 bgId,
|
|||
}
|
||||
|
||||
#pragma increment_block_number "gc-eu:22 gc-eu-mq:22 gc-jp:22 gc-jp-ce:22 gc-jp-mq:22 gc-us:22 gc-us-mq:22" \
|
||||
"ntsc-1.2:22 pal-1.0:22 pal-1.1:22"
|
||||
"ntsc-1.0:22 ntsc-1.1:22 ntsc-1.2:22 pal-1.0:22 pal-1.1:22"
|
||||
|
||||
// Local data used for Farore's Wind light (stored in BSS)
|
||||
LightInfo D_8015BC00;
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#include "global.h"
|
||||
#include "terminal.h"
|
||||
|
||||
#pragma increment_block_number "ntsc-1.2:136"
|
||||
#pragma increment_block_number "ntsc-1.0:136 ntsc-1.1:136 ntsc-1.2:136"
|
||||
|
||||
u16 DynaSSNodeList_GetNextNodeIdx(DynaSSNodeList* nodeList);
|
||||
void BgCheck_GetStaticLookupIndicesFromPos(CollisionContext* colCtx, Vec3f* pos, Vec3i* sector);
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
#include "overlays/actors/ovl_En_Horse/z_en_horse.h"
|
||||
|
||||
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192" \
|
||||
"ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
|
||||
"ntsc-1.0:192 ntsc-1.1:192 ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
|
||||
|
||||
s16 Camera_RequestSettingImpl(Camera* camera, s16 requestedSetting, s16 flags);
|
||||
s32 Camera_RequestModeImpl(Camera* camera, s16 requestedMode, u8 forceModeChange);
|
||||
|
@ -3639,7 +3639,7 @@ s32 Camera_KeepOn3(Camera* camera) {
|
|||
}
|
||||
|
||||
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \
|
||||
"ntsc-1.2:90 pal-1.0:88 pal-1.1:88"
|
||||
"ntsc-1.0:93 ntsc-1.1:93 ntsc-1.2:93 pal-1.0:91 pal-1.1:91"
|
||||
|
||||
s32 Camera_KeepOn4(Camera* camera) {
|
||||
static Vec3f D_8015BD50;
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
#include "z_lib.h"
|
||||
|
||||
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \
|
||||
"ntsc-1.2:96 pal-1.0:96 pal-1.1:96"
|
||||
"ntsc-1.0:104 ntsc-1.1:104 ntsc-1.2:104 pal-1.0:104 pal-1.1:104"
|
||||
|
||||
typedef s32 (*ColChkResetFunc)(PlayState*, Collider*);
|
||||
typedef void (*ColChkApplyFunc)(PlayState*, CollisionCheckContext*, Collider*);
|
||||
|
@ -2225,7 +2225,7 @@ void CollisionCheck_ATTrisVsACCyl(PlayState* play, CollisionCheckContext* colChk
|
|||
}
|
||||
|
||||
#pragma increment_block_number "gc-eu:252 gc-eu-mq:252 gc-jp:252 gc-jp-ce:252 gc-jp-mq:252 gc-us:252 gc-us-mq:252" \
|
||||
"ntsc-1.2:252 pal-1.0:252 pal-1.1:252"
|
||||
"ntsc-1.0:252 ntsc-1.1:252 ntsc-1.2:252 pal-1.0:252 pal-1.1:252"
|
||||
|
||||
void CollisionCheck_ATCylVsACQuad(PlayState* play, CollisionCheckContext* colChkCtx, Collider* atCol, Collider* acCol) {
|
||||
static TriNorm tri1;
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
#include "versions.h"
|
||||
|
||||
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \
|
||||
"ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
|
||||
"ntsc-1.0:192 ntsc-1.1:192 ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
|
||||
|
||||
ALIGNED(16) SaveContext gSaveContext;
|
||||
u32 D_8015FA88;
|
||||
|
|
|
@ -13,7 +13,7 @@ typedef struct InputCombo {
|
|||
} InputCombo; // size = 0x4
|
||||
|
||||
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192" \
|
||||
"ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
|
||||
"ntsc-1.0:192 ntsc-1.1:192 ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
|
||||
|
||||
RegEditor* gRegEditor;
|
||||
|
||||
|
|
|
@ -124,8 +124,8 @@ u16 gCamAtSplinePointsAppliedFrame;
|
|||
u16 gCamEyePointAppliedFrame;
|
||||
u16 gCamAtPointAppliedFrame;
|
||||
|
||||
#pragma increment_block_number "gc-eu:186 gc-eu-mq:176 gc-jp:188 gc-jp-ce:188 gc-jp-mq:176 gc-us:188 gc-us-mq:176" \
|
||||
"ntsc-1.2:80 pal-1.0:80 pal-1.1:80"
|
||||
#pragma increment_block_number "gc-eu:188 gc-eu-mq:176 gc-jp:188 gc-jp-ce:188 gc-jp-mq:176 gc-us:188 gc-us-mq:176" \
|
||||
"ntsc-1.0:80 ntsc-1.1:80 ntsc-1.2:80 pal-1.0:80 pal-1.1:80"
|
||||
|
||||
// Cam ID to return to when a scripted cutscene is finished
|
||||
s16 sReturnToCamId;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#pragma increment_block_number "gc-eu:224 gc-eu-mq:224 gc-jp:224 gc-jp-ce:224 gc-jp-mq:224 gc-us:224 gc-us-mq:224" \
|
||||
"ntsc-1.2:224 pal-1.0:224 pal-1.1:224"
|
||||
"ntsc-1.0:224 ntsc-1.1:224 ntsc-1.2:224 pal-1.0:224 pal-1.1:224"
|
||||
|
||||
#include "global.h"
|
||||
#include "terminal.h"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
#pragma increment_block_number "gc-eu:240 gc-eu-mq:240 gc-jp:224 gc-jp-ce:224 gc-jp-mq:224 gc-us:224 gc-us-mq:224" \
|
||||
"ntsc-1.2:224 pal-1.0:248 pal-1.1:248"
|
||||
#pragma increment_block_number "gc-eu:244 gc-eu-mq:244 gc-jp:224 gc-jp-ce:224 gc-jp-mq:224 gc-us:224 gc-us-mq:224" \
|
||||
"ntsc-1.0:224 ntsc-1.1:224 ntsc-1.2:224 pal-1.0:252 pal-1.1:252"
|
||||
|
||||
#include "global.h"
|
||||
#include "ultra64.h"
|
||||
|
@ -215,7 +215,7 @@ s16 sSunDepthTestX;
|
|||
s16 sSunDepthTestY;
|
||||
|
||||
#pragma increment_block_number "gc-eu:240 gc-eu-mq:240 gc-jp:224 gc-jp-ce:224 gc-jp-mq:224 gc-us:224 gc-us-mq:224" \
|
||||
"ntsc-1.2:224 pal-1.0:240 pal-1.1:240"
|
||||
"ntsc-1.0:224 ntsc-1.1:224 ntsc-1.2:224 pal-1.0:240 pal-1.1:240"
|
||||
|
||||
LightNode* sNGameOverLightNode;
|
||||
LightInfo sNGameOverLightInfo;
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
#endif
|
||||
|
||||
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \
|
||||
"ntsc-1.2:112 pal-1.0:128 pal-1.1:128"
|
||||
"ntsc-1.0:96 ntsc-1.1:96 ntsc-1.2:112 pal-1.0:128 pal-1.1:128"
|
||||
|
||||
#if !PLATFORM_GC
|
||||
#define OCARINA_BUTTON_A_PRIM_1_R 80
|
||||
|
|
|
@ -1190,7 +1190,13 @@ void Scene_DrawConfigKokiriForest(PlayState* play) {
|
|||
spA3 = 255 - (u8)play->roomCtx.drawParams[0];
|
||||
} else if (gSaveContext.sceneLayer == 6) {
|
||||
spA0 = play->roomCtx.drawParams[0] + 500;
|
||||
} else if ((!IS_CUTSCENE_LAYER || LINK_IS_ADULT) && GET_EVENTCHKINF(EVENTCHKINF_07)) {
|
||||
} else if (
|
||||
#if OOT_VERSION < PAL_1_0
|
||||
!IS_CUTSCENE_LAYER && GET_EVENTCHKINF(EVENTCHKINF_07)
|
||||
#else
|
||||
(!IS_CUTSCENE_LAYER || LINK_IS_ADULT) && GET_EVENTCHKINF(EVENTCHKINF_07)
|
||||
#endif
|
||||
) {
|
||||
spA0 = 2150;
|
||||
}
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
#include "stack.h"
|
||||
#include "versions.h"
|
||||
|
||||
#pragma increment_block_number "ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
#pragma increment_block_number "ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
|
||||
typedef struct struct_801D9C30 {
|
||||
/* 0x000 */ s32 unk_000; // disk start
|
||||
|
|
|
@ -101,22 +101,22 @@ static ColliderCylinderInit sLightBallCylinderInit = {
|
|||
static u8 D_808E4C58[] = { 0, 12, 10, 12, 14, 16, 12, 14, 16, 12, 14, 16, 12, 14, 16, 10, 16, 14 };
|
||||
static Vec3f sZeroVec = { 0.0f, 0.0f, 0.0f };
|
||||
|
||||
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.2:0" \
|
||||
"pal-1.0:0 pal-1.1:0"
|
||||
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.0:0" \
|
||||
"ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0"
|
||||
|
||||
static EnGanonMant* sCape;
|
||||
|
||||
// TODO: There's probably a way to match BSS ordering with less padding by spreading the variables out and moving
|
||||
// data around. It would be easier if we had more options for controlling BSS ordering in debug.
|
||||
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192" \
|
||||
"ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
"ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
|
||||
static s32 sSeed1;
|
||||
static s32 sSeed2;
|
||||
static s32 sSeed3;
|
||||
|
||||
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192" \
|
||||
"ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
"ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
|
||||
static BossGanon* sGanondorf;
|
||||
|
||||
|
|
|
@ -149,7 +149,7 @@ void EnArrow_Destroy(Actor* thisx, PlayState* play) {
|
|||
Collider_DestroyQuad(play, &this->collider);
|
||||
|
||||
if ((this->hitActor != NULL) && (this->hitActor->update != NULL)) {
|
||||
this->hitActor->flags &= ~ACTOR_FLAG_15;
|
||||
this->hitActor->flags &= ~ACTOR_FLAG_ATTACHED_TO_ARROW;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -287,11 +287,11 @@ void EnArrow_Fly(EnArrow* this, PlayState* play) {
|
|||
hitActor = this->collider.base.at;
|
||||
|
||||
if ((hitActor->update != NULL) && !(this->collider.base.atFlags & AT_BOUNCED) &&
|
||||
(hitActor->flags & ACTOR_FLAG_14)) {
|
||||
(hitActor->flags & ACTOR_FLAG_CAN_ATTACH_TO_ARROW)) {
|
||||
this->hitActor = hitActor;
|
||||
EnArrow_CarryActor(this, play);
|
||||
Math_Vec3f_Diff(&hitActor->world.pos, &this->actor.world.pos, &this->unk_250);
|
||||
hitActor->flags |= ACTOR_FLAG_15;
|
||||
hitActor->flags |= ACTOR_FLAG_ATTACHED_TO_ARROW;
|
||||
this->collider.base.atFlags &= ~AT_HIT;
|
||||
this->actor.speed /= 2.0f;
|
||||
this->actor.velocity.y /= 2.0f;
|
||||
|
@ -353,14 +353,14 @@ void EnArrow_Fly(EnArrow* this, PlayState* play) {
|
|||
this->hitActor->world.pos.y = hitPoint.y + ((sp54.y <= hitPoint.y) ? 1.0f : -1.0f);
|
||||
this->hitActor->world.pos.z = hitPoint.z + ((sp54.z <= hitPoint.z) ? 1.0f : -1.0f);
|
||||
Math_Vec3f_Diff(&this->hitActor->world.pos, &this->actor.world.pos, &this->unk_250);
|
||||
this->hitActor->flags &= ~ACTOR_FLAG_15;
|
||||
this->hitActor->flags &= ~ACTOR_FLAG_ATTACHED_TO_ARROW;
|
||||
this->hitActor = NULL;
|
||||
} else {
|
||||
Math_Vec3f_Sum(&this->actor.world.pos, &this->unk_250, &this->hitActor->world.pos);
|
||||
}
|
||||
|
||||
if (this->touchedPoly && (this->hitActor != NULL)) {
|
||||
this->hitActor->flags &= ~ACTOR_FLAG_15;
|
||||
this->hitActor->flags &= ~ACTOR_FLAG_ATTACHED_TO_ARROW;
|
||||
this->hitActor = NULL;
|
||||
}
|
||||
} else {
|
||||
|
|
|
@ -345,7 +345,7 @@ void EnBb_Init(Actor* thisx, PlayState* play) {
|
|||
this->flamePrimBlue = this->flameEnvColor.b = 255;
|
||||
thisx->world.pos.y += 50.0f;
|
||||
EnBb_SetupBlue(this);
|
||||
thisx->flags |= ACTOR_FLAG_14;
|
||||
thisx->flags |= ACTOR_FLAG_CAN_ATTACH_TO_ARROW;
|
||||
break;
|
||||
case ENBB_RED:
|
||||
thisx->naviEnemyId = NAVI_ENEMY_RED_BUBBLE;
|
||||
|
@ -374,7 +374,7 @@ void EnBb_Init(Actor* thisx, PlayState* play) {
|
|||
EnBb_SetupWhite(play, this);
|
||||
EnBb_SetWaypoint(this, play);
|
||||
EnBb_FaceWaypoint(this);
|
||||
thisx->flags |= ACTOR_FLAG_14;
|
||||
thisx->flags |= ACTOR_FLAG_CAN_ATTACH_TO_ARROW;
|
||||
break;
|
||||
case ENBB_GREEN_BIG:
|
||||
this->path = this->actionState >> 4;
|
||||
|
@ -1237,7 +1237,7 @@ void EnBb_Update(Actor* thisx, PlayState* play2) {
|
|||
if (this->actor.colChkInfo.damageEffect != 0xD) {
|
||||
this->actionFunc(this, play);
|
||||
if ((this->actor.params <= ENBB_BLUE) && (this->actor.speed >= -6.0f) &&
|
||||
((this->actor.flags & ACTOR_FLAG_15) == 0)) {
|
||||
!(this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW)) {
|
||||
Actor_MoveXZGravity(&this->actor);
|
||||
}
|
||||
if (this->moveMode == BBMOVE_NORMAL) {
|
||||
|
|
|
@ -8,7 +8,8 @@
|
|||
#include "versions.h"
|
||||
#include "assets/objects/object_bl/object_bl.h"
|
||||
|
||||
#define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_14)
|
||||
#define FLAGS \
|
||||
(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_CAN_ATTACH_TO_ARROW)
|
||||
|
||||
void EnBili_Init(Actor* thisx, PlayState* play);
|
||||
void EnBili_Destroy(Actor* thisx, PlayState* play);
|
||||
|
@ -251,7 +252,7 @@ void EnBili_SetupFrozen(EnBili* this, PlayState* play) {
|
|||
s32 i;
|
||||
Vec3f effectPos;
|
||||
|
||||
if (!(this->actor.flags & ACTOR_FLAG_15)) {
|
||||
if (!(this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW)) {
|
||||
this->actor.gravity = -1.0f;
|
||||
}
|
||||
|
||||
|
@ -456,7 +457,7 @@ void EnBili_Recoil(EnBili* this, PlayState* play) {
|
|||
void EnBili_Burnt(EnBili* this, PlayState* play) {
|
||||
SkelAnime_Update(&this->skelAnime);
|
||||
|
||||
if (this->actor.flags & ACTOR_FLAG_15) {
|
||||
if (this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW) {
|
||||
this->actor.colorFilterTimer = 20;
|
||||
} else {
|
||||
if (this->timer != 0) {
|
||||
|
@ -477,7 +478,7 @@ void EnBili_Die(EnBili* this, PlayState* play) {
|
|||
s32 i;
|
||||
|
||||
if (this->actor.draw != NULL) {
|
||||
if (this->actor.flags & ACTOR_FLAG_15) {
|
||||
if (this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW) {
|
||||
return;
|
||||
}
|
||||
this->actor.draw = NULL;
|
||||
|
@ -533,7 +534,7 @@ void EnBili_Frozen(EnBili* this, PlayState* play) {
|
|||
this->timer--;
|
||||
}
|
||||
|
||||
if (!(this->actor.flags & ACTOR_FLAG_15)) {
|
||||
if (!(this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW)) {
|
||||
this->actor.gravity = -1.0f;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
#include "z_en_crow.h"
|
||||
#include "assets/objects/object_crow/object_crow.h"
|
||||
|
||||
#define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_14)
|
||||
#define FLAGS \
|
||||
(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_CAN_ATTACH_TO_ARROW)
|
||||
|
||||
void EnCrow_Init(Actor* thisx, PlayState* play);
|
||||
void EnCrow_Destroy(Actor* thisx, PlayState* play);
|
||||
|
@ -175,7 +176,7 @@ void EnCrow_SetupDamaged(EnCrow* this, PlayState* play) {
|
|||
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_RED, 255, COLORFILTER_BUFFLAG_OPA, 40);
|
||||
}
|
||||
|
||||
if (this->actor.flags & ACTOR_FLAG_15) {
|
||||
if (this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW) {
|
||||
this->actor.speed = 0.0f;
|
||||
}
|
||||
|
||||
|
@ -329,7 +330,7 @@ void EnCrow_Damaged(EnCrow* this, PlayState* play) {
|
|||
Math_StepToF(&this->actor.speed, 0.0f, 0.5f);
|
||||
this->actor.colorFilterTimer = 40;
|
||||
|
||||
if (!(this->actor.flags & ACTOR_FLAG_15)) {
|
||||
if (!(this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW)) {
|
||||
if (this->actor.colorFilterParams & 0x4000) {
|
||||
Math_ScaledStepToS(&this->actor.shape.rot.x, 0x4000, 0x200);
|
||||
this->actor.shape.rot.z += 0x1780;
|
||||
|
|
|
@ -9,7 +9,8 @@
|
|||
#include "assets/objects/object_firefly/object_firefly.h"
|
||||
#include "overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.h"
|
||||
|
||||
#define FLAGS (ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_14)
|
||||
#define FLAGS \
|
||||
(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_IGNORE_QUAKE | ACTOR_FLAG_CAN_ATTACH_TO_ARROW)
|
||||
|
||||
void EnFirefly_Init(Actor* thisx, PlayState* play);
|
||||
void EnFirefly_Destroy(Actor* thisx, PlayState* play);
|
||||
|
@ -423,7 +424,7 @@ void EnFirefly_Fall(EnFirefly* this, PlayState* play) {
|
|||
this->actor.colorFilterTimer = 40;
|
||||
SkelAnime_Update(&this->skelAnime);
|
||||
Math_StepToF(&this->actor.speed, 0.0f, 0.5f);
|
||||
if (this->actor.flags & ACTOR_FLAG_15) {
|
||||
if (this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW) {
|
||||
this->actor.colorFilterTimer = 40;
|
||||
} else {
|
||||
Math_ScaledStepToS(&this->actor.shape.rot.x, 0x6800, 0x200);
|
||||
|
@ -687,7 +688,7 @@ void EnFirefly_Update(Actor* thisx, PlayState* play2) {
|
|||
|
||||
this->actionFunc(this, play);
|
||||
|
||||
if (!(this->actor.flags & ACTOR_FLAG_15)) {
|
||||
if (!(this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW)) {
|
||||
if ((this->actor.colChkInfo.health == 0) || (this->actionFunc == EnFirefly_Stunned)) {
|
||||
Actor_MoveXZGravity(&this->actor);
|
||||
} else {
|
||||
|
|
|
@ -278,7 +278,7 @@ void EnKusa_SetupWaitForObject(EnKusa* this) {
|
|||
|
||||
void EnKusa_WaitForObject(EnKusa* this, PlayState* play) {
|
||||
if (Object_IsLoaded(&play->objectCtx, this->requiredObjectSlot)) {
|
||||
if (this->actor.flags & ACTOR_FLAG_ENKUSA_CUT) {
|
||||
if (this->actor.flags & ACTOR_FLAG_GRASS_DESTROYED) {
|
||||
EnKusa_SetupCut(this);
|
||||
} else {
|
||||
EnKusa_SetupMain(this);
|
||||
|
@ -317,7 +317,7 @@ void EnKusa_Main(EnKusa* this, PlayState* play) {
|
|||
}
|
||||
|
||||
EnKusa_SetupCut(this);
|
||||
this->actor.flags |= ACTOR_FLAG_ENKUSA_CUT;
|
||||
this->actor.flags |= ACTOR_FLAG_GRASS_DESTROYED;
|
||||
} else {
|
||||
if (!(this->collider.base.ocFlags1 & OC1_TYPE_PLAYER) && (this->actor.xzDistToPlayer > 12.0f)) {
|
||||
this->collider.base.ocFlags1 |= OC1_TYPE_PLAYER;
|
||||
|
@ -466,7 +466,7 @@ void EnKusa_SetupRegrow(EnKusa* this) {
|
|||
EnKusa_SetupAction(this, EnKusa_Regrow);
|
||||
EnKusa_SetScaleSmall(this);
|
||||
this->actor.shape.rot = this->actor.home.rot;
|
||||
this->actor.flags &= ~ACTOR_FLAG_ENKUSA_CUT;
|
||||
this->actor.flags &= ~ACTOR_FLAG_GRASS_DESTROYED;
|
||||
}
|
||||
|
||||
void EnKusa_Regrow(EnKusa* this, PlayState* play) {
|
||||
|
@ -490,7 +490,7 @@ void EnKusa_Update(Actor* thisx, PlayState* play) {
|
|||
|
||||
this->actionFunc(this, play);
|
||||
|
||||
if (this->actor.flags & ACTOR_FLAG_ENKUSA_CUT) {
|
||||
if (this->actor.flags & ACTOR_FLAG_GRASS_DESTROYED) {
|
||||
this->actor.shape.yOffset = -6.25f;
|
||||
} else {
|
||||
this->actor.shape.yOffset = 0.0f;
|
||||
|
@ -501,7 +501,7 @@ void EnKusa_Draw(Actor* thisx, PlayState* play) {
|
|||
static Gfx* dLists[] = { gFieldBushDL, object_kusa_DL_000140, object_kusa_DL_000140 };
|
||||
EnKusa* this = (EnKusa*)thisx;
|
||||
|
||||
if (this->actor.flags & ACTOR_FLAG_ENKUSA_CUT) {
|
||||
if (this->actor.flags & ACTOR_FLAG_GRASS_DESTROYED) {
|
||||
Gfx_DrawDListOpa(play, object_kusa_DL_0002E0);
|
||||
} else {
|
||||
Gfx_DrawDListOpa(play, dLists[PARAMS_GET_U(thisx->params, 0, 2)]);
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
|
||||
#define FLAGS \
|
||||
(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_4 | ACTOR_FLAG_9 | ACTOR_FLAG_IGNORE_QUAKE | \
|
||||
ACTOR_FLAG_14)
|
||||
ACTOR_FLAG_CAN_ATTACH_TO_ARROW)
|
||||
|
||||
void EnPoSisters_Init(Actor* thisx, PlayState* play);
|
||||
void EnPoSisters_Destroy(Actor* thisx, PlayState* play);
|
||||
|
@ -210,7 +210,7 @@ void EnPoSisters_Init(Actor* thisx, PlayState* play) {
|
|||
this->collider.base.ocFlags1 = OC1_ON | OC1_TYPE_PLAYER;
|
||||
func_80AD9AA8(this, play);
|
||||
} else {
|
||||
this->actor.flags &= ~(ACTOR_FLAG_9 | ACTOR_FLAG_14);
|
||||
this->actor.flags &= ~(ACTOR_FLAG_9 | ACTOR_FLAG_CAN_ATTACH_TO_ARROW);
|
||||
this->collider.elem.elemMaterial = ELEM_MATERIAL_UNK4;
|
||||
this->collider.elem.acDmgInfo.dmgFlags |= DMG_DEKU_NUT;
|
||||
this->collider.base.ocFlags1 = OC1_NONE;
|
||||
|
@ -701,7 +701,7 @@ void func_80ADA9E8(EnPoSisters* this, PlayState* play) {
|
|||
}
|
||||
|
||||
void func_80ADAAA4(EnPoSisters* this, PlayState* play) {
|
||||
if (SkelAnime_Update(&this->skelAnime) && !(this->actor.flags & ACTOR_FLAG_15)) {
|
||||
if (SkelAnime_Update(&this->skelAnime) && !(this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW)) {
|
||||
if (this->actor.colChkInfo.health != 0) {
|
||||
if (this->unk_194 != 0) {
|
||||
func_80AD96A4(this);
|
||||
|
|
|
@ -798,7 +798,7 @@ void EnSt_Init(Actor* thisx, PlayState* play) {
|
|||
this->actor.naviEnemyId = NAVI_ENEMY_SKULLTULA;
|
||||
}
|
||||
EnSt_CheckCeilingPos(this, play);
|
||||
this->actor.flags |= ACTOR_FLAG_14;
|
||||
this->actor.flags |= ACTOR_FLAG_CAN_ATTACH_TO_ARROW;
|
||||
this->actor.flags |= ACTOR_FLAG_SFX_FOR_PLAYER_BODY_HIT;
|
||||
EnSt_SetColliderScale(this);
|
||||
this->actor.gravity = 0.0f;
|
||||
|
@ -1013,7 +1013,7 @@ void EnSt_Update(Actor* thisx, PlayState* play) {
|
|||
s32 pad;
|
||||
Color_RGBA8 color = { 0, 0, 0, 0 };
|
||||
|
||||
if (this->actor.flags & ACTOR_FLAG_15) {
|
||||
if (this->actor.flags & ACTOR_FLAG_ATTACHED_TO_ARROW) {
|
||||
SkelAnime_Update(&this->skelAnime);
|
||||
} else if (!EnSt_CheckColliders(this, play)) {
|
||||
// no collision has been detected.
|
||||
|
|
|
@ -14,8 +14,8 @@
|
|||
#include "assets/scenes/dungeons/ice_doukutu/ice_doukutu_scene.h"
|
||||
#include "terminal.h"
|
||||
|
||||
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.2:0" \
|
||||
"pal-1.0:0 pal-1.1:0"
|
||||
#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.0:0" \
|
||||
"ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0"
|
||||
|
||||
#define FLAGS ACTOR_FLAG_4
|
||||
|
||||
|
@ -1397,7 +1397,7 @@ void func_80B3F3D8(void) {
|
|||
}
|
||||
|
||||
#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-jp:64 gc-jp-ce:64 gc-jp-mq:64 gc-us:64 gc-us-mq:64" \
|
||||
"ntsc-1.2:64 pal-1.0:64 pal-1.1:64"
|
||||
"ntsc-1.0:64 ntsc-1.1:64 ntsc-1.2:64 pal-1.0:64 pal-1.1:64"
|
||||
|
||||
void EnXc_PlayDiveSFX(Vec3f* src, PlayState* play) {
|
||||
static Vec3f D_80B42DA0;
|
||||
|
|
|
@ -35,8 +35,8 @@
|
|||
#include "cic6105.h"
|
||||
#endif
|
||||
|
||||
#pragma increment_block_number "gc-eu:177 gc-eu-mq:177 gc-jp:177 gc-jp-ce:177 gc-jp-mq:177 gc-us:177 gc-us-mq:177" \
|
||||
"ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
#pragma increment_block_number "gc-eu:180 gc-eu-mq:180 gc-jp:180 gc-jp-ce:180 gc-jp-mq:180 gc-us:180 gc-us-mq:180" \
|
||||
"ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
|
||||
#define FLAGS ACTOR_FLAG_4
|
||||
|
||||
|
|
|
@ -161,7 +161,7 @@ void ObjMure_SpawnActors0(ObjMure* this, PlayState* play) {
|
|||
Actor_Spawn(&play->actorCtx, play, sSpawnActorIds[this->type], pos.x, pos.y, pos.z,
|
||||
actor->world.rot.x, actor->world.rot.y, actor->world.rot.z, sSpawnParams[this->type]);
|
||||
if (this->children[i] != NULL) {
|
||||
this->children[i]->flags |= ACTOR_FLAG_ENKUSA_CUT;
|
||||
this->children[i]->flags |= ACTOR_FLAG_GRASS_DESTROYED;
|
||||
this->children[i]->room = actor->room;
|
||||
} else {
|
||||
PRINTF("warning 発生失敗 (%s %d)\n", "../z_obj_mure.c", 359);
|
||||
|
@ -262,7 +262,7 @@ void ObjMure_CheckChildren(ObjMure* this, PlayState* play) {
|
|||
if (this->children[i] != NULL) {
|
||||
if (this->childrenStates[i] == OBJMURE_CHILD_STATE_0) {
|
||||
if (this->children[i]->update != NULL) {
|
||||
if (this->children[i]->flags & ACTOR_FLAG_ENKUSA_CUT) {
|
||||
if (this->children[i]->flags & ACTOR_FLAG_GRASS_DESTROYED) {
|
||||
this->childrenStates[i] = OBJMURE_CHILD_STATE_2;
|
||||
}
|
||||
} else {
|
||||
|
|
|
@ -343,21 +343,21 @@ void Player_Action_CsAction(Player* this, PlayState* play);
|
|||
// .bss part 1
|
||||
|
||||
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \
|
||||
"ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
"ntsc-1.0:64 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
|
||||
static s32 D_80858AA0;
|
||||
|
||||
// TODO: There's probably a way to match BSS ordering with less padding by spreading the variables out and moving
|
||||
// data around. It would be easier if we had more options for controlling BSS ordering in debug.
|
||||
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192" \
|
||||
"ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
|
||||
"ntsc-1.0:192 ntsc-1.1:128 ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
|
||||
|
||||
static s32 sSavedCurrentMask;
|
||||
static Vec3f sInteractWallCheckResult;
|
||||
static Input* sControlInput;
|
||||
|
||||
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:160 gc-jp-ce:160 gc-jp-mq:160 gc-us:160 gc-us-mq:160" \
|
||||
"ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
"ntsc-1.0:128 ntsc-1.1:192 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
|
||||
// .data
|
||||
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
*/
|
||||
|
||||
#include "z_eff_ss_en_ice.h"
|
||||
#include "versions.h"
|
||||
#include "assets/objects/gameplay_keep/gameplay_keep.h"
|
||||
|
||||
#define rLifespan regs[0]
|
||||
|
@ -133,9 +134,9 @@ void EffectSsEnIce_Draw(PlayState* play, u32 index, EffectSs* this) {
|
|||
}
|
||||
|
||||
void EffectSsEnIce_UpdateFlying(PlayState* play, u32 index, EffectSs* this) {
|
||||
s16 rand;
|
||||
|
||||
#if OOT_VERSION >= NTSC_1_1
|
||||
if ((this->actor != NULL) && (this->actor->update != NULL)) {
|
||||
#endif
|
||||
if ((this->life >= 9) && (this->actor->colorFilterTimer != 0) && !(this->actor->colorFilterParams & 0xC000)) {
|
||||
this->pos.x = this->actor->world.pos.x + this->vec.x;
|
||||
this->pos.y = this->actor->world.pos.y + this->vec.y;
|
||||
|
@ -147,9 +148,11 @@ void EffectSsEnIce_UpdateFlying(PlayState* play, u32 index, EffectSs* this) {
|
|||
this->accel.y = -1.5f;
|
||||
this->velocity.y = 5.0f;
|
||||
}
|
||||
#if OOT_VERSION >= NTSC_1_1
|
||||
} else {
|
||||
if (this->life >= 9) {
|
||||
rand = Rand_CenteredFloat(65535.0f);
|
||||
s16 rand = Rand_CenteredFloat(65535.0f);
|
||||
|
||||
this->accel.x = Math_SinS(rand) * (Rand_ZeroOne() + 1.0f);
|
||||
this->accel.z = Math_CosS(rand) * (Rand_ZeroOne() + 1.0f);
|
||||
this->life = 8;
|
||||
|
@ -157,6 +160,7 @@ void EffectSsEnIce_UpdateFlying(PlayState* play, u32 index, EffectSs* this) {
|
|||
this->velocity.y = 5.0f;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void EffectSsEnIce_Update(PlayState* play, u32 index, EffectSs* this) {
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
*/
|
||||
|
||||
#include "z_eff_ss_kakera.h"
|
||||
#include "versions.h"
|
||||
|
||||
#define rReg0 regs[0]
|
||||
#define rGravity regs[1]
|
||||
|
@ -54,7 +55,11 @@ u32 EffectSsKakera_Init(PlayState* play, u32 index, EffectSs* this, void* initPa
|
|||
|
||||
} else {
|
||||
PRINTF("shape_modelがNULL\n");
|
||||
#if OOT_VERSION < NTSC_1_1
|
||||
LogUtils_HungupThread("../z_eff_kakera.c", 175);
|
||||
#else
|
||||
LogUtils_HungupThread("../z_eff_kakera.c", 178);
|
||||
#endif
|
||||
}
|
||||
|
||||
this->draw = EffectSsKakera_Draw;
|
||||
|
|
|
@ -63,7 +63,6 @@ void func_80800B08_unknown(MapSelectState* this, s32 arg1) {
|
|||
}
|
||||
#endif
|
||||
|
||||
// "Translation" (Actual name)
|
||||
static SceneSelectEntry sScenes[] = {
|
||||
{ " 1:SPOT00", MapSelect_LoadGame, ENTR_HYRULE_FIELD_0 },
|
||||
{ " 2:SPOT01", MapSelect_LoadGame, ENTR_KAKARIKO_VILLAGE_0 },
|
||||
|
@ -84,228 +83,189 @@ static SceneSelectEntry sScenes[] = {
|
|||
{ "17:SPOT17", MapSelect_LoadGame, ENTR_DEATH_MOUNTAIN_CRATER_0 },
|
||||
{ "18:SPOT18", MapSelect_LoadGame, ENTR_GORON_CITY_0 },
|
||||
{ "19:SPOT20", MapSelect_LoadGame, ENTR_LON_LON_RANCH_0 },
|
||||
// "20: Chamber of Time"
|
||||
{ "20:" GFXP_HIRAGANA "トキノマ", MapSelect_LoadGame, ENTR_TEMPLE_OF_TIME_0 },
|
||||
// "21: Chamber of the Sages"
|
||||
{ "21:" GFXP_HIRAGANA "ケンジャノマ", MapSelect_LoadGame, ENTR_CHAMBER_OF_THE_SAGES_0 },
|
||||
// "22: Target Range"
|
||||
{ "22:" GFXP_HIRAGANA "シャテキジョウ", MapSelect_LoadGame, ENTR_SHOOTING_GALLERY_0 },
|
||||
// "23: Hyrule Garden Game"
|
||||
{ "23:" GFXP_KATAKANA "ハイラル" GFXP_HIRAGANA "ニワ" GFXP_KATAKANA "ゲーム", MapSelect_LoadGame,
|
||||
{ "20:" T(GFXP_HIRAGANA "トキノマ", "Chamber of Time"), MapSelect_LoadGame, ENTR_TEMPLE_OF_TIME_0 },
|
||||
{ "21:" T(GFXP_HIRAGANA "ケンジャノマ", "Chamber of the Sages"), MapSelect_LoadGame, ENTR_CHAMBER_OF_THE_SAGES_0 },
|
||||
{ "22:" T(GFXP_HIRAGANA "シャテキジョウ", "Target Range"), MapSelect_LoadGame, ENTR_SHOOTING_GALLERY_0 },
|
||||
{ "23:" T(GFXP_KATAKANA "ハイラル" GFXP_HIRAGANA "ニワ" GFXP_KATAKANA "ゲーム", "Hyrule Garden Game"), MapSelect_LoadGame,
|
||||
ENTR_CASTLE_COURTYARD_GUARDS_DAY_0 },
|
||||
// "24: Grave Dive Hole"
|
||||
{ "24:" GFXP_HIRAGANA "ハカシタトビコミアナ", MapSelect_LoadGame, ENTR_REDEAD_GRAVE_0 },
|
||||
// "25: Grave Dive Hole 2"
|
||||
{ "25:" GFXP_HIRAGANA "ハカシタトビコミアナ 2", MapSelect_LoadGame, ENTR_GRAVE_WITH_FAIRYS_FOUNTAIN_0 },
|
||||
// "26: Royal Family's Grave"
|
||||
{ "26:" GFXP_HIRAGANA "オウケ ノ ハカアナ", MapSelect_LoadGame, ENTR_ROYAL_FAMILYS_TOMB_0 },
|
||||
// "27: Great Fairy's Fountain"
|
||||
{ "27:" GFXP_HIRAGANA "ダイヨウセイノイズミ", MapSelect_LoadGame, ENTR_GREAT_FAIRYS_FOUNTAIN_MAGIC_0 },
|
||||
// "28: Fairy Dive Hole"
|
||||
{ "28:" GFXP_HIRAGANA "トビコミ ヨウセイ アナ", MapSelect_LoadGame, ENTR_FAIRYS_FOUNTAIN_0 },
|
||||
// "29: Magic Stone Fairy's Fountain"
|
||||
{ "29:" GFXP_HIRAGANA "マホウセキ ヨウセイノイズミ", MapSelect_LoadGame, ENTR_GREAT_FAIRYS_FOUNTAIN_SPELLS_0 },
|
||||
// "30: Final Battle With Ganon"
|
||||
{ "30:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "サイシュウセン", MapSelect_LoadGame, ENTR_GANONS_TOWER_COLLAPSE_EXTERIOR_0 },
|
||||
// "31: Hyrule Inner Garden"
|
||||
{ "31:" GFXP_KATAKANA "ハイラル" GFXP_HIRAGANA "ナカニワ", MapSelect_LoadGame, ENTR_CASTLE_COURTYARD_ZELDA_0 },
|
||||
// "32: Fishing"
|
||||
{ "32:" GFXP_HIRAGANA "ツリボリ", MapSelect_LoadGame, ENTR_FISHING_POND_0 },
|
||||
// "33: Bombchu Bowling"
|
||||
{ "33:" GFXP_KATAKANA "ボムチュウボーリング", MapSelect_LoadGame, ENTR_BOMBCHU_BOWLING_ALLEY_0 },
|
||||
// "34: Lon Lon Ranch - Storehouse 1" (Talon's House)
|
||||
{ "34:" GFXP_KATAKANA "ロンロン" GFXP_HIRAGANA "ボクジョウ ソウコ 1", MapSelect_LoadGame, ENTR_LON_LON_BUILDINGS_0 },
|
||||
// "35: Lon Lon Ranch - Storehouse 2" (Ranch Silo)
|
||||
{ "35:" GFXP_KATAKANA "ロンロン" GFXP_HIRAGANA "ボクジョウ ソウコ 2", MapSelect_LoadGame, ENTR_LON_LON_BUILDINGS_1 },
|
||||
// "36: Lookout Hut"
|
||||
{ "36:" GFXP_HIRAGANA "ミハリ ゴヤ", MapSelect_LoadGame, ENTR_MARKET_GUARD_HOUSE_0 },
|
||||
// "37: Magic Potion Shop"
|
||||
{ "37:" GFXP_HIRAGANA "マホウ ノ クスリヤ", MapSelect_LoadGame, ENTR_POTION_SHOP_GRANNY_0 },
|
||||
// "38: Treasure Chest Shop"
|
||||
{ "38:" GFXP_HIRAGANA "タカラバコヤ", MapSelect_LoadGame, ENTR_TREASURE_BOX_SHOP_0 },
|
||||
// "39: Gold Skulltula House"
|
||||
{ "39:" GFXP_HIRAGANA "キン " GFXP_KATAKANA "スタルチュラ ハウス", MapSelect_LoadGame, ENTR_HOUSE_OF_SKULLTULA_0 },
|
||||
// "40: Castle Town - Entrance" (Market Entrance)
|
||||
{ "40:" GFXP_HIRAGANA "ジョウカマチ イリグチ", MapSelect_LoadGame, ENTR_MARKET_ENTRANCE_DAY_0 },
|
||||
// "41: Castle Town" (Market)
|
||||
{ "41:" GFXP_HIRAGANA "ジョウカマチ", MapSelect_LoadGame, ENTR_MARKET_DAY_0 },
|
||||
// "42: Back Alley" (Back Alley)
|
||||
{ "42:" GFXP_HIRAGANA "ウラロジ", MapSelect_LoadGame, ENTR_BACK_ALLEY_DAY_0 },
|
||||
// "43: In Front of the Temple of Time" (Temple of Time Exterior)
|
||||
{ "43:" GFXP_HIRAGANA "トキノシンデン マエ", MapSelect_LoadGame, ENTR_TEMPLE_OF_TIME_EXTERIOR_DAY_0 },
|
||||
// "44: Link's House"
|
||||
{ "44:" GFXP_HIRAGANA "リンクノイエ", MapSelect_LoadGame, ENTR_LINKS_HOUSE_0 },
|
||||
// "45: Kakariko Village Row House"
|
||||
{ "45:" GFXP_KATAKANA "カカリコ" GFXP_HIRAGANA "ムラノナガヤ", MapSelect_LoadGame, ENTR_KAKARIKO_CENTER_GUEST_HOUSE_0 },
|
||||
// "46: Back Alley House"
|
||||
{ "46:" GFXP_HIRAGANA "ウラロジノ イエ", MapSelect_LoadGame, ENTR_BACK_ALLEY_HOUSE_0 },
|
||||
// "47: Kokiri Village - Know-It-All Brothers' House"
|
||||
{ "47:" GFXP_HIRAGANA "コキリノムラ モノシリキョウダイノイエ", MapSelect_LoadGame, ENTR_KNOW_IT_ALL_BROS_HOUSE_0 },
|
||||
// "48: Kokiri Village - Twins' House"
|
||||
{ "48:" GFXP_HIRAGANA "コキリノムラ フタゴノイエ", MapSelect_LoadGame, ENTR_TWINS_HOUSE_0 },
|
||||
// "49: Kokiri Village - Mido's House"
|
||||
{ "49:" GFXP_HIRAGANA "コキリノムラ " GFXP_KATAKANA "ミド" GFXP_HIRAGANA "ノイエ", MapSelect_LoadGame, ENTR_MIDOS_HOUSE_0 },
|
||||
// "50: Kokiri Village - Saria's House"
|
||||
{ "50:" GFXP_HIRAGANA "コキリノムラ " GFXP_KATAKANA "サリア" GFXP_HIRAGANA "ノイエ", MapSelect_LoadGame, ENTR_SARIAS_HOUSE_0 },
|
||||
// "51: Stable"
|
||||
{ "51:" GFXP_HIRAGANA "ウマゴヤ", MapSelect_LoadGame, ENTR_STABLE_0 },
|
||||
// "52: Grave Keeper's House"
|
||||
{ "52:" GFXP_HIRAGANA "ハカモリノイエ", MapSelect_LoadGame, ENTR_GRAVEKEEPERS_HUT_0 },
|
||||
// "53: Back Alley - Dog Lady's House"
|
||||
{ "53:" GFXP_HIRAGANA "ウラロジ イヌオバサンノイエ", MapSelect_LoadGame, ENTR_DOG_LADY_HOUSE_0 },
|
||||
// "54: Kakariko Village - Impa's House"
|
||||
{ "54:" GFXP_HIRAGANA "カカリコムラ " GFXP_KATAKANA "インパ" GFXP_HIRAGANA "ノイエ", MapSelect_LoadGame, ENTR_IMPAS_HOUSE_0 },
|
||||
// "55: Hylia Laboratory"
|
||||
{ "55:" GFXP_KATAKANA "ハイリア" GFXP_HIRAGANA " ケンキュウジョ", MapSelect_LoadGame, ENTR_LAKESIDE_LABORATORY_0 },
|
||||
// "56: Tent"
|
||||
{ "56:" GFXP_KATAKANA "テント", MapSelect_LoadGame, ENTR_CARPENTERS_TENT_0 },
|
||||
// "57: Shield Shop"
|
||||
{ "57:" GFXP_HIRAGANA "タテノミセ", MapSelect_LoadGame, ENTR_BAZAAR_0 },
|
||||
// "58: Kokiri Shop"
|
||||
{ "58:" GFXP_HIRAGANA "コキリゾクノミセ", MapSelect_LoadGame, ENTR_KOKIRI_SHOP_0 },
|
||||
// "59: Goron Shop"
|
||||
{ "59:" GFXP_KATAKANA "ゴロン" GFXP_HIRAGANA "ノミセ", MapSelect_LoadGame, ENTR_GORON_SHOP_0 },
|
||||
// "60: Zora Shop"
|
||||
{ "60:" GFXP_KATAKANA "ゾーラ" GFXP_HIRAGANA "ノミセ", MapSelect_LoadGame, ENTR_ZORA_SHOP_0 },
|
||||
// "61: Kakariko Village - Potion Shop"
|
||||
{ "61:" GFXP_KATAKANA "カカリコ" GFXP_HIRAGANA "ムラ クスリヤ", MapSelect_LoadGame, ENTR_POTION_SHOP_KAKARIKO_0 },
|
||||
// "62: Castle Town - Potion Shop"
|
||||
{ "62:" GFXP_HIRAGANA "ジョウカマチ クスリヤ", MapSelect_LoadGame, ENTR_POTION_SHOP_MARKET_0 },
|
||||
// "63: Back Alley - Night Shop"
|
||||
{ "63:" GFXP_HIRAGANA "ウラロジ ヨルノミセ", MapSelect_LoadGame, ENTR_BOMBCHU_SHOP_0 },
|
||||
// "64: Mask Shop"
|
||||
{ "64:" GFXP_HIRAGANA "オメンヤ", MapSelect_LoadGame, ENTR_HAPPY_MASK_SHOP_0 },
|
||||
// "65: Gerudo Training Area"
|
||||
{ "65:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ノシュウレンジョウ", MapSelect_LoadGame, ENTR_GERUDO_TRAINING_GROUND_0 },
|
||||
// "66: Fairy Tree Dungeon"
|
||||
{ "66:" GFXP_HIRAGANA "ヨウセイノキノ " GFXP_KATAKANA "ダンジョン", MapSelect_LoadGame, ENTR_DEKU_TREE_0 },
|
||||
// "67: Fairy Tree Dungeon - Boss"
|
||||
{ "67:" GFXP_HIRAGANA "ヨウセイノキノ " GFXP_KATAKANA "ダンジョン ボス", MapSelect_LoadGame, ENTR_DEKU_TREE_BOSS_0 },
|
||||
// "68: Dondogo Dungeon"
|
||||
{ "68:" GFXP_KATAKANA "ドドンゴ ダンジョン", MapSelect_LoadGame, ENTR_DODONGOS_CAVERN_0 },
|
||||
// "69: Dondogo Dungeon - Boss"
|
||||
{ "69:" GFXP_KATAKANA "ドドンゴ ダンジョン ボス", MapSelect_LoadGame, ENTR_DODONGOS_CAVERN_BOSS_0 },
|
||||
// "70: Giant Fish Dungeon"
|
||||
{ "70:" GFXP_HIRAGANA "キョダイギョ " GFXP_KATAKANA "ダンジョン", MapSelect_LoadGame, ENTR_JABU_JABU_0 },
|
||||
// "71: Giant Fish Dungeon - Boss"
|
||||
{ "71:" GFXP_HIRAGANA "キョダイギョ " GFXP_KATAKANA "ダンジョン ボス", MapSelect_LoadGame, ENTR_JABU_JABU_BOSS_0 },
|
||||
// "72: Forest Temple"
|
||||
{ "72:" GFXP_HIRAGANA "モリノシンデン", MapSelect_LoadGame, ENTR_FOREST_TEMPLE_0 },
|
||||
// "73: Forest Temple - Boss"
|
||||
{ "73:" GFXP_HIRAGANA "モリノシンデン " GFXP_KATAKANA "ボス", MapSelect_LoadGame, ENTR_FOREST_TEMPLE_BOSS_0 },
|
||||
// "74: Dungeon Below the Well"
|
||||
{ "74:" GFXP_HIRAGANA "イドシタ " GFXP_KATAKANA "ダンジョン", MapSelect_LoadGame, ENTR_BOTTOM_OF_THE_WELL_0 },
|
||||
// "75: Dungeon Beneath the Graves"
|
||||
{ "75:" GFXP_HIRAGANA "ハカシタ " GFXP_KATAKANA "ダンジョン", MapSelect_LoadGame, ENTR_SHADOW_TEMPLE_0 },
|
||||
// "76: Dungeon Beneath the Graves - Boss"
|
||||
{ "76:" GFXP_HIRAGANA "ハカシタ " GFXP_KATAKANA "ダンジョン ボス", MapSelect_LoadGame, ENTR_SHADOW_TEMPLE_BOSS_0 },
|
||||
// "77: Fire Temple"
|
||||
{ "77:" GFXP_HIRAGANA "ヒノシンデン", MapSelect_LoadGame, ENTR_FIRE_TEMPLE_0 },
|
||||
// "78: Fire Temple - Boss"
|
||||
{ "78:" GFXP_HIRAGANA "ヒノシンデン " GFXP_KATAKANA "ボス", MapSelect_LoadGame, ENTR_FIRE_TEMPLE_BOSS_0 },
|
||||
// "79: Water Temple"
|
||||
{ "79:" GFXP_HIRAGANA "ミズノシンデン", MapSelect_LoadGame, ENTR_WATER_TEMPLE_0 },
|
||||
// "80: Water Temple - Boss"
|
||||
{ "80:" GFXP_HIRAGANA "ミズノシンデン " GFXP_KATAKANA "ボス", MapSelect_LoadGame, ENTR_WATER_TEMPLE_BOSS_0 },
|
||||
// "81: Evil Goddess Statue Dungeon"
|
||||
{ "81:" GFXP_HIRAGANA "ジャシンゾウ " GFXP_KATAKANA "ダンジョン", MapSelect_LoadGame, ENTR_SPIRIT_TEMPLE_0 },
|
||||
// "82: Evil Goddess Statue Dungeon - Iron Knuckle" (Iron Knuckle's Lair)
|
||||
{ "82:" GFXP_HIRAGANA "ジャシンゾウ " GFXP_KATAKANA "ダンジョン アイアンナック", MapSelect_LoadGame, ENTR_SPIRIT_TEMPLE_BOSS_0 },
|
||||
// "83: Evil Goddess Statue Dungeon - Boss" (Twinrova's Lair)
|
||||
{ "83:" GFXP_HIRAGANA "ジャシンゾウ " GFXP_KATAKANA "ダンジョン ボス", MapSelect_LoadGame, ENTR_SPIRIT_TEMPLE_BOSS_2 },
|
||||
// "84: Ganon's Tower"
|
||||
{ "84:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ", MapSelect_LoadGame, ENTR_GANONS_TOWER_0 },
|
||||
// "85: Ganon's Tower - Boss"
|
||||
{ "85:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ" GFXP_KATAKANA "ボス", MapSelect_LoadGame, ENTR_GANONDORF_BOSS_0 },
|
||||
// "86: Ice Cavern"
|
||||
{ "86:" GFXP_HIRAGANA "コオリノドウクツ", MapSelect_LoadGame, ENTR_ICE_CAVERN_0 },
|
||||
// "87: Relay Beneath the Graves" (Dampé's Grave)
|
||||
{ "87:" GFXP_HIRAGANA "ハカシタ" GFXP_KATAKANA "リレー", MapSelect_LoadGame, ENTR_WINDMILL_AND_DAMPES_GRAVE_0 },
|
||||
// "88: Ganon's Basement Dungeon"
|
||||
{ "88:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "チカ " GFXP_KATAKANA "ダンジョン", MapSelect_LoadGame,
|
||||
ENTR_INSIDE_GANONS_CASTLE_0 },
|
||||
// "89: Final Battle With Ganon - Cutscene & Battle"
|
||||
{ "89:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "サイシュウセン " GFXP_KATAKANA "デモ & バトル", MapSelect_LoadGame,
|
||||
ENTR_GANON_BOSS_0 },
|
||||
// "90: Ganon's Tower Aftermath 1" (Escaping Ganon's Tower 1)
|
||||
{ "90:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 1", MapSelect_LoadGame,
|
||||
{ "24:" T(GFXP_HIRAGANA "ハカシタトビコミアナ", "Grave Dive Hole"), MapSelect_LoadGame, ENTR_REDEAD_GRAVE_0 },
|
||||
{ "25:" T(GFXP_HIRAGANA "ハカシタトビコミアナ 2", "Grave Dive Hole 2"), MapSelect_LoadGame,
|
||||
ENTR_GRAVE_WITH_FAIRYS_FOUNTAIN_0 },
|
||||
{ "26:" T(GFXP_HIRAGANA "オウケ ノ ハカアナ", "Royal Family's Grave"), MapSelect_LoadGame, ENTR_ROYAL_FAMILYS_TOMB_0 },
|
||||
{ "27:" T(GFXP_HIRAGANA "ダイヨウセイノイズミ", "Great Fairy's Fountain"), MapSelect_LoadGame,
|
||||
ENTR_GREAT_FAIRYS_FOUNTAIN_MAGIC_0 },
|
||||
{ "28:" T(GFXP_HIRAGANA "トビコミ ヨウセイ アナ", "Fairy Dive Hole"), MapSelect_LoadGame, ENTR_FAIRYS_FOUNTAIN_0 },
|
||||
{ "29:" T(GFXP_HIRAGANA "マホウセキ ヨウセイノイズミ", "Magic Stone Fairy's Fountain"), MapSelect_LoadGame,
|
||||
ENTR_GREAT_FAIRYS_FOUNTAIN_SPELLS_0 },
|
||||
{ "30:" T(GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "サイシュウセン", "Final Battle With Ganon"), MapSelect_LoadGame,
|
||||
ENTR_GANONS_TOWER_COLLAPSE_EXTERIOR_0 },
|
||||
{ "31:" T(GFXP_KATAKANA "ハイラル" GFXP_HIRAGANA "ナカニワ", "Hyrule Inner Garden"), MapSelect_LoadGame,
|
||||
ENTR_CASTLE_COURTYARD_ZELDA_0 },
|
||||
{ "32:" T(GFXP_HIRAGANA "ツリボリ", "Fishing"), MapSelect_LoadGame, ENTR_FISHING_POND_0 },
|
||||
{ "33:" T(GFXP_KATAKANA "ボムチュウボーリング", "Bombchu Bowling"), MapSelect_LoadGame, ENTR_BOMBCHU_BOWLING_ALLEY_0 },
|
||||
// Talon's House
|
||||
{ "34:" T(GFXP_KATAKANA "ロンロン" GFXP_HIRAGANA "ボクジョウ ソウコ 1", "Lon Lon Ranch - Storehouse 1"), MapSelect_LoadGame,
|
||||
ENTR_LON_LON_BUILDINGS_0 },
|
||||
// Ranch Silo
|
||||
{ "35:" T(GFXP_KATAKANA "ロンロン" GFXP_HIRAGANA "ボクジョウ ソウコ 2", "Lon Lon Ranch - Storehouse 2"), MapSelect_LoadGame,
|
||||
ENTR_LON_LON_BUILDINGS_1 },
|
||||
{ "36:" T(GFXP_HIRAGANA "ミハリ ゴヤ", "Lookout Hut"), MapSelect_LoadGame, ENTR_MARKET_GUARD_HOUSE_0 },
|
||||
{ "37:" T(GFXP_HIRAGANA "マホウ ノ クスリヤ", "Magic Potion Shop"), MapSelect_LoadGame, ENTR_POTION_SHOP_GRANNY_0 },
|
||||
{ "38:" T(GFXP_HIRAGANA "タカラバコヤ", "Treasure Chest Shop"), MapSelect_LoadGame, ENTR_TREASURE_BOX_SHOP_0 },
|
||||
{ "39:" T(GFXP_HIRAGANA "キン " GFXP_KATAKANA "スタルチュラ ハウス", "Gold Skulltula House"), MapSelect_LoadGame,
|
||||
ENTR_HOUSE_OF_SKULLTULA_0 },
|
||||
{ "40:" T(GFXP_HIRAGANA "ジョウカマチ イリグチ", "Castle Town - Entrance"), MapSelect_LoadGame,
|
||||
ENTR_MARKET_ENTRANCE_DAY_0 },
|
||||
{ "41:" T(GFXP_HIRAGANA "ジョウカマチ", "Castle Town"), MapSelect_LoadGame, ENTR_MARKET_DAY_0 },
|
||||
{ "42:" T(GFXP_HIRAGANA "ウラロジ", "Back Alley"), MapSelect_LoadGame, ENTR_BACK_ALLEY_DAY_0 },
|
||||
{ "43:" T(GFXP_HIRAGANA "トキノシンデン マエ", "In Front of the Temple of Time"), MapSelect_LoadGame,
|
||||
ENTR_TEMPLE_OF_TIME_EXTERIOR_DAY_0 },
|
||||
{ "44:" T(GFXP_HIRAGANA "リンクノイエ", "Link's House"), MapSelect_LoadGame, ENTR_LINKS_HOUSE_0 },
|
||||
{ "45:" T(GFXP_KATAKANA "カカリコ" GFXP_HIRAGANA "ムラノナガヤ", "Kakariko Village Row House"), MapSelect_LoadGame,
|
||||
ENTR_KAKARIKO_CENTER_GUEST_HOUSE_0 },
|
||||
{ "46:" T(GFXP_HIRAGANA "ウラロジノ イエ", "Back Alley House"), MapSelect_LoadGame, ENTR_BACK_ALLEY_HOUSE_0 },
|
||||
{ "47:" T(GFXP_HIRAGANA "コキリノムラ モノシリキョウダイノイエ", "Kokiri Village - Know-It-All Brothers' House"), MapSelect_LoadGame,
|
||||
ENTR_KNOW_IT_ALL_BROS_HOUSE_0 },
|
||||
{ "48:" T(GFXP_HIRAGANA "コキリノムラ フタゴノイエ", "Kokiri Village - Twins' House"), MapSelect_LoadGame,
|
||||
ENTR_TWINS_HOUSE_0 },
|
||||
{ "49:" T(GFXP_HIRAGANA "コキリノムラ " GFXP_KATAKANA "ミド" GFXP_HIRAGANA "ノイエ", "Kokiri Village - Mido's House"),
|
||||
MapSelect_LoadGame, ENTR_MIDOS_HOUSE_0 },
|
||||
{ "50:" T(GFXP_HIRAGANA "コキリノムラ " GFXP_KATAKANA "サリア" GFXP_HIRAGANA "ノイエ", "Kokiri Village - Saria's House"),
|
||||
MapSelect_LoadGame, ENTR_SARIAS_HOUSE_0 },
|
||||
{ "51:" T(GFXP_HIRAGANA "ウマゴヤ", "Stable"), MapSelect_LoadGame, ENTR_STABLE_0 },
|
||||
{ "52:" T(GFXP_HIRAGANA "ハカモリノイエ", "Grave Keeper's House"), MapSelect_LoadGame, ENTR_GRAVEKEEPERS_HUT_0 },
|
||||
{ "53:" T(GFXP_HIRAGANA "ウラロジ イヌオバサンノイエ", "Back Alley - Dog Lady's House"), MapSelect_LoadGame,
|
||||
ENTR_DOG_LADY_HOUSE_0 },
|
||||
{ "54:" T(GFXP_HIRAGANA "カカリコムラ " GFXP_KATAKANA "インパ" GFXP_HIRAGANA "ノイエ", "Kakariko Village - Impa's House"),
|
||||
MapSelect_LoadGame, ENTR_IMPAS_HOUSE_0 },
|
||||
{ "55:" T(GFXP_KATAKANA "ハイリア" GFXP_HIRAGANA " ケンキュウジョ", "Hylia Laboratory"), MapSelect_LoadGame,
|
||||
ENTR_LAKESIDE_LABORATORY_0 },
|
||||
{ "56:" T(GFXP_KATAKANA "テント", "Tent"), MapSelect_LoadGame, ENTR_CARPENTERS_TENT_0 },
|
||||
{ "57:" T(GFXP_HIRAGANA "タテノミセ", "Shield Shop"), MapSelect_LoadGame, ENTR_BAZAAR_0 },
|
||||
{ "58:" T(GFXP_HIRAGANA "コキリゾクノミセ", "Kokiri Shop"), MapSelect_LoadGame, ENTR_KOKIRI_SHOP_0 },
|
||||
{ "59:" T(GFXP_KATAKANA "ゴロン" GFXP_HIRAGANA "ノミセ", "Goron Shop"), MapSelect_LoadGame, ENTR_GORON_SHOP_0 },
|
||||
{ "60:" T(GFXP_KATAKANA "ゾーラ" GFXP_HIRAGANA "ノミセ", "Zora Shop"), MapSelect_LoadGame, ENTR_ZORA_SHOP_0 },
|
||||
{ "61:" T(GFXP_KATAKANA "カカリコ" GFXP_HIRAGANA "ムラ クスリヤ", "Kakariko Village - Potion Shop"), MapSelect_LoadGame,
|
||||
ENTR_POTION_SHOP_KAKARIKO_0 },
|
||||
{ "62:" T(GFXP_HIRAGANA "ジョウカマチ クスリヤ", "Castle Town - Potion Shop"), MapSelect_LoadGame,
|
||||
ENTR_POTION_SHOP_MARKET_0 },
|
||||
{ "63:" T(GFXP_HIRAGANA "ウラロジ ヨルノミセ", "Back Alley - Night Shop"), MapSelect_LoadGame, ENTR_BOMBCHU_SHOP_0 },
|
||||
{ "64:" T(GFXP_HIRAGANA "オメンヤ", "Mask Shop"), MapSelect_LoadGame, ENTR_HAPPY_MASK_SHOP_0 },
|
||||
{ "65:" T(GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ノシュウレンジョウ", "Gerudo Training Area"), MapSelect_LoadGame,
|
||||
ENTR_GERUDO_TRAINING_GROUND_0 },
|
||||
{ "66:" T(GFXP_HIRAGANA "ヨウセイノキノ " GFXP_KATAKANA "ダンジョン", "Fairy Tree Dungeon"), MapSelect_LoadGame,
|
||||
ENTR_DEKU_TREE_0 },
|
||||
{ "67:" T(GFXP_HIRAGANA "ヨウセイノキノ " GFXP_KATAKANA "ダンジョン ボス", "Fairy Tree Dungeon - Boss"), MapSelect_LoadGame,
|
||||
ENTR_DEKU_TREE_BOSS_0 },
|
||||
{ "68:" T(GFXP_KATAKANA "ドドンゴ ダンジョン", "Dondogo Dungeon"), MapSelect_LoadGame, ENTR_DODONGOS_CAVERN_0 },
|
||||
{ "69:" T(GFXP_KATAKANA "ドドンゴ ダンジョン ボス", "Dondogo Dungeon - Boss"), MapSelect_LoadGame,
|
||||
ENTR_DODONGOS_CAVERN_BOSS_0 },
|
||||
{ "70:" T(GFXP_HIRAGANA "キョダイギョ " GFXP_KATAKANA "ダンジョン", "Giant Fish Dungeon"), MapSelect_LoadGame,
|
||||
ENTR_JABU_JABU_0 },
|
||||
{ "71:" T(GFXP_HIRAGANA "キョダイギョ " GFXP_KATAKANA "ダンジョン ボス", "Giant Fish Dungeon - Boss"), MapSelect_LoadGame,
|
||||
ENTR_JABU_JABU_BOSS_0 },
|
||||
{ "72:" T(GFXP_HIRAGANA "モリノシンデン", "Forest Temple"), MapSelect_LoadGame, ENTR_FOREST_TEMPLE_0 },
|
||||
{ "73:" T(GFXP_HIRAGANA "モリノシンデン " GFXP_KATAKANA "ボス", "Forest Temple - Boss"), MapSelect_LoadGame,
|
||||
ENTR_FOREST_TEMPLE_BOSS_0 },
|
||||
{ "74:" T(GFXP_HIRAGANA "イドシタ " GFXP_KATAKANA "ダンジョン", "Dungeon Below the Well"), MapSelect_LoadGame,
|
||||
ENTR_BOTTOM_OF_THE_WELL_0 },
|
||||
{ "75:" T(GFXP_HIRAGANA "ハカシタ " GFXP_KATAKANA "ダンジョン", "Dungeon Beneath the Graves"), MapSelect_LoadGame,
|
||||
ENTR_SHADOW_TEMPLE_0 },
|
||||
{ "76:" T(GFXP_HIRAGANA "ハカシタ " GFXP_KATAKANA "ダンジョン ボス", "Dungeon Beneath the Graves - Boss"),
|
||||
MapSelect_LoadGame, ENTR_SHADOW_TEMPLE_BOSS_0 },
|
||||
{ "77:" T(GFXP_HIRAGANA "ヒノシンデン", "Fire Temple"), MapSelect_LoadGame, ENTR_FIRE_TEMPLE_0 },
|
||||
{ "78:" T(GFXP_HIRAGANA "ヒノシンデン " GFXP_KATAKANA "ボス", "Fire Temple - Boss"), MapSelect_LoadGame,
|
||||
ENTR_FIRE_TEMPLE_BOSS_0 },
|
||||
{ "79:" T(GFXP_HIRAGANA "ミズノシンデン", "Water Temple"), MapSelect_LoadGame, ENTR_WATER_TEMPLE_0 },
|
||||
{ "80:" T(GFXP_HIRAGANA "ミズノシンデン " GFXP_KATAKANA "ボス", "Water Temple - Boss"), MapSelect_LoadGame,
|
||||
ENTR_WATER_TEMPLE_BOSS_0 },
|
||||
{ "81:" T(GFXP_HIRAGANA "ジャシンゾウ " GFXP_KATAKANA "ダンジョン", "Evil Goddess Statue Dungeon"), MapSelect_LoadGame,
|
||||
ENTR_SPIRIT_TEMPLE_0 },
|
||||
// Iron Knuckle's Lair
|
||||
{ "82:" T(GFXP_HIRAGANA "ジャシンゾウ " GFXP_KATAKANA "ダンジョン アイアンナック", "Evil Goddess Statue Dungeon - Iron Knuckle"),
|
||||
MapSelect_LoadGame, ENTR_SPIRIT_TEMPLE_BOSS_0 },
|
||||
// Twinrova's Lair
|
||||
{ "83:" T(GFXP_HIRAGANA "ジャシンゾウ " GFXP_KATAKANA "ダンジョン ボス", "Evil Goddess Statue Dungeon - Boss"),
|
||||
MapSelect_LoadGame, ENTR_SPIRIT_TEMPLE_BOSS_2 },
|
||||
{ "84:" T(GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ", "Ganon's Tower"), MapSelect_LoadGame, ENTR_GANONS_TOWER_0 },
|
||||
{ "85:" T(GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ" GFXP_KATAKANA "ボス", "Ganon's Tower - Boss"), MapSelect_LoadGame,
|
||||
ENTR_GANONDORF_BOSS_0 },
|
||||
{ "86:" T(GFXP_HIRAGANA "コオリノドウクツ", "Ice Cavern"), MapSelect_LoadGame, ENTR_ICE_CAVERN_0 },
|
||||
// Dampé's Grave
|
||||
{ "87:" T(GFXP_HIRAGANA "ハカシタ" GFXP_KATAKANA "リレー", "Relay Beneath the Graves"), MapSelect_LoadGame,
|
||||
ENTR_WINDMILL_AND_DAMPES_GRAVE_0 },
|
||||
{ "88:" T(GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "チカ " GFXP_KATAKANA "ダンジョン", "Ganon's Basement Dungeon"),
|
||||
MapSelect_LoadGame, ENTR_INSIDE_GANONS_CASTLE_0 },
|
||||
{ "89:" T(GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "サイシュウセン " GFXP_KATAKANA "デモ & バトル",
|
||||
"Final Battle With Ganon - Cutscene & Battle"),
|
||||
MapSelect_LoadGame, ENTR_GANON_BOSS_0 },
|
||||
{ "90:" T(GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 1", "Ganon's Tower Aftermath 1"), MapSelect_LoadGame,
|
||||
ENTR_GANONS_TOWER_COLLAPSE_INTERIOR_0 },
|
||||
// "91: Ganon's Tower Aftermath 2" (Escaping Ganon's Tower 2)
|
||||
{ "91:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 2", MapSelect_LoadGame,
|
||||
{ "91:" T(GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 2", "Ganon's Tower Aftermath 2"), MapSelect_LoadGame,
|
||||
ENTR_GANONS_TOWER_COLLAPSE_INTERIOR_2 },
|
||||
// "92: Ganon's Tower Aftermath 3" (Escaping Ganon's Tower 3)
|
||||
{ "92:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 3", MapSelect_LoadGame,
|
||||
{ "92:" T(GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 3", "Ganon's Tower Aftermath 3"), MapSelect_LoadGame,
|
||||
ENTR_GANONS_TOWER_COLLAPSE_INTERIOR_4 },
|
||||
// "93: Ganon's Tower Aftermath 4" (Escaping Ganon's Tower 4)
|
||||
{ "93:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 4", MapSelect_LoadGame,
|
||||
{ "93:" T(GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 4", "Ganon's Tower Aftermath 4"), MapSelect_LoadGame,
|
||||
ENTR_GANONS_TOWER_COLLAPSE_INTERIOR_6 },
|
||||
// "94: Ganon's Basement Aftermath"
|
||||
{ "94:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "チカ ソノゴ", MapSelect_LoadGame, ENTR_INSIDE_GANONS_CASTLE_COLLAPSE_0 },
|
||||
// "95: Gerudo Passage 1-2" (Thieves' Hideout 1)
|
||||
{ "95:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 1-2", MapSelect_LoadGame, ENTR_THIEVES_HIDEOUT_0 },
|
||||
// "96: Gerudo Passage 3-4 9-10" (Thieves' Hideout 2)
|
||||
{ "96:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 3-4 9-10", MapSelect_LoadGame, ENTR_THIEVES_HIDEOUT_2 },
|
||||
// "97: Gerudo Passage 5-6" (Thieves' Hideout 3)
|
||||
{ "97:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 5-6", MapSelect_LoadGame, ENTR_THIEVES_HIDEOUT_4 },
|
||||
// "98: Gerudo Passage 7-8" (Thieves' Hideout 4)
|
||||
{ "98:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 7-8", MapSelect_LoadGame, ENTR_THIEVES_HIDEOUT_6 },
|
||||
// "99: Gerudo Passage 11-12" (Thieves' Hideout 5)
|
||||
{ "99:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 11-12", MapSelect_LoadGame, ENTR_THIEVES_HIDEOUT_10 },
|
||||
// "100: Gerudo Passage 13" (Thieves' Hideout 6)
|
||||
{ "100:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 13", MapSelect_LoadGame, ENTR_THIEVES_HIDEOUT_12 },
|
||||
// "101: Hidden Dive Hole 0" (Grotto 0 - Gossip Stone & Chest)
|
||||
{ "101:" GFXP_HIRAGANA "カクシトビコミアナ 0", MapSelect_LoadGame, ENTR_GROTTOS_0 },
|
||||
// "102: Hidden Dive Hole 1" (Grotto 1 - Skulltula & Gold Skulltula)
|
||||
{ "102:" GFXP_HIRAGANA "カクシトビコミアナ 1", MapSelect_LoadGame, ENTR_GROTTOS_1 },
|
||||
// "103: Hidden Dive Hole 2" (Grotto 2 - Business Scrub & Heart Piece)
|
||||
{ "103:" GFXP_HIRAGANA "カクシトビコミアナ 2", MapSelect_LoadGame, ENTR_GROTTOS_2 },
|
||||
// "104: Hidden Dive Hole 3" (Grotto 3 - Redeads)
|
||||
{ "104:" GFXP_HIRAGANA "カクシトビコミアナ 3", MapSelect_LoadGame, ENTR_GROTTOS_3 },
|
||||
// "105: Hidden Dive Hole 4" (Grotto 4 - 3 Business Scrubs)
|
||||
{ "105:" GFXP_HIRAGANA "カクシトビコミアナ 4", MapSelect_LoadGame, ENTR_GROTTOS_4 },
|
||||
// "106: Hidden Dive Hole 5" (Grotto 5 - Gossip Stone, Skulltula, Cow)
|
||||
{ "106:" GFXP_HIRAGANA "カクシトビコミアナ 5", MapSelect_LoadGame, ENTR_GROTTOS_5 },
|
||||
// "107: Hidden Dive Hole 6" (Grotto 6 - Octorok)
|
||||
{ "107:" GFXP_HIRAGANA "カクシトビコミアナ 6", MapSelect_LoadGame, ENTR_GROTTOS_6 },
|
||||
// "108: Hidden Dive Hole 7" (Grotto 7 - Business Scrub & Deku Nut Upgrade)
|
||||
{ "108:" GFXP_HIRAGANA "カクシトビコミアナ 7", MapSelect_LoadGame, ENTR_GROTTOS_7 },
|
||||
// "109: Hidden Dive Hole 8" (Grotto 8 - 2 Wolfos)
|
||||
{ "109:" GFXP_HIRAGANA "カクシトビコミアナ 8", MapSelect_LoadGame, ENTR_GROTTOS_8 },
|
||||
// "110: Hidden Dive Hole 9" (Grotto 9 - Bombable Walls)
|
||||
{ "110:" GFXP_HIRAGANA "カクシトビコミアナ 9", MapSelect_LoadGame, ENTR_GROTTOS_9 },
|
||||
// "111: Hidden Dive Hole 10" (Grotto 10 - 2 Business Scrubs)
|
||||
{ "111:" GFXP_HIRAGANA "カクシトビコミアナ 10", MapSelect_LoadGame, ENTR_GROTTOS_10 },
|
||||
// "112: Hidden Dive Hole 11" (Grotto 11 - Tektite & Heart Piece)
|
||||
{ "112:" GFXP_HIRAGANA "カクシトビコミアナ 11", MapSelect_LoadGame, ENTR_GROTTOS_11 },
|
||||
// "113: Hidden Dive Hole 12" (Grotto 12 - Deku Stage)
|
||||
{ "113:" GFXP_HIRAGANA "カクシトビコミアナ 12", MapSelect_LoadGame, ENTR_GROTTOS_12 },
|
||||
// "114: Hidden Dive Hole 13" (Grotto 13 - Rupees & Cow)
|
||||
{ "114:" GFXP_HIRAGANA "カクシトビコミアナ 13", MapSelect_LoadGame, ENTR_GROTTOS_13 },
|
||||
// "115: Hyrule Cutscenes"
|
||||
{ "115:" GFXP_KATAKANA "ハイラル デモ", MapSelect_LoadGame, ENTR_CUTSCENE_MAP_0 },
|
||||
{ "94:" T(GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "チカ ソノゴ", "Ganon's Basement Aftermath"), MapSelect_LoadGame,
|
||||
ENTR_INSIDE_GANONS_CASTLE_COLLAPSE_0 },
|
||||
{ "95:" T(GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 1-2", "Gerudo Passage 1-2"), MapSelect_LoadGame,
|
||||
ENTR_THIEVES_HIDEOUT_0 },
|
||||
{ "96:" T(GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 3-4 9-10", "Gerudo Passage 3-4 9-10"), MapSelect_LoadGame,
|
||||
ENTR_THIEVES_HIDEOUT_2 },
|
||||
{ "97:" T(GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 5-6", "Gerudo Passage 5-6"), MapSelect_LoadGame,
|
||||
ENTR_THIEVES_HIDEOUT_4 },
|
||||
{ "98:" T(GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 7-8", "Gerudo Passage 7-8"), MapSelect_LoadGame,
|
||||
ENTR_THIEVES_HIDEOUT_6 },
|
||||
{ "99:" T(GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 11-12", "Gerudo Passage 11-12"), MapSelect_LoadGame,
|
||||
ENTR_THIEVES_HIDEOUT_10 },
|
||||
{ "100:" T(GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 13", "Gerudo Passage 13"), MapSelect_LoadGame,
|
||||
ENTR_THIEVES_HIDEOUT_12 },
|
||||
// Gossip Stone & Chest Grotto
|
||||
{ "101:" T(GFXP_HIRAGANA "カクシトビコミアナ 0", "Hidden Dive Hole 0"), MapSelect_LoadGame, ENTR_GROTTOS_0 },
|
||||
// Skulltula & Gold Skulltula Grotto
|
||||
{ "102:" T(GFXP_HIRAGANA "カクシトビコミアナ 1", "Hidden Dive Hole 1"), MapSelect_LoadGame, ENTR_GROTTOS_1 },
|
||||
// Business Scrub & Heart Piece Grotto
|
||||
{ "103:" T(GFXP_HIRAGANA "カクシトビコミアナ 2", "Hidden Dive Hole 2"), MapSelect_LoadGame, ENTR_GROTTOS_2 },
|
||||
// Redeads Grotto
|
||||
{ "104:" T(GFXP_HIRAGANA "カクシトビコミアナ 3", "Hidden Dive Hole 3"), MapSelect_LoadGame, ENTR_GROTTOS_3 },
|
||||
// 3 Business Scrubs Grotto
|
||||
{ "105:" T(GFXP_HIRAGANA "カクシトビコミアナ 4", "Hidden Dive Hole 4"), MapSelect_LoadGame, ENTR_GROTTOS_4 },
|
||||
// Gossip Stone, Skulltula & Cow Grotto
|
||||
{ "106:" T(GFXP_HIRAGANA "カクシトビコミアナ 5", "Hidden Dive Hole 5"), MapSelect_LoadGame, ENTR_GROTTOS_5 },
|
||||
// Octorok Grotto
|
||||
{ "107:" T(GFXP_HIRAGANA "カクシトビコミアナ 6", "Hidden Dive Hole 6"), MapSelect_LoadGame, ENTR_GROTTOS_6 },
|
||||
// Business Scrub & Deku Nut Upgrade Grotto
|
||||
{ "108:" T(GFXP_HIRAGANA "カクシトビコミアナ 7", "Hidden Dive Hole 7"), MapSelect_LoadGame, ENTR_GROTTOS_7 },
|
||||
// 2 Wolfos Grotto
|
||||
{ "109:" T(GFXP_HIRAGANA "カクシトビコミアナ 8", "Hidden Dive Hole 8"), MapSelect_LoadGame, ENTR_GROTTOS_8 },
|
||||
// Bombable Walls Grotto
|
||||
{ "110:" T(GFXP_HIRAGANA "カクシトビコミアナ 9", "Hidden Dive Hole 9"), MapSelect_LoadGame, ENTR_GROTTOS_9 },
|
||||
// 2 Business Scrubs Grotto
|
||||
{ "111:" T(GFXP_HIRAGANA "カクシトビコミアナ 10", "Hidden Dive Hole 10"), MapSelect_LoadGame, ENTR_GROTTOS_10 },
|
||||
// Tektite & Heart Piece Grotto
|
||||
{ "112:" T(GFXP_HIRAGANA "カクシトビコミアナ 11", "Hidden Dive Hole 11"), MapSelect_LoadGame, ENTR_GROTTOS_11 },
|
||||
// Deku Stage Grotto
|
||||
{ "113:" T(GFXP_HIRAGANA "カクシトビコミアナ 12", "Hidden Dive Hole 12"), MapSelect_LoadGame, ENTR_GROTTOS_12 },
|
||||
// Rupees & Cow Grotto
|
||||
{ "114:" T(GFXP_HIRAGANA "カクシトビコミアナ 13", "Hidden Dive Hole 13"), MapSelect_LoadGame, ENTR_GROTTOS_13 },
|
||||
{ "115:" T(GFXP_KATAKANA "ハイラル デモ", "Hyrule Cutscenes"), MapSelect_LoadGame, ENTR_CUTSCENE_MAP_0 },
|
||||
#if OOT_DEBUG
|
||||
// "116: Special Room (Treasure Chest Warp)" (Ganondorf Test Room)
|
||||
{ "116:" GFXP_HIRAGANA "ベッシツ (タカラバコ" GFXP_KATAKANA "ワープ)", MapSelect_LoadGame, ENTR_BESITU_0 },
|
||||
// "117: Sasaki Test" (Sasa Test)
|
||||
{ "117:" GFXP_HIRAGANA "ササ" GFXP_KATAKANA "テスト", MapSelect_LoadGame, ENTR_SASATEST_0 },
|
||||
// "118: Test Map" (Jungle Gym)
|
||||
{ "118:" GFXP_KATAKANA "テストマップ", MapSelect_LoadGame, ENTR_TEST01_0 },
|
||||
// "119: Test Room" (Treasure Chest Room)
|
||||
{ "119:" GFXP_KATAKANA "テストルーム", MapSelect_LoadGame, ENTR_TESTROOM_0 },
|
||||
// "120: Stalfos Miniboss Room" (Stalfos Miniboss Room)
|
||||
{ "120:" GFXP_HIRAGANA "チュウ" GFXP_KATAKANA "スタロフォス" GFXP_HIRAGANA "ベヤ", MapSelect_LoadGame, ENTR_SYOTES_0 },
|
||||
// "121: Boss Stalfos Room" (Stalfos Boss Room)
|
||||
{ "121:" GFXP_KATAKANA "ボススタロフォス" GFXP_HIRAGANA "ベヤ", MapSelect_LoadGame, ENTR_SYOTES2_0 },
|
||||
// "122: Stal" (Sutaru)
|
||||
{ "122:Sutaru", MapSelect_LoadGame, ENTR_SUTARU_0 },
|
||||
// "123: Test Area"
|
||||
{ "123:jikkenjyou", MapSelect_LoadGame, ENTR_TEST_SHOOTING_GALLERY_0 },
|
||||
// "124: Depth Test" (Depth Test)
|
||||
{ "124:depth" GFXP_KATAKANA "テスト", MapSelect_LoadGame, ENTR_DEPTH_TEST_0 },
|
||||
// "125: Hyrule Garden Game 2" (Early Hyrule Garden Game)
|
||||
{ "125:" GFXP_KATAKANA "ハイラル" GFXP_HIRAGANA "ニワ" GFXP_KATAKANA "ゲーム2", MapSelect_LoadGame, ENTR_HAIRAL_NIWA2_0 },
|
||||
{ "116:" T(GFXP_HIRAGANA "ベッシツ (タカラバコ" GFXP_KATAKANA "ワープ)", "Special Room (Treasure Chest Warp)"),
|
||||
MapSelect_LoadGame, ENTR_BESITU_0 },
|
||||
{ "117:" T(GFXP_HIRAGANA "ササ" GFXP_KATAKANA "テスト", "Sasaki Test"), MapSelect_LoadGame, ENTR_SASATEST_0 },
|
||||
{ "118:" T(GFXP_KATAKANA "テストマップ", "Test Map"), MapSelect_LoadGame, ENTR_TEST01_0 },
|
||||
{ "119:" T(GFXP_KATAKANA "テストルーム", "Test Room"), MapSelect_LoadGame, ENTR_TESTROOM_0 },
|
||||
{ "120:" T(GFXP_HIRAGANA "チュウ" GFXP_KATAKANA "スタロフォス" GFXP_HIRAGANA "ベヤ", "Stalfos Miniboss Room"),
|
||||
MapSelect_LoadGame, ENTR_SYOTES_0 },
|
||||
{ "121:" T(GFXP_KATAKANA "ボススタロフォス" GFXP_HIRAGANA "ベヤ", "Boss Stalfos Room"), MapSelect_LoadGame,
|
||||
ENTR_SYOTES2_0 },
|
||||
{ "122:" T("Sutaru", "Stal"), MapSelect_LoadGame, ENTR_SUTARU_0 },
|
||||
{ "123:" T("jikkenjyou", "Test Area"), MapSelect_LoadGame, ENTR_TEST_SHOOTING_GALLERY_0 },
|
||||
{ "124:depth" T(GFXP_KATAKANA "テスト", "Test"), MapSelect_LoadGame, ENTR_DEPTH_TEST_0 },
|
||||
{ "125:" T(GFXP_KATAKANA "ハイラル" GFXP_HIRAGANA "ニワ" GFXP_KATAKANA "ゲーム2", "Hyrule Garden Game 2"),
|
||||
MapSelect_LoadGame, ENTR_HAIRAL_NIWA2_0 },
|
||||
#endif
|
||||
// "title" (Title Screen)
|
||||
{ "title", (void*)MapSelect_LoadTitle, 0 },
|
||||
#if PLATFORM_N64
|
||||
{ "64DD TEST n64dd_SetDiskVersion(1)", (void*)func_80800AD0_unknown, 0 },
|
||||
|
@ -554,30 +514,19 @@ void MapSelect_PrintMenu(MapSelectState* this, GfxPrint* printer) {
|
|||
}
|
||||
|
||||
static const char* sLoadingMessages[] = {
|
||||
// "Please wait a minute"
|
||||
GFXP_HIRAGANA "シバラクオマチクダサイ",
|
||||
// "Hold on a sec"
|
||||
GFXP_HIRAGANA "チョット マッテネ",
|
||||
// "Wait a moment"
|
||||
GFXP_KATAKANA "ウェイト ア モーメント",
|
||||
// "Loading"
|
||||
GFXP_KATAKANA "ロード" GFXP_HIRAGANA "チュウ",
|
||||
// "Now working"
|
||||
GFXP_HIRAGANA "ナウ ワーキング",
|
||||
// "Now creating"
|
||||
GFXP_HIRAGANA "イマ ツクッテマス",
|
||||
// "It's not broken"
|
||||
GFXP_HIRAGANA "コショウジャナイヨ",
|
||||
// "Coffee Break"
|
||||
GFXP_KATAKANA "コーヒー ブレイク",
|
||||
// "Please set B side"
|
||||
GFXP_KATAKANA "Bメンヲセットシテクダサイ",
|
||||
// "Be patient, now"
|
||||
GFXP_HIRAGANA "ジット" GFXP_KATAKANA "ガマン" GFXP_HIRAGANA "ノ" GFXP_KATAKANA "コ" GFXP_HIRAGANA "デアッタ",
|
||||
// "Please wait just a minute"
|
||||
GFXP_HIRAGANA "イマシバラクオマチクダサイ",
|
||||
// "Don't worry, don't worry. Take a break, take a break."
|
||||
GFXP_HIRAGANA "アワテナイアワテナイ。ヒトヤスミヒトヤスミ。",
|
||||
T(GFXP_HIRAGANA "シバラクオマチクダサイ", "Please wait a minute"),
|
||||
T(GFXP_HIRAGANA "チョット マッテネ", "Hold on a sec"),
|
||||
T(GFXP_KATAKANA "ウェイト ア モーメント", "Wait a moment"),
|
||||
T(GFXP_KATAKANA "ロード" GFXP_HIRAGANA "チュウ", "Loading"),
|
||||
T(GFXP_HIRAGANA "ナウ ワーキング", "Now working"),
|
||||
T(GFXP_HIRAGANA "イマ ツクッテマス", "Now creating"),
|
||||
T(GFXP_HIRAGANA "コショウジャナイヨ", "It's not broken"),
|
||||
T(GFXP_KATAKANA "コーヒー ブレイク", "Coffee Break"),
|
||||
T(GFXP_KATAKANA "Bメンヲセットシテクダサイ", "Please set B side"),
|
||||
T(GFXP_HIRAGANA "ジット" GFXP_KATAKANA "ガマン" GFXP_HIRAGANA "ノ" GFXP_KATAKANA "コ" GFXP_HIRAGANA "デアッタ",
|
||||
"Be patient, now"),
|
||||
T(GFXP_HIRAGANA "イマシバラクオマチクダサイ", "Please wait just a minute"),
|
||||
T(GFXP_HIRAGANA "アワテナイアワテナイ。ヒトヤスミヒトヤスミ。", "Don't worry, don't worry. Take a break, take a break."),
|
||||
};
|
||||
|
||||
void MapSelect_PrintLoadingMessage(MapSelectState* this, GfxPrint* printer) {
|
||||
|
@ -590,8 +539,8 @@ void MapSelect_PrintLoadingMessage(MapSelectState* this, GfxPrint* printer) {
|
|||
}
|
||||
|
||||
static const char* sAgeLabels[] = {
|
||||
GFXP_HIRAGANA "17(ワカモノ)", // "17(young)"
|
||||
GFXP_HIRAGANA "5(ワカスギ)", // "5(very young)"
|
||||
T(GFXP_HIRAGANA "17(ワカモノ)", "17(young)"),
|
||||
T(GFXP_HIRAGANA "5(ワカスギ)", "5(very young)"),
|
||||
};
|
||||
|
||||
void MapSelect_PrintAgeSetting(MapSelectState* this, GfxPrint* printer, s32 age) {
|
||||
|
@ -608,48 +557,48 @@ void MapSelect_PrintCutsceneSetting(MapSelectState* this, GfxPrint* printer, u16
|
|||
|
||||
switch (csIndex) {
|
||||
case CS_INDEX_AUTO:
|
||||
label = GFXP_HIRAGANA " ヨル " GFXP_KATAKANA "ゴロン";
|
||||
label = T(GFXP_HIRAGANA " ヨル " GFXP_KATAKANA "ゴロン", "Night");
|
||||
gSaveContext.save.dayTime = CLOCK_TIME(0, 0);
|
||||
break;
|
||||
case CS_INDEX_UNUSED:
|
||||
// clang-format off
|
||||
gSaveContext.save.dayTime = CLOCK_TIME(12, 0); label = GFXP_HIRAGANA "オヒル " GFXP_KATAKANA "ジャラ";
|
||||
gSaveContext.save.dayTime = CLOCK_TIME(12, 0); label = T(GFXP_HIRAGANA "オヒル " GFXP_KATAKANA "ジャラ", "Day");
|
||||
// clang-format on
|
||||
break;
|
||||
case CS_INDEX_0:
|
||||
// clang-format off
|
||||
gSaveContext.save.dayTime = CLOCK_TIME(12, 0); label = "デモ00";
|
||||
gSaveContext.save.dayTime = CLOCK_TIME(12, 0); label = T("デモ00", "Demo 00");
|
||||
// clang-format on
|
||||
break;
|
||||
case CS_INDEX_1:
|
||||
label = "デモ01";
|
||||
label = T("デモ01", "Demo 01");
|
||||
break;
|
||||
case CS_INDEX_2:
|
||||
label = "デモ02";
|
||||
label = T("デモ02", "Demo 02");
|
||||
break;
|
||||
case CS_INDEX_3:
|
||||
label = "デモ03";
|
||||
label = T("デモ03", "Demo 03");
|
||||
break;
|
||||
case CS_INDEX_4:
|
||||
label = "デモ04";
|
||||
label = T("デモ04", "Demo 04");
|
||||
break;
|
||||
case CS_INDEX_5:
|
||||
label = "デモ05";
|
||||
label = T("デモ05", "Demo 05");
|
||||
break;
|
||||
case CS_INDEX_6:
|
||||
label = "デモ06";
|
||||
label = T("デモ06", "Demo 06");
|
||||
break;
|
||||
case CS_INDEX_7:
|
||||
label = "デモ07";
|
||||
label = T("デモ07", "Demo 07");
|
||||
break;
|
||||
case CS_INDEX_8:
|
||||
label = "デモ08";
|
||||
label = T("デモ08", "Demo 08");
|
||||
break;
|
||||
case CS_INDEX_9:
|
||||
label = "デモ09";
|
||||
label = T("デモ09", "Demo 09");
|
||||
break;
|
||||
case CS_INDEX_A:
|
||||
label = "デモ0A";
|
||||
label = T("デモ0A", "Demo 0A");
|
||||
break;
|
||||
};
|
||||
|
||||
|
@ -731,8 +680,8 @@ void MapSelect_Main(GameState* thisx) {
|
|||
|
||||
void MapSelect_Destroy(GameState* thisx) {
|
||||
PRINTF("%c", BEL);
|
||||
// "view_cleanup will hang, so it won't be called"
|
||||
PRINTF("*** view_cleanupはハングアップするので、呼ばない ***\n");
|
||||
PRINTF(T("*** view_cleanupはハングアップするので、呼ばない ***\n",
|
||||
"*** view_cleanup will hang, so it won't be called ***\n"));
|
||||
}
|
||||
|
||||
void MapSelect_Init(GameState* thisx) {
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
#include "terminal.h"
|
||||
#include "versions.h"
|
||||
|
||||
#pragma increment_block_number "ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
#pragma increment_block_number "ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
|
||||
|
||||
#if !PLATFORM_GC
|
||||
#define KALEIDO_PROMPT_CURSOR_R 100
|
||||
|
|
|
@ -8,17 +8,18 @@ import os, shutil, time
|
|||
from dataclasses import dataclass
|
||||
from multiprocessing.pool import ThreadPool
|
||||
from typing import Dict, List, Tuple, Union
|
||||
from xml.etree import ElementTree
|
||||
from xml.etree.ElementTree import Element
|
||||
|
||||
from .audio_tables import AudioCodeTable, AudioCodeTableEntry, AudioStorageMedium
|
||||
from .audiotable import AudioTableData, AudioTableFile, AudioTableSample
|
||||
from .audiobank_file import AudiobankFile
|
||||
from .disassemble_sequence import CMD_SPEC, SequenceDisassembler, SequenceTableSpec, MMLVersion
|
||||
from .util import align, debugm, error, incbin, program_get, XMLWriter
|
||||
from .extraction_xml import ExtractionDescription, SampleBankExtractionDescription, SoundFontExtractionDescription, SequenceExtractionDescription
|
||||
from .util import align, incbin, program_get, XMLWriter
|
||||
|
||||
@dataclass
|
||||
class GameVersionInfo:
|
||||
# Version Name
|
||||
version_name : str
|
||||
# Music Macro Language Version
|
||||
mml_version : MMLVersion
|
||||
# Soundfont table code offset
|
||||
|
@ -49,7 +50,7 @@ BASEROM_DEBUG = False
|
|||
# ======================================================================================================================
|
||||
|
||||
def collect_sample_banks(audiotable_seg : memoryview, extracted_dir : str, version_info : GameVersionInfo,
|
||||
table : AudioCodeTable, samplebank_xmls : Dict[int, Tuple[str, Element]]):
|
||||
table : AudioCodeTable, samplebank_descs : Dict[int, SampleBankExtractionDescription]):
|
||||
sample_banks : List[Union[AudioTableFile, int]] = []
|
||||
|
||||
for i,entry in enumerate(table):
|
||||
|
@ -72,7 +73,7 @@ def collect_sample_banks(audiotable_seg : memoryview, extracted_dir : str, versi
|
|||
bug = i in version_info.audiotable_buffer_bugs
|
||||
|
||||
bank = AudioTableFile(i, audiotable_seg, entry, table.rom_addr, buffer_bug=bug,
|
||||
extraction_xml=samplebank_xmls.get(i, None))
|
||||
extraction_desc=samplebank_descs.get(i, None))
|
||||
|
||||
if BASEROM_DEBUG:
|
||||
bank.dump_bin(f"{extracted_dir}/baserom_audiotest/audiotable_files/{bank.file_name}.bin")
|
||||
|
@ -90,7 +91,7 @@ def bank_data_lookup(sample_banks : List[Union[AudioTableFile, int]], e : Union[
|
|||
return e
|
||||
|
||||
def collect_soundfonts(audiobank_seg : memoryview, extracted_dir : str, version_info : GameVersionInfo,
|
||||
sound_font_table : AudioCodeTable, soundfont_xmls : Dict[int, Tuple[str, Element]],
|
||||
sound_font_table : AudioCodeTable, soundfont_descs : Dict[int, SoundFontExtractionDescription],
|
||||
sample_banks : List[Union[AudioTableFile, int]]):
|
||||
soundfonts = []
|
||||
|
||||
|
@ -104,7 +105,7 @@ def collect_soundfonts(audiobank_seg : memoryview, extracted_dir : str, version_
|
|||
# Read the data
|
||||
soundfont = AudiobankFile(audiobank_seg, i, entry, sound_font_table.rom_addr, bank1, bank2,
|
||||
entry.sample_bank_id_1, entry.sample_bank_id_2,
|
||||
extraction_xml=soundfont_xmls.get(i, None))
|
||||
extraction_desc=soundfont_descs.get(i, None))
|
||||
soundfonts.append(soundfont)
|
||||
|
||||
if BASEROM_DEBUG:
|
||||
|
@ -186,7 +187,7 @@ def disassemble_one_sequence(extracted_dir : str, version_info : GameVersionInfo
|
|||
|
||||
def extract_sequences(audioseq_seg : memoryview, extracted_dir : str, version_info : GameVersionInfo, write_xml : bool,
|
||||
sequence_table : AudioCodeTable, sequence_font_table : memoryview,
|
||||
sequence_xmls : Dict[int, Element], soundfonts : List[AudiobankFile]):
|
||||
sequence_descs : Dict[int, SequenceExtractionDescription], soundfonts : List[AudiobankFile]):
|
||||
|
||||
sequence_font_table_cvg = [0] * len(sequence_font_table)
|
||||
|
||||
|
@ -237,13 +238,13 @@ def extract_sequences(audioseq_seg : memoryview, extracted_dir : str, version_in
|
|||
with open(f"{extracted_dir}/baserom_audiotest/audioseq_files/seq_{i}{ext}.aseq", "wb") as outfile:
|
||||
outfile.write(seq_data)
|
||||
|
||||
extraction_xml = sequence_xmls.get(i, None)
|
||||
if extraction_xml is None:
|
||||
extraction_desc = sequence_descs.get(i, None)
|
||||
if extraction_desc is None:
|
||||
sequence_filename = f"seq_{i}"
|
||||
sequence_name = f"Sequence_{i}"
|
||||
else:
|
||||
sequence_filename = extraction_xml[0]
|
||||
sequence_name = extraction_xml[1].attrib["Name"]
|
||||
sequence_filename = extraction_desc.file_name
|
||||
sequence_name = extraction_desc.name
|
||||
|
||||
# Write extraction xml entry
|
||||
if write_xml:
|
||||
|
@ -359,27 +360,22 @@ def extract_audio_for_version(version_info : GameVersionInfo, extracted_dir : st
|
|||
# Collect extraction xmls
|
||||
# ==================================================================================================================
|
||||
|
||||
samplebank_xmls : Dict[int, Tuple[str, Element]] = {}
|
||||
soundfont_xmls : Dict[int, Tuple[str, Element]] = {}
|
||||
sequence_xmls : Dict[int, Tuple[str, Element]] = {}
|
||||
samplebank_descs : Dict[int, SampleBankExtractionDescription] = {}
|
||||
soundfont_descs : Dict[int, SoundFontExtractionDescription] = {}
|
||||
sequence_descs : Dict[int, SequenceExtractionDescription] = {}
|
||||
|
||||
if read_xml:
|
||||
# Read all present xmls
|
||||
|
||||
def walk_xmls(out_dict : Dict[int, Tuple[str, Element]], path : str, typename : str):
|
||||
def walk_xmls(T : type, out_dict : Dict[int, ExtractionDescription], path : str):
|
||||
for root,_,files in os.walk(path):
|
||||
for f in files:
|
||||
fullpath = os.path.join(root, f)
|
||||
xml = ElementTree.parse(fullpath)
|
||||
xml_root = xml.getroot()
|
||||
desc : ExtractionDescription = T(os.path.join(root, f), f, version_info.version_name)
|
||||
out_dict[desc.index] = desc
|
||||
|
||||
if xml_root.tag != typename or "Name" not in xml_root.attrib or "Index" not in xml_root.attrib:
|
||||
error(f"Malformed {typename} extraction xml: \"{fullpath}\"")
|
||||
out_dict[int(xml_root.attrib["Index"])] = (f.replace(".xml", ""), xml_root)
|
||||
|
||||
walk_xmls(samplebank_xmls, f"assets/xml/audio/samplebanks", "SampleBank")
|
||||
walk_xmls(soundfont_xmls, f"assets/xml/audio/soundfonts", "SoundFont")
|
||||
walk_xmls(sequence_xmls, f"assets/xml/audio/sequences", "Sequence")
|
||||
walk_xmls(SampleBankExtractionDescription, samplebank_descs, f"assets/xml/audio/samplebanks")
|
||||
walk_xmls(SoundFontExtractionDescription, soundfont_descs, f"assets/xml/audio/soundfonts")
|
||||
walk_xmls(SequenceExtractionDescription, sequence_descs, f"assets/xml/audio/sequences")
|
||||
|
||||
# TODO warn about any missing xmls or xmls with a bad index
|
||||
|
||||
|
@ -389,7 +385,7 @@ def extract_audio_for_version(version_info : GameVersionInfo, extracted_dir : st
|
|||
|
||||
if BASEROM_DEBUG:
|
||||
os.makedirs(f"{extracted_dir}/baserom_audiotest/audiotable_files", exist_ok=True)
|
||||
sample_banks = collect_sample_banks(audiotable_seg, extracted_dir, version_info, sample_bank_table, samplebank_xmls)
|
||||
sample_banks = collect_sample_banks(audiotable_seg, extracted_dir, version_info, sample_bank_table, samplebank_descs)
|
||||
|
||||
# ==================================================================================================================
|
||||
# Collect soundfonts
|
||||
|
@ -397,7 +393,7 @@ def extract_audio_for_version(version_info : GameVersionInfo, extracted_dir : st
|
|||
|
||||
if BASEROM_DEBUG:
|
||||
os.makedirs(f"{extracted_dir}/baserom_audiotest/audiobank_files", exist_ok=True)
|
||||
soundfonts = collect_soundfonts(audiobank_seg, extracted_dir, version_info, sound_font_table, soundfont_xmls,
|
||||
soundfonts = collect_soundfonts(audiobank_seg, extracted_dir, version_info, sound_font_table, soundfont_descs,
|
||||
sample_banks)
|
||||
|
||||
# ==================================================================================================================
|
||||
|
@ -459,4 +455,4 @@ def extract_audio_for_version(version_info : GameVersionInfo, extracted_dir : st
|
|||
print("Extracting sequences...")
|
||||
|
||||
extract_sequences(audioseq_seg, extracted_dir, version_info, write_xml, sequence_table, sequence_font_table,
|
||||
sequence_xmls, soundfonts)
|
||||
sequence_descs, soundfonts)
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
#
|
||||
|
||||
import struct
|
||||
from typing import Optional, Tuple
|
||||
from xml.etree.ElementTree import Element
|
||||
from typing import Optional
|
||||
|
||||
from .audio_tables import AudioCodeTableEntry
|
||||
from .audiobank_structs import AdpcmBook, AdpcmLoop, Drum, Instrument, SoundFontSample, SoundFontSound
|
||||
from .envelope import Envelope
|
||||
from .audiotable import AudioTableFile, AudioTableSample
|
||||
from .envelope import Envelope
|
||||
from .extraction_xml import SoundFontExtractionDescription
|
||||
from .tuning import pitch_names
|
||||
from .util import XMLWriter, align, debugm, merge_like_ranges, merge_ranges
|
||||
|
||||
|
@ -183,7 +183,7 @@ class AudiobankFile:
|
|||
|
||||
def __init__(self, audiobank_seg : memoryview, index : int, table_entry : AudioCodeTableEntry,
|
||||
seg_offset : int, bank1 : AudioTableFile, bank2 : AudioTableFile, bank1_num : int, bank2_num : int,
|
||||
extraction_xml : Tuple[str, Element] = None):
|
||||
extraction_desc : Optional[SoundFontExtractionDescription] = None):
|
||||
self.bank_num = index
|
||||
self.table_entry : AudioCodeTableEntry = table_entry
|
||||
self.num_instruments = self.table_entry.num_instruments
|
||||
|
@ -193,7 +193,7 @@ class AudiobankFile:
|
|||
self.bank1_num = bank1_num
|
||||
self.bank2_num = bank2_num
|
||||
|
||||
if extraction_xml is None:
|
||||
if extraction_desc is None:
|
||||
self.file_name = f"Soundfont_{self.bank_num}"
|
||||
self.name = f"Soundfont_{self.bank_num}"
|
||||
|
||||
|
@ -201,32 +201,22 @@ class AudiobankFile:
|
|||
self.extraction_instruments_info = None
|
||||
self.extraction_drums_info = None
|
||||
self.extraction_effects_info = None
|
||||
self.extraction_envelopes_info_versions = []
|
||||
self.extraction_instruments_info_versions = {}
|
||||
self.extraction_drums_info_versions = []
|
||||
self.extraction_effects_info_versions = []
|
||||
else:
|
||||
self.file_name = extraction_xml[0]
|
||||
self.name = extraction_xml[1].attrib["Name"]
|
||||
self.file_name = extraction_desc.file_name
|
||||
self.name = extraction_desc.name
|
||||
|
||||
self.extraction_envelopes_info = []
|
||||
self.extraction_instruments_info = {}
|
||||
self.extraction_drums_info = []
|
||||
self.extraction_effects_info = []
|
||||
|
||||
for item in extraction_xml[1]:
|
||||
if item.tag == "Envelopes":
|
||||
for env in item:
|
||||
assert env.tag == "Envelope"
|
||||
self.extraction_envelopes_info.append(env.attrib["Name"])
|
||||
elif item.tag == "Instruments":
|
||||
for instr in item:
|
||||
assert instr.tag == "Instrument"
|
||||
self.extraction_instruments_info[int(instr.attrib["ProgramNumber"])] = instr.attrib["Name"]
|
||||
elif item.tag == "Drums":
|
||||
for drum in item:
|
||||
self.extraction_drums_info.append(drum.attrib["Name"])
|
||||
elif item.tag == "Effects":
|
||||
for effect in item:
|
||||
self.extraction_effects_info.append(effect.attrib["Name"])
|
||||
else:
|
||||
assert False, item.tag
|
||||
self.extraction_envelopes_info = extraction_desc.envelopes_info
|
||||
self.extraction_instruments_info = extraction_desc.instruments_info
|
||||
self.extraction_drums_info = extraction_desc.drums_info
|
||||
self.extraction_effects_info = extraction_desc.effects_info
|
||||
self.extraction_envelopes_info_versions = extraction_desc.envelopes_info_versions
|
||||
self.extraction_instruments_info_versions = extraction_desc.instruments_info_versions
|
||||
self.extraction_drums_info_versions = extraction_desc.drums_info_versions
|
||||
self.extraction_effects_info_versions = extraction_desc.effects_info_versions
|
||||
|
||||
# Coverage consists of a list of itervals of the form [[start,type],[end,type]]
|
||||
self.coverage = []
|
||||
|
@ -755,25 +745,25 @@ class AudiobankFile:
|
|||
# TODO resolve decay/release index overrides?
|
||||
|
||||
def envelope_name(self, index):
|
||||
if self.extraction_envelopes_info is not None:
|
||||
if self.extraction_envelopes_info is not None and index < len(self.extraction_envelopes_info):
|
||||
return self.extraction_envelopes_info[index]
|
||||
else:
|
||||
return f"Env{index}"
|
||||
|
||||
def instrument_name(self, program_number):
|
||||
if self.extraction_instruments_info is not None:
|
||||
if self.extraction_instruments_info is not None and program_number in self.extraction_instruments_info:
|
||||
return self.extraction_instruments_info[program_number]
|
||||
else:
|
||||
return f"INST_{program_number}"
|
||||
|
||||
def drum_grp_name(self, index):
|
||||
if self.extraction_drums_info is not None:
|
||||
if self.extraction_drums_info is not None and index < len(self.extraction_drums_info):
|
||||
return self.extraction_drums_info[index]
|
||||
else:
|
||||
return f"DRUM_{index}"
|
||||
|
||||
def effect_name(self, index):
|
||||
if self.extraction_effects_info is not None:
|
||||
if self.extraction_effects_info is not None and index < len(self.extraction_effects_info):
|
||||
return self.extraction_effects_info[index]
|
||||
else:
|
||||
return f"EFFECT_{index}"
|
||||
|
@ -905,21 +895,41 @@ class AudiobankFile:
|
|||
|
||||
# add contents for names
|
||||
|
||||
if len(self.envelopes) != 0:
|
||||
if len(self.envelopes) != 0 or len(self.extraction_envelopes_info_versions) != 0:
|
||||
xml.write_start_tag("Envelopes")
|
||||
|
||||
for i in range(len(self.envelopes)):
|
||||
# First write envelopes that were defined in the extraction xml, possibly interleaved with envelopes
|
||||
# we ignored for this version
|
||||
i = 0
|
||||
for envelope_entry,in_version in self.extraction_envelopes_info_versions:
|
||||
xml.write_element("Envelope", envelope_entry)
|
||||
# Count how many envelopes we saw that were defined for this version
|
||||
i += in_version
|
||||
|
||||
# Write any remaining envelopes that weren't defined in the xml
|
||||
for j in range(i, len(self.envelopes)):
|
||||
xml.write_element("Envelope", {
|
||||
"Name" : self.envelope_name(i)
|
||||
"Name" : self.envelope_name(j)
|
||||
})
|
||||
|
||||
xml.write_end_tag()
|
||||
|
||||
if len(self.instruments) != 0:
|
||||
if len(self.instruments) != 0 or len(self.extraction_instruments_info_versions) != 0:
|
||||
xml.write_start_tag("Instruments")
|
||||
|
||||
# Write in struct order
|
||||
for instr in sorted(self.instruments, key=lambda instr : instr.struct_index):
|
||||
sorted_instruments = tuple(sorted(self.instruments, key=lambda instr : instr.struct_index))
|
||||
|
||||
# First write instruments that were defined in the extraction xml, possibly interleaved with instruments
|
||||
# we ignored for this version
|
||||
i = 0
|
||||
for instr_entry,in_version in self.extraction_instruments_info_versions:
|
||||
xml.write_element("Instrument", instr_entry)
|
||||
# Count how many instruments we saw that were defined for this version
|
||||
i += in_version
|
||||
|
||||
# Write any remaining instruments that weren't defined in the xml
|
||||
for instr in sorted_instruments[i:]:
|
||||
instr : Instrument
|
||||
if not instr.unused:
|
||||
xml.write_element("Instrument", {
|
||||
|
@ -929,23 +939,39 @@ class AudiobankFile:
|
|||
|
||||
xml.write_end_tag()
|
||||
|
||||
if any(isinstance(dg, DrumGroup) for dg in self.drum_groups):
|
||||
if any(isinstance(dg, DrumGroup) for dg in self.drum_groups) or len(self.extraction_drums_info_versions):
|
||||
xml.write_start_tag("Drums")
|
||||
|
||||
for i,drum_grp in enumerate(self.drum_groups):
|
||||
# First write drums that were defined in the extraction xml, possibly interleaved with drums
|
||||
# we ignored for this version
|
||||
i = 0
|
||||
for drum_entry,in_version in self.extraction_drums_info_versions:
|
||||
xml.write_element("Drum", drum_entry)
|
||||
# Count how many drum groups we saw that were defined for this version
|
||||
i += in_version
|
||||
|
||||
for j,drum_grp in enumerate(self.drum_groups[i:], i):
|
||||
if isinstance(drum_grp, DrumGroup):
|
||||
xml.write_element("Drum", {
|
||||
"Name" : self.drum_grp_name(i)
|
||||
"Name" : self.drum_grp_name(j)
|
||||
})
|
||||
|
||||
xml.write_end_tag()
|
||||
|
||||
if len(self.sfx) != 0:
|
||||
if len(self.sfx) != 0 or len(self.extraction_effects_info_versions):
|
||||
xml.write_start_tag("Effects")
|
||||
|
||||
for i,sfx in enumerate(self.sfx):
|
||||
# First write effects that were defined in the extraction xml, possibly interleaved with effects
|
||||
# we ignored for this version
|
||||
i = 0
|
||||
for sfx_entry,in_version in self.extraction_effects_info_versions:
|
||||
xml.write_element("Effect", sfx_entry)
|
||||
# Count how many effects we saw that were defined for this version
|
||||
i += in_version
|
||||
|
||||
for j,sfx in enumerate(self.sfx[i:], i):
|
||||
xml.write_element("Effect", {
|
||||
"Name" : self.effect_name(i)
|
||||
"Name" : self.effect_name(j)
|
||||
})
|
||||
|
||||
xml.write_end_tag()
|
||||
|
|
|
@ -5,11 +5,11 @@
|
|||
#
|
||||
|
||||
import math, struct
|
||||
from typing import Dict, Tuple
|
||||
from xml.etree.ElementTree import Element
|
||||
from typing import Dict, Optional
|
||||
|
||||
from .audio_tables import AudioCodeTableEntry
|
||||
from .audiobank_structs import AudioSampleCodec, SoundFontSample, AdpcmBook, AdpcmLoop
|
||||
from .extraction_xml import SampleBankExtractionDescription
|
||||
from .tuning import pitch_names, note_z64_to_midi, recalc_tuning, rate_from_tuning, rank_rates_notes, BAD_FLOATS
|
||||
from .util import align, error, XMLWriter, f32_to_u32
|
||||
|
||||
|
@ -207,7 +207,7 @@ class AudioTableSample(AudioTableData):
|
|||
def base_note_number(self):
|
||||
return note_z64_to_midi(pitch_names.index(self.base_note))
|
||||
|
||||
def resolve_basenote_rate(self, extraction_sample_info : Dict[int, Dict[str,str]]):
|
||||
def resolve_basenote_rate(self, extraction_sample_info : Optional[Dict[str,str]]):
|
||||
assert len(self.notes_rates) != 0
|
||||
|
||||
# rate_3ds = None
|
||||
|
@ -285,13 +285,9 @@ class AudioTableSample(AudioTableData):
|
|||
final_rate,(final_note,) = rank_rates_notes(finalists)
|
||||
|
||||
if extraction_sample_info is not None:
|
||||
if self.start in extraction_sample_info:
|
||||
entry = extraction_sample_info[self.start]
|
||||
if "SampleRate" in entry and "BaseNote" in entry:
|
||||
final_rate = int(entry["SampleRate"])
|
||||
final_note = entry["BaseNote"]
|
||||
else:
|
||||
print(f"WARNING: Missing extraction xml entry for sample at offset=0x{self.start:X}")
|
||||
assert "SampleRate" in extraction_sample_info and "BaseNote" in extraction_sample_info
|
||||
final_rate = int(extraction_sample_info["SampleRate"])
|
||||
final_note = extraction_sample_info["BaseNote"]
|
||||
|
||||
# print(" ",len(FINAL_NOTES_RATES), FINAL_NOTES_RATES)
|
||||
# if rate_3ds is not None and len(FINAL_NOTES_RATES) == 1:
|
||||
|
@ -385,7 +381,8 @@ class AudioTableFile:
|
|||
"""
|
||||
|
||||
def __init__(self, bank_num : int, audiotable_seg : memoryview, table_entry : AudioCodeTableEntry,
|
||||
seg_offset : int, buffer_bug : bool = False, extraction_xml : Tuple[str, Element] = None):
|
||||
seg_offset : int, buffer_bug : bool = False,
|
||||
extraction_desc : Optional[SampleBankExtractionDescription] = None):
|
||||
self.bank_num = bank_num
|
||||
self.table_entry : AudioCodeTableEntry = table_entry
|
||||
self.data = self.table_entry.data(audiotable_seg, seg_offset)
|
||||
|
@ -393,24 +390,18 @@ class AudioTableFile:
|
|||
|
||||
self.samples_final = None
|
||||
|
||||
if extraction_xml is None:
|
||||
if extraction_desc is None:
|
||||
self.file_name = f"SampleBank_{self.bank_num}"
|
||||
self.name = f"SampleBank_{self.bank_num}"
|
||||
self.extraction_sample_info_versions = []
|
||||
self.extraction_sample_info = None
|
||||
self.extraction_blob_info = None
|
||||
else:
|
||||
self.file_name = extraction_xml[0]
|
||||
self.name = extraction_xml[1].attrib["Name"]
|
||||
|
||||
self.extraction_sample_info = {}
|
||||
self.extraction_blob_info = {}
|
||||
for item in extraction_xml[1]:
|
||||
if item.tag == "Sample":
|
||||
self.extraction_sample_info[int(item.attrib["Offset"], 16)] = item.attrib
|
||||
elif item.tag == "Blob":
|
||||
self.extraction_blob_info[int(item.attrib["Offset"], 16)] = item.attrib
|
||||
else:
|
||||
assert False
|
||||
self.file_name = extraction_desc.file_name
|
||||
self.name = extraction_desc.name
|
||||
self.extraction_sample_info_versions = extraction_desc.sample_info_versions
|
||||
self.extraction_sample_info = extraction_desc.sample_info
|
||||
self.extraction_blob_info = extraction_desc.blob_info
|
||||
|
||||
self.pointer_indices = []
|
||||
|
||||
|
@ -461,28 +452,24 @@ class AudioTableFile:
|
|||
return self.samples[offset]
|
||||
|
||||
def sample_name(self, sample : AudioTableSample, index : int):
|
||||
if self.extraction_sample_info is not None:
|
||||
if sample.start in self.extraction_sample_info:
|
||||
return self.extraction_sample_info[sample.start]["Name"]
|
||||
print(f"WARNING: Missing extraction xml entry for sample at offset=0x{sample.start:X}")
|
||||
if self.extraction_sample_info is not None and index < len(self.extraction_sample_info):
|
||||
return self.extraction_sample_info[index]["Name"]
|
||||
|
||||
return f"SAMPLE_{self.bank_num}_{index}"
|
||||
|
||||
def sample_filename(self, sample : AudioTableSample, index : int):
|
||||
ext = sample.codec_file_extension_compressed()
|
||||
|
||||
if self.extraction_sample_info is not None:
|
||||
if sample.start in self.extraction_sample_info:
|
||||
return self.extraction_sample_info[sample.start]["FileName"] + ext
|
||||
print(f"WARNING: Missing extraction xml entry for sample at offset=0x{sample.start:X}")
|
||||
if self.extraction_sample_info is not None and index < len(self.extraction_sample_info):
|
||||
return self.extraction_sample_info[index]["FileName"] + ext
|
||||
|
||||
npad = int(math.floor(1 + math.log10(len(self.samples)))) if len(self.samples) != 0 else 0
|
||||
return f"Sample{index:0{npad}}{ext}"
|
||||
|
||||
def blob_filename(self, start, end):
|
||||
if self.extraction_blob_info is not None:
|
||||
if start in self.extraction_blob_info:
|
||||
return self.extraction_blob_info[start]["Name"]
|
||||
print(f"WARNING: Missing extraction xml entry for blob at offset=0x{start:X}")
|
||||
def blob_filename(self, start, end, index):
|
||||
if self.extraction_blob_info is not None and index < len(self.extraction_blob_info):
|
||||
return self.extraction_blob_info[index]["Name"]
|
||||
|
||||
return f"UNACCOUNTED_{start:X}_{end:X}"
|
||||
|
||||
def finalize_samples(self):
|
||||
|
@ -490,7 +477,7 @@ class AudioTableFile:
|
|||
|
||||
for i,sample in enumerate(self.samples_final):
|
||||
sample : AudioTableSample
|
||||
sample.resolve_basenote_rate(self.extraction_sample_info)
|
||||
sample.resolve_basenote_rate(self.extraction_sample_info[i] if self.extraction_sample_info is not None else None)
|
||||
|
||||
def finalize_coverage(self, all_sample_banks):
|
||||
if len(self.coverage) != 0:
|
||||
|
@ -577,6 +564,7 @@ class AudioTableFile:
|
|||
|
||||
def assign_names(self):
|
||||
i = 0
|
||||
j = 0
|
||||
for sample in self.samples_final:
|
||||
if isinstance(sample, AudioTableSample):
|
||||
sample : AudioTableSample
|
||||
|
@ -587,9 +575,10 @@ class AudioTableFile:
|
|||
else:
|
||||
sample : AudioTableData
|
||||
|
||||
name = self.blob_filename(sample.start, sample.end)
|
||||
name = self.blob_filename(sample.start, sample.end, j)
|
||||
sample.name = name
|
||||
sample.filename = f"{name}.bin"
|
||||
j += 1
|
||||
|
||||
def to_xml(self, base_path):
|
||||
xml = XMLWriter()
|
||||
|
@ -635,33 +624,36 @@ class AudioTableFile:
|
|||
|
||||
xml.write_comment("This file is only for extraction of vanilla data. For other purposes see assets/audio/samplebanks/")
|
||||
|
||||
start = {
|
||||
xml.write_start_tag("SampleBank", {
|
||||
"Name" : self.name,
|
||||
"Index" : self.bank_num,
|
||||
}
|
||||
xml.write_start_tag("SampleBank", start)
|
||||
})
|
||||
|
||||
# Write elements from the old xml version verbatim
|
||||
i = 0
|
||||
for sample in self.samples_final:
|
||||
for entry_name,entry_attrs,in_version in self.extraction_sample_info_versions:
|
||||
xml.write_element(entry_name, entry_attrs)
|
||||
i += in_version
|
||||
|
||||
# Write any new elements
|
||||
for sample in self.samples_final[i:]:
|
||||
if isinstance(sample, AudioTableSample):
|
||||
sample : AudioTableSample
|
||||
|
||||
xml.write_element("Sample", {
|
||||
attrs = {
|
||||
"Name" : sample.name,
|
||||
"FileName" : sample.filename.replace(sample.codec_file_extension_compressed(), ""),
|
||||
"Offset" : f"0x{sample.start:06X}",
|
||||
"SampleRate" : sample.sample_rate,
|
||||
"BaseNote" : sample.base_note,
|
||||
})
|
||||
i += 1
|
||||
}
|
||||
xml.write_element("Sample", attrs)
|
||||
else:
|
||||
sample : AudioTableData
|
||||
|
||||
xml.write_element("Blob", {
|
||||
attrs = {
|
||||
"Name" : sample.name,
|
||||
"Offset" : f"0x{sample.start:06X}",
|
||||
"Size" : f"0x{sample.end - sample.start:X}",
|
||||
})
|
||||
}
|
||||
xml.write_element("Blob", attrs)
|
||||
|
||||
xml.write_end_tag()
|
||||
|
||||
|
|
135
tools/audio/extraction/extraction_xml.py
Normal file
135
tools/audio/extraction/extraction_xml.py
Normal file
|
@ -0,0 +1,135 @@
|
|||
# SPDX-FileCopyrightText: © 2024 ZeldaRET
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
from xml.etree import ElementTree
|
||||
from xml.etree.ElementTree import Element
|
||||
|
||||
from .util import error
|
||||
|
||||
class ExtractionDescription:
|
||||
|
||||
def __init__(self, file_path : str, file_name : str, version_name : str) -> None:
|
||||
self.type_name = type(self).__name__.replace("ExtractionDescription", "")
|
||||
self.file_name = file_name.replace(".xml", "")
|
||||
self.file_path = file_path
|
||||
|
||||
xml_root = ElementTree.parse(file_path).getroot()
|
||||
if xml_root.tag != self.type_name or "Name" not in xml_root.attrib or "Index" not in xml_root.attrib:
|
||||
error(f"Malformed {self.type_name} extraction xml: \"{file_path}\"")
|
||||
|
||||
self.name = xml_root.attrib["Name"]
|
||||
self.index = int(xml_root.attrib["Index"])
|
||||
|
||||
self.post_init(xml_root, version_name)
|
||||
|
||||
def post_init(self, xml_root : Element, version_name : str):
|
||||
raise NotImplementedError() # Implement in subclass
|
||||
|
||||
def in_version(self, version_include, version_exclude, version_name : str):
|
||||
if version_include == "":
|
||||
version_include = "All"
|
||||
if version_exclude == "":
|
||||
version_exclude = "None"
|
||||
|
||||
# Determine if this layout is the one we need
|
||||
if version_include != "All":
|
||||
version_include = version_include.split(",")
|
||||
if version_exclude != "None":
|
||||
version_exclude = version_exclude.split(",")
|
||||
|
||||
included = version_include == "All" or version_name in version_include
|
||||
excluded = version_exclude != "None" and version_name in version_exclude
|
||||
|
||||
return included and not excluded
|
||||
|
||||
class SampleBankExtractionDescription(ExtractionDescription):
|
||||
|
||||
def post_init(self, xml_root : Element, version_name : str):
|
||||
self.included_version = None
|
||||
self.sample_info = []
|
||||
self.sample_info_versions = []
|
||||
self.blob_info = []
|
||||
|
||||
for item in xml_root:
|
||||
if item.tag == "Sample":
|
||||
version_include = item.attrib.get("VersionInclude", "")
|
||||
version_exclude = item.attrib.get("VersionExclude", "")
|
||||
in_version = self.in_version(version_include, version_exclude, version_name)
|
||||
if in_version:
|
||||
self.sample_info.append(item.attrib)
|
||||
self.sample_info_versions.append((item.tag, item.attrib, in_version))
|
||||
elif item.tag == "Blob":
|
||||
version_include = item.attrib.get("VersionInclude", "")
|
||||
version_exclude = item.attrib.get("VersionExclude", "")
|
||||
in_version = self.in_version(version_include, version_exclude, version_name)
|
||||
if in_version:
|
||||
self.blob_info.append(item.attrib)
|
||||
self.sample_info_versions.append((item.attrib, in_version))
|
||||
else:
|
||||
print(xml_root.attrib)
|
||||
assert False, item.tag
|
||||
|
||||
class SoundFontExtractionDescription(ExtractionDescription):
|
||||
|
||||
def post_init(self, xml_root : Element, version_name : str):
|
||||
self.envelopes_info = []
|
||||
self.instruments_info = {}
|
||||
self.drums_info = []
|
||||
self.effects_info = []
|
||||
self.envelopes_info_versions = []
|
||||
self.instruments_info_versions = []
|
||||
self.drums_info_versions = []
|
||||
self.effects_info_versions = []
|
||||
|
||||
for item in xml_root:
|
||||
if item.tag == "Envelopes":
|
||||
for env in item:
|
||||
assert env.tag == "Envelope"
|
||||
|
||||
version_include = env.attrib.get("VersionInclude", "")
|
||||
version_exclude = env.attrib.get("VersionExclude", "")
|
||||
in_version = self.in_version(version_include, version_exclude, version_name)
|
||||
if in_version:
|
||||
self.envelopes_info.append(env.attrib["Name"])
|
||||
self.envelopes_info_versions.append((env.attrib, in_version))
|
||||
elif item.tag == "Instruments":
|
||||
for instr in item:
|
||||
assert instr.tag == "Instrument"
|
||||
prg_num = int(instr.attrib["ProgramNumber"])
|
||||
|
||||
version_include = instr.attrib.get("VersionInclude", "")
|
||||
version_exclude = instr.attrib.get("VersionExclude", "")
|
||||
in_version = self.in_version(version_include, version_exclude, version_name)
|
||||
if in_version:
|
||||
self.instruments_info[prg_num] = instr.attrib["Name"]
|
||||
self.instruments_info_versions.append((instr.attrib, in_version))
|
||||
elif item.tag == "Drums":
|
||||
for drum in item:
|
||||
assert drum.tag == "Drum"
|
||||
|
||||
version_include = drum.attrib.get("VersionInclude", "")
|
||||
version_exclude = drum.attrib.get("VersionExclude", "")
|
||||
in_version = self.in_version(version_include, version_exclude, version_name)
|
||||
if in_version:
|
||||
self.drums_info.append(drum.attrib["Name"])
|
||||
self.drums_info_versions.append((drum.attrib, in_version))
|
||||
elif item.tag == "Effects":
|
||||
for effect in item:
|
||||
assert effect.tag == "Effect"
|
||||
|
||||
version_include = effect.attrib.get("VersionInclude", "")
|
||||
version_exclude = effect.attrib.get("VersionExclude", "")
|
||||
in_version = self.in_version(version_include, version_exclude, version_name)
|
||||
if in_version:
|
||||
self.effects_info.append(effect.attrib["Name"])
|
||||
self.effects_info_versions.append((effect.attrib, in_version))
|
||||
else:
|
||||
assert False, item.tag
|
||||
|
||||
class SequenceExtractionDescription(ExtractionDescription):
|
||||
|
||||
def post_init(self, xml_root : Element, version_name : str):
|
||||
pass
|
|
@ -184,7 +184,8 @@ if __name__ == '__main__':
|
|||
),
|
||||
}
|
||||
|
||||
version_info = GameVersionInfo(MMLVersion.OOT,
|
||||
version_info = GameVersionInfo(version,
|
||||
MMLVersion.OOT,
|
||||
soundfont_table_code_offset,
|
||||
seq_font_table_code_offset,
|
||||
seq_table_code_offset,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue