summaryrefslogtreecommitdiff
path: root/sound/keysplit_tables.inc
diff options
context:
space:
mode:
Diffstat (limited to 'sound/keysplit_tables.inc')
-rw-r--r--sound/keysplit_tables.inc403
1 files changed, 389 insertions, 14 deletions
diff --git a/sound/keysplit_tables.inc b/sound/keysplit_tables.inc
index 1dabf3c55..81301ef62 100644
--- a/sound/keysplit_tables.inc
+++ b/sound/keysplit_tables.inc
@@ -1,18 +1,393 @@
-KeySplitTable_8455224: @ 8455224
-@ This is weird. There are instruments at the beginning of the keysplit table.
- voice_square_1 0, 2, 0, 0, 15, 0 @ 8455224
- voice_square_1 0, 2, 0, 0, 15, 0 @ 8455230
- voice_noise_alt 0, 0, 1, 7, 1 @ 845523C
- .incbin "sound/key_split_tables/8455248.bin"
+@ Due to the way mks4agb (Nintendo's tool) works, key split table labels can
+@ appear before the actual start of the key split table data. If you look at
+@ the first keysplit table (KeySplitTable1), you'll notice it's offset backwards
+@ by 36 bytes. This is because the key split tables don't map instruments
+@ for the entire note range (0-127)--they only map subsets, and the upper
+@ and lower ranges aren't necessarily 0 or 127.
+@
+@ For example if a key split table maps an note range of 10-20, then the key
+@ split table label will be offset 10 bytes before the actual key split data
+@ begins. Therefore, the notes naturally map to the key split table without
+@ any extra offset calculation.
-KeySplitTable_845526C: @ 845526C
- .incbin "sound/key_split_tables/845526C.bin"
+.set KeySplitTable1, . - 36
+ .byte 0 @ 36
+ .byte 0 @ 37
+ .byte 0 @ 38
+ .byte 0 @ 39
+ .byte 0 @ 40
+ .byte 0 @ 41
+ .byte 0 @ 42
+ .byte 0 @ 43
+ .byte 0 @ 44
+ .byte 0 @ 45
+ .byte 0 @ 46
+ .byte 0 @ 47
+ .byte 0 @ 48
+ .byte 0 @ 49
+ .byte 0 @ 50
+ .byte 0 @ 51
+ .byte 0 @ 52
+ .byte 0 @ 53
+ .byte 0 @ 54
+ .byte 1 @ 55
+ .byte 1 @ 56
+ .byte 1 @ 57
+ .byte 1 @ 58
+ .byte 1 @ 59
+ .byte 1 @ 60
+ .byte 1 @ 61
+ .byte 1 @ 62
+ .byte 1 @ 63
+ .byte 1 @ 64
+ .byte 1 @ 65
+ .byte 1 @ 66
+ .byte 1 @ 67
+ .byte 1 @ 68
+ .byte 1 @ 69
+ .byte 2 @ 70
+ .byte 2 @ 71
+ .byte 2 @ 72
+ .byte 2 @ 73
+ .byte 2 @ 74
+ .byte 2 @ 75
+ .byte 2 @ 76
+ .byte 2 @ 77
+ .byte 2 @ 78
+ .byte 2 @ 79
+ .byte 2 @ 80
+ .byte 2 @ 81
+ .byte 2 @ 82
+ .byte 2 @ 83
+ .byte 2 @ 84
+ .byte 2 @ 85
+ .byte 2 @ 86
+ .byte 2 @ 87
+ .byte 2 @ 88
+ .byte 2 @ 89
+ .byte 2 @ 90
+ .byte 3 @ 91
+ .byte 3 @ 92
+ .byte 3 @ 93
+ .byte 3 @ 94
+ .byte 3 @ 95
+ .byte 3 @ 96
+ .byte 3 @ 97
+ .byte 3 @ 98
+ .byte 3 @ 99
+ .byte 3 @ 100
+ .byte 3 @ 101
+ .byte 3 @ 102
+ .byte 3 @ 103
+ .byte 3 @ 104
+ .byte 3 @ 105
+ .byte 3 @ 106
+ .byte 3 @ 107
-KeySplitTable_84552B4: @ 84552B4
- .incbin "sound/key_split_tables/84552B4.bin"
+.set KeySplitTable2, . - 36
+ .byte 0 @ 36
+ .byte 0 @ 37
+ .byte 0 @ 38
+ .byte 0 @ 39
+ .byte 0 @ 40
+ .byte 0 @ 41
+ .byte 0 @ 42
+ .byte 0 @ 43
+ .byte 0 @ 44
+ .byte 0 @ 45
+ .byte 0 @ 46
+ .byte 0 @ 47
+ .byte 0 @ 48
+ .byte 0 @ 49
+ .byte 0 @ 50
+ .byte 0 @ 51
+ .byte 0 @ 52
+ .byte 0 @ 53
+ .byte 0 @ 54
+ .byte 0 @ 55
+ .byte 0 @ 56
+ .byte 0 @ 57
+ .byte 0 @ 58
+ .byte 0 @ 59
+ .byte 0 @ 60
+ .byte 0 @ 61
+ .byte 0 @ 62
+ .byte 0 @ 63
+ .byte 0 @ 64
+ .byte 0 @ 65
+ .byte 0 @ 66
+ .byte 0 @ 67
+ .byte 0 @ 68
+ .byte 1 @ 69
+ .byte 1 @ 70
+ .byte 1 @ 71
+ .byte 1 @ 72
+ .byte 1 @ 73
+ .byte 1 @ 74
+ .byte 1 @ 75
+ .byte 1 @ 76
+ .byte 1 @ 77
+ .byte 1 @ 78
+ .byte 1 @ 79
+ .byte 1 @ 80
+ .byte 2 @ 81
+ .byte 2 @ 82
+ .byte 2 @ 83
+ .byte 2 @ 84
+ .byte 2 @ 85
+ .byte 2 @ 86
+ .byte 2 @ 87
+ .byte 2 @ 88
+ .byte 2 @ 89
+ .byte 2 @ 90
+ .byte 2 @ 91
+ .byte 2 @ 92
+ .byte 2 @ 93
+ .byte 2 @ 94
+ .byte 2 @ 95
+ .byte 2 @ 96
+ .byte 2 @ 97
+ .byte 2 @ 98
+ .byte 2 @ 99
+ .byte 2 @ 100
+ .byte 2 @ 101
+ .byte 2 @ 102
+ .byte 2 @ 103
+ .byte 2 @ 104
+ .byte 2 @ 105
+ .byte 2 @ 106
+ .byte 2 @ 107
-KeySplitTable_8455308: @ 8455308
- .incbin "sound/key_split_tables/8455308.bin"
+.set KeySplitTable3, . - 36
+ .byte 0 @ 36
+ .byte 0 @ 37
+ .byte 0 @ 38
+ .byte 0 @ 39
+ .byte 0 @ 40
+ .byte 0 @ 41
+ .byte 0 @ 42
+ .byte 0 @ 43
+ .byte 0 @ 44
+ .byte 0 @ 45
+ .byte 0 @ 46
+ .byte 0 @ 47
+ .byte 0 @ 48
+ .byte 0 @ 49
+ .byte 0 @ 50
+ .byte 0 @ 51
+ .byte 0 @ 52
+ .byte 0 @ 53
+ .byte 0 @ 54
+ .byte 0 @ 55
+ .byte 0 @ 56
+ .byte 0 @ 57
+ .byte 0 @ 58
+ .byte 0 @ 59
+ .byte 0 @ 60
+ .byte 0 @ 61
+ .byte 0 @ 62
+ .byte 0 @ 63
+ .byte 0 @ 64
+ .byte 0 @ 65
+ .byte 1 @ 66
+ .byte 1 @ 67
+ .byte 1 @ 68
+ .byte 1 @ 69
+ .byte 1 @ 70
+ .byte 1 @ 71
+ .byte 1 @ 72
+ .byte 1 @ 73
+ .byte 1 @ 74
+ .byte 1 @ 75
+ .byte 1 @ 76
+ .byte 1 @ 77
+ .byte 1 @ 78
+ .byte 1 @ 79
+ .byte 1 @ 80
+ .byte 1 @ 81
+ .byte 1 @ 82
+ .byte 1 @ 83
+ .byte 2 @ 84
+ .byte 2 @ 85
+ .byte 2 @ 86
+ .byte 2 @ 87
+ .byte 2 @ 88
+ .byte 2 @ 89
+ .byte 2 @ 90
+ .byte 2 @ 91
+ .byte 2 @ 92
+ .byte 2 @ 93
+ .byte 2 @ 94
+ .byte 2 @ 95
+ .byte 2 @ 96
+ .byte 2 @ 97
+ .byte 2 @ 98
+ .byte 2 @ 99
+ .byte 2 @ 100
+ .byte 2 @ 101
+ .byte 2 @ 102
+ .byte 2 @ 103
+ .byte 2 @ 104
+ .byte 2 @ 105
+ .byte 2 @ 106
+ .byte 2 @ 107
-KeySplitTable_8455350: @ 8455350
- .incbin "sound/key_split_tables/8455350.bin"
+.set KeySplitTable4, . - 24
+ .byte 0 @ 24
+ .byte 0 @ 25
+ .byte 0 @ 26
+ .byte 0 @ 27
+ .byte 0 @ 28
+ .byte 0 @ 29
+ .byte 0 @ 30
+ .byte 0 @ 31
+ .byte 0 @ 32
+ .byte 0 @ 33
+ .byte 0 @ 34
+ .byte 0 @ 35
+ .byte 0 @ 36
+ .byte 0 @ 37
+ .byte 0 @ 38
+ .byte 0 @ 39
+ .byte 0 @ 40
+ .byte 0 @ 41
+ .byte 1 @ 42
+ .byte 1 @ 43
+ .byte 1 @ 44
+ .byte 1 @ 45
+ .byte 1 @ 46
+ .byte 1 @ 47
+ .byte 1 @ 48
+ .byte 1 @ 49
+ .byte 1 @ 50
+ .byte 1 @ 51
+ .byte 1 @ 52
+ .byte 1 @ 53
+ .byte 1 @ 54
+ .byte 1 @ 55
+ .byte 1 @ 56
+ .byte 1 @ 57
+ .byte 1 @ 58
+ .byte 1 @ 59
+ .byte 1 @ 60
+ .byte 1 @ 61
+ .byte 1 @ 62
+ .byte 1 @ 63
+ .byte 1 @ 64
+ .byte 1 @ 65
+ .byte 1 @ 66
+ .byte 1 @ 67
+ .byte 1 @ 68
+ .byte 1 @ 69
+ .byte 1 @ 70
+ .byte 1 @ 71
+ .byte 1 @ 72
+ .byte 1 @ 73
+ .byte 1 @ 74
+ .byte 1 @ 75
+ .byte 1 @ 76
+ .byte 1 @ 77
+ .byte 1 @ 78
+ .byte 1 @ 79
+ .byte 1 @ 80
+ .byte 1 @ 81
+ .byte 1 @ 82
+ .byte 1 @ 83
+ .byte 1 @ 84
+ .byte 1 @ 85
+ .byte 1 @ 86
+ .byte 1 @ 87
+ .byte 1 @ 88
+ .byte 1 @ 89
+ .byte 1 @ 90
+ .byte 1 @ 91
+ .byte 1 @ 92
+ .byte 1 @ 93
+ .byte 1 @ 94
+ .byte 1 @ 95
+ .byte 1 @ 96
+ .byte 1 @ 97
+ .byte 1 @ 98
+ .byte 1 @ 99
+ .byte 1 @ 100
+ .byte 1 @ 101
+ .byte 1 @ 102
+ .byte 1 @ 103
+ .byte 1 @ 104
+ .byte 1 @ 105
+ .byte 1 @ 106
+ .byte 1 @ 107
+
+.set KeySplitTable5, . - 36
+ .byte 0 @ 36
+ .byte 0 @ 37
+ .byte 0 @ 38
+ .byte 0 @ 39
+ .byte 0 @ 40
+ .byte 0 @ 41
+ .byte 0 @ 42
+ .byte 0 @ 43
+ .byte 0 @ 44
+ .byte 0 @ 45
+ .byte 0 @ 46
+ .byte 0 @ 47
+ .byte 0 @ 48
+ .byte 0 @ 49
+ .byte 0 @ 50
+ .byte 0 @ 51
+ .byte 0 @ 52
+ .byte 0 @ 53
+ .byte 0 @ 54
+ .byte 0 @ 55
+ .byte 0 @ 56
+ .byte 0 @ 57
+ .byte 0 @ 58
+ .byte 0 @ 59
+ .byte 0 @ 60
+ .byte 0 @ 61
+ .byte 0 @ 62
+ .byte 0 @ 63
+ .byte 0 @ 64
+ .byte 0 @ 65
+ .byte 1 @ 66
+ .byte 1 @ 67
+ .byte 1 @ 68
+ .byte 1 @ 69
+ .byte 1 @ 70
+ .byte 1 @ 71
+ .byte 1 @ 72
+ .byte 1 @ 73
+ .byte 1 @ 74
+ .byte 1 @ 75
+ .byte 1 @ 76
+ .byte 1 @ 77
+ .byte 1 @ 78
+ .byte 1 @ 79
+ .byte 1 @ 80
+ .byte 1 @ 81
+ .byte 1 @ 82
+ .byte 1 @ 83
+ .byte 1 @ 84
+ .byte 1 @ 85
+ .byte 1 @ 86
+ .byte 1 @ 87
+ .byte 1 @ 88
+ .byte 1 @ 89
+ .byte 1 @ 90
+ .byte 1 @ 91
+ .byte 1 @ 92
+ .byte 1 @ 93
+ .byte 1 @ 94
+ .byte 1 @ 95
+ .byte 1 @ 96
+ .byte 1 @ 97
+ .byte 1 @ 98
+ .byte 1 @ 99
+ .byte 1 @ 100
+ .byte 1 @ 101
+ .byte 1 @ 102
+ .byte 1 @ 103
+ .byte 1 @ 104
+ .byte 1 @ 105
+ .byte 1 @ 106
+ .byte 1 @ 107