Updated for Dreamcast KOS June 2005 snapshot:

http://cadcdev.sourceforge.net/svn/snapshots/
http://gamedev.allusion.net/softprj/kos/dcsetup.php

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%401465
This commit is contained in:
Sam Lantinga 2006-03-02 13:16:02 +00:00
parent 073a8d79d8
commit b8ecf02fdf
11 changed files with 59 additions and 62 deletions

View file

@ -24,13 +24,6 @@
/* Output dreamcast aica */
#include <unistd.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include "SDL_timer.h"
#include "SDL_audio.h"
#include "../SDL_audiomem.h"

View file

@ -6,6 +6,9 @@
*/
#include "aica.h"
#include <arch/irq.h>
#include <dc/spu.h>
/* #define dc_snd_base ((volatile unsigned char *)0x00800000) */ /* arm side */
#define dc_snd_base ((volatile unsigned char *)0xa0700000) /* dc side */
@ -37,7 +40,7 @@
void aica_init() {
int i, j, old;
int i, j, old = 0;
/* Initialize AICA channels */
G2_LOCK(old);
@ -146,9 +149,10 @@ static inline unsigned AICA_FREQ(unsigned freq) {
This routine (and the similar ones) owe a lot to Marcus' sound example --
I hadn't gotten quite this far into dissecting the individual regs yet. */
void aica_play(int ch,int mode,unsigned long smpptr,int loopst,int loopend,int freq,int vol,int pan,int loopflag) {
int i;
/* int i;
*/
int val;
int old;
int old = 0;
/* Stop the channel (if it's already playing) */
aica_stop(ch);