- Former modules are now classes being derived from discrete_base_node
- Moved all context variables to be private class members.
- For "standard nodes", DISCRETE_CLASS_STEP_RESET provides a simple
way to implement a node.
- All information around a node (additional info struct, constants
and input mappings may be defined on a class level centralizing
all information. An example is dss_inverter_osc.
- Significantly simplified the task handling.
- Fixed a bug which would not buffer secondary outputs.
- All lists in sound/disc_* are now based on
dynamic_array_t (discrete.h)
- Changed all drivers to reflect the changes.
- Custom modules are now just another node class.
- No performance hit observed due to these changes.
---------
1943: Battle of Midway (bootleg, hack of Japan set) [Smitdogg, The Dumping Union]
Road Riot 4WD (set 1, 13 Nov 1991) (not working) [Smitdogg, The Dumping Union]
-Figured out which bit controls V25 RESET in each game by comparing the 68000 code
-Added a comment about fixeight's I/O map, which we'll have to determine once we start decrypting it
-Put #ifndef USE_ENCRYPTED_V25S around some simulation crap that was hiding in fixeight's DRIVER_INIT
* immediates can be passed raw, no IMM() wrapper required (and it's gone now)
* fixed integer registers now use constants I0,I1,I2,etc instead of IREG(0),...
* same for float registers F0,F1,F2,etc instead of FREG(0)
* dynamic integer/float regs use inline functions ireg(),freg()
* MEM macro is now a lower-case inline function mem()
One further change on the horizon is to remove the UML_* macros in favor of
inlines.
-found a lot more kbash opcodes by matching code with batsugun's [Alex Jackson]
-correct m68k and v25 address maps for kbash [Alex Jackson]
-corrected truxton2 program ROM [Alex Jackson]
out of whatsnew: was there any reason for not accepting "-bios USA" when we accept "mame PACMAN" ?
if there was, please simply revert this change (I won't be offended)
Yes, it is intentional that the x86/x64 backends compile everywhere.
Backends are now derived from drcbe_interface and implement several
required overrides.
x86emit.h now uses namespaces so that the x86/x64 emitters can co-exist.
New file uml.h/uml.c actually describes the UML language, separating
out several concepts from drcuml.c.
Lots of other changes/fixes.