libsidplayfp  2.0.2
exSID.h
Go to the documentation of this file.
1 //
2 // exSID.h
3 // A simple I/O library for exSID USB - interface header file
4 //
5 // (C) 2015-2017 Thibaut VARENE
6 // License: GPLv2 - http://www.gnu.org/licenses/gpl-2.0.html
7 //
8 
14 #ifndef exSID_h
15 #define exSID_h
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 #include <stdint.h>
21 
22 #define XS_VERSION "2.0pre"
23 
25 enum {
29 };
30 
32 enum {
39 };
40 
42 enum {
46 };
47 
49 enum {
52 };
53 
54 // public interface
55 int exSID_init(void);
56 void exSID_exit(void);
57 
58 void exSID_reset(uint_least8_t volume);
59 int exSID_hwmodel(void);
60 uint16_t exSID_hwversion(void);
61 int exSID_clockselect(int clock);
62 int exSID_audio_op(int operation);
63 void exSID_chipselect(int chip);
64 void exSID_delay(uint_fast32_t cycles);
65 void exSID_clkdwrite(uint_fast32_t cycles, uint_least8_t addr, uint8_t data);
66 uint8_t exSID_clkdread(uint_fast32_t cycles, uint_least8_t addr);
67 const char * exSID_error_str(void);
68 
69 #define exSID_write(addr, data) exSID_clkdwrite(0, addr, data)
70 #define exSID_read(addr) exSID_clkdread(0, addr)
71 
72 #ifdef __cplusplus
73 }
74 #endif
75 #endif /* exSID_h */
exSID_clockselect
int exSID_clockselect(int clock)
Definition: exSID.c:457
exSID_hwmodel
int exSID_hwmodel(void)
Definition: exSID.c:552
XS_MD_STD
@ XS_MD_STD
exSID USB
Definition: exSID.h:50
XS_AU_6581_6581
@ XS_AU_6581_6581
mix: 6581 L and R
Definition: exSID.h:36
exSID_exit
void exSID_exit(void)
Definition: exSID.c:390
XS_CS_CHIP1
@ XS_CS_CHIP1
8580
Definition: exSID.h:27
XS_CL_NTSC
@ XS_CL_NTSC
select NTSC clock
Definition: exSID.h:44
XS_CS_CHIP0
@ XS_CS_CHIP0
6581
Definition: exSID.h:26
XS_AU_6581_8580
@ XS_AU_6581_8580
mix: 6581 L / 8580 R
Definition: exSID.h:33
XS_AU_8580_8580
@ XS_AU_8580_8580
mix: 8580 L and R
Definition: exSID.h:35
XS_CL_PAL
@ XS_CL_PAL
select PAL clock
Definition: exSID.h:43
exSID_error_str
const char * exSID_error_str(void)
Definition: exSID.c:140
XS_MD_PLUS
@ XS_MD_PLUS
exSID+ USB
Definition: exSID.h:51
XS_CL_1MHZ
@ XS_CL_1MHZ
select 1MHz clock
Definition: exSID.h:45
exSID_clkdwrite
void exSID_clkdwrite(uint_fast32_t cycles, uint_least8_t addr, uint8_t data)
Definition: exSID.c:720
exSID_init
int exSID_init(void)
Definition: exSID.c:294
exSID_chipselect
void exSID_chipselect(int chip)
Definition: exSID.c:533
exSID_audio_op
int exSID_audio_op(int operation)
Definition: exSID.c:494
XS_AU_MUTE
@ XS_AU_MUTE
mute output
Definition: exSID.h:37
exSID_clkdread
uint8_t exSID_clkdread(uint_fast32_t cycles, uint_least8_t addr)
Definition: exSID.c:816
exSID_reset
void exSID_reset(uint_least8_t volume)
Definition: exSID.c:435
exSID_delay
void exSID_delay(uint_fast32_t cycles)
Definition: exSID.c:673
XS_AU_UNMUTE
@ XS_AU_UNMUTE
unmute output
Definition: exSID.h:38
XS_AU_8580_6581
@ XS_AU_8580_6581
mix: 8580 L / 6581 R
Definition: exSID.h:34
exSID_hwversion
uint16_t exSID_hwversion(void)
Definition: exSID.c:582
XS_CS_BOTH
@ XS_CS_BOTH
Both chips.
Definition: exSID.h:28