Change log - May 28, 2017 - 14:10


* (nw) It might matter... or not.

* Add Zaccaria to mamenl build. (nw)

* Fixed typo in zac1b11142 schematics. 7414/7474 combo now actually works.

* Fix state saving for pfunction lfsr. (nw)

* New working software list additions


ibm5150.xml: 4D Boxing, 4D Sports Boxing, Wrath of the Demon [ArcadeShadow]

ibm5170.xml: Disney's Aladdin, Gobliiins, Gobliins 2: The Prince Buffoon, Goblins Quest 3 [ArcadeShadow]

* srcclean (nw)

* fix ti99_4p blowing up (evpc and hsgpl missing from peb card choices) (nw)

* Fixed issue when the hash length is zero (#2314)

* Fixed issue when the hash length is zero

The following is illegal, even if no elements in the pointer are accessed:

std::vector my_vec(0); // create an empty std::vector

my_struct *ptr = &my_vec[0];

While this is a degenerate scenario, this should be fixed

* liberate.cpp: All PSGs are AY-3-8912A

* ti99: Change ioport default to peb for ti99_4ev, also add evpc automatically

* New working software list additions


ibm5150.xml,ibm5170.xml: Many IBM PC-DOS sets [Justin Kerk]

(nw) move some pc-compatible sets from ibm5170 to ibm5150

* Fix issues identified by Vas and LordKale4:

- made local netlists in Cheeky Mouse static

- replace stdlib rand by 16 bit galois lfsr

* New NOT_WORKING machine added


Chrysler Electronic Voice Alert (11-function) [hap, Sean Riddle, David Viens]

* added EVA skeleton driver (nw)

* New working clone added


Novag Constellation Forte (version A) [Berger]

* (nw) nes: compat

* Add rand() function to pfunction expression parser. Use this to simulate

E-B noise in Cheeky Mouse and fix the "cheese" choose. [Couriersud]

* unianapc.cpp: forgot to add the io board ROM (nw)

* New not working machines


Dream Hunting (US) [ShouTime, The Dumping Union]

Hog Wild (US) [ShouTime, The Dumping Union]

* harddriv.cpp: worked around a strtdriv sound regression (nw)

* netlist: add a crude TTL schmitt trigger model and hook up in 1B11142 sound board, completing the tromba circuit

(nw) I'm not sure whether the model works properly or not, but in the

circuit where it's used, I don't think it can work properly with the

current TTL output model. A capacitor is charged by the Q output of a

74LS74 flipflop (U3A) until the voltage passes the Schmitt trigger's

threshold, causing it to reset the flipflop. However, the positive

trigger voltage of the Schmitt trigger is 1.6V, but our TTL output model

has a high output voltage of 1.0V (see nl_base.cpp:89). I realise the

simplified model of TTL logic with high impedance inputs and outputs

behaving as though thery're loaded is convenient and fast to simulate,

but it's not detailed enough for applications like this where

7400-series chips are used in analog circuitry. This is what held me up

last time I tried adding a netlist for this sound board.

* some more device_add_mconfig. Done for the \mame tree. Will wait for freeze time before continuning in the \devices tree. (nw)

* Remove mame/includes/ec184x.h: it wasn't included anywhere. Its content is duplicated in devices/machine/genpc.h, which is included in drivers/ec184x.h. (nw)

* new working clone


Mandinga (bootleg of Amidar) [Josele Fernandez]

* accomm: Bus factor reduction. Keyboard now reads, but matrix doesn't match Electron. (nw)

* fix arcade builds (nw)

* bump up accuracy on 1B11142 netlist - runs slower but sounds a lot better (nw)

* peplus.cpp: Minor doc update (nw)

* Merge branch 'master' of

* fix non-debug build

* New Machine Added

New Machine Added


Player's Edge Plus (PS0629) Double Hot Peppers Slots [BrianT]

* Explain the pest and hammer circuits. Increase solver accuracy to reduce number of false solutions. The usual 1e-8 is not enough here, we need 1e-10. (nw)

* Add cheeky mouse to mamenl64 build. (nw)

* Fix DEBUG build. (nw)

* Various code alignments across solvers. (nw)

* Cleanup of solver code. (nw)

* Reordered members to be more cache friendly. (nw)

* Netlist refactoring:

- OPENMP refactored. All OPENMP operations are now templatized in pomp.h

- We don't need thread-safe priority queue. Event code updating analog outputs now runs outside the parallel code.

* Changed Solver.PARALLEL parameter logic:

0: Parallel processing of solvers disabled

1: One processor parallel processing. Can be used to measure OPENMP overhead >1: Solve n analog subnets in parallel.

Previously, all available processors were used which caused performance to degrade on hyperthreading. [Couriersud]

* Update cpu.lua properly (nw)

* Quick and dirty split of most MC6801/MC6803/HD63701 features from base M6800 class (nw)

The code remains generally archaic and awful and in need of a sweeping rewrite. At least one static variable is no more.

* Preliminary netlist sound for the Zaccaria 1B11142 board

* Tromba (trumpet) sound is not working - requires Schmitt trigger device

* Connecting cassa (bass drum) swamps other instruments so it's disconnected for now

* Mixing melody sound with speech/SFX is not done in netlist (should be)

* Relative levels of melody/speech/SFX are probably still wrong

(nw) A good test case for this is the Money Money driver (monymony).

There's a bit of buzzing on this one as well. The problem with the

cassa could be caused by running into non-ideal characteristics of opams

again (the LM3900 seems to ignore the V+ value supplied to it). When

the netlist library gets Schmitt trigger support, the tromba can be

completed. Unfortunately, the tromba is a key part of the

characteristic sound of these boards, so you really notice when it's lacking.

* updated mame/machine devices to device_add_mconfig (nw)

* lastfght.cpp, subsino.cpp, subsino2.cpp: used ramdac_device instead of custom implementations (nw)

* dunhuang.cpp: added missing oki hook up, now the game has speech. Used ramdac_device instead of custom implementation. Reduced tagmap lookups (nw)

* frogger: fixed long standing regression (nw)

* New working clone added


Speak & Spell (Spanish, prototype) [hap, Sean Riddle, David Viens]