mirror of
https://github.com/RaySollium99/picodrive.git
synced 2025-09-05 15:27:46 -04:00
audio, improve YM2413 handling
This commit is contained in:
parent
47548249a0
commit
81d54be15d
1 changed files with 29 additions and 29 deletions
58
pico/sms.c
58
pico/sms.c
|
@ -108,21 +108,21 @@ static unsigned char z80_sms_in(unsigned short a)
|
||||||
|
|
||||||
elprintf(EL_IO, "z80 port %04x read", a);
|
elprintf(EL_IO, "z80 port %04x read", a);
|
||||||
if((a&0xff)>= 0xf0){
|
if((a&0xff)>= 0xf0){
|
||||||
switch((a&0xff))
|
if (PicoIn.opt & POPT_EN_YM2413){
|
||||||
{
|
switch((a&0xff))
|
||||||
case 0xf0:
|
{
|
||||||
// FM reg port
|
case 0xf0:
|
||||||
break;
|
// FM reg port
|
||||||
case 0xf1:
|
break;
|
||||||
// FM data port
|
case 0xf1:
|
||||||
break;
|
// FM data port
|
||||||
case 0xf2:
|
break;
|
||||||
// bit 0 = 1 active FM Pac
|
case 0xf2:
|
||||||
if (PicoIn.opt & POPT_EN_YM2413){
|
// bit 0 = 1 active FM Pac
|
||||||
d = ymflag;
|
d = ymflag;
|
||||||
//printf("read FM Check = %02x\n", d);
|
//printf("read FM Check = %02x\n", d);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
@ -171,25 +171,25 @@ static void z80_sms_out(unsigned short a, unsigned char d)
|
||||||
elprintf(EL_IO, "z80 port %04x write %02x", a, d);
|
elprintf(EL_IO, "z80 port %04x write %02x", a, d);
|
||||||
|
|
||||||
if((a&0xff)>= 0xf0){
|
if((a&0xff)>= 0xf0){
|
||||||
switch((a&0xff))
|
if (PicoIn.opt & POPT_EN_YM2413){
|
||||||
{
|
switch((a&0xff))
|
||||||
case 0xf0:
|
{
|
||||||
// FM reg port
|
case 0xf0:
|
||||||
YM2413_regWrite(d);
|
// FM reg port
|
||||||
//printf("write FM register = %02x\n", d);
|
YM2413_regWrite(d);
|
||||||
break;
|
//printf("write FM register = %02x\n", d);
|
||||||
case 0xf1:
|
break;
|
||||||
// FM data port
|
case 0xf1:
|
||||||
YM2413_dataWrite(d);
|
// FM data port
|
||||||
//printf("write FM data = %02x\n", d);
|
YM2413_dataWrite(d);
|
||||||
break;
|
//printf("write FM data = %02x\n", d);
|
||||||
case 0xf2:
|
break;
|
||||||
// bit 0 = 1 active FM Pac
|
case 0xf2:
|
||||||
if (PicoIn.opt & POPT_EN_YM2413){
|
// bit 0 = 1 active FM Pac
|
||||||
ymflag = d;
|
ymflag = d;
|
||||||
//printf("write FM Check = %02x\n", d);
|
//printf("write FM Check = %02x\n", d);
|
||||||
}
|
break;
|
||||||
break;
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue