aboutsummaryrefslogtreecommitdiff
path: root/platform/darwin.c
diff options
context:
space:
mode:
Diffstat (limited to 'platform/darwin.c')
-rw-r--r--platform/darwin.c19
1 files changed, 7 insertions, 12 deletions
diff --git a/platform/darwin.c b/platform/darwin.c
index 820c012..3189a5d 100644
--- a/platform/darwin.c
+++ b/platform/darwin.c
@@ -3,6 +3,7 @@
#include <dlfcn.h>
#include <IOKit/hid/IOHIDManager.h>
+#include "darwin-native.bridging.h"
#include "platform.h"
#include "../board/board.h"
@@ -11,24 +12,18 @@
extern void keyboard_on_down(void);
extern void keyboard_on_up(void);
-static float volume = 0;
static IOHIDManagerRef hid_manager = NULL;
-bool sound_init(float _volume)
+bool sound_init(float volume)
{
- volume = _volume;
-
- /* TODO: Init sound, NSCache probably too via bridge? */
-
- return true;
+ /* Call Obj-C function */
+ return macos_sound_init(volume);
}
void sound_play(unsigned char *buffer, unsigned int buffer_len)
{
- (void) buffer;
- (void) buffer_len;
-
- /* TODO: Play the sound via obj-c for now */
+ /* Call Obj-C function */
+ macos_sound_play(buffer, buffer_len);
}
/* TODO: Maybe merge some of this stuff with linux, lots of overlap */
@@ -97,7 +92,7 @@ void hid_callback(void *context, IOReturn result, void *sender, IOHIDValueRef va
/* seems like getting 'int value' is if it is key up or down
* true(1) = down */
bool key_down = IOHIDValueGetIntegerValue(value) == 1;
- printf(">>> value: %d, down: %d\n", scancode, key_down);
+ // printf(">>> value: %d, down: %d\n", scancode, key_down);
if (key_down)
keyboard_on_down();
else