Commit Graph

14 Commits

Author SHA1 Message Date
transistor
5e228c377e Fixed tests after ClockTime and Frequency changes
And also removed HostData
2023-05-07 20:42:55 -07:00
transistor
527f65c69b Refactored audio to use ClockedQueue
It now actually checks the clock and tries to mix the audio in sync
relative to the clock, but the cpal output doesn't yet try to sync
to the StreamInstant time.  Sound seems a lot better on chrome in
wasm, but and kind of better on firefox despite frame skipping not
being supported yet, but it's way slower for some reason (12fps)
2023-05-07 10:03:25 -07:00
transistor
112bd8219b Replaced controller/key/mouse updaters with event queues 2023-05-06 10:04:44 -07:00
transistor
07a675fab5 Added new clock types similar to Duration 2023-04-23 15:46:47 -07:00
transistor
e6614f3e15 Refactored to allow dummy audio for console frontend 2023-03-14 20:05:29 -07:00
transistor
7bdd63bc76 Fixed all clippy warnings 2023-03-05 20:19:49 -08:00
transistor
0b27ac04e7 Minor fixes to audio 2022-10-11 10:28:59 -07:00
transistor
925a4e0750 Added log crate 2022-10-09 09:40:20 -07:00
transistor
258fd684e7 Cleanup 2022-10-08 21:32:59 -07:00
transistor
0876d85626 Fixed giltching from audio frame assembly from queue
It wasn't copying the frame data from the sources to the output frame
correctly, and there was a small period of zeros at the start of the
frame.

I also converted to using a vec of tuples for the two channels to
make it easier to reason about, since some of the issues were related
to the differences sizes calculated from the clock based on the sample
rate
2022-10-08 16:17:17 -07:00
transistor
e4cd3dcd63 Sort of working audio using queues 2022-10-08 13:26:17 -07:00
transistor
a9d51fb919 Added DAC to ym2612 and changed mixing method 2022-10-02 10:29:34 -07:00
transistor
82644db3fc Added dummy audio device to disable audio while still simulating the devices 2022-09-29 19:55:12 -07:00
transistor
083f3607ba Major reorganization into crates
I wanted to make this a bit more modular, so it's easier in theory to
write external crates that can reuse bits, and selectively compile in
bits, such as adding new systems or new cpu implementations
2022-09-24 23:14:03 -07:00