#pragma once

#include "systembus.hpp"
#include "systembus_bits.hpp"

static inline void wait()
{
  uint32_t ffst = system.FFST;
  while ( ffst::holly_cpu_if_block_internal_write_buffer(ffst)
	| ffst::holly_g2_if_block_internal_write_buffer(ffst)
	| ffst::aica_internal_write_buffer(ffst)) {
    ffst = system.FFST;
  };
}

namespace sound {

  void init();

  void transfer(const void * sample_data, int sample_data_ix);

}
