|
|
| version 1.1, 2003/10/16 17:58:01 | version 1.3, 2003/10/21 11:22:05 |
|---|---|
| Line 1 | Line 1 |
| #include "compiler.h" | #include "compiler.h" |
| #include "dosio.h" | |
| #include "i286.h" | #include "i286.h" |
| #include "pccore.h" | #include "pccore.h" |
| #include "iocore.h" | #include "iocore.h" |
| #include "pcm86io.h" | |
| #include "sound.h" | #include "sound.h" |
| #include "fmboard.h" | #include "fmboard.h" |
| #include "pcm86io.h" | |
| extern PCM86CFG pcm86cfg; | extern PCM86CFG pcm86cfg; |
| Line 49 static void IOOUTCALL pcm86_oa468(UINT p | Line 48 static void IOOUTCALL pcm86_oa468(UINT p |
| pcm86.virbuf = 0; | pcm86.virbuf = 0; |
| pcm86.write = 0; | pcm86.write = 0; |
| pcm86.reqirq = 0; | pcm86.reqirq = 0; |
| pcm86.lastclock = nevent.clock + nevent.baseclock - | pcm86.lastclock = I286_CLOCK + I286_BASECLOCK - I286_REMCLOCK; |
| nevent.remainclock; | |
| pcm86.lastclock <<= 6; | pcm86.lastclock <<= 6; |
| } | } |
| // サンプリングレート変更 | // サンプリングレート変更 |
| Line 60 static void IOOUTCALL pcm86_oa468(UINT p | Line 58 static void IOOUTCALL pcm86_oa468(UINT p |
| } | } |
| pcm86.fifo = val & (~0x10); | pcm86.fifo = val & (~0x10); |
| if ((xchgbit & 0x80) && (val & 0x80)) { | if ((xchgbit & 0x80) && (val & 0x80)) { |
| pcm86.lastclock = nevent.clock + nevent.baseclock - | pcm86.lastclock = I286_CLOCK + I286_BASECLOCK - I286_REMCLOCK; |
| nevent.remainclock; | |
| pcm86.lastclock <<= 6; | pcm86.lastclock <<= 6; |
| } | } |
| pcm86.write = 1; | pcm86.write = 1; |
| Line 128 static BYTE IOINPCALL pcm86_ia466(UINT p | Line 125 static BYTE IOINPCALL pcm86_ia466(UINT p |
| BYTE ret; | BYTE ret; |
| sound_sync(); | sound_sync(); |
| nowclk = nevent.clock + nevent.baseclock - nevent.remainclock; | nowclk = I286_CLOCK + I286_BASECLOCK - I286_REMCLOCK; |
| nowclk <<= 6; | nowclk <<= 6; |
| past = nowclk - pcm86.lastclock; | past = nowclk - pcm86.lastclock; |
| if (past >= pcm86.stepclock) { | if (past >= pcm86.stepclock) { |