#ifndef _IO68_YM_IO_H_
#define _IO68_YM_IO_H_
#include "io68_api.h"
#include "emu68/struct68.h"
#include "ymemul.h"
IO68_EXTERN
int ymio_init(int * argc, char ** argv);
IO68_EXTERN
void ymio_shutdown(void);
IO68_EXTERN
io68_t * ymio_create(emu68_t * const emu68, ym_parms_t * const parms);
IO68_EXTERN
int ymio_sampling_rate(io68_t * const io, int sampling_rate);
IO68_EXTERN
ym_t * ymio_emulator(io68_t * const io);
IO68_EXTERN
int ymio_run(const io68_t * const io, s32 * output, const cycle68_t cycles);
IO68_EXTERN
uint68_t ymio_buffersize(const io68_t * const io, const cycle68_t cycles);
IO68_EXTERN
cycle68_t ymio_cycle_cpu2ym(const io68_t * const io, const cycle68_t cycles);
IO68_EXTERN
cycle68_t ymio_cycle_ym2cpu(const io68_t * const io, const cycle68_t cycles);
IO68_EXTERN
int ymio_active_channels(const io68_t * const io, const int clr, const int set);
#endif