Commit graph

436 commits

Author SHA1 Message Date
Adrian Siekierka b59fc1e8f5 swan: Implement headphone/internal speaker output toggle 2025-03-22 01:38:08 -05:00
Adrian Siekierka 03b87258c8 swan: Rewritten audio driver
Now outputs 24000 Hz digital samples, matching real hardware (as
opposed to 3072000 Hz samples). It has also been rewritten from
scratch to match recent research and make the code significantly
more readable.
2025-03-22 01:38:08 -05:00
tildearrow d853c59b3d SCV unification 2025-03-10 04:05:12 -05:00
tildearrow 804e8b7fb8 NDS: fix chan osc 2025-03-09 16:19:13 -05:00
tildearrow 1c05bb8b05 T6W28: fix chan osc! 2025-03-09 03:31:03 -05:00
tildearrow 87d1cf24a1 T6W28: chan osc which does not work right 2025-03-09 01:23:10 -05:00
tildearrow 6537125976 T6W28: acquireDirect() 2025-03-09 00:03:11 -05:00
tildearrow 001cda561a T6W28: fix
but no sound
2025-03-08 22:57:29 -05:00
tildearrow 1e8b93c92a T6W28: completely break the system 2025-03-08 19:38:16 -05:00
tildearrow eea95b1f90 2%
LD.ZRsku p jrsyju rsp jyrsp jyrsp nyeapby eal
 PT P#
2025-03-08 19:32:11 -05:00
tildearrow 0d78e9bb10 NDS: squeeze out a bit more 2025-03-08 18:48:06 -05:00
tildearrow c9695caf35 NDS: acquireDirect()
it took a while

master volume may not work
2025-03-08 18:42:19 -05:00
tildearrow ce59a015e9 fix build failure 2025-03-08 04:59:01 -05:00
tildearrow d8f66523b6 NDS: prepare for optimization 2025-03-08 04:37:42 -05:00
tildearrow 9981ab7e43 SN: acquireDirect() 2025-03-08 03:23:49 -05:00
tildearrow 42920b9101 AY: this sucks, part 3
improve heuristics... noise is very slow
2025-03-08 02:22:45 -05:00
tildearrow 9681f25e54 AY: this sucks, part 1 2025-03-07 20:19:24 -05:00
tildearrow cb67527103 AY: prepare for optimization 2025-03-07 19:37:18 -05:00
tildearrow 0d7ef2e8eb WonderSwan: acquireDirect() 2025-03-07 18:37:25 -05:00
tildearrow 6050b2c31b Virtual Boy: acquireDirect() 2025-03-07 17:05:12 -05:00
tildearrow 8ee01d15f7 TIA: acquireDirect()
# TIA Benchmark

twin.fur

acquire(): 11.324s
acquireDirect(): 1.267s

Balmeranda.fur

acquire(): 11.923s
acquireDirect(): 1.093s

# MMC5 (Goofy Asses per second)

unoptimized: 9.22/s
optimized: 108.96/s
2025-03-07 03:58:13 -05:00
tildearrow 47f176b0f0 MMC5: acquireDirect(), part 2
PCM now works
2025-03-07 03:12:18 -05:00
tildearrow 1070fb5d10 MMC5: acquireDirect(), part 1
no samples
also fixed chan osc
2025-03-07 03:07:52 -05:00
tildearrow 86fb92595a NES: fix a little accuracy problem 2025-03-07 02:31:38 -05:00
tildearrow 007ef91e84 NES: puNES acquireDirect(), part 3
reduce CPU usage a bit
2025-03-07 02:10:08 -05:00
tildearrow 08e7112d85 NES: fix unused variable 2025-03-07 02:02:55 -05:00
tildearrow 29849972dd NES: puNES acquireDirect(), part 2
per-chan osc
2025-03-07 02:02:04 -05:00
tildearrow 5df3e1f030 NES: make it C++
so we can submit to chan osc buffer
2025-03-07 01:57:52 -05:00
tildearrow 1d60bb03cc NES: reduce CPU usage when no channels active 2025-03-07 01:48:10 -05:00
tildearrow dde97171ab NES: puNES acquireDirect(), part 1
no per-chan osc
2025-03-07 01:29:40 -05:00
tildearrow ad8437e5ae this is why I don't use tabs
in one editor it's 8 spaces, in another it's 2...
spaces on the other hand are the same regardless of editor
2025-03-06 23:23:46 -05:00
tildearrow f43715775c no to-do 2025-03-06 20:23:10 -05:00
tildearrow 645e97ef93 NES: puNES macro expansion
preparations for acquireDirect()
2025-03-06 20:21:26 -05:00
tildearrow 4c166b9b5a move blip_buf to extern
so it can be used by other cores
2025-03-06 12:07:28 -05:00
tildearrow 43891b8d79 PCE: optimize 5ms 2025-03-05 19:07:10 -05:00
tildearrow ac8df480ab PCE: half working channel osc
it doesn't look right
2025-03-04 12:37:31 -05:00
tildearrow 11c99f9f96 PCE: push it even further!
now a bit faster
2025-03-04 12:21:56 -05:00
tildearrow f0a3e3f590 PCE: Mednafen is wonderful
the PSG emulator already comes with heuristics... I stripped them off
for Furnace but now that we have acquireDirect() we can give it our
blip_buf and handle everything there

from 40-70% to 10% CPU usage on my phone, and highest quality!

TODO:
- PCM
- chan osc (should be very easy)
2025-03-03 20:29:34 -05:00
tildearrow 8f54445625 GA20: acquireDirect optimizations, part 1
buggy, slow and glitchy
output is good but chan osc is now broken

from 1.5 to 0.4 seconds
2025-03-02 20:29:28 -05:00
tildearrow 49a8693dcb new chan osc, part 7
i am done
2025-03-02 16:14:49 -05:00
tildearrow 6265d2cd39 new chan osc, part 6
more adaptations

how can I get you out of my head... I want to go back to work!
2025-03-02 04:11:10 -05:00
LTVA1 c58a7cba20 Update sid3.c 2025-02-22 14:45:09 -05:00
tildearrow cf89a4ff44 GA20: yet another optimization 2025-02-20 04:44:19 -05:00
tildearrow 0e0aab88de GA20: another optimization 2025-02-18 05:53:54 -05:00
tildearrow e22d46e619 C64: implement 6581 bias on dSID
for PCM
2025-01-31 14:59:38 -05:00
tildearrow 1ceffc659c I will do this later 2025-01-30 16:24:33 -05:00
tildearrow b17b0e3f40 fix build... 2025-01-30 15:27:55 -05:00
tildearrow 6e63669501 add a bunch more TODOs 2025-01-29 04:38:12 -05:00
tildearrow 8776e1c442 µPD1771C: implement tone/noise mode 2025-01-29 04:10:54 -05:00
tildearrow 97402e6d41 replace AArt µPD1771C core with MAME 2025-01-29 01:58:31 -05:00