|
|
| version 1.18, 2005/02/07 14:46:12 | version 1.22, 2011/01/15 18:04:43 |
|---|---|
| Line 68 static void streamprepare(UINT samples) | Line 68 static void streamprepare(UINT samples) |
| #if defined(SUPPORT_WAVEREC) | #if defined(SUPPORT_WAVEREC) |
| // ---- wave rec | // ---- wave rec |
| BOOL sound_recstart(const char *filename) { | BOOL sound_recstart(const OEMCHAR *filename) { |
| WAVEWR rec; | WAVEWR rec; |
| Line 242 void sound_reset(void) { | Line 242 void sound_reset(void) { |
| void sound_changeclock(void) { | void sound_changeclock(void) { |
| UINT32 clock; | UINT32 clk; |
| UINT hz; | UINT hz; |
| UINT hzmax; | UINT hzmax; |
| Line 251 void sound_changeclock(void) { | Line 251 void sound_changeclock(void) { |
| } | } |
| // とりあえず 25で割り切れる。 | // とりあえず 25で割り切れる。 |
| clock = pccore.realclock / 25; | clk = pccore.realclock / 25; |
| hz = soundcfg.rate / 25; | hz = soundcfg.rate / 25; |
| // で、クロック数に合せて調整。(64bit演算しろよな的) | // で、クロック数に合せて調整。(64bit演算しろよな的) |
| hzmax = (1 << (32 - 8)) / (clock >> 8); | hzmax = (1 << (32 - 8)) / (clk >> 8); |
| while(hzmax < hz) { | while(hzmax < hz) { |
| clock = (clock + 1) >> 1; | clk = (clk + 1) >> 1; |
| hz = (hz + 1) >> 1; | hz = (hz + 1) >> 1; |
| } | } |
| TRACEOUT(("hzbase/clockbase = %d/%d", hz, clock)); | TRACEOUT(("hzbase/clockbase = %d/%d", hz, clk)); |
| soundcfg.hzbase = hz; | soundcfg.hzbase = hz; |
| soundcfg.clockbase = clock; | soundcfg.clockbase = clk; |
| soundcfg.minclock = 2 * clock / hz; | soundcfg.minclock = 2 * clk / hz; |
| soundcfg.lastclock = CPU_CLOCK; | soundcfg.lastclock = CPU_CLOCK; |
| } | } |
| Line 305 void sound_sync(void) { | Line 305 void sound_sync(void) { |
| } | } |
| else | else |
| #endif | #endif |
| streamprepare(length); | streamprepare(length); |
| soundcfg.lastclock += length * soundcfg.clockbase / soundcfg.hzbase; | soundcfg.lastclock += length * soundcfg.clockbase / soundcfg.hzbase; |
| beep_eventreset(); | beep_eventreset(); |
| SNDCSEC_LEAVE; | SNDCSEC_LEAVE; |
| Line 372 void sound_pcmunlock(const SINT32 *hdl) | Line 372 void sound_pcmunlock(const SINT32 *hdl) |
| // ---- pcmmix | // ---- pcmmix |
| BOOL pcmmix_regist(PMIXDAT *dat, void *datptr, UINT datsize, UINT rate) { | BRESULT pcmmix_regist(PMIXDAT *dat, void *datptr, UINT datsize, UINT rate) { |
| GETSND gs; | GETSND gs; |
| UINT8 tmp[256]; | UINT8 tmp[256]; |
| Line 421 pmr_err1: | Line 421 pmr_err1: |
| return(FAILURE); | return(FAILURE); |
| } | } |
| BOOL pcmmix_regfile(PMIXDAT *dat, const char *fname, UINT rate) { | BRESULT pcmmix_regfile(PMIXDAT *dat, const OEMCHAR *fname, UINT rate) { |
| FILEH fh; | FILEH fh; |
| UINT size; | UINT size; |
| UINT8 *ptr; | UINT8 *ptr; |
| BOOL r; | BRESULT r; |
| r = FAILURE; | r = FAILURE; |
| fh = file_open_rb(fname); | fh = file_open_rb(fname); |