fix .dmp saving for OPM and NES
to-do: which system is PCE, NES and OPM?
This commit is contained in:
parent
395a346cb4
commit
05a8b65ec6
|
@ -3678,15 +3678,18 @@ bool DivInstrument::saveDMP(const char* path) {
|
||||||
// guess the system
|
// guess the system
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case DIV_INS_FM:
|
case DIV_INS_FM:
|
||||||
// we can't tell between Genesis, Neo Geo and Arcade ins type yet
|
// we can't tell Genesis and Neo Geo apart
|
||||||
w->writeC(0x02);
|
w->writeC(0x02);
|
||||||
w->writeC(1);
|
w->writeC(1);
|
||||||
break;
|
break;
|
||||||
case DIV_INS_STD:
|
case DIV_INS_STD:
|
||||||
// we can't tell between SMS and NES ins type yet
|
|
||||||
w->writeC(0x03);
|
w->writeC(0x03);
|
||||||
w->writeC(0);
|
w->writeC(0);
|
||||||
break;
|
break;
|
||||||
|
case DIV_INS_NES:
|
||||||
|
w->writeC(0x06);
|
||||||
|
w->writeC(0);
|
||||||
|
break;
|
||||||
case DIV_INS_GB:
|
case DIV_INS_GB:
|
||||||
w->writeC(0x04);
|
w->writeC(0x04);
|
||||||
w->writeC(0);
|
w->writeC(0);
|
||||||
|
@ -3696,7 +3699,7 @@ bool DivInstrument::saveDMP(const char* path) {
|
||||||
w->writeC(0);
|
w->writeC(0);
|
||||||
break;
|
break;
|
||||||
case DIV_INS_PCE:
|
case DIV_INS_PCE:
|
||||||
w->writeC(0x06);
|
w->writeC(0x05);
|
||||||
w->writeC(0);
|
w->writeC(0);
|
||||||
break;
|
break;
|
||||||
case DIV_INS_OPLL:
|
case DIV_INS_OPLL:
|
||||||
|
@ -3704,6 +3707,10 @@ bool DivInstrument::saveDMP(const char* path) {
|
||||||
w->writeC(0x13);
|
w->writeC(0x13);
|
||||||
w->writeC(1);
|
w->writeC(1);
|
||||||
break;
|
break;
|
||||||
|
case DIV_INS_OPM:
|
||||||
|
w->writeC(0x08);
|
||||||
|
w->writeC(1);
|
||||||
|
break;
|
||||||
case DIV_INS_OPZ:
|
case DIV_INS_OPZ:
|
||||||
// data will be lost
|
// data will be lost
|
||||||
w->writeC(0x08);
|
w->writeC(0x08);
|
||||||
|
@ -3720,7 +3727,7 @@ bool DivInstrument::saveDMP(const char* path) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (type==DIV_INS_FM || type==DIV_INS_OPLL || type==DIV_INS_OPZ) {
|
if (type==DIV_INS_FM || type==DIV_INS_OPM || type==DIV_INS_OPLL || type==DIV_INS_OPZ) {
|
||||||
w->writeC(fm.fms);
|
w->writeC(fm.fms);
|
||||||
w->writeC(fm.fb);
|
w->writeC(fm.fb);
|
||||||
w->writeC(fm.alg);
|
w->writeC(fm.alg);
|
||||||
|
|
Loading…
Reference in a new issue