zsg2.cpp: Remove misleading comment [nw]
zsg2.cpp: saturate the emphasis filter output. Right shifting will
cause unwanted noise [nw]
zsg2.cpp: Discharge the output filter slowly when the cutoff is set
to 0. Fixes popping noises in raycris song 12 [nw]
Use a simplistic multiply to simulate contrast control. InterPro systems write to a "virtual contrast DAC" register/latch of some kind, which presumably adjusts the reference voltage produced by the Bt438 before it enters the RAMDAC; this approximation is very crude, however it's simple and produces a satisfactory visual result.
Should sound better at lower amplitudes now (less quantization noise).
I also added some short notes about the emphasis filter.
I still want to fix the popping noises in raycris song #12 so added a
note about that as well. (couldn't figure out the cause now)
* tms57002, konamigx: fix regression
tms57002: Change flag instructions back to type "2b" [nw]
konamigx: Hook up channels 3,4 of TMS57002. The Lethal Enforces II
schematics are not complete so I couldn't figure out exactly how they
are connected to the sound chips and the DAC, but this sounds OK for
now.
* konamigx: document TMS57002 outputs
* Add improved qsound_hle core
* qsound_hle: use ROM lookups instead of copying tables at init
qsound_hle: use enums for most DSP ROM addresses, move them to qsoundhle.h
* Replacing memset at the cost of legibility (nw)
* Code style improvements [MooglyGuy]
* taito_zm.cpp : Updates
Add DSP, Reduce MCFGs, Add device_mixer_interface for sound gain, Add imperfect_features related to DSP, Add notes
* taito_zm.cpp : Fix TMS57002 clock
* Improve Taito Zoom ZSG-2 sound emulation
zsg2.cpp: implement emphasis filter, this is a noise reduction scheme
that amplifies higher frequncies to reduce quantization noise.
zsg2.cpp: Add sample interpolation and another adjustable lowpass
filter. This seems to be roughly what real hardware does...
zsg2.cpp: Improve panning registers and identify DSP output gain
registers.
* zsg2: minor changes [nw]
zsg2: Register 0b appears to be status flags [nw]
zsg2: Linear ramping probably makes more sense [nw]
* zsg2: slight adjustment of emphasis filter [nw]
* zsg2: slight adjustment of emphasis filter #2 [nw]
* zsg2: more sober ramping algorithm [nw]
* tms57002: add instructions 3c/3d, make them behave as NOP as they're undocumented and not understood
* tms57002: Add dready callback for superctr (nw)
* tms57002: Fixes to make Taito Zoom DSP working
tms57002: Add undocumented instruction saom / raom, they set saturation
mode for the ALU.
tms57002: Implement MACC pipeline.
tms57002: Add callbacks for EMPTY and PC0 pins.
tms57002: Add a few unimplemented instructions.
tms57002: Proper behavior of CMEM UPLOAD mode.
tms57002: Fix an issue where program is not properly loaded if PLOAD is
set after a program has already been written.
* Documentation fix, properly identified registers as ramping control, will implement that soon [nw]
* taito_zm: Working DSP emulation
Pretty much OST quality now. A pretty decent upgrade from how it was
previously, I'd say.
* typo [nw]
* just adding some quick notes about the WIP [nw]
* Fix build [nw]
* zsg2: Proper ramping implemenation, add register map, minor cleanups
* oops [nw]
* taito_zm.cpp / zsg2.cpp - more improvements
zsg2.cpp: Attempt to reduce clicks
zsg2.cpp: Made the emphasis filter much more simple. I think this
matches hardware, as a filter like this could be implemented with
very few gates in hardware. Also reset the filter state when
the sample position reaches the start address, this fixes raycris
song #9
taito_zm.cpp: Adjust volume balance, hopefully fixing psyvarrv.
I would need hardware recording for proper verification though
tms57002: forgot MACC pipelining for some instructions