| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
able to do this within a netlist.
|
|\ |
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
| |
- cleaned some parts of nl_brdrline.cpp (removed test points)
- changed MB4391 function to pow2 to shorten sounds a bit
- changed trigger inputs in vicdual.cpp to fit more to the sounds i remember.
- moved trigger mapping from vicdual to nl_brdrline
|
| |
|
|
|
|
| |
comment types
|
|
|
|
|
|
| |
* netlist: Explicitly trim connection names.
* Hook up Borderline netlist, provided by 'beta-tester'
* brdrline: Add static solver, using dynamic timestep, update driver flags.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Under cirtum circumstances the splitter would create "ghost" solvers
consisting of terminals already used in another and complete
solver. This may impact all netlist which use opamps and thus
is committed early in the cycle.
* This commit adds functionality to instruct the splitter code to
include terminals which will not create matrix elements into
the parsing of net groups for solvers.
|
|
|
|
|
|
|
|
|
|
|
| |
* Devices like BJTs and FETs which are defined but not used will now
cause an error.
* An unused device will create an additional solver with a singular
matrix.
- This is adding unnecessary performance overhead.
- It complicates debugging because the unused device will cause an
arithmetic signal if used with --fperr (nltool).
* Fixed all validation errors.
|
|
|
|
|
| |
* Fix a connection error.
* Fixed order of PARAM overwrite.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
stream_sample_t removed. (#7297)
* a2mcms/coco_ssc/gus/cassette/floppy/8364_paula/laserdsc/s2636/spg2xx_audio/arcadia/channelf/cmi01a/cps3/dai_snd: Update to new stream callbacks
* dsbz80/elan_eu3a05/exidy/exidy440/flower/geebee/gomoku/gridlee: Update to new stream callbacks
* hyprolyb/lynx/micro3d/phoenix/pleiads/polepos: Update to new sound stream callback
* redbaron/segag80r/segausb/seibu/snk6502/socrates/special/svis_snd: Update to new stream callbacks.
* tiamc1/turrett/tvc/tx1/vboy/vc4000: Update to new stream callbacks
* warpwarp/wiping/wswan/xavix/esq1/istrebiteli/milton6805/pv1000/mega32x/gic: Update to new stream callback
* sound: Remove legacy stream support and stream_sample_t
* * gomoku/wiping: Remove silly mixer tables in favor of math
* micro3d: Remove tiny vectors in favor of fixed arrays
* phoenix: Went back to std::unique_ptr array for LFSR
* wiping: Fixed the scale factor.
|
|
|
| |
* Also fix two singular matrices being created.
|
| |
|
|
|
|
| |
match samples/recording for Q*bert.
|
|
|
|
|
|
|
| |
* create base mm5837_source device to provide raw output
* mm5837_device is based on it
* mm5837_stream_device generates a sound stream from it
* frequency calculation now computed instead of table-based
|
|
|
|
|
|
| |
* uses all 4 Sonar oscillators
* uses randomized resistor values (5% range)
* uses frontiers to separate oscillators
* improves performance to 340% locally.
|
|
|
|
| |
* Remove code duplication.
|
|
|
|
| |
This reverts commit dc0ede3c90717ed25de0695c555b861f06344f18.
|
|
|
|
|
|
|
|
|
|
| |
* read/write_stream_views now have an internal index
* get/put/add/fill/copy now implicitly use and advance this index
* new method reset() can (re)set the internal index
* new method done() checks if index is past the end
* new method remaining() indicates how many samples remain
* get_indexed/put_indexed/etc available for random access
* updated all consumers to new interfaces
|
|
|
|
|
|
|
|
| |
* Updated to new stream callback
* All calculations are now doing in floating point
* External input is now done via an input stream
* First attempt at implementing a proper filter -- needs some major
work; checking in current state to get some assistance
|
| |
|
| |
|
|
|
|
| |
versions [R. Belmont]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Significant internal changes to sound streams:
Abstracted buffers of sound data into an internal stream_buffer class, with helper classes read_stream_view and write_stream_view which offer readable/writable "views" into the buffers
Internal sound calculations are all done using stream_buffer::sample_t, which is a 32-bit float; existing callbacks are supported through an adapter that converts to/from signed 32-bit integers
Improved behavior of dynamic stream sample rate changes to resample a short runway of data to preserve continuity across transitions
Created a new stream update callback which passes a std::vector of read_stream_views for inputs, and a std::vector of write_stream_views for outputs
Updated core mixer and speaker devices to the new stream update callback
Updated the following sound cores to the new stream update callback: ay8910, dac, k054539, msm5205, namco, netlist, okim6295, pokey, samples, sn76496, sp0250, tms5220, tms57002, upd7759, vgm_visualizer, volt_reg
Changed existing stream update callback to make inputs explicitly const and the output pointers const as well, since they are re-used across calls; fixed several engines that violated this rule
Sound_manager::stream_alloc can no longer automatically connect to a device's sound_stream_update callback; instead, the stream_alloc() on the sound_device_interface should be called; updated many violators of this rule
Streams can be created with SAMPLE_RATE_OUTPUT_ADAPTIVE, which dynamically tracks the sample rate of its first downstream output, or with SAMPLE_RATE_INPUT_ADAPTIVE, which tracks the sample rate of its first input
Changed resampling to be a separate sound_stream that is invoked as needed, opening the path for selectable resampling implementations
Added a flags parameter to the new stream allocation method that allows you to specify a that input streams should not be resampled
Exposed stream_input and stream_output classes directly, simplifying access to user gains and stream names
Added a simple dynamic compressor to sound_manager to provide nicer results when overdriven sound happens; compression does not affect speaker_report results
Improved verbose speaker_report to print a graph of peaks over time
More aggressive debugging enabled for now even in release builds (should be disabled prior to next release) via SOUND_DEBUG define in sound.h; report any assertions for fixing
|
| |
|
| |
|
|
|
|
| |
header includes to be in alphabetical order [Lord Nightmare]
|
| |
|
|
|
|
| |
spelling issues, etc. while I'm at it)
|
| |
|
|
|
|
|
|
| |
* Correct Taito ES5505 Bankswitching behavior
* Sample bank per ES5505 voice is actually taito_en.cpp specific
* Move external bank behavior into taito_en.cpp, Add getter for voice index
* Add precalculated ES5505 bank table for reduce performance issue, Add getter for CPU
|
| |
|
|
|
|
| |
source list in debugger memory windows
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sound and other improvements to Sega G-80 games: [Aaron Giles, couriersud]
* Added netlist-based sound to Eliminator, Zektor, Space Fury, and Astro Blaster.
* Split the Sega Universal Sound Board and Speech Boards into their own separate files.
* Improved Universal Sound Board implementation for better accuracy in Star Trek and Tac/Scan.
* Wrote netlist-based backend for Universal Sound Board; currently disabled due to limitations in the system.
* Wrote netlist-based backend for Speech Board; currently disabled pending future sound system changes.
* Implemented wait states and the vector DRAW flag to help improve timing.
SP0250 Improvements: [Aaron Giles]
* Matched clock divider to real chip measurements.
* Fixed behavior when not fed enough data; addresses "gapping" in speech in Sega games.
* Implemented accurate LFR noise generator according to real chip measurements.
* Added pulse-width modulation DAC output mode for future consumption by netlist.
Netlist additions: [Aaron Giles]
* Added compile-time option to record nltool-compatible CSV files.
* Improved CD4020 implementation.
* Fixed CD4053 behavior.
* Added 74139 device.
* Added TL082 device.
8253 PIT changes: [Aaron Giles]
* Added explicit synchronization to all writes.
* Cleaned up some timing calculations to avoid double<->attotime conversions.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sspeedr: new netlist audio implementation
Netlist-based audio implementation for sspeedr (Super Speed Race, 1979)
derived from Midway audio schematics, and based on that used for
280zzzap (280-ZZZAP) and lagunar (Laguna Racer) in the mw8080bw driver.
The Super Speed Race audio circuits are clearly derived from those games;
the biggest difference is the use of a linear feedback shift register
for noise generation.
* Updated netlist static solvers with recent netlist changes.
|
|
|
|
| |
solvers from generating.
|
|
|
|
| |
speed, unsure why.
|
|
|
|
| |
blank lines between paragraphs in seicross.cpp comment
|
|
|
|
| |
address MT07724
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added Laguna Racer to the 280-ZZZAP netlist audio driver, with
conditional changes to the netlist for the circuitry differences
between the two games.
Adjust some netlist components that apparently changed from the
280-ZZZAP schematic to production machines.
Removed the driver's private MC3340 netlist, using the equivalent
one in the netlist library instead.
|
| |
|
| |
|
|
|
|
| |
Alert sound effect to Fire One netlist and added Star Fire netlist. [Ryan Holtz, Colin Howell, Aaron Giles]
|