Prepare to support YM2610B and with Extended channel 3 mode
Allow 8 bit volume for YM2610 ADPCM-B Remove sample mode macro in YM2610, it's always enabled and seperated channels. TODO: ADPCM-B is still not implemented, FM Channel 2 is silenced in extended channel 3 configuration
This commit is contained in:
parent
1e98f0c4a1
commit
1e2d5694b9
18 changed files with 1592 additions and 22 deletions
|
|
@ -17,9 +17,14 @@
|
|||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*/
|
||||
|
||||
#include "sound/ymfm/ymfm_opn.h"
|
||||
|
||||
static unsigned short chanOffs[4]={
|
||||
0x01, 0x02, 0x101, 0x102
|
||||
};
|
||||
static unsigned short chanOffs_b[6]={
|
||||
0x00, 0x01, 0x02, 0x100, 0x101, 0x102
|
||||
};
|
||||
static unsigned short opOffs[4]={
|
||||
0x00, 0x04, 0x08, 0x0c
|
||||
};
|
||||
|
|
@ -45,4 +50,13 @@ static int orderedOps[4]={
|
|||
#define rWrite(a,v) if (!skipRegisterWrites) {pendingWrites[a]=v;}
|
||||
#define immWrite(a,v) if (!skipRegisterWrites) {writes.emplace(a,v); if (dumpWrites) {addWrite(a,v);} }
|
||||
|
||||
#define CHIP_FREQBASE 9440540
|
||||
#define CHIP_FREQBASE 9440540
|
||||
|
||||
class DivYM2610BInterface: public ymfm::ymfm_interface {
|
||||
public:
|
||||
DivEngine* parent;
|
||||
int sampleBank;
|
||||
uint8_t ymfm_external_read(ymfm::access_class type, uint32_t address);
|
||||
void ymfm_external_write(ymfm::access_class type, uint32_t address, uint8_t data);
|
||||
DivYM2610BInterface(): parent(NULL), sampleBank(0) {}
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue