diff options
Diffstat (limited to 'arm9/lib')
| -rw-r--r-- | arm9/lib/include/SND_main.h | 2 | ||||
| -rw-r--r-- | arm9/lib/src/SND_alarm.c | 1 | ||||
| -rw-r--r-- | arm9/lib/src/SND_bank.c | 1 | ||||
| -rw-r--r-- | arm9/lib/src/SND_command.c | 46 | ||||
| -rw-r--r-- | arm9/lib/src/SND_interface.c | 12 | ||||
| -rw-r--r-- | arm9/lib/src/SND_main.c | 3 | 
6 files changed, 36 insertions, 29 deletions
| diff --git a/arm9/lib/include/SND_main.h b/arm9/lib/include/SND_main.h index 7412c1ae..e35f1ee1 100644 --- a/arm9/lib/include/SND_main.h +++ b/arm9/lib/include/SND_main.h @@ -19,7 +19,7 @@ struct SNDBinaryFileHeader {  typedef struct SNDBinaryBlockHeader {      u32 type;       // 0x0      u32 size;       // 0x4 -};  // size = 0x8 +} SNDBinaryBlockHeader;  // size = 0x8  struct SNDWaveParam {      u8 format;      // 0x0 diff --git a/arm9/lib/src/SND_alarm.c b/arm9/lib/src/SND_alarm.c index b6178c8d..e216c02c 100644 --- a/arm9/lib/src/SND_alarm.c +++ b/arm9/lib/src/SND_alarm.c @@ -4,6 +4,7 @@ struct AlarmCallback {      SNDAlarmCallback cb;      void *data;      u8 id; +    u8 padding[3];  };  static struct AlarmCallback sCallbackTable[SND_ALARM_COUNT]; diff --git a/arm9/lib/src/SND_bank.c b/arm9/lib/src/SND_bank.c index bc339234..7f5bd94a 100644 --- a/arm9/lib/src/SND_bank.c +++ b/arm9/lib/src/SND_bank.c @@ -95,6 +95,7 @@ ARM_FUNC void SND_DestroyWaveArc(struct SNDWaveArc *waveArc) {  }  ARM_FUNC struct SNDInstPos SND_GetFirstInstDataPos(const struct SNDBankData *bankData) { +#pragma unused (bankData)      struct SNDInstPos retval;      retval.program = 0;      retval.index = 0; diff --git a/arm9/lib/src/SND_command.c b/arm9/lib/src/SND_command.c index 4a867ce3..11622761 100644 --- a/arm9/lib/src/SND_command.c +++ b/arm9/lib/src/SND_command.c @@ -21,6 +21,7 @@ static struct SNDCommand *sFreeList;  extern s32 PXI_SendWordByFifo(u32, u32, u32);  extern void PXI_SetFifoRecvCallback(u32, void (*)(s32, s32));  extern BOOL PXI_IsCallbackReady(u32, u32); +extern void DC_FlushRange(void*, u32);  static void InitPXI(void);  static void RequestCommandProc(void); @@ -52,7 +53,7 @@ ARM_FUNC void SND_CommandInit(void) {      cmd->id = SND_CMD_SET_SHARED_WORK;      cmd->arg[0] = (u32)SNDi_SharedWork;      SND_PushCommand(cmd); -    SND_FlushCommand(SND_CMD_FLAG_BLOCK); +    (void)SND_FlushCommand(SND_CMD_FLAG_BLOCK);  }  ARM_FUNC const struct SNDCommand *SND_RecvCommandReply(u32 flags) { @@ -61,7 +62,7 @@ ARM_FUNC const struct SNDCommand *SND_RecvCommandReply(u32 flags) {      if (flags & SND_CMD_FLAG_BLOCK) {          u32 tag = SNDi_GetFinishedCommandTag();          while (sFinishedTag == tag) { -            OS_RestoreInterrupts(oldirq); +            (void)OS_RestoreInterrupts(oldirq);              OS_SpinWait(100);              oldirq = OS_DisableInterrupts();              tag = SNDi_GetFinishedCommandTag(); @@ -69,7 +70,7 @@ ARM_FUNC const struct SNDCommand *SND_RecvCommandReply(u32 flags) {      } else {          u32 tag = SNDi_GetFinishedCommandTag();          if (sFinishedTag == tag) { -            OS_RestoreInterrupts(oldirq); +            (void)OS_RestoreInterrupts(oldirq);              return NULL;          }      } @@ -93,7 +94,7 @@ ARM_FUNC const struct SNDCommand *SND_RecvCommandReply(u32 flags) {      sWaitingCommandListCount--;      sFinishedTag++; -    OS_RestoreInterrupts(oldirq); +    (void)OS_RestoreInterrupts(oldirq);      return queueRead;  } @@ -116,13 +117,13 @@ ARM_FUNC struct SNDCommand *SND_AllocCommand(u32 flags) {          if (cmd != NULL)              return cmd;      } else { -        SND_FlushCommand(SND_CMD_FLAG_BLOCK); +        (void)SND_FlushCommand(SND_CMD_FLAG_BLOCK);      }      RequestCommandProc();      do { -        SND_RecvCommandReply(SND_CMD_FLAG_BLOCK); +        (void)SND_RecvCommandReply(SND_CMD_FLAG_BLOCK);          cmd = AllocCommand();      } while (cmd == NULL);      return cmd; @@ -142,25 +143,25 @@ ARM_FUNC void SND_PushCommand(struct SNDCommand *cmd) {      cmd->llNext = NULL; -    OS_RestoreInterrupts(oldirq); +    (void)OS_RestoreInterrupts(oldirq);  }  ARM_FUNC BOOL SND_FlushCommand(u32 flags) {      OSIntrMode oldirq = OS_DisableInterrupts();      if (sReserveList == NULL) { -        OS_RestoreInterrupts(oldirq); +        (void)OS_RestoreInterrupts(oldirq);          return TRUE;      }      if (sWaitingCommandListCount >= SND_CMD_WAIT_QUEUE_COUNT) {          if ((flags & SND_CMD_FLAG_BLOCK) == 0) { -            OS_RestoreInterrupts(oldirq); +            (void)OS_RestoreInterrupts(oldirq);              return FALSE;          }          do { -            SND_RecvCommandReply(SND_CMD_FLAG_BLOCK); +            (void)SND_RecvCommandReply(SND_CMD_FLAG_BLOCK);          } while (sWaitingCommandListCount >= SND_CMD_WAIT_QUEUE_COUNT);      } @@ -169,13 +170,13 @@ ARM_FUNC BOOL SND_FlushCommand(u32 flags) {      s32 result = PXI_SendWordByFifo(7, (u32)sReserveList, 0);      if (result < 0) {          if ((flags & SND_CMD_FLAG_BLOCK) == 0) { -            OS_RestoreInterrupts(oldirq); +            (void)OS_RestoreInterrupts(oldirq);              return FALSE;          }          result = PXI_SendWordByFifo(7, (u32)sReserveList, 0);          while (result < 0) { -            OS_RestoreInterrupts(oldirq); +            (void)OS_RestoreInterrupts(oldirq);              OS_SpinWait(100);              oldirq = OS_DisableInterrupts();              result = PXI_SendWordByFifo(7, (u32)sReserveList, 0); @@ -197,7 +198,7 @@ ARM_FUNC BOOL SND_FlushCommand(u32 flags) {      sWaitingCommandListCount++;      sCurrentTag++; -    OS_RestoreInterrupts(oldirq); +    (void)OS_RestoreInterrupts(oldirq);      return TRUE;  } @@ -216,7 +217,7 @@ ARM_FUNC void SND_WaitForCommandProc(u32 tag) {          return;      do { -        SND_RecvCommandReply(SND_CMD_FLAG_BLOCK); +        (void)SND_RecvCommandReply(SND_CMD_FLAG_BLOCK);      } while (SND_IsFinishedCommandTag(tag) == 0);  } @@ -229,7 +230,7 @@ ARM_FUNC u32 SND_GetCurrentCommandTag(void) {      else          retval = sCurrentTag; -    OS_RestoreInterrupts(oldirq); +    (void)OS_RestoreInterrupts(oldirq);      return retval;  } @@ -249,7 +250,7 @@ ARM_FUNC BOOL SND_IsFinishedCommandTag(u32 tag) {              result = FALSE;      } -    OS_RestoreInterrupts(oldirq); +    (void)OS_RestoreInterrupts(oldirq);      return result;  } @@ -260,7 +261,7 @@ ARM_FUNC s32 SND_CountFreeCommand(void) {      for (struct SNDCommand *cmd = sFreeList; cmd != NULL; cmd = cmd->llNext)          count++; -    OS_RestoreInterrupts(oldirq); +    (void)OS_RestoreInterrupts(oldirq);      return count;  } @@ -271,7 +272,7 @@ ARM_FUNC s32 SND_CountReservedCommand(void) {      for (struct SNDCommand *cmd = sReserveList; cmd != NULL; cmd = cmd->llNext)          count++; -    OS_RestoreInterrupts(oldirq); +    (void)OS_RestoreInterrupts(oldirq);      return count;  } @@ -280,9 +281,10 @@ ARM_FUNC s32 SND_CountWaitingCommand(void) {  }  ARM_FUNC static void PxiFifoCallback(s32 a, s32 b) { +#pragma unused (a)      OSIntrMode oldirq = OS_DisableInterrupts();      SNDi_CallAlarmHandler(b); -    OS_RestoreInterrupts(oldirq); +    (void)OS_RestoreInterrupts(oldirq);  }  ARM_FUNC static void InitPXI(void) { @@ -306,7 +308,7 @@ ARM_FUNC static void RequestCommandProc(void) {  ARM_FUNC static struct SNDCommand *AllocCommand(void) {      OSIntrMode oldirq = OS_DisableInterrupts();      if (sFreeList == NULL) { -        OS_RestoreInterrupts(oldirq); +        (void)OS_RestoreInterrupts(oldirq);          return NULL;      } @@ -315,7 +317,7 @@ ARM_FUNC static struct SNDCommand *AllocCommand(void) {      sFreeList = sFreeList->llNext;      if (sFreeList == NULL)          sFreeListEnd = NULL; -    OS_RestoreInterrupts(oldirq); +    (void)OS_RestoreInterrupts(oldirq);      return retval;  } @@ -328,6 +330,6 @@ ARM_FUNC static BOOL IsCommandAvailable(void) {      // is this some kind of debug or ensata register?      *(vu32 *)0x4FFF200 = 0x10;      u32 resp = *(vu32 *)0x4FFF200; -    OS_RestoreInterrupts(oldirq); +    (void)OS_RestoreInterrupts(oldirq);      return resp != 0;  } diff --git a/arm9/lib/src/SND_interface.c b/arm9/lib/src/SND_interface.c index e8369477..42b5ff42 100644 --- a/arm9/lib/src/SND_interface.c +++ b/arm9/lib/src/SND_interface.c @@ -30,11 +30,11 @@ ARM_FUNC void SND_PauseSeq(s32 player, BOOL flag) {  // ARM_FUNC void SND_SetPlayerTempoRatio(s32 player, s32 ratio) { }  ARM_FUNC void SND_SetPlayerVolume(s32 player, s32 volume) { -    SNDi_SetPlayerParam(player, 6, volume, 2); +    SNDi_SetPlayerParam(player, 6, (u32)volume, 2);  }  ARM_FUNC void SND_SetPlayerChannelPriority(s32 player, s32 prio) { -    SNDi_SetPlayerParam(player, 4, prio, 1); +    SNDi_SetPlayerParam(player, 4, (u32)prio, 1);  }  // ARM_FUNC void SND_SetPlayerLocalVariable(s32 player, s32 varNo, s16 var) { } @@ -44,11 +44,11 @@ ARM_FUNC void SND_SetPlayerChannelPriority(s32 player, s32 prio) {  // ARM_FUNC void SND_SetTrackVolume(s32 player, u32 trackBitMask, s32 volume) { }  ARM_FUNC void SND_SetTrackPitch(s32 player, u32 trackBitMask, s32 pitch) { -    SNDi_SetTrackParam(player, trackBitMask, 12, pitch, 2); +    SNDi_SetTrackParam(player, trackBitMask, 12, (u32)pitch, 2);  }  ARM_FUNC void SND_SetTrackPan(s32 player, u32 trackBitMask, s32 pan) { -    SNDi_SetTrackParam(player, trackBitMask, 9, pan, 1); +    SNDi_SetTrackParam(player, trackBitMask, 9, (u32)pan, 1);  }  ARM_FUNC void SND_SetTrackAllocatableChannel(s32 player, u32 trackBitMask, u32 chnBitMask) { @@ -65,7 +65,7 @@ ARM_FUNC void SND_StopTimer(u32 chnBitMask, u32 capBitMask, u32 alarmBitMask, u3      while (i < SND_ALARM_COUNT && tmpMask != 0) {          if (tmpMask & 1) -            SNDi_IncAlarmId(i); +            SNDi_IncAlarmId((u32)i);          i++;          tmpMask >>= 1;      } @@ -79,7 +79,7 @@ ARM_FUNC void SND_SetupCapture(s32 capture, s32 format, void *bufferPtr, u32 len  }  ARM_FUNC void SND_SetupAlarm(s32 alarm, u32 tick, u32 period, SNDAlarmCallback cb, void *userData) { -    PushCmd4(SND_CMD_SETUP_ALARM, alarm, tick, period, SNDi_SetAlarmHandler(alarm, cb, userData)); +    PushCmd4(SND_CMD_SETUP_ALARM, alarm, tick, period, SNDi_SetAlarmHandler((u32)alarm, cb, userData));  }  // ARM_FUNC void SND_SetTrackMute(s32 player, u32 trackBitMask, BOOL flag) { } diff --git a/arm9/lib/src/SND_main.c b/arm9/lib/src/SND_main.c index f533b87c..34b839b1 100644 --- a/arm9/lib/src/SND_main.c +++ b/arm9/lib/src/SND_main.c @@ -1,4 +1,6 @@  #include "SND_main.h" +#include "SND_command.h" +#include "SND_alarm.h"  #include "global.h"  #include "OS_mutex.h" @@ -7,6 +9,7 @@ static struct OSMutex sSndMutex;  static s32 sSndInitialized;  // TODO remove these declarations once we have the functions in the headers +void OS_InitMutex(struct OSMutex *);  void OS_UnlockMutex(struct OSMutex *);  void OS_LockMutex(struct OSMutex *); | 
