summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/Makefile3
-rw-r--r--src/audio.c44
-rw-r--r--src/audio.h50
3 files changed, 97 insertions, 0 deletions
diff --git a/src/Makefile b/src/Makefile
index d9be987..808c6a9 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -43,6 +43,7 @@ SOURCE = main.c \
tape.c \
symtochar.c \
font.c \
+ audio.c \
expr.c \
z80.c \
z80_decode.c \
@@ -61,6 +62,7 @@ OBJECTS = main.o \
tape.o \
symtochar.o \
font.o \
+ audio.o \
expr.o \
z80.o \
z80_decode.o \
@@ -97,3 +99,4 @@ symtochar.o: symtochar.h
font.o: font.h
z80.o: z80.h z80_private.h
z80_decode.o: z80.h z80_private.h
+audio.o: audio.c audio.h
diff --git a/src/audio.c b/src/audio.c
new file mode 100644
index 0000000..b5ce1df
--- /dev/null
+++ b/src/audio.c
@@ -0,0 +1,44 @@
+/*
+
+ espec - Sinclair Spectrum emulator
+
+ Copyright (C) 2026 Ian Cowburn (ianc@noddybox.demon.co.uk)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ -------------------------------------------------------------------------
+
+ Audio handling
+
+*/
+
+#include <SDL.h>
+
+#include "audio.h"
+
+/* ---------------------------------------- INTERFACES
+*/
+
+int AUDIOInit(void)
+{
+ return 0;
+}
+
+void AUDIOQueue(char *buffer, size_t len)
+{
+}
+
+
+/* END OF FILE */
diff --git a/src/audio.h b/src/audio.h
new file mode 100644
index 0000000..fb972ea
--- /dev/null
+++ b/src/audio.h
@@ -0,0 +1,50 @@
+/*
+
+ espec - Sinclair Spectrum emulator
+
+ Copyright (C) 2026 Ian Cowburn (ianc@noddybox.demon.co.uk)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ -------------------------------------------------------------------------
+
+ Audio handling
+
+*/
+
+#ifndef ESPEC_TAPE_H
+#define ESPEC_TAPE_H
+
+#include <stdlib.h>
+
+/* ---------------------------------------- INTERFACES
+*/
+
+/* Initialise the audio interface. Returns FALSE on failure to open
+ audio. All other interfaces will silently do nothing if the device
+ can't be opened.
+*/
+int AUDIOInit(void);
+
+/* Add the passed buffer to the sound queue. It is a signed 8-bit mono
+ sample which will be converted as appropriate by the audio interface.
+*/
+void AUDIOQueue(char *buffer, size_t len);
+
+
+#endif
+
+
+/* END OF FILE */