mirror of
https://github.com/tildearrow/furnace.git
synced 2024-11-27 15:03:01 +00:00
change setPAL to setFlags
This commit is contained in:
parent
8c353548f5
commit
bfed0b3209
35 changed files with 85 additions and 83 deletions
|
@ -237,10 +237,10 @@ class DivDispatch {
|
|||
virtual const char* getEffectName(unsigned char effect);
|
||||
|
||||
/**
|
||||
* set the region to PAL.
|
||||
* @param pal whether to set it to PAL.
|
||||
* set the chip flags.
|
||||
* @param flags the flags. see song.h for possible values.
|
||||
*/
|
||||
virtual void setPAL(bool pal);
|
||||
virtual void setFlags(unsigned int flags);
|
||||
|
||||
/**
|
||||
* set skip reg writes.
|
||||
|
@ -282,9 +282,10 @@ class DivDispatch {
|
|||
* @param parent the parent DivEngine.
|
||||
* @param channels the number of channels to acquire.
|
||||
* @param sugRate the suggested rate. this may change, so don't rely on it.
|
||||
* @param flags the chip flags. see song.h for possible values.
|
||||
* @return the number of channels allocated.
|
||||
*/
|
||||
virtual int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
virtual int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
|
||||
/**
|
||||
* quit the DivDispatch.
|
||||
|
|
|
@ -4750,7 +4750,8 @@ void DivEngine::setSongRate(int hz, bool pal) {
|
|||
song.hz=hz;
|
||||
song.customTempo=(song.hz!=50 && song.hz!=60);
|
||||
for (int i=0; i<song.systemLen; i++) {
|
||||
disCont[i].dispatch->setPAL((!song.pal) || (song.customTempo!=0 && song.hz<53));
|
||||
// TODO
|
||||
disCont[i].dispatch->setFlags((!song.pal) || (song.customTempo!=0 && song.hz<53));
|
||||
disCont[i].setRates(got.rate);
|
||||
}
|
||||
divider=60;
|
||||
|
|
|
@ -47,7 +47,7 @@ const char* DivDispatch::getEffectName(unsigned char effect) {
|
|||
return NULL;
|
||||
}
|
||||
|
||||
void DivDispatch::setPAL(bool pal) {
|
||||
void DivDispatch::setFlags(unsigned int flags) {
|
||||
}
|
||||
|
||||
void DivDispatch::setSkipRegisterWrites(bool value) {
|
||||
|
@ -78,7 +78,7 @@ std::vector<DivRegWrite>& DivDispatch::getRegisterWrites() {
|
|||
return regWrites;
|
||||
}
|
||||
|
||||
int DivDispatch::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivDispatch::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -241,8 +241,8 @@ void DivPlatformAmiga::notifyInsDeletion(void* ins) {
|
|||
}
|
||||
}
|
||||
|
||||
void DivPlatformAmiga::setPAL(bool pal) {
|
||||
if (pal) {
|
||||
void DivPlatformAmiga::setFlags(unsigned int flags) {
|
||||
if (flags) {
|
||||
chipClock=COLOR_PAL*4.0/5.0;
|
||||
} else {
|
||||
chipClock=COLOR_NTSC;
|
||||
|
@ -250,14 +250,14 @@ void DivPlatformAmiga::setPAL(bool pal) {
|
|||
rate=chipClock/AMIGA_DIVIDER;
|
||||
}
|
||||
|
||||
int DivPlatformAmiga::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformAmiga::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
for (int i=0; i<4; i++) {
|
||||
isMuted[i]=false;
|
||||
}
|
||||
setPAL(pal);
|
||||
setFlags(flags);
|
||||
reset();
|
||||
return 6;
|
||||
}
|
||||
|
|
|
@ -57,11 +57,11 @@ class DivPlatformAmiga: public DivDispatch {
|
|||
void muteChannel(int ch, bool mute);
|
||||
bool isStereo();
|
||||
bool keyOffAffectsArp(int ch);
|
||||
void setPAL(bool pal);
|
||||
void setFlags(unsigned int flags);
|
||||
void notifyInsChange(int ins);
|
||||
void notifyWaveChange(int wave);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
};
|
||||
|
||||
|
|
|
@ -762,7 +762,7 @@ void DivPlatformArcade::setYMFM(bool use) {
|
|||
useYMFM=use;
|
||||
}
|
||||
|
||||
int DivPlatformArcade::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformArcade::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
|
|
|
@ -78,7 +78,7 @@ class DivPlatformArcade: public DivDispatch {
|
|||
void notifyInsChange(int ins);
|
||||
bool isStereo();
|
||||
void setYMFM(bool use);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
~DivPlatformArcade();
|
||||
};
|
||||
|
|
|
@ -355,8 +355,8 @@ void DivPlatformAY8910::notifyInsDeletion(void* ins) {
|
|||
}
|
||||
}
|
||||
|
||||
void DivPlatformAY8910::setPAL(bool pal) {
|
||||
if (pal) {
|
||||
void DivPlatformAY8910::setFlags(unsigned int flags) {
|
||||
if (flags) {
|
||||
chipClock=COLOR_PAL*2.0/5.0;
|
||||
} else {
|
||||
chipClock=COLOR_NTSC/2.0;
|
||||
|
@ -364,14 +364,14 @@ void DivPlatformAY8910::setPAL(bool pal) {
|
|||
rate=chipClock/8;
|
||||
}
|
||||
|
||||
int DivPlatformAY8910::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformAY8910::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
for (int i=0; i<3; i++) {
|
||||
isMuted[i]=false;
|
||||
}
|
||||
setPAL(pal);
|
||||
setFlags(flags);
|
||||
ay=new ay8910_device(rate);
|
||||
ay->set_psg_type(ay8910_device::PSG_TYPE_AY);
|
||||
ay->device_start();
|
||||
|
|
|
@ -60,11 +60,11 @@ class DivPlatformAY8910: public DivDispatch {
|
|||
void forceIns();
|
||||
void tick();
|
||||
void muteChannel(int ch, bool mute);
|
||||
void setPAL(bool pal);
|
||||
void setFlags(unsigned int flags);
|
||||
bool isStereo();
|
||||
bool keyOffAffectsArp(int ch);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
};
|
||||
#endif
|
||||
|
|
|
@ -390,8 +390,8 @@ void DivPlatformAY8930::notifyInsDeletion(void* ins) {
|
|||
}
|
||||
}
|
||||
|
||||
void DivPlatformAY8930::setPAL(bool pal) {
|
||||
if (pal) {
|
||||
void DivPlatformAY8930::setFlags(unsigned int flags) {
|
||||
if (flags) {
|
||||
chipClock=COLOR_PAL*2.0/5.0;
|
||||
} else {
|
||||
chipClock=COLOR_NTSC/2.0;
|
||||
|
@ -399,14 +399,14 @@ void DivPlatformAY8930::setPAL(bool pal) {
|
|||
rate=chipClock/8;
|
||||
}
|
||||
|
||||
int DivPlatformAY8930::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformAY8930::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
for (int i=0; i<3; i++) {
|
||||
isMuted[i]=false;
|
||||
}
|
||||
setPAL(pal);
|
||||
setFlags(flags);
|
||||
ay=new ay8930_device(rate);
|
||||
ay->device_start();
|
||||
ayBufLen=65536;
|
||||
|
|
|
@ -54,11 +54,11 @@ class DivPlatformAY8930: public DivDispatch {
|
|||
void forceIns();
|
||||
void tick();
|
||||
void muteChannel(int ch, bool mute);
|
||||
void setPAL(bool pal);
|
||||
void setFlags(unsigned int flags);
|
||||
bool isStereo();
|
||||
bool keyOffAffectsArp(int ch);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
};
|
||||
#endif
|
||||
|
|
|
@ -355,8 +355,8 @@ void DivPlatformC64::setChipModel(bool is6581) {
|
|||
}
|
||||
}
|
||||
|
||||
void DivPlatformC64::setPAL(bool pal) {
|
||||
if (pal) {
|
||||
void DivPlatformC64::setFlags(unsigned int flags) {
|
||||
if (flags) {
|
||||
rate=COLOR_PAL*2.0/9.0;
|
||||
} else {
|
||||
rate=COLOR_NTSC*2.0/7.0;
|
||||
|
@ -364,14 +364,14 @@ void DivPlatformC64::setPAL(bool pal) {
|
|||
chipClock=rate;
|
||||
}
|
||||
|
||||
int DivPlatformC64::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformC64::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
for (int i=0; i<3; i++) {
|
||||
isMuted[i]=false;
|
||||
}
|
||||
setPAL(pal);
|
||||
setFlags(flags);
|
||||
|
||||
reset();
|
||||
|
||||
|
|
|
@ -63,10 +63,10 @@ class DivPlatformC64: public DivDispatch {
|
|||
void forceIns();
|
||||
void tick();
|
||||
void muteChannel(int ch, bool mute);
|
||||
void setPAL(bool pal);
|
||||
void setFlags(unsigned int flags);
|
||||
void notifyInsChange(int ins);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void setChipModel(bool is6581);
|
||||
void quit();
|
||||
~DivPlatformC64();
|
||||
|
|
|
@ -79,7 +79,7 @@ void DivPlatformDummy::reset() {
|
|||
}
|
||||
}
|
||||
|
||||
int DivPlatformDummy::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformDummy::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
|
|
|
@ -23,7 +23,7 @@ class DivPlatformDummy: public DivDispatch {
|
|||
void* getChanState(int chan);
|
||||
void reset();
|
||||
void tick();
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
~DivPlatformDummy();
|
||||
};
|
||||
|
|
|
@ -349,7 +349,7 @@ void DivPlatformGB::notifyInsDeletion(void* ins) {
|
|||
}
|
||||
}
|
||||
|
||||
int DivPlatformGB::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformGB::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
for (int i=0; i<4; i++) {
|
||||
isMuted[i]=false;
|
||||
}
|
||||
|
|
|
@ -51,7 +51,7 @@ class DivPlatformGB: public DivDispatch {
|
|||
void notifyInsChange(int ins);
|
||||
void notifyWaveChange(int wave);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
~DivPlatformGB();
|
||||
};
|
||||
|
|
|
@ -638,26 +638,26 @@ void DivPlatformGenesis::notifyInsDeletion(void* ins) {
|
|||
psg.notifyInsDeletion(ins);
|
||||
}
|
||||
|
||||
void DivPlatformGenesis::setPAL(bool pal) {
|
||||
if (pal) {
|
||||
void DivPlatformGenesis::setFlags(unsigned int flags) {
|
||||
if (flags) {
|
||||
chipClock=COLOR_PAL*12.0/7.0;
|
||||
} else {
|
||||
chipClock=COLOR_NTSC*15.0/7.0;
|
||||
}
|
||||
psg.setPAL(pal);
|
||||
psg.setFlags(flags);
|
||||
rate=chipClock/36;
|
||||
}
|
||||
|
||||
int DivPlatformGenesis::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformGenesis::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
for (int i=0; i<10; i++) {
|
||||
isMuted[i]=false;
|
||||
}
|
||||
setPAL(pal);
|
||||
setFlags(flags);
|
||||
// PSG
|
||||
psg.init(p,4,sugRate,pal);
|
||||
psg.init(p,4,sugRate,flags);
|
||||
|
||||
reset();
|
||||
return 10;
|
||||
|
|
|
@ -82,10 +82,10 @@ class DivPlatformGenesis: public DivDispatch {
|
|||
bool keyOffAffectsArp(int ch);
|
||||
bool keyOffAffectsPorta(int ch);
|
||||
void toggleRegisterDump(bool enable);
|
||||
void setPAL(bool pal);
|
||||
void setFlags(unsigned int flags);
|
||||
void notifyInsChange(int ins);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
~DivPlatformGenesis();
|
||||
};
|
||||
|
|
|
@ -334,8 +334,8 @@ void DivPlatformGenesisExt::notifyInsChange(int ins) {
|
|||
}
|
||||
}
|
||||
|
||||
int DivPlatformGenesisExt::init(DivEngine* parent, int channels, int sugRate, bool pal) {
|
||||
DivPlatformGenesis::init(parent,channels,sugRate,pal);
|
||||
int DivPlatformGenesisExt::init(DivEngine* parent, int channels, int sugRate, unsigned int flags) {
|
||||
DivPlatformGenesis::init(parent,channels,sugRate,flags);
|
||||
for (int i=0; i<4; i++) {
|
||||
isOpMuted[i]=false;
|
||||
}
|
||||
|
|
|
@ -27,7 +27,7 @@ class DivPlatformGenesisExt: public DivPlatformGenesis {
|
|||
bool keyOffAffectsArp(int ch);
|
||||
bool keyOffAffectsPorta(int ch);
|
||||
void notifyInsChange(int ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
~DivPlatformGenesisExt();
|
||||
};
|
||||
|
|
|
@ -374,8 +374,8 @@ bool DivPlatformNES::keyOffAffectsArp(int ch) {
|
|||
return true;
|
||||
}
|
||||
|
||||
void DivPlatformNES::setPAL(bool pal) {
|
||||
if (pal) {
|
||||
void DivPlatformNES::setFlags(unsigned int flags) {
|
||||
if (flags) {
|
||||
rate=COLOR_PAL*3.0/8.0;
|
||||
apuType=1;
|
||||
nes->apu.type=apuType;
|
||||
|
@ -393,16 +393,16 @@ void DivPlatformNES::notifyInsDeletion(void* ins) {
|
|||
}
|
||||
}
|
||||
|
||||
int DivPlatformNES::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformNES::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
apuType=pal;
|
||||
apuType=flags;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
for (int i=0; i<5; i++) {
|
||||
isMuted[i]=false;
|
||||
}
|
||||
nes=new struct NESAPU;
|
||||
setPAL(pal);
|
||||
setFlags(flags);
|
||||
|
||||
init_nla_table(500,500);
|
||||
reset();
|
||||
|
|
|
@ -52,9 +52,9 @@ class DivPlatformNES: public DivDispatch {
|
|||
void tick();
|
||||
void muteChannel(int ch, bool mute);
|
||||
bool keyOffAffectsArp(int ch);
|
||||
void setPAL(bool pal);
|
||||
void setFlags(unsigned int flags);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
~DivPlatformNES();
|
||||
};
|
||||
|
|
|
@ -396,8 +396,8 @@ void DivPlatformPCE::notifyInsDeletion(void* ins) {
|
|||
}
|
||||
}
|
||||
|
||||
void DivPlatformPCE::setPAL(bool pal) {
|
||||
if (pal) { // technically there is no PAL PC Engine but oh well...
|
||||
void DivPlatformPCE::setFlags(unsigned int flags) {
|
||||
if (flags) { // technically there is no PAL PC Engine but oh well...
|
||||
chipClock=COLOR_PAL*4.0/5.0;
|
||||
} else {
|
||||
chipClock=COLOR_NTSC;
|
||||
|
@ -405,14 +405,14 @@ void DivPlatformPCE::setPAL(bool pal) {
|
|||
rate=chipClock/12;
|
||||
}
|
||||
|
||||
int DivPlatformPCE::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformPCE::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
for (int i=0; i<6; i++) {
|
||||
isMuted[i]=false;
|
||||
}
|
||||
setPAL(pal);
|
||||
setFlags(flags);
|
||||
pce=new PCE_PSG(tempL,tempR,PCE_PSG::REVISION_HUC6280);
|
||||
reset();
|
||||
return 6;
|
||||
|
|
|
@ -67,10 +67,10 @@ class DivPlatformPCE: public DivDispatch {
|
|||
void muteChannel(int ch, bool mute);
|
||||
bool isStereo();
|
||||
bool keyOffAffectsArp(int ch);
|
||||
void setPAL(bool pal);
|
||||
void setFlags(unsigned int flags);
|
||||
void notifyWaveChange(int wave);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
~DivPlatformPCE();
|
||||
};
|
||||
|
|
|
@ -307,19 +307,19 @@ void DivPlatformSAA1099::notifyInsDeletion(void* ins) {
|
|||
}
|
||||
}
|
||||
|
||||
void DivPlatformSAA1099::setPAL(bool pal) {
|
||||
void DivPlatformSAA1099::setFlags(unsigned int flags) {
|
||||
chipClock=8000000;
|
||||
rate=chipClock/32;
|
||||
}
|
||||
|
||||
int DivPlatformSAA1099::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformSAA1099::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
for (int i=0; i<6; i++) {
|
||||
isMuted[i]=false;
|
||||
}
|
||||
setPAL(pal);
|
||||
setFlags(flags);
|
||||
saaBufLen=65536;
|
||||
for (int i=0; i<2; i++) saaBuf[i]=new short[saaBufLen];
|
||||
reset();
|
||||
|
|
|
@ -57,12 +57,12 @@ class DivPlatformSAA1099: public DivDispatch {
|
|||
void forceIns();
|
||||
void tick();
|
||||
void muteChannel(int ch, bool mute);
|
||||
void setPAL(bool pal);
|
||||
void setFlags(unsigned int flags);
|
||||
bool isStereo();
|
||||
int getPortaFloor(int ch);
|
||||
bool keyOffAffectsArp(int ch);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
};
|
||||
#endif
|
||||
|
|
|
@ -221,8 +221,8 @@ void DivPlatformSMS::notifyInsDeletion(void* ins) {
|
|||
}
|
||||
}
|
||||
|
||||
void DivPlatformSMS::setPAL(bool pal) {
|
||||
if (pal) {
|
||||
void DivPlatformSMS::setFlags(unsigned int flags) {
|
||||
if (flags) {
|
||||
chipClock=COLOR_PAL*4.0/5.0;
|
||||
} else {
|
||||
chipClock=COLOR_NTSC;
|
||||
|
@ -230,14 +230,14 @@ void DivPlatformSMS::setPAL(bool pal) {
|
|||
rate=chipClock/16;
|
||||
}
|
||||
|
||||
int DivPlatformSMS::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformSMS::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
for (int i=0; i<4; i++) {
|
||||
isMuted[i]=false;
|
||||
}
|
||||
setPAL(pal);
|
||||
setFlags(flags);
|
||||
sn=new sn76496_device(rate);
|
||||
reset();
|
||||
return 4;
|
||||
|
|
|
@ -44,9 +44,9 @@ class DivPlatformSMS: public DivDispatch {
|
|||
bool keyOffAffectsArp(int ch);
|
||||
bool keyOffAffectsPorta(int ch);
|
||||
int getPortaFloor(int ch);
|
||||
void setPAL(bool pal);
|
||||
void setFlags(unsigned int flags);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
~DivPlatformSMS();
|
||||
};
|
||||
|
|
|
@ -254,15 +254,15 @@ void DivPlatformTIA::notifyInsDeletion(void* ins) {
|
|||
}
|
||||
}
|
||||
|
||||
void DivPlatformTIA::setPAL(bool pal) {
|
||||
if (pal) {
|
||||
void DivPlatformTIA::setFlags(unsigned int flags) {
|
||||
if (flags) {
|
||||
rate=31250;
|
||||
} else {
|
||||
rate=31400;
|
||||
}
|
||||
}
|
||||
|
||||
int DivPlatformTIA::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformTIA::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
|
@ -270,7 +270,7 @@ int DivPlatformTIA::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
|||
isMuted[i]=false;
|
||||
}
|
||||
tia.channels(1,false);
|
||||
setPAL(pal);
|
||||
setFlags(flags);
|
||||
reset();
|
||||
return 2;
|
||||
}
|
||||
|
|
|
@ -31,11 +31,11 @@ class DivPlatformTIA: public DivDispatch {
|
|||
void forceIns();
|
||||
void tick();
|
||||
void muteChannel(int ch, bool mute);
|
||||
void setPAL(bool pal);
|
||||
void setFlags(unsigned int flags);
|
||||
bool isStereo();
|
||||
bool keyOffAffectsArp(int ch);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
};
|
||||
#endif
|
||||
|
|
|
@ -789,7 +789,7 @@ void DivPlatformYM2610::notifyInsDeletion(void* ins) {
|
|||
}
|
||||
}
|
||||
|
||||
int DivPlatformYM2610::init(DivEngine* p, int channels, int sugRate, bool pal) {
|
||||
int DivPlatformYM2610::init(DivEngine* p, int channels, int sugRate, unsigned int flags) {
|
||||
parent=p;
|
||||
dumpWrites=false;
|
||||
skipRegisterWrites=false;
|
||||
|
|
|
@ -77,7 +77,7 @@ class DivPlatformYM2610: public DivDispatch {
|
|||
bool keyOffAffectsArp(int ch);
|
||||
void notifyInsChange(int ins);
|
||||
void notifyInsDeletion(void* ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
~DivPlatformYM2610();
|
||||
};
|
||||
|
|
|
@ -301,8 +301,8 @@ void DivPlatformYM2610Ext::notifyInsChange(int ins) {
|
|||
}
|
||||
}
|
||||
|
||||
int DivPlatformYM2610Ext::init(DivEngine* parent, int channels, int sugRate, bool pal) {
|
||||
DivPlatformYM2610::init(parent,channels,sugRate,pal);
|
||||
int DivPlatformYM2610Ext::init(DivEngine* parent, int channels, int sugRate, unsigned int flags) {
|
||||
DivPlatformYM2610::init(parent,channels,sugRate,flags);
|
||||
for (int i=0; i<4; i++) {
|
||||
isOpMuted[i]=false;
|
||||
}
|
||||
|
|
|
@ -26,7 +26,7 @@ class DivPlatformYM2610Ext: public DivPlatformYM2610 {
|
|||
void muteChannel(int ch, bool mute);
|
||||
bool keyOffAffectsArp(int ch);
|
||||
void notifyInsChange(int ins);
|
||||
int init(DivEngine* parent, int channels, int sugRate, bool pal);
|
||||
int init(DivEngine* parent, int channels, int sugRate, unsigned int flags);
|
||||
void quit();
|
||||
~DivPlatformYM2610Ext();
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue