/*
* TODO:
* - start in a state as if BIOS ran
- * - remaining status flags (OVR/COL)
* - RAM support in mapper
* - region support
- * - SN76496 DAC-like usage
* - H counter
*/
#include "pico_int.h"
case 0x40:
case 0x41:
- if (PicoIn.opt & POPT_EN_PSG)
- SN76496Write(d);
+ if ((d & 0x90) == 0x90 && Pico.snd.psg_line < Pico.m.scanline)
+ PsndDoPSG(Pico.m.scanline);
+ SN76496Write(d);
break;
case 0x80:
}
}
+ // 224 because of how it's done for MD...
+ if (y == 224 && PicoIn.sndOut)
+ PsndGetSamplesMS();
+
cycles_aim += cycles_line;
cycles_done += z80_run((cycles_aim - cycles_done) >> 8) << 8;
}
- if (PsndOut)
- PsndGetSamplesMS();
+ if (PicoIn.sndOut && Pico.snd.psg_line < lines)
+ PsndDoPSG(lines - 1);
}
void PicoFrameDrawOnlyMS(void)
PicoLineMode4(y);
}
+// vim:ts=2:sw=2:expandtab