|
|
| version 1.1.1.1, 2003/10/16 17:58:03 | version 1.3, 2003/10/19 16:54:51 |
|---|---|
| Line 1 | Line 1 |
| #include "compiler.h" | #include "compiler.h" |
| #include "i286.h" | |
| #include "pccore.h" | #include "pccore.h" |
| #include "iocore.h" | #include "iocore.h" |
| #include "sound.h" | #include "sound.h" |
| Line 24 void beep_setvol(UINT vol) { | Line 25 void beep_setvol(UINT vol) { |
| void beep_reset(void) { | void beep_reset(void) { |
| if (beepcfg.rate) { | |
| beepcfg.sampleclock = (pc.realclock / beepcfg.rate); | |
| // TRACEOUT(("%d %d", pc.realclock, beepcfg.rate)); | |
| } | |
| else { | |
| beepcfg.sampleclock = 0; | |
| } | |
| ZeroMemory(&beep, sizeof(beep)); | ZeroMemory(&beep, sizeof(beep)); |
| beep.mode = 1; | beep.mode = 1; |
| } | } |
| void beep_hzset(UINT16 cnt) { | void beep_hzset(UINT16 cnt) { |
| double hz; | double hz; |
| Line 63 static void beep_eventset(void) { | Line 72 static void beep_eventset(void) { |
| BPEVENT *evt; | BPEVENT *evt; |
| int enable; | int enable; |
| int clock; | SINT32 clock; |
| enable = beep.low & beep.buz; | enable = beep.low & beep.buz; |
| if (beep.enable != enable) { | if (beep.enable != enable) { |
| beep.enable = enable; | beep.enable = enable; |
| if (beep.events < BEEPEVENT_MAX) { | if (beep.events < BEEPEVENT_MAX) { |
| clock = nevent.clock + nevent.baseclock - nevent.remainclock; | clock = I286_CLOCK + I286_BASECLOCK - I286_REMCLOCK; |
| evt = beep.event + beep.events; | evt = beep.event + beep.events; |
| beep.events++; | beep.events++; |
| evt->clock = clock - beep.clock; | evt->clock = clock - beep.clock; |
| evt->enable = enable; | evt->enable = enable; |
| beep.clock = clock; | beep.clock = clock; |
| // TRACEOUT(("%d %d", evt->clock, evt->enable)); | |
| } | } |
| } | } |
| } | } |
| Line 102 void beep_lheventset(int low) { | Line 112 void beep_lheventset(int low) { |
| if (beep.low != low) { | if (beep.low != low) { |
| beep.low = low; | beep.low = low; |
| if (!beep.mode) { | if (!beep.mode) { |
| // if ((low) && (beep.events >= (BEEPEVENT_MAX / 2))) { | if (beep.events >= (BEEPEVENT_MAX / 2)) { |
| sound_sync(); | sound_sync(); |
| // } | } |
| beep_eventset(); | beep_eventset(); |
| } | } |
| } | } |