LMMS
Loading...
Searching...
No Matches
opl.h
Go to the documentation of this file.
1/*
2 * Adplug - Replayer for many OPL2/OPL3 audio file formats.
3 * Copyright (C) 1999 - 2007 Simon Peter, <dn.tlp@gmx.net>, et al.
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18 *
19 * opl.h - OPL base class, by Simon Peter <dn.tlp@gmx.net>
20 */
21
22#ifndef H_ADPLUG_OPL
23#define H_ADPLUG_OPL
24
25class Copl
26{
27 public:
31
34 {
35 }
36
37 virtual ~Copl()
38 {
39 }
40
41 virtual void write(int reg, int val) = 0; // combined register select + data write
42 virtual void setchip(int n) // select OPL chip
43 {
44 if(n < 2)
45 currChip = n;
46 }
47
48 virtual int getchip() // returns current OPL chip
49 {
50 return currChip;
51 }
52
53 virtual void init(void) = 0; // reinitialize OPL chip(s)
54
55 // return this OPL chip's type
57 {
58 return currType;
59 }
60
61 // Emulation only: fill buffer
62 virtual void update(short *buf, int samples) {}
63
64 protected:
65 int currChip; // currently selected OPL chip number
66 ChipType currType; // this OPL chip's type
67};
68
69#endif
virtual ~Copl()
Definition opl.h:37
virtual int getchip()
Definition opl.h:48
ChipType
Definition opl.h:28
@ TYPE_OPL3
Definition opl.h:29
@ TYPE_DUAL_OPL2
Definition opl.h:29
@ TYPE_OPL2
Definition opl.h:29
virtual void init(void)=0
ChipType gettype()
Definition opl.h:56
virtual void setchip(int n)
Definition opl.h:42
int currChip
Definition opl.h:65
Copl()
Definition opl.h:32
virtual void update(short *buf, int samples)
Definition opl.h:62
virtual void write(int reg, int val)=0
ChipType currType
Definition opl.h:66
int val
Definition jpeglib.h:956
int n
Definition crypt.c:458