|
|
| version 1.4, 2003/10/20 06:36:33 | version 1.5, 2003/10/20 12:08:01 |
|---|---|
| Line 23 void beep_setvol(UINT vol) { | Line 23 void beep_setvol(UINT vol) { |
| beepcfg.vol = vol & 3; | beepcfg.vol = vol & 3; |
| } | } |
| void beep_changeclock(void) { | |
| UINT32 hz; | |
| UINT rate; | |
| hz = pc.realclock / 25; | |
| rate = beepcfg.rate / 25; | |
| beepcfg.samplebase = (1 << 16) * rate / hz; | |
| } | |
| void beep_reset(void) { | void beep_reset(void) { |
| if (beepcfg.rate) { | beep_changeclock(); |
| 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 81 static void beep_eventset(void) { | Line 84 static void beep_eventset(void) { |
| clock = I286_CLOCK + I286_BASECLOCK - I286_REMCLOCK; | 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) * beepcfg.samplebase; |
| evt->enable = enable; | evt->enable = enable; |
| beep.clock = clock; | beep.clock = clock; |
| // TRACEOUT(("%d %d", evt->clock, evt->enable)); | |
| } | } |
| } | } |
| } | } |