mirror of
https://github.com/HarbourMasters/2ship2harkinian.git
synced 2024-11-23 22:19:53 +00:00
Import code_8019AF00.c (Audio) data & bss, introduce z64ocarina.h (#575)
* Import code_8018AF00 Data * code_8019AF00.c BSS Imported * format * Small touch-up * rename `bgm.h` to `sequence.h` * Missed a variable * PR Feedback 1
This commit is contained in:
parent
7565f9f052
commit
01ca078226
@ -1,5 +1,5 @@
|
||||
#ifndef BGM_H
|
||||
#define BGM_H
|
||||
#ifndef SEQUENCE_H
|
||||
#define SEQUENCE_H
|
||||
|
||||
#define NA_BGM_STOP 0x100000FF
|
||||
|
||||
@ -133,4 +133,146 @@
|
||||
#define NA_BGM_END_CREDITS_2 0x82 // The End/Credits II "STAFFROLL2"
|
||||
#define NA_BGM_DISABLED 0xFFFF
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ SEQ_PLAYER_BGM_MAIN,
|
||||
/* 1 */ SEQ_PLAYER_FANFARE,
|
||||
/* 2 */ SEQ_PLAYER_SFX,
|
||||
/* 3 */ SEQ_PLAYER_BGM_SUB,
|
||||
/* 4 */ SEQ_PLAYER_NATURE
|
||||
} SequencePlayerId;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ SEQ_MODE_DEFAULT,
|
||||
/* 1 */ SEQ_MODE_ENEMY,
|
||||
/* 2 */ SEQ_MODE_STILL, // Not moving or first-person view
|
||||
/* 3 */ SEQ_MODE_IGNORE
|
||||
} SequenceMode;
|
||||
|
||||
typedef enum {
|
||||
/* 0x0 */ CHANNEL_IO_PORT_0,
|
||||
/* 0x1 */ CHANNEL_IO_PORT_1,
|
||||
/* 0x2 */ CHANNEL_IO_PORT_2,
|
||||
/* 0x3 */ CHANNEL_IO_PORT_3,
|
||||
/* 0x4 */ CHANNEL_IO_PORT_4,
|
||||
/* 0x5 */ CHANNEL_IO_PORT_5,
|
||||
/* 0x6 */ CHANNEL_IO_PORT_6,
|
||||
/* 0x7 */ CHANNEL_IO_PORT_7
|
||||
} ChannelIOPort;
|
||||
|
||||
typedef enum {
|
||||
/* 0x0 */ NATURE_CHANNEL_STREAM_0,
|
||||
/* 0x1 */ NATURE_CHANNEL_CRITTER_0,
|
||||
/* 0x2 */ NATURE_CHANNEL_CRITTER_1,
|
||||
/* 0x3 */ NATURE_CHANNEL_CRITTER_2,
|
||||
/* 0x4 */ NATURE_CHANNEL_CRITTER_3,
|
||||
/* 0x5 */ NATURE_CHANNEL_CRITTER_4,
|
||||
/* 0x6 */ NATURE_CHANNEL_CRITTER_5,
|
||||
/* 0x7 */ NATURE_CHANNEL_CRITTER_6,
|
||||
/* 0x8 */ NATURE_CHANNEL_CRITTER_7,
|
||||
/* 0xC */ NATURE_CHANNEL_STREAM_1 = 12,
|
||||
/* 0xD */ NATURE_CHANNEL_UNK,
|
||||
/* 0xE */ NATURE_CHANNEL_RAIN,
|
||||
/* 0xF */ NATURE_CHANNEL_LIGHTNING
|
||||
} NatureChannelIdx; // playerIdx = 4
|
||||
|
||||
typedef enum {
|
||||
/* 0x00 */ NATURE_AMBIENCE_0,
|
||||
/* 0x01 */ NATURE_AMBIENCE_1,
|
||||
/* 0x02 */ NATURE_AMBIENCE_2,
|
||||
/* 0x03 */ NATURE_AMBIENCE_3,
|
||||
/* 0x04 */ NATURE_AMBIENCE_4,
|
||||
/* 0x05 */ NATURE_AMBIENCE_5,
|
||||
/* 0x06 */ NATURE_AMBIENCE_6,
|
||||
/* 0x07 */ NATURE_AMBIENCE_7,
|
||||
/* 0x08 */ NATURE_AMBIENCE_8,
|
||||
/* 0x09 */ NATURE_AMBIENCE_9,
|
||||
/* 0x0A */ NATURE_AMBIENCE_A,
|
||||
/* 0x0B */ NATURE_AMBIENCE_B,
|
||||
/* 0x0C */ NATURE_AMBIENCE_C,
|
||||
/* 0x0D */ NATURE_AMBIENCE_D,
|
||||
/* 0x0E */ NATURE_AMBIENCE_E,
|
||||
/* 0x0F */ NATURE_AMBIENCE_F,
|
||||
/* 0x10 */ NATURE_AMBIENCE_10,
|
||||
/* 0x11 */ NATURE_AMBIENCE_11,
|
||||
/* 0x12 */ NATURE_AMBIENCE_12,
|
||||
/* 0x13 */ NATURE_AMBIENCE_13
|
||||
} NatureAmbienceId; // playerIdx = 4
|
||||
|
||||
typedef enum {
|
||||
/* 0x00 */ NATURE_STREAM_0,
|
||||
/* 0x01 */ NATURE_STREAM_1,
|
||||
/* 0x02 */ NATURE_STREAM_2,
|
||||
/* 0x03 */ NATURE_STREAM_3
|
||||
} NatureStreamId;
|
||||
|
||||
typedef enum {
|
||||
/* 0x00 */ NATURE_CRITTER_00,
|
||||
/* 0x01 */ NATURE_CRITTER_01,
|
||||
/* 0x02 */ NATURE_CRITTER_02,
|
||||
/* 0x03 */ NATURE_CRITTER_03,
|
||||
/* 0x04 */ NATURE_CRITTER_04,
|
||||
/* 0x05 */ NATURE_CRITTER_05,
|
||||
/* 0x06 */ NATURE_CRITTER_06,
|
||||
/* 0x07 */ NATURE_CRITTER_07,
|
||||
/* 0x08 */ NATURE_CRITTER_08,
|
||||
/* 0x09 */ NATURE_CRITTER_09,
|
||||
/* 0x0A */ NATURE_CRITTER_10,
|
||||
/* 0x0B */ NATURE_CRITTER_11,
|
||||
/* 0x0C */ NATURE_CRITTER_12,
|
||||
/* 0x0D */ NATURE_CRITTER_13,
|
||||
/* 0x0E */ NATURE_CRITTER_14,
|
||||
/* 0x0F */ NATURE_CRITTER_15,
|
||||
/* 0x10 */ NATURE_CRITTER_16,
|
||||
/* 0x11 */ NATURE_CRITTER_17,
|
||||
/* 0x12 */ NATURE_CRITTER_18,
|
||||
/* 0x13 */ NATURE_CRITTER_19
|
||||
} NatureAmimalId;
|
||||
|
||||
#define NATURE_IO_CRITTER_0_TYPE(type) NATURE_CHANNEL_CRITTER_0, CHANNEL_IO_PORT_2, type
|
||||
#define NATURE_IO_CRITTER_0_BEND_PITCH(bend) NATURE_CHANNEL_CRITTER_0, CHANNEL_IO_PORT_3, bend
|
||||
#define NATURE_IO_CRITTER_0_NUM_LAYERS(num) NATURE_CHANNEL_CRITTER_0, CHANNEL_IO_PORT_4, num
|
||||
#define NATURE_IO_CRITTER_0_PORT5(reverb) NATURE_CHANNEL_CRITTER_0, CHANNEL_IO_PORT_5, reverb
|
||||
|
||||
#define NATURE_IO_CRITTER_1_TYPE(type) NATURE_CHANNEL_CRITTER_1, CHANNEL_IO_PORT_2, type
|
||||
#define NATURE_IO_CRITTER_1_BEND_PITCH(bend) NATURE_CHANNEL_CRITTER_1, CHANNEL_IO_PORT_3, bend
|
||||
#define NATURE_IO_CRITTER_1_NUM_LAYERS(num) NATURE_CHANNEL_CRITTER_1, CHANNEL_IO_PORT_4, num
|
||||
#define NATURE_IO_CRITTER_1_PORT5(reverb) NATURE_CHANNEL_CRITTER_1, CHANNEL_IO_PORT_5, reverb
|
||||
|
||||
#define NATURE_IO_CRITTER_2_TYPE(type) NATURE_CHANNEL_CRITTER_2, CHANNEL_IO_PORT_2, type
|
||||
#define NATURE_IO_CRITTER_2_BEND_PITCH(bend) NATURE_CHANNEL_CRITTER_2, CHANNEL_IO_PORT_3, bend
|
||||
#define NATURE_IO_CRITTER_2_NUM_LAYERS(num) NATURE_CHANNEL_CRITTER_2, CHANNEL_IO_PORT_4, num
|
||||
#define NATURE_IO_CRITTER_2_PORT5(reverb) NATURE_CHANNEL_CRITTER_2, CHANNEL_IO_PORT_5, reverb
|
||||
|
||||
#define NATURE_IO_CRITTER_3_TYPE(type) NATURE_CHANNEL_CRITTER_3, CHANNEL_IO_PORT_2, type
|
||||
#define NATURE_IO_CRITTER_3_BEND_PITCH(bend) NATURE_CHANNEL_CRITTER_3, CHANNEL_IO_PORT_3, bend
|
||||
#define NATURE_IO_CRITTER_3_NUM_LAYERS(num) NATURE_CHANNEL_CRITTER_3, CHANNEL_IO_PORT_4, num
|
||||
#define NATURE_IO_CRITTER_3_PORT5(reverb) NATURE_CHANNEL_CRITTER_3, CHANNEL_IO_PORT_5, reverb
|
||||
|
||||
#define NATURE_IO_CRITTER_4_TYPE(type) NATURE_CHANNEL_CRITTER_4, CHANNEL_IO_PORT_2, type
|
||||
#define NATURE_IO_CRITTER_4_BEND_PITCH(bend) NATURE_CHANNEL_CRITTER_4, CHANNEL_IO_PORT_3, bend
|
||||
#define NATURE_IO_CRITTER_4_NUM_LAYERS(num) NATURE_CHANNEL_CRITTER_4, CHANNEL_IO_PORT_4, num
|
||||
#define NATURE_IO_CRITTER_4_PORT5(reverb) NATURE_CHANNEL_CRITTER_4, CHANNEL_IO_PORT_5, reverb
|
||||
|
||||
#define NATURE_IO_CRITTER_5_TYPE(type) NATURE_CHANNEL_CRITTER_5, CHANNEL_IO_PORT_2, type
|
||||
#define NATURE_IO_CRITTER_5_BEND_PITCH(bend) NATURE_CHANNEL_CRITTER_5, CHANNEL_IO_PORT_3, bend
|
||||
#define NATURE_IO_CRITTER_5_NUM_LAYERS(num) NATURE_CHANNEL_CRITTER_5, CHANNEL_IO_PORT_4, num
|
||||
#define NATURE_IO_CRITTER_5_PORT5(reverb) NATURE_CHANNEL_CRITTER_5, CHANNEL_IO_PORT_5, reverb
|
||||
|
||||
#define NATURE_IO_CRITTER_6_TYPE(type) NATURE_CHANNEL_CRITTER_6, CHANNEL_IO_PORT_2, type
|
||||
#define NATURE_IO_CRITTER_6_BEND_PITCH(bend) NATURE_CHANNEL_CRITTER_6, CHANNEL_IO_PORT_3, bend
|
||||
#define NATURE_IO_CRITTER_6_NUM_LAYERS(num) NATURE_CHANNEL_CRITTER_6, CHANNEL_IO_PORT_4, num
|
||||
#define NATURE_IO_CRITTER_6_PORT5(reverb) NATURE_CHANNEL_CRITTER_6, CHANNEL_IO_PORT_5, reverb
|
||||
|
||||
#define NATURE_IO_STREAM_0_TYPE(type) NATURE_CHANNEL_STREAM_0, CHANNEL_IO_PORT_2, type
|
||||
#define NATURE_IO_STREAM_0_PORT3(data) NATURE_CHANNEL_STREAM_0, CHANNEL_IO_PORT_3, data
|
||||
#define NATURE_IO_STREAM_0_PORT4(data) NATURE_CHANNEL_STREAM_0, CHANNEL_IO_PORT_4, data
|
||||
|
||||
#define NATURE_IO_STREAM_1_TYPE(type) NATURE_CHANNEL_STREAM_1, CHANNEL_IO_PORT_2, type
|
||||
#define NATURE_IO_STREAM_1_PORT3(data) NATURE_CHANNEL_STREAM_1, CHANNEL_IO_PORT_3, data
|
||||
#define NATURE_IO_STREAM_1_PORT4(data) NATURE_CHANNEL_STREAM_1, CHANNEL_IO_PORT_4, data
|
||||
|
||||
#define NATURE_IO_RAIN_PORT4(data) NATURE_CHANNEL_RAIN, CHANNEL_IO_PORT_4, data
|
||||
|
||||
#define NATURE_IO_ENTRIES_END 0xFF
|
||||
|
||||
#endif
|
@ -1689,7 +1689,7 @@ extern UNK_PTR D_801D618C;
|
||||
// extern UNK_TYPE1 D_801D6648;
|
||||
// extern UNK_TYPE1 D_801D664C;
|
||||
// extern UNK_TYPE1 D_801D6650;
|
||||
extern f32 D_801D6654;
|
||||
extern f32 gSfxVolume;
|
||||
// extern UNK_TYPE1 D_801D6658;
|
||||
// extern UNK_TYPE1 D_801D665C;
|
||||
// extern UNK_TYPE1 D_801D6660;
|
||||
@ -3340,6 +3340,7 @@ extern FaultAddrConvClient sGraphFaultAddrConvClient;
|
||||
extern FaultClient sGraphFaultClient;
|
||||
extern GfxMasterList* gGfxMasterDL;
|
||||
extern CfbInfo sGraphCfbInfos[3];
|
||||
extern OSTime sGraphTaskStartTime;
|
||||
extern OSMesgQueue sSiIntMsgQ;
|
||||
extern OSMesg sSiIntMsgBuf[1];
|
||||
extern u32 gSegments[NUM_SEGMENTS];
|
||||
|
@ -17,9 +17,9 @@
|
||||
#include "scheduler.h"
|
||||
#include "xstdio.h"
|
||||
|
||||
#include "bgm.h"
|
||||
#include "color.h"
|
||||
#include "ichain.h"
|
||||
#include "sequence.h"
|
||||
#include "sfx.h"
|
||||
|
||||
#include "z64actor.h"
|
||||
@ -34,6 +34,7 @@
|
||||
#include "z64light.h"
|
||||
#include "z64math.h"
|
||||
#include "z64object.h"
|
||||
#include "z64ocarina.h"
|
||||
#include "z64player.h"
|
||||
#include "z64scene.h"
|
||||
#include "z64save.h"
|
||||
|
@ -20,6 +20,13 @@
|
||||
|
||||
#define AIBUF_LEN 0x580
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ AUDIO_FS_STEREO,
|
||||
/* 1 */ AUDIO_FS_HEADSET,
|
||||
/* 2 */ AUDIO_FS_SURROUND,
|
||||
/* 3 */ AUDIO_FS_MONO
|
||||
} AudioFileSelectOption;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ AUDIO_MODE_STEREO,
|
||||
/* 1 */ AUDIO_MODE_HEADSET,
|
||||
@ -71,63 +78,6 @@ typedef enum {
|
||||
/* 3 */ CACHE_PERMANENT
|
||||
} AudioCacheType;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ OCARINA_SONG_SONATA,
|
||||
/* 1 */ OCARINA_SONG_GORON_LULLABY,
|
||||
/* 2 */ OCARINA_SONG_NEW_WAVE,
|
||||
/* 3 */ OCARINA_SONG_ELEGY,
|
||||
/* 4 */ OCARINA_SONG_OATH,
|
||||
/* 5 */ OCARINA_SONG_SARIAS,
|
||||
/* 6 */ OCARINA_SONG_TIME,
|
||||
/* 7 */ OCARINA_SONG_HEALING,
|
||||
/* 8 */ OCARINA_SONG_EPONAS,
|
||||
/* 9 */ OCARINA_SONG_SOARING,
|
||||
/* 10 */ OCARINA_SONG_STORMS,
|
||||
/* 11 */ OCARINA_SONG_SUNS,
|
||||
/* 12 */ OCARINA_SONG_INVERTED_TIME,
|
||||
/* 13 */ OCARINA_SONG_DOUBLE_TIME,
|
||||
/* 14 */ OCARINA_SONG_GORON_LULLABY_INTRO,
|
||||
/* 15 */ OCARINA_SONG_WIND_FISH_HUMAN, // "Ballad of the Wind Fish"
|
||||
/* 16 */ OCARINA_SONG_WIND_FISH_GORON,
|
||||
/* 17 */ OCARINA_SONG_WIND_FISH_ZORA,
|
||||
/* 18 */ OCARINA_SONG_WIND_FISH_DEKU,
|
||||
/* 19 */ OCARINA_SONG_EVAN_PART1,
|
||||
/* 20 */ OCARINA_SONG_EVAN_PART2,
|
||||
/* 21 */ OCARINA_SONG_ZELDAS_LULLABY,
|
||||
/* 22 */ OCARINA_SONG_SCARECROW,
|
||||
/* 23 */ OCARINA_SONG_TERMINA_WALL,
|
||||
/* 24 */ OCARINA_SONG_MAX,
|
||||
} OcarinaSongId;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ OCARINA_BTN_A,
|
||||
/* 1 */ OCARINA_BTN_C_DOWN,
|
||||
/* 2 */ OCARINA_BTN_C_RIGHT,
|
||||
/* 3 */ OCARINA_BTN_C_LEFT,
|
||||
/* 4 */ OCARINA_BTN_C_UP,
|
||||
/* -1 */ OCARINA_BTN_INVALID = 0xFF
|
||||
} OcarinaButtonIdx;
|
||||
|
||||
typedef enum {
|
||||
/* 0x0 */ OCARINA_PITCH_C4,
|
||||
/* 0x1 */ OCARINA_PITCH_DFLAT4,
|
||||
/* 0x2 */ OCARINA_PITCH_D4,
|
||||
/* 0x3 */ OCARINA_PITCH_EFLAT4,
|
||||
/* 0x4 */ OCARINA_PITCH_E4,
|
||||
/* 0x5 */ OCARINA_PITCH_F4,
|
||||
/* 0x6 */ OCARINA_PITCH_GFLAT4,
|
||||
/* 0x7 */ OCARINA_PITCH_G4,
|
||||
/* 0x8 */ OCARINA_PITCH_AFLAT4,
|
||||
/* 0x9 */ OCARINA_PITCH_A4,
|
||||
/* 0xA */ OCARINA_PITCH_BFLAT4,
|
||||
/* 0xB */ OCARINA_PITCH_B4,
|
||||
/* 0xC */ OCARINA_PITCH_C5,
|
||||
/* 0xD */ OCARINA_PITCH_DFLAT5,
|
||||
/* 0xE */ OCARINA_PITCH_D5,
|
||||
/* 0xF */ OCARINA_PITCH_EFLAT5,
|
||||
/* -1 */ OCARINA_PITCH_NONE = 0xFF
|
||||
} OcarinaNoteIdx;
|
||||
|
||||
typedef s32 (*DmaHandler)(OSPiHandle* handle, OSIoMesg* mb, s32 direction);
|
||||
|
||||
struct Note;
|
||||
@ -1155,31 +1105,4 @@ typedef struct {
|
||||
/* 0x10 */ f32* vol;
|
||||
} SoundRequest; // size = 0x14
|
||||
|
||||
/**
|
||||
* Note:
|
||||
* Flag for resolving C_RIGHT and C_LEFT only being two semitones apart
|
||||
* 0x40 - BTN_Z is pressed to lower note by a semitone
|
||||
* 0x80 - BTN_R is pressed to raise note by a semitone
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 noteIdx;
|
||||
/* 0x2 */ u16 length; // number of frames the note is sustained
|
||||
/* 0x4 */ u8 volume;
|
||||
/* 0x5 */ u8 vibrato;
|
||||
/* 0x6 */ s8 bend;
|
||||
/* 0x7 */ u8 BFlat4Flag; // BFlat4Flag See note above
|
||||
} OcarinaNote; // size = 0x8
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 numButtons;
|
||||
/* 0x1 */ u8 buttonIdx[8];
|
||||
} OcarinaSongButtons; // size = 0x9
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 buttonIdx;
|
||||
/* 0x1 */ u8 state;
|
||||
/* 0x2 */ u8 pos;
|
||||
} OcarinaStaff; // size = 0x3
|
||||
|
||||
#endif
|
||||
|
125
include/z64ocarina.h
Normal file
125
include/z64ocarina.h
Normal file
@ -0,0 +1,125 @@
|
||||
#ifndef Z64OCARINA_H
|
||||
#define Z64OCARINA_H
|
||||
|
||||
#include "ultra64.h"
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ OCARINA_SONG_SONATA,
|
||||
/* 1 */ OCARINA_SONG_GORON_LULLABY,
|
||||
/* 2 */ OCARINA_SONG_NEW_WAVE,
|
||||
/* 3 */ OCARINA_SONG_ELEGY,
|
||||
/* 4 */ OCARINA_SONG_OATH,
|
||||
/* 5 */ OCARINA_SONG_SARIAS,
|
||||
/* 6 */ OCARINA_SONG_TIME,
|
||||
/* 7 */ OCARINA_SONG_HEALING,
|
||||
/* 8 */ OCARINA_SONG_EPONAS,
|
||||
/* 9 */ OCARINA_SONG_SOARING,
|
||||
/* 10 */ OCARINA_SONG_STORMS,
|
||||
/* 11 */ OCARINA_SONG_SUNS,
|
||||
/* 12 */ OCARINA_SONG_INVERTED_TIME,
|
||||
/* 13 */ OCARINA_SONG_DOUBLE_TIME,
|
||||
/* 14 */ OCARINA_SONG_GORON_LULLABY_INTRO,
|
||||
/* 15 */ OCARINA_SONG_WIND_FISH_HUMAN, // "Ballad of the Wind Fish"
|
||||
/* 16 */ OCARINA_SONG_WIND_FISH_GORON,
|
||||
/* 17 */ OCARINA_SONG_WIND_FISH_ZORA,
|
||||
/* 18 */ OCARINA_SONG_WIND_FISH_DEKU,
|
||||
/* 19 */ OCARINA_SONG_EVAN_PART1,
|
||||
/* 20 */ OCARINA_SONG_EVAN_PART2,
|
||||
/* 21 */ OCARINA_SONG_ZELDAS_LULLABY,
|
||||
/* 22 */ OCARINA_SONG_SCARECROW,
|
||||
/* 23 */ OCARINA_SONG_TERMINA_WALL,
|
||||
/* 24 */ OCARINA_SONG_MAX,
|
||||
/* 24 */ OCARINA_SONG_SCARECROW_LONG = OCARINA_SONG_MAX
|
||||
} OcarinaSongId;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ OCARINA_BTN_A,
|
||||
/* 1 */ OCARINA_BTN_C_DOWN,
|
||||
/* 2 */ OCARINA_BTN_C_RIGHT,
|
||||
/* 3 */ OCARINA_BTN_C_LEFT,
|
||||
/* 4 */ OCARINA_BTN_C_UP,
|
||||
/* -1 */ OCARINA_BTN_INVALID = 0xFF
|
||||
} OcarinaButtonIdx;
|
||||
|
||||
// Uses scientific pitch notation relative to middle C
|
||||
// https://en.wikipedia.org/wiki/Scientific_pitch_notation
|
||||
typedef enum {
|
||||
/* 0x0 */ OCARINA_PITCH_C4,
|
||||
/* 0x1 */ OCARINA_PITCH_DFLAT4,
|
||||
/* 0x2 */ OCARINA_PITCH_D4,
|
||||
/* 0x3 */ OCARINA_PITCH_EFLAT4,
|
||||
/* 0x4 */ OCARINA_PITCH_E4,
|
||||
/* 0x5 */ OCARINA_PITCH_F4,
|
||||
/* 0x6 */ OCARINA_PITCH_GFLAT4,
|
||||
/* 0x7 */ OCARINA_PITCH_G4,
|
||||
/* 0x8 */ OCARINA_PITCH_AFLAT4,
|
||||
/* 0x9 */ OCARINA_PITCH_A4,
|
||||
/* 0xA */ OCARINA_PITCH_BFLAT4,
|
||||
/* 0xB */ OCARINA_PITCH_B4,
|
||||
/* 0xC */ OCARINA_PITCH_C5,
|
||||
/* 0xD */ OCARINA_PITCH_DFLAT5,
|
||||
/* 0xE */ OCARINA_PITCH_D5,
|
||||
/* 0xF */ OCARINA_PITCH_EFLAT5,
|
||||
/* -1 */ OCARINA_PITCH_NONE = 0xFF
|
||||
} OcarinaPitch;
|
||||
|
||||
// Mainly set by func_80152CAC in z_message.c
|
||||
typedef enum {
|
||||
/* 0 */ OCARINA_INSTRUMENT_OFF,
|
||||
/* 1 */ OCARINA_INSTRUMENT_DEFAULT,
|
||||
/* 2 */ OCARINA_INSTRUMENT_FEMALE_VOICE,
|
||||
/* 3 */ OCARINA_INSTRUMENT_WHISTLING_FLUTE,
|
||||
/* 4 */ OCARINA_INSTRUMENT_HARP,
|
||||
/* 5 */ OCARINA_INSTRUMENT_IKANA_KING,
|
||||
/* 6 */ OCARINA_INSTRUMENT_TATL,
|
||||
/* 7 */ OCARINA_INSTRUMENT_GORON_DRUMS,
|
||||
/* 8 */ OCARINA_INSTRUMENT_ZORA_GUITAR,
|
||||
/* 9 */ OCARINA_INSTRUMENT_DEKU_PIPES,
|
||||
/* 10 */ OCARINA_INSTRUMENT_MONKEY,
|
||||
/* 11 */ OCARINA_INSTRUMENT_DEKU_TRUMPET, // Pull out ocarina for captured monkey
|
||||
/* 12 */ OCARINA_INSTRUMENT_ELDER_GORON_DRUMS,
|
||||
/* 13 */ OCARINA_INSTRUMENT_PIANO,
|
||||
/* 14 */ OCARINA_INSTRUMENT_BASS_GUITAR,
|
||||
/* 15 */ OCARINA_INSTRUMENT_BABY_SINGING,
|
||||
/* 16 */ OCARINA_INSTRUMENT_AMPLIFIED_GUITAR, // Related to (gSaveContext.weekEventReg[0x29] & 0x20)
|
||||
} OcarinaInstrumentId;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ OCARINA_RECORD_OFF,
|
||||
/* 1 */ OCARINA_RECORD_SCARECROW_LONG,
|
||||
/* 2 */ OCARINA_RECORD_SCARECROW_SPAWN,
|
||||
/* -1 */ OCARINA_RECORD_REJECTED = 0xFF
|
||||
} OcarinaRecordingState;
|
||||
|
||||
/**
|
||||
* BFlat4Flag Note:
|
||||
* Flag for resolving whether (noteIdx = NOTE_BFLAT4)
|
||||
* gets mapped to either C_RIGHT and C_LEFT
|
||||
*
|
||||
* This is required as C_RIGHT and C_LEFT are the only notes
|
||||
* that map to two semitones apart (NOTE_A4 and NOTE_B4)
|
||||
* 0x40 - BTN_Z is pressed to lower note by a semitone
|
||||
* 0x80 - BTN_R is pressed to raise note by a semitone
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 noteIdx; // number of semitones above middle C
|
||||
/* 0x2 */ u16 length; // number of frames the note is sustained
|
||||
/* 0x4 */ u8 volume;
|
||||
/* 0x5 */ u8 vibrato;
|
||||
/* 0x6 */ s8 bend; // frequency multiplicative offset from the pitch defined by noteIdx
|
||||
/* 0x7 */ u8 BFlat4Flag; // See note above
|
||||
} OcarinaNote; // size = 0x8
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 numButtons;
|
||||
/* 0x1 */ u8 buttonIdx[8];
|
||||
} OcarinaSongButtons; // size = 0x9
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 buttonIdx;
|
||||
/* 0x1 */ u8 state; // original name: "status"
|
||||
/* 0x2 */ u8 pos; // original name: "locate"
|
||||
} OcarinaStaff; // size = 0x3
|
||||
|
||||
#endif
|
2
spec
2
spec
@ -643,8 +643,6 @@ beginseg
|
||||
pad_text
|
||||
include "build/asm/code/code_8019AEC0.text.o" // handwritten
|
||||
include "build/src/code/audio/code_8019AF00.o"
|
||||
include "build/data/code/code_8019AF00.data.o"
|
||||
include "build/data/code/code_8019AF00.bss.o"
|
||||
include "build/src/code/audio/code_801A4EB0.o"
|
||||
include "build/data/code/code_801A4EB0.data.o"
|
||||
include "build/src/code/audio/code_801A51F0.o"
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -314,7 +314,7 @@ void func_80AA01C0(DmStk* this, GlobalContext* globalCtx) {
|
||||
|
||||
case 785:
|
||||
func_8019F128(NA_SE_SY_STALKIDS_PSYCHO);
|
||||
func_8019FE74(&D_801D6654, 0.0f, 150);
|
||||
func_8019FE74(&gSfxVolume, 0.0f, 150);
|
||||
break;
|
||||
|
||||
case 560:
|
||||
@ -344,7 +344,7 @@ void func_80AA0264(DmStk* this, GlobalContext* globalCtx) {
|
||||
break;
|
||||
|
||||
case 650:
|
||||
func_8019FE74(&D_801D6654, 0.0f, 80);
|
||||
func_8019FE74(&gSfxVolume, 0.0f, 80);
|
||||
break;
|
||||
|
||||
case 265:
|
||||
|
@ -2304,122 +2304,116 @@
|
||||
0x801D6200:("D_801D6200","UNK_TYPE1","",0x1),
|
||||
0x801D6600:("D_801D6600","UNK_TYPE1","",0x1),
|
||||
0x801D6608:("D_801D6608","UNK_TYPE1","",0x1),
|
||||
0x801D6610:("D_801D6610","UNK_TYPE1","",0x1),
|
||||
0x801D662C:("D_801D662C","UNK_TYPE1","",0x1),
|
||||
0x801D6648:("D_801D6648","UNK_TYPE1","",0x1),
|
||||
0x801D664C:("D_801D664C","UNK_TYPE1","",0x1),
|
||||
0x801D6650:("D_801D6650","UNK_TYPE1","",0x1),
|
||||
0x801D6654:("D_801D6654","UNK_TYPE4","",0x4),
|
||||
0x801D6658:("D_801D6658","UNK_TYPE1","",0x1),
|
||||
0x801D665C:("D_801D665C","UNK_TYPE1","",0x1),
|
||||
0x801D6660:("D_801D6660","UNK_TYPE1","",0x1),
|
||||
0x801D666C:("D_801D666C","UNK_TYPE1","",0x1),
|
||||
0x801D6680:("D_801D6680","UNK_TYPE1","",0x1),
|
||||
0x801D6684:("D_801D6684","UNK_TYPE1","",0x1),
|
||||
0x801D6694:("D_801D6694","UNK_TYPE4","",0x4),
|
||||
0x801D6698:("D_801D6698","UNK_TYPE1","",0x1),
|
||||
0x801D669E:("D_801D669E","UNK_TYPE1","",0x1),
|
||||
0x801D669F:("D_801D669F","UNK_TYPE1","",0x1),
|
||||
0x801D66A0:("D_801D66A0","UNK_TYPE1","",0x1),
|
||||
0x801D66A4:("D_801D66A4","UNK_TYPE2","",0x2),
|
||||
0x801D66A8:("D_801D66A8","UNK_TYPE1","",0x1),
|
||||
0x801D66AC:("D_801D66AC","UNK_TYPE1","",0x1),
|
||||
0x801D66B0:("D_801D66B0","UNK_TYPE1","",0x1),
|
||||
0x801D66B4:("D_801D66B4","UNK_TYPE1","",0x1),
|
||||
0x801D66B8:("D_801D66B8","UNK_TYPE1","",0x1),
|
||||
0x801D66BC:("D_801D66BC","UNK_TYPE1","",0x1),
|
||||
0x801D66C0:("D_801D66C0","UNK_TYPE1","",0x1),
|
||||
0x801D66C4:("D_801D66C4","f32","",0x4),
|
||||
0x801D66C8:("D_801D66C8","UNK_TYPE1","",0x1),
|
||||
0x801D66CC:("D_801D66CC","UNK_TYPE2","",0x2),
|
||||
0x801D66D0:("D_801D66D0","UNK_TYPE1","",0x1),
|
||||
0x801D66D4:("D_801D66D4","UNK_TYPE1","",0x1),
|
||||
0x801D66D8:("D_801D66D8","UNK_TYPE4","",0x4),
|
||||
0x801D66DC:("D_801D66DC","UNK_TYPE4","",0x4),
|
||||
0x801D66E0:("D_801D66E0","UNK_TYPE1","",0x1),
|
||||
0x801D66E4:("D_801D66E4","UNK_TYPE1","",0x1),
|
||||
0x801D66E8:("D_801D66E8","UNK_TYPE1","",0x1),
|
||||
0x801D66EC:("D_801D66EC","UNK_TYPE1","",0x1),
|
||||
0x801D66F0:("D_801D66F0","UNK_TYPE1","",0x1),
|
||||
0x801D66F4:("D_801D66F4","UNK_TYPE4","",0x4),
|
||||
0x801D66F8:("D_801D66F8","UNK_TYPE4","",0x4),
|
||||
0x801D66FC:("D_801D66FC","UNK_TYPE1","",0x1),
|
||||
0x801D6700:("D_801D6700","UNK_TYPE1","",0x1),
|
||||
0x801D6780:("D_801D6780","UNK_TYPE1","",0x1),
|
||||
0x801D6794:("D_801D6794","UNK_TYPE1","",0x1),
|
||||
0x801D6FB4:("D_801D6FB4","UNK_TYPE1","",0x1),
|
||||
0x801D6FB8:("D_801D6FB8","UNK_TYPE1","",0x1),
|
||||
0x801D6FBC:("D_801D6FBC","UNK_TYPE1","",0x1),
|
||||
0x801D6FC0:("D_801D6FC0","UNK_TYPE1","",0x1),
|
||||
0x801D6FC4:("D_801D6FC4","UNK_TYPE1","",0x1),
|
||||
0x801D6FC8:("D_801D6FC8","UNK_TYPE1","",0x1),
|
||||
0x801D6FCC:("D_801D6FCC","f32","",0x4),
|
||||
0x801D6FD0:("D_801D6FD0","UNK_TYPE1","",0x1),
|
||||
0x801D6FD4:("D_801D6FD4","UNK_TYPE1","",0x1),
|
||||
0x801D6FD8:("D_801D6FD8","UNK_TYPE1","",0x1),
|
||||
0x801D6FDC:("D_801D6FDC","UNK_TYPE1","",0x1),
|
||||
0x801D6FE0:("D_801D6FE0","UNK_TYPE1","",0x1),
|
||||
0x801D6610:("gChannelsPerBank","UNK_TYPE1","",0x1),
|
||||
0x801D662C:("gUsedChannelsPerBank","UNK_TYPE1","",0x1),
|
||||
0x801D6648:("sGiantsMaskFreq","UNK_TYPE1","",0x1),
|
||||
0x801D664C:("sGiantsMaskReverbAdd","UNK_TYPE1","",0x1),
|
||||
0x801D6650:("sWaterWheelVolume","UNK_TYPE1","",0x1),
|
||||
0x801D6654:("gSfxVolume","UNK_TYPE4","",0x4),
|
||||
0x801D6658:("sSfxTimer","UNK_TYPE1","",0x1),
|
||||
0x801D665C:("sSfxTimerLerpRange2","UNK_TYPE1","",0x1),
|
||||
0x801D6660:("sSfxTimerLerpRange1","s8","",0x1),
|
||||
0x801D6664:("D_801D6664","f32","[2]",0x8),
|
||||
0x801D666C:("sAudioIncreasingTranspose","UNK_TYPE1","",0x1),
|
||||
0x801D6680:("sPrevChargeLevel","UNK_TYPE1","",0x1),
|
||||
0x801D6684:("sChargeLevelsSfxFreq","UNK_TYPE1","",0x1),
|
||||
0x801D6694:("sCurChargeLevelSfxFreq","UNK_TYPE4","",0x4),
|
||||
0x801D6698:("sGanonsTowerLevelsVol","u8","[8]",0x8),
|
||||
0x801D66A0:("sEnterGanonsTowerTimer","UNK_TYPE1","",0x1),
|
||||
0x801D66A4:("sSfxVolumeDuration","UNK_TYPE2","",0x2),
|
||||
0x801D66A8:("sAudioFileSelectSetting","UNK_TYPE1","",0x1),
|
||||
0x801D66AC:("sAudioIsWindowOpen","UNK_TYPE1","",0x1),
|
||||
0x801D66B0:("sAudioCutsceneFlag","UNK_TYPE1","",0x1),
|
||||
0x801D66B4:("sSpecReverb","UNK_TYPE1","",0x1),
|
||||
0x801D66B8:("sAudioEnvReverb","UNK_TYPE1","",0x1),
|
||||
0x801D66BC:("sAudioCodeReverb","UNK_TYPE1","",0x1),
|
||||
0x801D66C0:("sPrevSeqMode","UNK_TYPE1","",0x1),
|
||||
0x801D66C4:("sAudioEnemyDist","f32","",0x4),
|
||||
0x801D66C8:("sAudioEnemyVol","UNK_TYPE1","",0x1),
|
||||
0x801D66CC:("sPrevMainBgmSeqId","UNK_TYPE2","",0x2),
|
||||
0x801D66D0:("sBgmPlayerIOPort7","UNK_TYPE1","",0x1),
|
||||
0x801D66D4:("sSceneSeqId2","UNK_TYPE1","",0x1),
|
||||
0x801D66D8:("sNumFramesStill","UNK_TYPE4","",0x4),
|
||||
0x801D66DC:("sNumFramesMoving","UNK_TYPE4","",0x4),
|
||||
0x801D66E0:("sAudioBaseFilter","UNK_TYPE1","",0x1),
|
||||
0x801D66E4:("sAudioExtraFilter","UNK_TYPE1","",0x1),
|
||||
0x801D66E8:("sAudioBaseFilter2","UNK_TYPE1","",0x1),
|
||||
0x801D66EC:("sAudioExtraFilter2","UNK_TYPE1","",0x1),
|
||||
0x801D66F0:("gUnderwaterSfxReverbAdd","UNK_TYPE1","",0x1),
|
||||
0x801D66F4:("sRiverSoundBgmPos","UNK_TYPE4","",0x4),
|
||||
0x801D66F8:("sRiverSoundXZDistToPlayer","UNK_TYPE4","",0x4),
|
||||
0x801D66FC:("sObjSoundMainBgmSeqId","UNK_TYPE1","",0x1),
|
||||
0x801D6700:("sSeqFlags","UNK_TYPE1","",0x1),
|
||||
0x801D6780:("sSpecReverbs","UNK_TYPE1","",0x1),
|
||||
0x801D6794:("sNatureAmbienceData","UNK_TYPE1","",0x1),
|
||||
0x801D6FB4:("sIsOcarinaInputEnabled","UNK_TYPE1","",0x1),
|
||||
0x801D6FB8:("sOcarinaInstrumentId","UNK_TYPE1","",0x1),
|
||||
0x801D6FBC:("sCurOcarinaPitch","UNK_TYPE1","",0x1),
|
||||
0x801D6FC0:("sPrevOcarinaPitch","UNK_TYPE1","",0x1),
|
||||
0x801D6FC4:("sCurOcarinaButtonIdx","UNK_TYPE1","",0x1),
|
||||
0x801D6FC8:("sMusicStaffPrevPitch","UNK_TYPE1","",0x1),
|
||||
0x801D6FCC:("sCurOcarinaBendFreq","f32","",0x4),
|
||||
0x801D6FD0:("sDefaultOcarinaVolume","UNK_TYPE1","",0x1),
|
||||
0x801D6FD4:("sCurOcarinaBendIdx","UNK_TYPE1","",0x1),
|
||||
0x801D6FD8:("sCurOcarinaVolume","UNK_TYPE1","",0x1),
|
||||
0x801D6FDC:("sCurOcarinaVibrato","UNK_TYPE1","",0x1),
|
||||
0x801D6FE0:("sPlaybackState","UNK_TYPE1","",0x1),
|
||||
0x801D6FE4:("D_801D6FE4","UNK_TYPE1","",0x1),
|
||||
0x801D6FE8:("D_801D6FE8","UNK_TYPE1","",0x1),
|
||||
0x801D6FEC:("D_801D6FEC","UNK_TYPE4","",0x4),
|
||||
0x801D6FF0:("D_801D6FF0","UNK_TYPE4","",0x4),
|
||||
0x801D6FF4:("D_801D6FF4","UNK_TYPE2","",0x2),
|
||||
0x801D6FF8:("D_801D6FF8","UNK_TYPE2","",0x2),
|
||||
0x801D6FFC:("D_801D6FFC","UNK_TYPE4","",0x4),
|
||||
0x801D7000:("D_801D7000","UNK_TYPE1","",0x1),
|
||||
0x801D7004:("D_801D7004","UNK_TYPE1","",0x1),
|
||||
0x801D7008:("D_801D7008","UNK_TYPE1","",0x1),
|
||||
0x801D700C:("D_801D700C","UNK_TYPE1","",0x1),
|
||||
0x801D7010:("D_801D7010","f32","",0x4),
|
||||
0x801D7014:("D_801D7014","f32","",0x4),
|
||||
0x801D7018:("D_801D7018","UNK_TYPE4","",0x4),
|
||||
0x801D701C:("D_801D701C","UNK_TYPE4","",0x4),
|
||||
0x801D701E:("D_801D701E","UNK_TYPE1","",0x1),
|
||||
0x801D701F:("D_801D701F","UNK_TYPE1","",0x1),
|
||||
0x801D7020:("D_801D7020","UNK_TYPE1","",0x1),
|
||||
0x801D7028:("D_801D7028","UNK_TYPE1","",0x1),
|
||||
0x801D702C:("D_801D702C","UNK_TYPE1","",0x1),
|
||||
0x801D7030:("D_801D7030","UNK_TYPE1","",0x1),
|
||||
0x801D7038:("D_801D7038","UNK_TYPE1","",0x1),
|
||||
0x801D703C:("D_801D703C","UNK_TYPE1","",0x1),
|
||||
0x801D7040:("D_801D7040","UNK_TYPE1","",0x1),
|
||||
0x801D7044:("D_801D7044","UNK_TYPE1","",0x1),
|
||||
0x801D7E04:("D_801D7E04","UNK_TYPE4","",0x4),
|
||||
0x801D7EA4:("D_801D7EA4","UNK_TYPE1","",0x1),
|
||||
0x801D7F44:("D_801D7F44","UNK_TYPE1","",0x1),
|
||||
0x801D84E4:("D_801D84E4","UNK_TYPE1","",0x1),
|
||||
0x801D84F0:("D_801D84F0","UNK_PTR","",0x4),
|
||||
0x801D84F4:("D_801D84F4","UNK_TYPE1","",0x1),
|
||||
0x801D8508:("D_801D8508","UNK_TYPE1","",0x1),
|
||||
0x801D850C:("D_801D850C","UNK_TYPE1","",0x1),
|
||||
0x801D8510:("D_801D8510","UNK_TYPE4","",0x4),
|
||||
0x801D8514:("D_801D8514","UNK_TYPE1","",0x1),
|
||||
0x801D8518:("D_801D8518","UNK_TYPE1","",0x1),
|
||||
0x801D851C:("D_801D851C","UNK_TYPE1","",0x1),
|
||||
0x801D8520:("D_801D8520","UNK_TYPE1","",0x1),
|
||||
0x801D8524:("D_801D8524","UNK_TYPE1","",0x1),
|
||||
0x801D8528:("D_801D8528","UNK_TYPE1","",0x1),
|
||||
0x801D852C:("D_801D852C","UNK_TYPE1","",0x1),
|
||||
0x801D6FEC:("sOcarinaFlags","UNK_TYPE4","",0x4),
|
||||
0x801D6FF0:("sPlaybackNoteTimer","UNK_TYPE4","",0x4),
|
||||
0x801D6FF4:("sPlaybackNotePos","UNK_TYPE2","",0x2),
|
||||
0x801D6FF8:("sPlaybackStaffPos","UNK_TYPE2","",0x2),
|
||||
0x801D6FFC:("sPrevOcarinaSongFlags","UNK_TYPE4","",0x4),
|
||||
0x801D7000:("sPlaybackNoteValue","UNK_TYPE1","",0x1),
|
||||
0x801D7004:("sNotePlaybackVolume","UNK_TYPE1","",0x1),
|
||||
0x801D7008:("sNotePlaybackVibrato","UNK_TYPE1","",0x1),
|
||||
0x801D700C:("sNotePlaybackBend","UNK_TYPE1","",0x1),
|
||||
0x801D7010:("sNormalizedNotePlaybackTone","f32","",0x4),
|
||||
0x801D7014:("sNormalizedNotePlaybackVolume","f32","",0x4),
|
||||
0x801D7018:("sOcarinaPlaybackTaskStart","UNK_TYPE4","",0x4),
|
||||
0x801D701C:("sOcarinaWallCounter","UNK_TYPE4","",0x4),
|
||||
0x801D7020:("sCurOcarinaSong","u8","[8]",0x8),
|
||||
0x801D7028:("sOcarinaSongAppendPos","UNK_TYPE1","",0x1),
|
||||
0x801D702C:("sOcarinaSongStartingPos","UNK_TYPE1","",0x1),
|
||||
0x801D7030:("sButtonToNoteMap","UNK_TYPE1","",0x1),
|
||||
0x801D7038:("sOcaMemoryGameAppendPos","UNK_TYPE1","",0x1),
|
||||
0x801D703C:("sOcaMemoryGameEndPos","UNK_TYPE1","",0x1),
|
||||
0x801D7040:("sOcaMemoryGameNumNotes","UNK_TYPE1","",0x1),
|
||||
0x801D7044:("sOcarinaSongNotes","OcarinaNote","[24][20]",0xF00),
|
||||
0x801D7F44:("sOoTOcarinaSongNotes","OcarinaNote","[9][20]",0x5A0),
|
||||
0x801D84E4:("sOoTOcarinaSongsNumNotes","UNK_TYPE1","",0x1),
|
||||
0x801D84F0:("sPlaybackSong","UNK_PTR","",0x4),
|
||||
0x801D84F4:("sFrogsSongNotes","u8","[14]",0xE),
|
||||
0x801D8504:("gFrogsSongPtr","u8*","",0x4),
|
||||
0x801D8508:("sRecordingState","UNK_TYPE1","",0x1),
|
||||
0x801D850C:("sRecordSongPos","UNK_TYPE1","",0x1),
|
||||
0x801D8510:("sOcarinaRecordTaskStart","UNK_TYPE4","",0x4),
|
||||
0x801D8514:("sRecordOcarinaPitch","UNK_TYPE1","",0x1),
|
||||
0x801D8518:("sRecordOcarinaVolume","UNK_TYPE1","",0x1),
|
||||
0x801D851C:("sRecordOcarinaVibrato","UNK_TYPE1","",0x1),
|
||||
0x801D8520:("sRecordOcarinaBendIdx","UNK_TYPE1","",0x1),
|
||||
0x801D8524:("sRecordOcarinaButtonIdx","UNK_TYPE1","",0x1),
|
||||
0x801D8528:("sPlayedOcarinaSongIdxPlusOne","UNK_TYPE1","",0x1),
|
||||
0x801D852C:("sMusicStaffNumNotesPerTest","UNK_TYPE1","",0x1),
|
||||
0x801D8530:("D_801D8530","UNK_TYPE1","",0x1),
|
||||
0x801D8534:("D_801D8534","UNK_TYPE4","",0x4),
|
||||
0x801D8538:("D_801D8538","UNK_TYPE1","",0x1),
|
||||
0x801D853C:("D_801D853C","UNK_TYPE1","",0x1),
|
||||
0x801D853E:("D_801D853E","UNK_TYPE2","",0x2),
|
||||
0x801D8544:("D_801D8544","UNK_TYPE1","",0x1),
|
||||
0x801D889C:("D_801D889C","UNK_PTR","",0x4),
|
||||
0x801D88A0:("D_801D88A0","UNK_PTR","",0x4),
|
||||
0x801D88A4:("D_801D88A4","UNK_PTR","",0x4),
|
||||
0x801D88A8:("D_801D88A8","UNK_TYPE1","",0x1),
|
||||
0x801D88B8:("D_801D88B8","UNK_TYPE1","",0x1),
|
||||
0x801D8A48:("D_801D8A48","UNK_TYPE1","",0x1),
|
||||
0x801D8B20:("D_801D8B20","UNK_TYPE1","",0x1),
|
||||
0x801D8B24:("D_801D8B24","UNK_PTR","",0x4),
|
||||
0x801D8B28:("D_801D8B28","UNK_TYPE2","",0x2),
|
||||
0x801D8B2C:("D_801D8B2C","UNK_TYPE1","",0x1),
|
||||
0x801D8538:("sIsOcarinaNoteChanged","UNK_TYPE1","",0x1),
|
||||
0x801D853C:("sScarecrowsLongSongNotes","OcarinaNote","[108]",0x360),
|
||||
0x801D889C:("gScarecrowLongSongPtr","UNK_PTR","",0x4),
|
||||
0x801D88A0:("gScarecrowSpawnSongPtr","UNK_PTR","",0x4),
|
||||
0x801D88A4:("sTerminaWallSongPtr","UNK_PTR","",0x4),
|
||||
0x801D88A8:("sNoteToButtonMap","UNK_TYPE1","",0x1),
|
||||
0x801D88B8:("sCustomSequenceScript","UNK_TYPE1","",0x1),
|
||||
0x801D8A48:("gOcarinaSongButtons","UNK_TYPE1","",0x1),
|
||||
0x801D8B20:("sScarecrowAfterCreditsState","UNK_TYPE1","",0x1),
|
||||
0x801D8B24:("sScarecrowAfterCreditsIntrumentId","UNK_PTR","",0x4),
|
||||
0x801D8B28:("sScarecrowAfterCreditsTimer","UNK_TYPE2","",0x2),
|
||||
0x801D8B2C:("sRequestCustomSequence","UNK_TYPE1","",0x1),
|
||||
0x801D8B30:("D_801D8B30","UNK_TYPE1","",0x1),
|
||||
0x801D8BB0:("D_801D8BB0","UNK_TYPE1","",0x1),
|
||||
0x801D8BD0:("D_801D8BD0","UNK_TYPE2","",0x2),
|
||||
0x801D8BD4:("D_801D8BD4","UNK_TYPE4","",0x4),
|
||||
0x801D8BB0:("sBigBellsVolume","UNK_TYPE1","",0x1),
|
||||
0x801D8BD0:("sBgmPlayers","UNK_TYPE2","",0x2),
|
||||
0x801D8BD4:("sSfxOriginalPos","UNK_TYPE4","",0x4),
|
||||
0x801D8BE0:("D_801D8BE0","UNK_TYPE1","",0x1),
|
||||
0x801D8E3C:("D_801D8E3C","UNK_TYPE1","",0x1),
|
||||
0x801D8E40:("D_801D8E40","UNK_TYPE4","",0x4),
|
||||
@ -3791,16 +3785,16 @@
|
||||
0x801E07C4:("jtbl_801E07C4","UNK_PTR","",0x4),
|
||||
0x801E0948:("jtbl_801E0948","UNK_PTR","",0x4),
|
||||
0x801E0A08:("jtbl_801E0A08","UNK_PTR","",0x4),
|
||||
0x801E0BD0:("D_801E0BD0","UNK_TYPE1","",0x1),
|
||||
0x801E0BFC:("D_801E0BFC","UNK_TYPE1","",0x1),
|
||||
0x801E0C14:("D_801E0C14","char","[]",0x1),
|
||||
0x801E0C38:("D_801E0C38","char","[]",0x1),
|
||||
0x801E0C64:("D_801E0C64","char","[]",0x1),
|
||||
0x801E0C6C:("D_801E0C6C","char","[]",0x1),
|
||||
0x801E0C74:("D_801E0C74","char","[]",0x1),
|
||||
0x801E0C7C:("D_801E0C7C","char","[]",0x1),
|
||||
0x801E0CA4:("D_801E0CA4","char","[]",0x1),
|
||||
0x801E0CD0:("D_801E0CD0","char","[]",0x1),
|
||||
0x801E0BD0:("gAudioEnvironmentalSfx","UNK_TYPE1","",0x1),
|
||||
0x801E0BFC:("sIsOcarinaSongReserved","UNK_TYPE1","",0x1),
|
||||
0x801E0C14:("sAudioOcarinaUnusedText0","char","[]",0x1),
|
||||
0x801E0C38:("sAudioOcarinaUnusedText1","char","[]",0x1),
|
||||
0x801E0C64:("sAudioOcarinaUnusedText2","char","[]",0x1),
|
||||
0x801E0C6C:("sAudioOcarinaUnusedText3","char","[]",0x1),
|
||||
0x801E0C74:("sAudioOcarinaUnusedText4","char","[]",0x1),
|
||||
0x801E0C7C:("sAudioOcarinaUnusedText5","char","[]",0x1),
|
||||
0x801E0CA4:("sAudioOcarinaUnusedText6","char","[]",0x1),
|
||||
0x801E0CD0:("sAudioOcarinaUnusedText7","char","[]",0x1),
|
||||
0x801E0CEC:("D_801E0CEC","f32","",0x4),
|
||||
0x801E0CF0:("D_801E0CF0","f32","",0x4),
|
||||
0x801E0CF4:("D_801E0CF4","f32","",0x4),
|
||||
@ -4297,87 +4291,83 @@
|
||||
0x801FD158:("D_801FD158","UNK_TYPE1","",0x1),
|
||||
0x801FD198:("D_801FD198","UNK_TYPE1","",0x1),
|
||||
0x801FD1E0:("D_801FD1E0","UNK_TYPE1","",0x1),
|
||||
0x801FD1F0:("D_801FD1F0","UNK_TYPE1","",0x1),
|
||||
0x801FD250:("D_801FD250","UNK_TYPE1","",0x1),
|
||||
0x801FD254:("D_801FD254","UNK_TYPE1","",0x1),
|
||||
0x801FD258:("D_801FD258","UNK_TYPE1","",0x1),
|
||||
0x801FD25C:("D_801FD25C","UNK_TYPE1","",0x1),
|
||||
0x801FD260:("D_801FD260","UNK_TYPE1","",0x1),
|
||||
0x801FD264:("D_801FD264","UNK_TYPE1","",0x1),
|
||||
0x801FD268:("D_801FD268","UNK_TYPE1","",0x1),
|
||||
0x801FD278:("D_801FD278","UNK_TYPE1","",0x1),
|
||||
0x801FD288:("D_801FD288","UNK_TYPE1","",0x1),
|
||||
0x801FD28C:("D_801FD28C","UNK_TYPE1","",0x1),
|
||||
0x801FD28D:("D_801FD28D","UNK_TYPE1","",0x1),
|
||||
0x801FD28E:("D_801FD28E","UNK_TYPE1","",0x1),
|
||||
0x801FD28F:("D_801FD28F","UNK_TYPE1","",0x1),
|
||||
0x801FD290:("D_801FD290","UNK_TYPE1","",0x1),
|
||||
0x801FD291:("D_801FD291","UNK_TYPE1","",0x1),
|
||||
0x801FD294:("D_801FD294","UNK_TYPE1","",0x1),
|
||||
0x801FD298:("D_801FD298","UNK_TYPE1","",0x1),
|
||||
0x801FD29C:("D_801FD29C","UNK_TYPE1","",0x1),
|
||||
0x801FD2A0:("D_801FD2A0","UNK_TYPE1","",0x1),
|
||||
0x801FD2A8:("D_801FD2A8","UNK_TYPE1","",0x1),
|
||||
0x801FD1F0:("sSfxSettings","UNK_TYPE1","",0x1),
|
||||
0x801FD250:("sSfxSettingsFlags","UNK_TYPE1","",0x1),
|
||||
0x801FD254:("sTwoSemitonesLoweredFreq","UNK_TYPE1","",0x1),
|
||||
0x801FD258:("sSfxIncreasedReverb","UNK_TYPE1","",0x1),
|
||||
0x801FD25C:("sSfxSyncedVolume","UNK_TYPE1","",0x1),
|
||||
0x801FD260:("sSfxSyncedVolumeForMetalEffects","UNK_TYPE1","",0x1),
|
||||
0x801FD264:("sSfxSyncedFreq","UNK_TYPE1","",0x1),
|
||||
0x801FD268:("sRiverFreqScaleLerp","UNK_TYPE1","",0x1),
|
||||
0x801FD278:("sWaterfallFreqScaleLerp","UNK_TYPE1","",0x1),
|
||||
0x801FD288:("sSfxAdjustedFreq","UNK_TYPE1","",0x1),
|
||||
0x801FD28C:("sSfxCustomReverb","UNK_TYPE1","",0x1),
|
||||
0x801FD28D:("sRiverSoundMainBgmVol","UNK_TYPE1","",0x1),
|
||||
0x801FD28E:("sRiverSoundMainBgmCurrentVol","UNK_TYPE1","",0x1),
|
||||
0x801FD28F:("sRiverSoundMainBgmLower","UNK_TYPE1","",0x1),
|
||||
0x801FD290:("sRiverSoundMainBgmRestore","UNK_TYPE1","",0x1),
|
||||
0x801FD291:("sGanonsTowerVol","UNK_TYPE1","",0x1),
|
||||
0x801FD294:("sSfxVolumeCur","UNK_TYPE1","",0x1),
|
||||
0x801FD298:("sSfxVolumeTarget","UNK_TYPE1","",0x1),
|
||||
0x801FD29C:("sSfxVolumeRate","UNK_TYPE1","",0x1),
|
||||
0x801FD2A0:("sSceneSeqId1","UNK_TYPE1","",0x1),
|
||||
0x801FD2A8:("sSfxChannelState","UNK_TYPE1","",0x1),
|
||||
0x801FD3A8:("D_801FD3A8","UNK_TYPE1","",0x1),
|
||||
0x801FD3A9:("D_801FD3A9","UNK_TYPE1","",0x1),
|
||||
0x801FD3AA:("D_801FD3AA","UNK_TYPE1","",0x1),
|
||||
0x801FD3AB:("D_801FD3AB","UNK_TYPE1","",0x1),
|
||||
0x801FD3AC:("D_801FD3AC","UNK_TYPE1","",0x1),
|
||||
0x801FD3AE:("D_801FD3AE","UNK_TYPE1","",0x1),
|
||||
0x801FD3AF:("D_801FD3AF","UNK_TYPE1","",0x1),
|
||||
0x801FD3B0:("D_801FD3B0","UNK_TYPE1","",0x1),
|
||||
0x801FD3B4:("D_801FD3B4","UNK_TYPE1","",0x1),
|
||||
0x801FD3B7:("D_801FD3B7","UNK_TYPE1","",0x1),
|
||||
0x801FD3B8:("D_801FD3B8","UNK_TYPE1","",0x1),
|
||||
0x801FD3D8:("D_801FD3D8","UNK_TYPE1","",0x1),
|
||||
0x801FD3D9:("D_801FD3D9","UNK_TYPE1","",0x1),
|
||||
0x801FD3DA:("D_801FD3DA","UNK_TYPE1","",0x1),
|
||||
0x801FD3E0:("D_801FD3E0","UNK_TYPE1","",0x1),
|
||||
0x801FD3EC:("D_801FD3EC","UNK_TYPE1","",0x1),
|
||||
0x801FD3F0:("D_801FD3F0","UNK_TYPE1","",0x1),
|
||||
0x801FD3FC:("D_801FD3FC","UNK_TYPE1","",0x1),
|
||||
0x801FD400:("D_801FD400","UNK_TYPE1","",0x1),
|
||||
0x801FD404:("D_801FD404","UNK_TYPE1","",0x1),
|
||||
0x801FD408:("D_801FD408","UNK_TYPE1","",0x1),
|
||||
0x801FD40C:("D_801FD40C","UNK_TYPE1","",0x1),
|
||||
0x801FD410:("D_801FD410","UNK_TYPE1","",0x1),
|
||||
0x801FD420:("D_801FD420","UNK_TYPE1","",0x1),
|
||||
0x801FD42C:("D_801FD42C","UNK_TYPE1","",0x1),
|
||||
0x801FD430:("D_801FD430","UNK_TYPE1","",0x1),
|
||||
0x801FD431:("D_801FD431","UNK_TYPE1","",0x1),
|
||||
0x801FD3AA:("sRiverSoundBgmTimer","UNK_TYPE1","",0x1),
|
||||
0x801FD3AB:("sFanfareState","UNK_TYPE1","",0x1),
|
||||
0x801FD3AC:("sFanfareSeqId","UNK_TYPE1","",0x1),
|
||||
0x801FD3AE:("sMuteOnlySfxAndNatureSeq","UNK_TYPE1","",0x1),
|
||||
0x801FD3AF:("sAllPlayersMutedExceptOcaAndSys","UNK_TYPE1","",0x1),
|
||||
0x801FD3B0:("sAudioPauseState","UNK_TYPE1","",0x1),
|
||||
0x801FD3B4:("sSpatialSeqIsActive","u8","[4]",0x4),
|
||||
0x801FD3B8:("sSequenceFilter","UNK_TYPE1","",0x1),
|
||||
0x801FD3D8:("sIsFinalHoursOrSoaring","UNK_TYPE1","",0x1),
|
||||
0x801FD3D9:("sObjSoundFanfareSeqId","UNK_TYPE1","",0x1),
|
||||
0x801FD3DA:("sObjSoundFanfareRequested","UNK_TYPE1","",0x1),
|
||||
0x801FD3E0:("sObjSoundFanfarePos","UNK_TYPE1","",0x1),
|
||||
0x801FD3EC:("sObjSoundPlayerIdx","UNK_TYPE1","",0x1),
|
||||
0x801FD3F0:("sObjSoundPos","UNK_TYPE1","",0x1),
|
||||
0x801FD3FC:("sObjSoundFlags","UNK_TYPE1","",0x1),
|
||||
0x801FD400:("sObjSoundMinDist","UNK_TYPE1","",0x1),
|
||||
0x801FD404:("sObjSoundMaxDist","UNK_TYPE1","",0x1),
|
||||
0x801FD408:("sObjSoundMaxVol","UNK_TYPE1","",0x1),
|
||||
0x801FD40C:("sObjSoundMinVol","UNK_TYPE1","",0x1),
|
||||
0x801FD410:("sSpatialSeqNoFilterPos","UNK_TYPE1","",0x1),
|
||||
0x801FD420:("sSpatialSeqFilterPos","UNK_TYPE1","",0x1),
|
||||
0x801FD42C:("sSpatialSeqMaxDist","UNK_TYPE1","",0x1),
|
||||
0x801FD430:("sSpatialSeqSeqId","UNK_TYPE1","",0x1),
|
||||
0x801FD431:("sSpatialSeqFlags","UNK_TYPE1","",0x1),
|
||||
0x801FD432:("D_801FD432","UNK_TYPE1","",0x1),
|
||||
0x801FD433:("D_801FD433","UNK_TYPE1","",0x1),
|
||||
0x801FD433:("sSpatialSubBgmFadeTimer","UNK_TYPE1","",0x1),
|
||||
0x801FD434:("D_801FD434","UNK_TYPE1","",0x1),
|
||||
0x801FD435:("D_801FD435","UNK_TYPE1","",0x1),
|
||||
0x801FD436:("D_801FD436","UNK_TYPE1","",0x1),
|
||||
0x801FD435:("sSpatialSeqPlayerIdx","UNK_TYPE1","",0x1),
|
||||
0x801FD436:("sSpatialSeqFadeTimer","UNK_TYPE1","",0x1),
|
||||
0x801FD438:("D_801FD438","UNK_TYPE1","",0x1),
|
||||
0x801FD43A:("D_801FD43A","UNK_TYPE1","",0x1),
|
||||
0x801FD43B:("D_801FD43B","UNK_TYPE1","",0x1),
|
||||
0x801FD43E:("D_801FD43E","UNK_TYPE1","",0x1),
|
||||
0x801FD442:("D_801FD442","UNK_TYPE1","",0x1),
|
||||
0x801FD448:("D_801FD448","UNK_TYPE1","",0x1),
|
||||
0x801FD44C:("D_801FD44C","UNK_TYPE1","",0x1),
|
||||
0x801FD44D:("D_801FD44D","UNK_TYPE1","",0x1),
|
||||
0x801FD450:("D_801FD450","UNK_TYPE1","",0x1),
|
||||
0x801FD454:("D_801FD454","UNK_TYPE1","",0x1),
|
||||
0x801FD458:("D_801FD458","UNK_TYPE1","",0x1),
|
||||
0x801FD45C:("D_801FD45C","UNK_TYPE1","",0x1),
|
||||
0x801FD460:("D_801FD460","UNK_TYPE1","",0x1),
|
||||
0x801FD461:("D_801FD461","UNK_TYPE1","",0x1),
|
||||
0x801FD462:("D_801FD462","UNK_TYPE1","",0x1),
|
||||
0x801FD463:("D_801FD463","UNK_TYPE1","",0x1),
|
||||
0x801FD464:("D_801FD464","UNK_TYPE1","",0x1),
|
||||
0x801FD468:("D_801FD468","UNK_TYPE1","",0x1),
|
||||
0x801FD46C:("D_801FD46C","UNK_TYPE1","",0x1),
|
||||
0x801FD470:("D_801FD470","UNK_TYPE1","",0x1),
|
||||
0x801FD4A0:("D_801FD4A0","UNK_TYPE1","",0x1),
|
||||
0x801FD4D0:("D_801FD4D0","UNK_TYPE1","",0x1),
|
||||
0x801FD500:("D_801FD500","UNK_TYPE1","",0x1),
|
||||
0x801FD43A:("sPlayingStaff","OcarinaStaff","",0x3),
|
||||
0x801FD43E:("sPlaybackStaff","OcarinaStaff","",0x3),
|
||||
0x801FD442:("sRecordingStaff","OcarinaStaff","",0x3),
|
||||
0x801FD448:("sOcarinaUpdateTaskCurrent","UNK_TYPE1","",0x1),
|
||||
0x801FD44C:("sOcarinaInputStickRel","OcarinaControlStick","",0x2),
|
||||
0x801FD450:("sOcarinaInputButtonCur","UNK_TYPE1","",0x1),
|
||||
0x801FD454:("sOcarinaInputButtonStart","UNK_TYPE1","",0x1),
|
||||
0x801FD458:("sOcarinaInputButtonPrev","UNK_TYPE1","",0x1),
|
||||
0x801FD45C:("sOcaInputBtnPress","UNK_TYPE1","",0x1),
|
||||
0x801FD460:("sOcarinaResetDelay","UNK_TYPE1","",0x1),
|
||||
0x801FD461:("sOcarinaResetUnused","UNK_TYPE1","",0x1),
|
||||
0x801FD462:("sOcarinaHasStartedSong","UNK_TYPE1","",0x1),
|
||||
0x801FD463:("sFirstOcarinaSongIdx","UNK_TYPE1","",0x1),
|
||||
0x801FD464:("sLastOcarinaSongIdx","UNK_TYPE1","",0x1),
|
||||
0x801FD468:("sOcarinaAvailSongs","UNK_TYPE1","",0x1),
|
||||
0x801FD46C:("sOcarinaStaffPlayingPos","UNK_TYPE1","",0x1),
|
||||
0x801FD470:("sMusicStaffPos","UNK_TYPE1","",0x1),
|
||||
0x801FD4A0:("sMusicStaffCurHeldLength","UNK_TYPE1","",0x1),
|
||||
0x801FD4D0:("sMusicStaffExpectedLength","UNK_TYPE1","",0x1),
|
||||
0x801FD500:("sMusicStaffExpectedPitch","UNK_TYPE1","",0x1),
|
||||
0x801FD518:("D_801FD518","UNK_TYPE1","",0x1),
|
||||
0x801FD530:("D_801FD530","UNK_TYPE1","",0x1),
|
||||
0x801FD533:("D_801FD533","UNK_TYPE1","",0x1),
|
||||
0x801FD590:("D_801FD590","UNK_TYPE1","",0x1),
|
||||
0x801FD598:("D_801FD598","UNK_TYPE1","",0x1),
|
||||
0x801FD530:("D_801FD530","u32","[24]",0x60),
|
||||
0x801FD590:("sRecordingSongNote","UNK_TYPE1","",0x1),
|
||||
0x801FD598:("sCustomSequencePc","UNK_TYPE1","",0x1),
|
||||
0x801FD5A0:("D_801FD5A0","UNK_TYPE1","",0x1),
|
||||
0x801FD5A4:("D_801FD5A4","UNK_TYPE1","",0x1),
|
||||
0x801FD5B8:("D_801FD5B8","UNK_TYPE1","",0x1),
|
||||
|
Loading…
Reference in New Issue
Block a user