We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS

Kirby's Dream Land 3:Audio: Difference between revisions

From SnesLab
Jump to: navigation, search
mNo edit summary
No edit summary
 
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This is a documentation of [[Kirby's Dream Land 3]]'s Audio Files.
This is a documentation of [[Kirby's Dream Land 3]]'s Audio Files.


Sound Driver:<br>
== Sound Driver ==
PC: 0x103EFC<br>
PC: 0x103EFC<br>
SNES: $D03EFC<br>
SNES: $D03EFC<br>
ARAM: $0700<br>
ARAM: $0700<br>
Length: 0x9FC bytes.<br>
Length: 0x9FC bytes.<br>
Uses the standard N-SPC as a base, however, the game only uses tempo values 2E, 2F and 30 because tempo affects sound effects too, therefore, the songs use non-standard note lenghts to simulate tempo. The panning table is inverted, normally 00 - 14 would be Right - Left, but in this driver it's the opposite (which makes more sense to me). Percussion Set command does nothing as it's in a fixed value of 23, this may be because each sound effect sets the command to 23.<br>
Uses the standard N-SPC as a base, however, the game only uses tempo values 2E, 2F and 30 because tempo affects sound effects too, therefore, the songs use non-standard note lenghts to simulate tempo. The panning table is inverted, normally 00 - 14 would be Right - Left, but in this driver it's the opposite (which makes more sense to me). Percussion Set command does nothing as it's in a fixed value of 23, this may be because each sound effect sets the command to 23. The driver is not programmed to deal with SFX interrupts correctly, so every stage song must use 5 channels or less.<br>
<br>
<br>
<br>
<br>
== Song List ==
{| class="wikitable"
{| class="wikitable"
|-
|-
Line 19: Line 20:
| 02 K3BOSS || Big Boss Battle ||  
| 02 K3BOSS || Big Boss Battle ||  
|-
|-
| 03 K3BOSS2 || Invincible 2 || This one is unused, apparently it was meant for a boss. It's a copypaste of Super Star's remix of Egg Catcher from Adventure.
| 03 K3BOSS2 || Invincible 2 || This one is unused, apparently it was meant for a boss.
|-
|-
| 04 K3BOSS3 || Miniboss Battle ||  
| 04 K3BOSS3 || Miniboss Battle ||  
Line 31: Line 32:
| 08 K3EVENT1 || Mission Completed ||  
| 08 K3EVENT1 || Mission Completed ||  
|-
|-
| 09 K3EVENT2 || Incorrect Path || Another unused song, probably was supposed to play when a mission was failed, but ended up being scrapped.
| 09 K3EVENT2 || Incorrect Path || Song is only used in one level, probably was supposed to play when a mission was failed, but the idea ended up being scrapped.
|-
|-
| 0A K3FIELD1 || Grass Land 4 ||  
| 0A K3FIELD1 || Grass Land 4 ||  
Line 55: Line 56:
| 14 K3FIELD11 || Grass Land 1 ||  
| 14 K3FIELD11 || Grass Land 1 ||  
|-
|-
| 15 K3FIELD12 || Sand Canyon 2 || And another copypaste from Super Star, this one being Gourmet Race. Its pitch was edited probably to fit with KDL3's samples properly.
| 15 K3FIELD12 || Sand Canyon 2 || A copypaste of Gourmet Race from Kirby Super Star. Its pitch was edited probably to fit with KDL3's samples properly.
|-
|-
| 16 K3GAMEOVER || Game Over ||  
| 16 K3GAMEOVER || Game Over ||  
Line 104: Line 105:
Each song inserts at ARAM $4739 except for Staff Roll and Cast Montage which insert at ARAM $3439.<br>
Each song inserts at ARAM $4739 except for Staff Roll and Cast Montage which insert at ARAM $3439.<br>
<br>
<br>
<br>
=== Song Pointers ===
Song Pointers:<br>
PC: 0x005EB2<br>
PC: 0x005EB2<br>
SNES: $C05EB2<br>
SNES: $C05EB2<br>
Length: 0x81 bytes.<br>
Length: 0x81 bytes.<br>
Every three bytes points to each song in the exact same order as Song IDs.
Every three bytes points to each song in the exact same order as [[Kirby's Dream Land 3:Audio#Song_List|Song IDs]].
<br>
<br>
<br>
<br>
== Sample Pack List ==
{| class="wikitable"
{| class="wikitable"
|-
|-
Line 120: Line 121:
| 01 || Big Boss Battle, Iceberg || Power Snare Drum || Acid Synth Bass || N/A || N/A
| 01 || Big Boss Battle, Iceberg || Power Snare Drum || Acid Synth Bass || N/A || N/A
|-
|-
| 02 || Title Screen, Grass Land 3, Ripple Field 1, Ripple Field 2, Miniboss Battle || Vox Arr1 (Soft Attack) || VOX Arr1 || Slap Bass || Synth Brass
| 02 || Title Screen, Grass Land 3, Ripple Field 1, Ripple Field 3, Miniboss Battle || VOX Arr1 (Soft Attack) || VOX Arr1 || Slap Bass || Synth Brass
|-
|-
| 03 || Sand Canyon 2, King Dedede, Hyper Zone 1 || Synth Bass 1 || Wasp Synth Fifths || Solo Wasp Synth || N/A
| 03 || Sand Canyon 2, King Dedede, Hyper Zone 1 || Synth Bass 1 || Wasp Synth Fifths || Solo Wasp Synth || N/A
Line 130: Line 131:
| 06 || Hyper Zone 2 || Crystal || Synth Bass 2 || N/A || N/A
| 06 || Hyper Zone 2 || Crystal || Synth Bass 2 || N/A || N/A
|-
|-
| 07 || Opening, Music Test || Soft Glass Pad || Glass Pad || Electric Open Hi-Hat || N/A
| 07 || Opening, Music Test || Glass Pad (Soft Attack) || Glass Pad || Electric Open Hi-Hat || N/A
|-
|-
| 08 || Pop Star || Cyber Space || N/A || N/A || N/A
| 08 || Pop Star || Cyber Space || N/A || N/A || N/A
Line 140: Line 141:
<br>
<br>
<br>
<br>
Sample Pack Pointers:<br>
=== Sample Pack Pointers ===
PC: 0x005F6C<br>
PC: 0x005F6C<br>
SNES: $C05F6C<br>
SNES: $C05F6C<br>
Length: 0x1E bytes.<br>
Length: 0x1E bytes.<br>
Every three bytes points to each sample pack in the exact same order as Sample Pack IDs (starting from 01). <br>
Every three bytes points to each sample pack in the exact same order as [[Kirby's Dream Land 3:Audio#Sample_Pack_List|Sample Pack IDs]] (starting from 01). <br>
The game has roughly 10KB free available for samples in ARAM, but only uses up to about 5KB.<br>
<br>
<br>
<br>
<br>
Default Sample Pack:<br>
=== Global Sample Pack ===
PC: $0E0000<br>
PC: $0E0000<br>
SNES: $CE0000<br>
SNES: $CE0000<br>
Line 238: Line 240:
<br>
<br>
<br>
<br>
Sample Pack Usage:<br>
=== Sample Pack Usage ===
PC: 0x10CA2E<br>
PC: 0x10CA2E<br>
SNES: $D0CA2E<br>
SNES: $D0CA2E<br>
Length: 0x2B bytes.<br>
Length: 0x2B bytes.<br>
Each byte corresponds to which sample pack each song will use, the order of the bytes is the exact same as Song IDs. You must input the ID of which sample pack you want to use.<br>
Each byte corresponds to which sample pack each song will use, the order of the bytes is the exact same as [[Kirby's Dream Land 3:Audio#Song_List|Song IDs]]. You must input the ID of which sample pack you want to use.<br>
<br>
<br>
<br>
<br>
Sound Effects?:<br>
== Sound Effects? ==
Sound Effects start at $3400 in ARAM and at $CEA1F3 (PC 0x0EA1F3) in ROM, I can't grasp how they exactly work though, they behave like normal sequence data but I had trouble understanding how their pointers work.<br>
Sound Effects start at $3400 in ARAM and at $CEA1F3 (PC 0x0EA1F3) in ROM, I can't grasp how they exactly work though, they behave like normal sequence data but I had trouble understanding how their pointers work.<br>
<br>
<br>
<br>
<br>
Relevant RAM Adresses:<br>
== Relevant RAM Adresses ==
$807350 Current song playing.<br>
$80:7350 Current song playing.<br>
$807351 Current sample pack being used.<br>
$80:7351 Current sample pack being used.<br>
$807340 Current SFX playing.
$80:7340 Current SFX playing.

Latest revision as of 21:53, 8 May 2021

This is a documentation of Kirby's Dream Land 3's Audio Files.

Sound Driver

PC: 0x103EFC
SNES: $D03EFC
ARAM: $0700
Length: 0x9FC bytes.
Uses the standard N-SPC as a base, however, the game only uses tempo values 2E, 2F and 30 because tempo affects sound effects too, therefore, the songs use non-standard note lenghts to simulate tempo. The panning table is inverted, normally 00 - 14 would be Right - Left, but in this driver it's the opposite (which makes more sense to me). Percussion Set command does nothing as it's in a fixed value of 23, this may be because each sound effect sets the command to 23. The driver is not programmed to deal with SFX interrupts correctly, so every stage song must use 5 channels or less.


Song List

SONG IDs Common Name Additional Comments
00 Nothing N/A
01 K3DEATH Kirby Lose
02 K3BOSS Big Boss Battle
03 K3BOSS2 Invincible 2 This one is unused, apparently it was meant for a boss.
04 K3BOSS3 Miniboss Battle
05 K3CLEARSTAR Bonus Jump
06 K3CLEARSH Victory
07 K3DEDEDE King Dedede
08 K3EVENT1 Mission Completed
09 K3EVENT2 Incorrect Path Song is only used in one level, probably was supposed to play when a mission was failed, but the idea ended up being scrapped.
0A K3FIELD1 Grass Land 4
0B K3FIELD2 Grass Land 2
0C K3FIELD3 Iceberg
0D K3FIELD4 Sand Canyon 1
0E K3FIELD5 Sand Canyon 3
0F K3FIELD6 Ripple Field 1
10 K3FIELD7 Ripple Field 3
11 K3FIELD8 Cloudy Park
12 K3FIELD9 Ripple Field 2
13 K3FIELD10 Grass Land 3
14 K3FIELD11 Grass Land 1
15 K3FIELD12 Sand Canyon 2 A copypaste of Gourmet Race from Kirby Super Star. Its pitch was edited probably to fit with KDL3's samples properly.
16 K3GAMEOVER Game Over
17 K3LASBOSS1 Hyper Zone 1
18 K3LASBOSS2 Hyper Zone 2
19 K3LEVEL1 Grass Land Map
1A K3LEVEL2 Ripple Field Map
1B K3LEVEL3 Cloudy Park Map
1C K3LEVEL4 Sand Canyon Map
1D K3LEVEL5 Mission Failed Probably meant to play in a level map, but then the idea was scrapped and K3EVENT2 was replaced by this one.
1E K3LEVEL6 Iceberg Map
1F K3MINIGAME1 Minigame
20 K3MUTEKI Invincible 1
21 K3OPEN1 Opening
22 K3OPEN2 Title Screen
23 K3OPEN3 Music Test
24 K3OPENSE Ominous Wind Its name implies that it was going to be used in a similar way to Super Star's Spring Breeze or Dynablade cutscenes.
25 K3SELECT File Select
26 K3SIMOBE1 Friends 1
27 K3SIMOBE2 Friends 2
28 K3SIMOBE3 Friends 3
29 K3WORLDMAP Popstar
2A K3END1 Staff Roll
2B K3END2 Cast Montage

Each song inserts at ARAM $4739 except for Staff Roll and Cast Montage which insert at ARAM $3439.

Song Pointers

PC: 0x005EB2
SNES: $C05EB2
Length: 0x81 bytes.
Every three bytes points to each song in the exact same order as Song IDs.

Sample Pack List

Sample Pack IDs Used in Inst 28 Inst 29 Inst 2A Inst 2B
00 Default N/A N/A N/A N/A
01 Big Boss Battle, Iceberg Power Snare Drum Acid Synth Bass N/A N/A
02 Title Screen, Grass Land 3, Ripple Field 1, Ripple Field 3, Miniboss Battle VOX Arr1 (Soft Attack) VOX Arr1 Slap Bass Synth Brass
03 Sand Canyon 2, King Dedede, Hyper Zone 1 Synth Bass 1 Wasp Synth Fifths Solo Wasp Synth N/A
04 Grass Land 1, Grass Land 2 Clarinet Tuba N/A N/A
05 Ripple Field 2 Pulse Wave-like (Unused) Synth-ish Snare Drum Sub Synth Bass N/A
06 Hyper Zone 2 Crystal Synth Bass 2 N/A N/A
07 Opening, Music Test Glass Pad (Soft Attack) Glass Pad Electric Open Hi-Hat N/A
08 Pop Star Cyber Space N/A N/A N/A
09 (Referred to as 89) Staff Roll Voice Oohs Synth Guitar N/A N/A
0A (Referred to as 8A) Cast Montage Wood Block N/A N/A N/A



Sample Pack Pointers

PC: 0x005F6C
SNES: $C05F6C
Length: 0x1E bytes.
Every three bytes points to each sample pack in the exact same order as Sample Pack IDs (starting from 01).
The game has roughly 10KB free available for samples in ARAM, but only uses up to about 5KB.


Global Sample Pack

PC: $0E0000
SNES: $CE0000
Length: 0x74AD bytes.
Where all of the global samples are. Instrument range goes from 00 to 27. See table below.

ID Instrument
00 Tenor Sax
01 Trumpet
02 Gameboy Bass
03 Fantasia
04 Jazz Guitar
05 FM Glockenspiel (Soft Attack)
06 FM Glockenspiel
07 Celesta (Long)
08 Celesta (Soft Attack)
09 Celesta
0A Phaze SFX (Non-sustained)
0B Phaze SFX
0C Jet SFX (Soft Attack, Slow Decay)
0D Jet SFX
0E Jet SFX (Softer Attack, Slower Decay)
0F Jet SFX (Strong Attack)
10 Sine Wave (Sloppily looped, works best with echo)
11 Noise (Soft Attack, Slow Decay)
12 Noise (Stronger Attack, Fast Decay)
13 Noise
14 Machine-ish Noise
15 String Ensemble (Soft Attack, Fast Decay)
16 String Ensemble (Softer Attack, Fast Decay)
17 String Ensemble (Even Softer Attack, Slower Decay)
18 String Ensemble (Soft Attack)
19 String Ensemble
1A Aaah VOX Synth
1B Swanee (Blown Bottle)
1C Pan Flute
1D Lead 1
1E 50% Square Wave (Slightly Softer)
1F 50% Square Wave
20 Triangle Wave
21 Lead 2 (Used commonly as a bass)
22 Rumbling SFX
23 Electric Kick
24 Electric Hi-Hat
25 Timbale
26 Electric Snare (Soft Decay, used commonly in low octaves)
27 Electric Snare



Sample Pack Usage

PC: 0x10CA2E
SNES: $D0CA2E
Length: 0x2B bytes.
Each byte corresponds to which sample pack each song will use, the order of the bytes is the exact same as Song IDs. You must input the ID of which sample pack you want to use.


Sound Effects?

Sound Effects start at $3400 in ARAM and at $CEA1F3 (PC 0x0EA1F3) in ROM, I can't grasp how they exactly work though, they behave like normal sequence data but I had trouble understanding how their pointers work.


Relevant RAM Adresses

$80:7350 Current song playing.
$80:7351 Current sample pack being used.
$80:7340 Current SFX playing.