ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

#include <dosbox.h>

Inheritance diagram for OPL::DOSBox::OPL:
Collaboration diagram for OPL::DOSBox::OPL:

List of all members.

Public Member Functions

 OPL (Config::OplType type)
 ~OPL ()
bool init ()
void reset ()
void write (int a, int v)
byte read (int a)
void writeReg (int r, int v)
bool isStereo () const
 Is this a stereo stream?

Protected Member Functions

void generateSamples (int16 *buffer, int length)
 Read up to 'length' samples.

Private Member Functions

void free ()
void dualWrite (uint8 index, uint8 reg, uint8 val)

Private Attributes

Config::OplType _type
uint _rate
Chip _chip [2]
union {
   uint16   normal
   uint8   dual [2]

Detailed Description

Definition at line 72 of file dosbox.h.

Constructor & Destructor Documentation

OPL::DOSBox::OPL::OPL ( Config::OplType  type  ) 

Definition at line 137 of file dosbox.cpp.

OPL::DOSBox::OPL::~OPL (  ) 

Definition at line 140 of file dosbox.cpp.

Member Function Documentation

void OPL::DOSBox::OPL::dualWrite ( uint8  index,
uint8  reg,
uint8  val 
) [private]

Definition at line 277 of file dosbox.cpp.

void OPL::DOSBox::OPL::free (  )  [private]

Definition at line 145 of file dosbox.cpp.

void OPL::DOSBox::OPL::generateSamples ( int16 buffer,
int  numSamples 
) [protected, virtual]

Read up to 'length' samples.

Data will be in native endianess, 16 bit per sample, signed. For stereo OPL, buffer will be filled with interleaved left and right channel samples, starting with a left sample. Furthermore, the samples in the left and right are summed up. So if you request 4 samples from a stereo OPL, you will get a total of two left channel and two right channel samples.

Implements OPL::EmulatedOPL.

Definition at line 301 of file dosbox.cpp.

bool OPL::DOSBox::OPL::init (  ) 

Definition at line 150 of file dosbox.cpp.

bool OPL::DOSBox::OPL::isStereo (  )  const [inline, virtual]

Is this a stereo stream?

Implements Audio::AudioStream.

Definition at line 98 of file dosbox.h.

byte OPL::DOSBox::OPL::read ( int  a  ) 

Definition at line 220 of file dosbox.cpp.

void OPL::DOSBox::OPL::reset (  ) 

Definition at line 172 of file dosbox.cpp.

void OPL::DOSBox::OPL::write ( int  a,
int  v 

Definition at line 176 of file dosbox.cpp.

void OPL::DOSBox::OPL::writeReg ( int  r,
int  v 

Definition at line 241 of file dosbox.cpp.

Member Data Documentation

Definition at line 78 of file dosbox.h.

Definition at line 77 of file dosbox.h.

Definition at line 75 of file dosbox.h.

union { ... } OPL::DOSBox::OPL::_reg [private]

Definition at line 74 of file dosbox.h.

Definition at line 81 of file dosbox.h.

Definition at line 80 of file dosbox.h.

The documentation for this class was generated from the following files:

Generated on Sat Jun 22 2019 05:04:15 for ResidualVM by doxygen 1.7.1
curved edge   curved edge