summaryrefslogtreecommitdiff
path: root/apps/plugins/rockboy/rbsound.c
diff options
context:
space:
mode:
authorMichiel Van Der Kolk <not.valid@email.address>2005-03-20 23:06:47 +0000
committerMichiel Van Der Kolk <not.valid@email.address>2005-03-20 23:06:47 +0000
commitb045f00d217c11c1ecf6635fdbf18d5f20a109f4 (patch)
treeebe936c7c2ad629e799fb1821d3aab70c18d81e8 /apps/plugins/rockboy/rbsound.c
parent457e138fffa060e6199c53ec929cd97dfb42464c (diff)
downloadrockbox-b045f00d217c11c1ecf6635fdbf18d5f20a109f4.zip
rockbox-b045f00d217c11c1ecf6635fdbf18d5f20a109f4.tar.gz
rockbox-b045f00d217c11c1ecf6635fdbf18d5f20a109f4.tar.bz2
rockbox-b045f00d217c11c1ecf6635fdbf18d5f20a109f4.tar.xz
Alpha sound driver for rockboy, should work in theory, but in practice,
it doesn't. disabled by default with a define. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6218 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/rockboy/rbsound.c')
-rw-r--r--apps/plugins/rockboy/rbsound.c51
1 files changed, 51 insertions, 0 deletions
diff --git a/apps/plugins/rockboy/rbsound.c b/apps/plugins/rockboy/rbsound.c
new file mode 100644
index 0000000..6d1b24f
--- /dev/null
+++ b/apps/plugins/rockboy/rbsound.c
@@ -0,0 +1,51 @@
+
+
+
+#include "rockmacros.h"
+#include "defs.h"
+#include "pcm.h"
+#include "rc.h"
+
+
+struct pcm pcm;
+
+static byte buf[4096];
+
+
+rcvar_t pcm_exports[] =
+{
+ RCV_END
+};
+
+
+void pcm_init(void)
+{
+ pcm.hz = 44100;
+ pcm.stereo = 1;
+ pcm.buf = buf;
+ pcm.len = sizeof buf;
+ pcm.pos = 0;
+}
+
+void pcm_close(void)
+{
+ memset(&pcm, 0, sizeof pcm);
+}
+
+int pcm_submit(void)
+{
+#ifdef RBSOUND
+ rb->pcm_play_data(pcm.buf,pcm.pos,NULL);
+ while(rb->pcm_is_playing()); /* spinlock */
+ pcm.pos = 0;
+ return 1;
+#else
+ pcm.pos = 0;
+ return 0;
+#endif
+}
+
+
+
+
+