Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

didact.cpp: New working machine modulab, a MC6802 based educational system #4571

merged 4 commits into from Jan 31, 2019


None yet
3 participants
Copy link

commented Jan 30, 2019

Nicer hardware compared to the other didact designs, it uses the C923 keyboard controller and also a INS8154 instead of the the MC6820 PIAs. I put some effort into the layout file and even managed to draw some diagonal lines using repeat, doesn't seem to affect performance and mostly for fun.


This comment has been minimized.

Copy link

commented Jan 30, 2019

Why such a complex solution for cascaded shift registers?
You can put this in the class: uint64_t m_shiftreg;

then this in the display handler:
m_shiftreg = m_shiftreg << 1 | (data & 1);
for (int i = 0; i < 6; i++)
m_7segs[i] = ~(m_shiftreg[i] >> (8*i)) & 0x7f;


This comment has been minimized.

Copy link

commented Jan 30, 2019

Also (it was there before this commit), why don't you have reset and shift keys behind a PORT_CHANGED handler? I don't believe the real hardware has such a thing as scan_artwork to poll the keys.


This comment has been minimized.

Copy link
Contributor Author

commented Jan 30, 2019

Good feedback, I tried to keep the feeling of 6 IC:s instead of a 48 bit shiftregister just in case a sane '164 device pops up.

I will checkout PORT_CHANGED however, I haven't used it before but it sounds like it does what I want.

@ajrhacker ajrhacker merged commit 3e84bff into mamedev:master Jan 31, 2019

1 of 3 checks passed

continuous-integration/tea oops, something went wrong
continuous-integration/appveyor/pr AppVeyor build failed
continuous-integration/travis-ci/pr The Travis CI build passed

@JoakimLarsson JoakimLarsson deleted the JoakimLarsson:modulab2 branch Jan 31, 2019

Bad-A-Billy added a commit to Bad-A-Billy/mame that referenced this pull request Feb 10, 2019

feb pull (#4)
* housekeeping (nw)

* new working clone
Same! Same! Same! (China, 2P set) [Bill D., The Dumping Union]

* model3: rename Lost World older to location test (nw)

* bbc_sprite: INT line is passed back through 1MHz bus (nw)

* bus/isa: Fix custom space configuration (nw)

* bml3: Partial bus modernization (nw)

* bus/abcbus: Remove MCFG_ macros; add bus clocks (presumed same as CPUs) (nw)

* (nw)

* New skeleton ISA16 device: InterLan NP600A-3 Intelligent Protocol Processor [modem7,]

* (nw)

* bus/isa/np600: Hardware notes (nw)

* np600: Map a few I/O registers (nw)

* mac128.cpp: Define XTAL (nw)

* xtal.cpp: Might as well define this one now (nw)

* mac128.cpp: Fix build (nw)

* netlist: refactor code for better scalability and flexibility. (nw)

These changes aim to remove some of the duplication of code in the
various solvers.
Tested with gcc-7 clang-8 and nvcc-9.2

* Fix clang build (nw)
- src/lib/netlist/solver/mat_cr.h:143:32: error: call to 'abs' is ambiguous
- src/lib/netlist/solver/nld_ms_direct.h:62:19: error: non-type template argument evaluates to 18446744073709551488, which cannot be narrowed to type 'int' [-Wc++11-narrowing]

* srcclean and cleanup (nw)

* new working clone
Rise of the Robots (prototype, older) [Phil Bennett]

* clickstart_cart.xml: Fix game names (nw) (mamedev#4559)

* clickstart_cart.xml: Fix game names (nw)

* clickstart_cart.xml: Another small game name fix (nw)

* clickstart_cart.xml: Fix space (nw)

* clickstart_cart.xml: Fix space (nw)

I'm trying to get the missing Spanish games of those kids consoles (Leap Frog & VTech), that's why I'd like to have the softlists as clean as possible.

* clickstart_cart.xml: Fix space (nw)

* plugins/cheatfind: fix address step when shift is negative (nw)

* tlc34076.cpp : Remove unnecessary address_space arguments (nw)

* minor documentation update re: Fantasy Zone (317-0016) set (nw)

* dcheese.cpp : Cleanups (mamedev#4561)

* dcheese.cpp : Cleanups
Remove MCFGs, Runtime tag lookups, Use shorter/correct type values, Fix some namings, Spacings, Reduce unnecessary lines, Defines

* dcheese.cpp : Minor revert (nw)

* minor documentation about the new Same! Same! Same! set (nw)

* model3.cpp: Minor doc update (nw)

* Remove remaining BSMT2000 related MCFGs (nw)
btoads.h : Use private: for most things

* new nonworking clone

New Nonworking Clone
World Class Bowling Tournament (v1.30) [Brian Troha, The Dumping Union]

* seta.cpp: Added redump of ROM 5 to Mobile Suit Gundam (bootleg) - Fixes graphics issues. [Ed C., The Dumping Union]

out of whatsnew:

redump provided on 1/22/2019 matched the expected values as shown by the hand crafted example.

* segas16a.cpp: Use Proper spelling (nw)

also remove spurious semi-colon from seta.cpp

* toaplan1.cpp: updated title and romset name for recently added samesamech set (nw)

* update docs (nw)

* Add new not-working clone

TI-83 Plus Silver Edition (bootleg) [Julian Lachniet, critor]

Also cleaned up ti85.cpp a bit

* spg2xx: Correct PRNG emulation. [Ryan Holtz]

* -spg2xx: More correct PRNG emulation, nw

* New working clone

New working clones
Raiden Fighters 2 - Operation Hell Dive (Japan set 4) [Sugoi Helsinki]

* add new Raiden Fighters 2 clone here - helps to hit "save" (nw)

* mw8080bw.cpp, 8080bw.cpp: Interrupt modernization (nw)

spacecom: Re-guess CPU and video clocks

* spg2xx: Correct PRNG emulation. [Ryan Holtz]

* -spg2xx: More correct PRNG emulation, nw

* turn off SPG200 logging for release (nw)

* mephisto: fix mm2 display regression (nw)

* New working machines
Backgammon Challenger [hap, balrog, Lord Nightmare]

* Initial implementation of new logo for docs (nw) (mamedev#4566)

* Initial implementation of new logo for docs (nw)

Behold the power of SVG!

* 100% gives the same results (nw)

* slight logo update (nw)

* Add svg->pdf conversion support

* imagedev\floppy: removed MCFG macros (nw)

* New working machines

Star Wars - Revenge of the Sith (JAKKS Pacific TV Game, Game-Key Ready) [Sean Riddle, Peter Wilhelmsen]

-vii: Mapped jak_sith controls. [Ryan Holtz]

-spg2xx: Added polled ADC mode, and 2-channel ADC support. [Ryan Holtz]

* New working machines

Star Wars - Revenge of the Sith (JAKKS Pacific TV Game, Game-Key Ready) [Sean Riddle, Peter Wilhelmsen]

-vii: Mapped jak_sith controls. [Ryan Holtz]

-spg2xx: Added polled ADC mode, and 2-channel ADC support. [Ryan Holtz]

* fidelz80: small cleanup (nw)

* freekick.cpp: documented ROM locations for gigasb [Kevin Eshbach, The Dumping Union]

* mephisto: fix mm2 display regression (nw)

* triforce.cpp: documentation update, correct game years, uniform game descriptions [f205v]

* nascom1: Fixed snapshot loading regression on 32bit builds (nw)

* (nw) d6800 : marked as MNW (see added notes in source).

* New working software list additions

  Turret Defense & Yoda's Escape [Sean Riddle, Peter Wilhelmsen]

* fidelz80: found dsc middle leds (nw)

* -spg2xx: Return max ADC value if not hooked up, nw

* -spg2xx: Return max ADC value if not hooked up, nw

* tandy2k: fix keyboard (nw)

* nascom1: Fixed snapshot loading regression on 32bit builds (nw)

* spaceg.cpp: Eliminate unnecessary dependency on mw8080bw driver (nw)

* output_latch: removed MCFG macros (nw)

* version bump (nw)

* nscsi_cb: removed MCFG macros. This device is unused (nw)

* nscsi_bus: removed MCFG macros (nw)

* i386: add comments about athlon memory type range register MSRs (nw)

* src/mame: removed all instances of MCFG_DEVICE_REMOVE in the mame part of the tree (nw)

*  jak_capb signs of life (nw)  (mamedev#4569)

* spg110 data segment (nw)

* dummy (nw)

* (nw)

* notes on possible register use (nw)

* jak_capb signs of life (nw)

* better tile addressing (nw)

* (nw)

* (nw)

* yeah palette format is another strange one, not quite right, code borrowed from another driver (nw)

* some scroll (nw)

* (nw)

* seems to be step (nw)

* be more scrolly (nw)

* aftershok: Add some basic stuff (nw)

* laz_aftrshok.cpp: Correct machine flag (nw)

* fidelz80: improve bridge challenger internal artwork (nw)

* fidelz80: typo (nw)

* New clones marked as NOT_WORKING
Advanced Bridge Challenger [hap]

* fidel*: speaker symbol wasnt visible on win7 (nw)

* emu\softlist_dev: removed MCFG macros (nw)

* devices\bus: removed a few unused MCFG macros (nw)

* netlist: Refactoring continues ... plus some innovations (nw)

Still some work ahead to separate interface from execution. This is a
preparation to switch to another sparse matrix format easily which may
be better suited for parallel processing.

On the linear algebra side there are some nice additions:

- Two additional sort modes: One tries to obtain a upper left identity
matrix, the other prefers a diagonal band matrix structure. Both deliver
slightly better performance than just sorting.
- Parallel execution analysis for Gaussian elimination and LU solve.
This determines which operations may be done independently.

All of this is not really useful right now. The matrix sizes are below
100 nets. I estimate that we at least need four times more so that CPU
parallel processing overhead pays off. For GPU, add another order. But
it's nice to have code which may scale.

* netlist: type safety for delegates. (nw)

* didact.cpp: New working machine modulab, a MC6802 based educational system (mamedev#4571)

* didact.cpp: New working machine modulab, a MC6802 based educational system

* Cleanup and additional view placeholder

* didact.cpp: replaced some stale MACHINE_CONFIG_END statements with curly brackets

* didact.cpp: replaced artwork timers with PORT_CHANGED methods

* New working clone

New working clones
Pasha Pasha Champ Mini Game Festival (Korea, set 2) [twistedsymphony]

* Remove unnecessary address_space arguments on FM sound chips read/write handlers
2203intf.cpp, 2608intf.cpp, 2610intf.cpp, 2612intf.cpp, 262intf.cpp, 3526intf.cpp, 3812intf.cpp, 8950intf.cpp, ym2151.cpp, ym2413.cpp, ymf271.cpp, ymf278b.cpp : Simplified handlers (nw)

* Indigo: move LG1 "Light" graphics support out to its own device for future sharing

* devices\bus: some MCFG macros removal (nw)

* new working clone
Ghost Chaser Densei (SNES bootleg, set 2) [iq_132, Jorge Silva, The Dumping Union]

* new not working clone
RyuKyu (Japan) (FD1094 317-5023A) [anonymous]

* netlist: code maintenance and fixing kidniki ... (nw)

to run at acceptable speed again.

* netlist: remove trampoline code. (nw)

* r4000: experimental mips3 implementation (nw)

WIP checkpoint: while I believe it's largely accurate (and very slow), neither jazz nor sgi systems can fully boot yet using this device, so it remains experimental.

This implementation should go away when it has helped identify the improvements required for mips3.

* (nw) d6800 : added missing RST key; fixed instructions; marked working once again.

* midwayic.cpp : Reduce unnecessary arguments in handlers

* okim6376, pokey: Remove address_space and mem_mask arguments from read/write handlers (nw)

* okim6258, okim6295: Simplify read/write handlers (nw)

* intelfsh: Eliminate address_space argument from read/write handlers (nw)

* mb8421: Eliminate address_space argument from read/write handlers (nw)

* devices\bus: some more MCFG macros removal (nw)

* new not working machine
The Magician (20210111, NSW/ACT) [Heihachi_73]

* devices\bus: few less MCFG macros (nw)

* new NOT_WORKING clone
Virtua NBA (prototype, 15.11) [CoolMod, The Dumping Union]

* cardinal: Hook up a few more devices that do nothing at the moment (nw)

* netlist: All devices now specify parameters in factory constructor. (nw)

This previously was part of net_lib.cpp and repeatedly caused bugs.

* cardinal: Add serial keyboard (nw)

* sn76496.cpp : Remove unnecessary handler, Remove unnecessary arguments in stereo_w
write8smo handler is already exists (write)

* audio/williams.cpp : Remove unnecessary arguments in handlers

* aaa: Add keyboard and RS232 ports; fill in many other things (nw)

* csd.cpp : Reduce unnecessary address_space, mem_mask arguments in handlers

* ymz280b.cpp : Remove unnecessary arguments in handlers

* Machines promoted to working

Mattel Classic Sports [Sean Riddle, David Haywood, Ryan Holtz]

-vii: Identified difficulty-select bit for mattelcs. [Ryan Holtz]

* netlist: fix some issues. (nw)

* clone promoted to working
Double Dragon II - The Revenge (Japan) [Layer]

* new WORKING machines --- Play TV SSX Snowboarder  (and other misc / TV game work) (mamedev#4576)

New working machines
Play TV SSX Snowboarder (NTSC) [Sean Riddle, Peter Wilhelmsen, David Haywood]
Play TV Snowboarder (White) (NTSC) [Sean Riddle, Peter Wilhelmsen, David Haywood]
Barbie Dance Party [Sean Riddle, Peter Wilhelmsen, David Haywood]
Play TV Basketball [Sean Riddle, Peter Wilhelmsen, David Haywood]

Machines promoted to working
Play TV Snowboarder (Blue) (NTSC) [Sean Riddle, Peter Wilhelmsen, David Haywood]

New clones marked as NOT_WORKING
Queen Bee (Ver. 114) [Cristiano-MDQ]
Queen Bee (Israel, Ver. 100) [Cristiano-MDQ]
Queen Bee (SA-101-HARD) [Cristiano-MDQ]

New NOT_WORKING software list additions
monon_color.xml: mechcycla  Jī jiǎ xuànfēng-gédòu dàshī (set 2) [zhongtiao1]

also refactored the spg110 stuff to be closer to spg2xx, which regresses things a bit for now due to differences, but only thing using it is the in-progress jak_capb emulation I'm working on.  sharing the code doesn't seem practical due to all the subtle differences, so needs working out like this for now at least. (nw)

* ay8910.cpp : Add notes for AY8930 expanded mode (mamedev#4583)

* ay8910.cpp : Add notes for AY8930 expanded mode

* ay8910.cpp : Additional logs

* add mode register for debugging

* ay8910.cpp : Minor fix

* ay8910.cpp : Additional fix

* ics2115.cpp : Updates (mamedev#4581)

* ics2115.cpp : Updates
Remove unnecessary arguments in handler, Move igs011.cpp exclusive 16bit handlers into ics2115.cpp, Minor code style fixes, Use shorter type values, Correct device name

* ics2115.cpp : Minor code style fixes, Typo

* es5506.cpp, Sync sample rate with esqpump.cpp (mamedev#4582)

* es5506.cpp, Sync sample rate with esqpump.cpp
esqpump.cpp : Use required_device for m_esp, Add device_clock_changed, Add notes, Change timer frequency related to sample rate(clock)

* esqpump.cpp : Minor correction

* -ghosteo: Removed deprecated warning, nw

-i2cmem: Removed some MCFG macros, nw

-bus/nes/datach, bandai: Removed MCFG macro, nw

-bus/megadrive/eeprom, jcart: Removed MACHINE_CONFIG macros, nw

* ti85: Ha! (nw)

* New machines marked as NOT_WORKING
ADM-31 Data Display Terminal [Bitsavers]

* (nw) Housekeeping

* (nw) ti85: validation fix. This is the 3rd fix for this driver, not good enough.

* adm31: Describe some switches (nw)

* com8116: Simplify read/write handlers (nw)

adm23: Add baud rate switches (nw)

* adm31: Helps to put the switches in the proper nibbles (nw)

* g65816: WDM is a 2-byte opcode per WDC docs, added WDM callback. [R. Belmont]

* -i2cmem: Remove remaining unused MCFG macros, nw

* -src/devices/machine: Random MCFG and MACHINE_CONFIG removals, nw

* adm31: Add preliminary keyboard (nw)

* z8: Fix disassembly of LD IR, R opcode

* new working clone

New working clones
X-Men (4 Players ver JEA) [Artemio Urbina, The Dumping Union]

* z8: Write RRn instead of Rn when disassembling INCW/DECW

* k054539.cpp : Reduce unnecessary arguments in handlers
mystwarr.cpp : Reduce duplicate, unused runtime tag lookup, unnecessary address map
rungun.cpp : Reduce unnecessary address map
tmnt.cpp : Reduce unnecessary handler
zr107.cpp : Reduce unnecessary address map

* k054321.cpp : Typo

* qs1000.cpp : Add getter for internal CPU (mamedev#4588)

* qs1000.cpp : Add getter for internal CPU
limenko.cpp : Removed deprecated warning, nw
ghosteo.cpp, vegaeo.cpp : Use getter for qs1000 internal CPU

* limenko.cpp : Correct qs1000 device to optional

* c140.cpp : Remove unnecessary arguments in handlers
namcona1.cpp : Remove unnecessary handler, Add note

* skeleton stuff (mostly to give Clawgrip a starting place) (mamedev#4586)

* new NOT WORKING machines
C2 Color [zhongtiao1]
35 in 1 Super Twins [Sean Riddle]
LeapPad [Sean Riddle]
My First LeapPad [Sean Riddle]

-leappad: Added software lists. [David Haywood]

-c2color: Added software lists. [David Haywood]

leappad note: Currently BIOS is not dumped for LeapPad, but some carts are, BIOS is dumped for My First LeapPad, but not carts. (nw)

c2color note: Again the internal ROM isn't dumped, but we need the placeholder driver for the software list hookup, 2 carts are dumped. (nw)

-vsmile: Added softlist loading for some of the trickier vsmile cases based on new dumps from Sean Riddle.  Note, the Vsmile Motion game is 16MB so clearly needs some kind of banking. (nw)

* -devices/bus/kc, nasbus, s100: Removed MCFG macros, nw

-devices/bus/kc/d002: Removed MACHINE_CONFIG macro, nw

-drivers/horizon, kc, mpz80, nascom1, tek405x, vixen, xor100, zorba: Removed MACHINE_CONFIG macros, nw

* adc0844.cpp : Remove unnecessary arguments in handlers
bus/electron/plus1.cpp : Remove unnecessary arguments in some handlers, nw

* Provide 1 MHz clock for uPD7002 (nw)

* New machines marked as NOT_WORKING

V.Smile Motion (US)

New NOT_WORKING software list additions
  Für immer Shrek (Ger), Toy Story 3 (Ger)

-devices/bus/vsmile/vsmile_cart: Added support for later 8MWord cartridges. [Ryan Holtz]

-vsmile: Added separate machine driver for V.Smile Motion. Needs proper BIOS dump, currently using the V.Smile US BIOS. [Ryan Holtz]

* Add skeleton CRT9028 device (nw)

* -devices/bus/bbc/1mhzbus/ieee488: Removed MACHINE_CONFIG macros, nw

-devices/bus/cbmiec/interpod: Removed MACHINE_CONFIG macros, nw

-devices/bus/ieee488/ieee488: Removed MCFG macros, nw

-devices/bus/ieee488/softbox: Removed MACHINE_CONFIG macros, nw

-devices/bus/imi7000/imi7000: Removed MCFG macro, nw

-devices/imagedev/harddriv: Added constructor for setting interface tag, nw

-gridcomp, hp_ipc, hp64k, sage2, softbox: Removed MACHINE_CONFIG macros, nw

* new WORKING clones
Island (090806 Entertainment)
Keks (110816 World)
Keks (110816 Russia)
Pirate (090803 Entertainment)
Sweet Life (090720 Entertainment)

new NOT_WORKING clones
Crazy Monkey 2 (100618 Russia)
Roll Fruit (100924)

* fix build (nw)

* adc0808.cpp : Remove unnecessary arguments in handlers

* netlist: Refactoring and some functionality enhancements. (nw)

- Removed dead code.
- nltool now adds a define NLTOOL_VERSION. This can be tested in
  netlists. It is used in kidniki to ensure I stop committing
  debug parameters.
- Optimized the proposal for no-deactivate hints.
- Documented in breakout that hints were manually optimized.
- Minor optimizations in the order of 2% enhancement.

* rf5c68.cpp : Remove unnecessary arguments in handlers
megacd.cpp : Remove unnecessary arguments in some handlers, Remove deprecated warning, nw

* Fix crash when exiting directly while filter UI is active (GitHub mamedev#4596)

* r4000: size does matter (nw)

* enable sub-second snapshot timers (nw) (mamedev#4493)

* enable sub-second snapshot timers (nw)

* switch to attotime, accept doubles

* support LLVM extension in MSVC

make vsllvm

using extension from here:

* new not working machine
Neo Print - Millennium Multi Shot Edition (World) (T4i 3.07) [Porchy, The Dumping Union]

* netlist: Further simplification and optimization. (nw)

* -devices/bus/cgenie: Removed MCFG macros, nw

-devices/bus/ep64: Removed unused MCFG macros, nw

-devices/bus/nasbus: Fixed crash, nw

-devices/bus/svi3x8: Fixed potential crash if it were used, nw

-cegenie: Removed MACHINE_CONFIG macros, nw

* netlist: Fix regression. (nw)

* New NOT_WORKING software list additions

Thomas & Friends - Thomas and the School Trip (UK) [TeamEurope]
Leap's Big Day (UK) [TeamEurope]
I Know My abc's (UK) (Dec 18 2002) [TeamEurope]
I Know My abc's (UK) (Feb 12 2002) [TeamEurope]
Joy Joy - The Jet Plane - High-Flying Adventures (UK) [TeamEurope]
The Foot Book - Based on the Book by Dr. Seuss (UK) [TeamEurope]
Vroom! Vroom! - On the Go (UK) [TeamEurope]

* leapfrog_leappad.cpp: Fix BIOS regions (nw)

* Cheat Finder Usability Improvements

1. Changes visual indications to make it nicer & quicker to use.
2. Adds selectable automatic pause capability to the cheat finder menu.
3. Allows the Test/Write poke to be changed
4. Adds another cheat format capability for cheat.simple (write support only)

* netlist: align solver calls. (nw)

* r2dtank: Correct CPU type; better guesses at CPU and PSG clocks (nw)

* Add new not working clones mamedev#4585
Adds new clones, and new BIOS versions for existing clones

TI-83 Premium CE (Boot Code [Julian Lachniet, critor]
TI-84 Plus C Silver Edition (Boot Code 4.2) [Julian Lachniet]

Some names and versions were also updated, as well as general code cleanup.
(nw) added missing comma, added newline at end, fixed typos.

* alpha: disassembler improvements (nw)

* added palcode disassembly
* added standard pseudo-opcode forms

* dai3wksi: no meteor in title (nw)

* netlist: Optionally store input values instead of referencing them. (nw)

Useful for debugging purposes in the end - but not performance.

/*! Store input values in logic_terminal_t.
 * Set to 1 to store values in logic_terminal_t instead of
 * accessing them indirectly by pointer from logic_net_t.
 * This approach is stricter and should identify bugs in
 * the netlist core faster.
 * By default it is disabled since it is not as fast as
 * the default approach.

* Nomenclature fix

* Nomenclature fix.
* Year update.
* Better description of what MAME is really doing.

* new NOT WORKING machines (TV Game work) (mamedev#4607)

* new NOT WORKING machines
XaviX Music & Circuit (XaviXPORT) [Sean Riddle, Peter Wilhelmsen]
Domyos Fitness Dance (Domyos Interactive System) [Sean Riddle, Peter Wilhelmsen]

also corrected name of jak_dor, this one os Nursery Rhyme Adventure, didn't realise there were 2 different Dora base units.
and fixed a few things in the ekara xml

* improved c2color documentation [zhongtiao1]

* (nw)

* DMA note (nw)

* md6802.lay: Improved layout

* sbrain: Added newly-dumped bios

* tms9995: Fixed double-triggered INT1/4 by clearing the INT1/4 latch

* Make the delay for snapshot/quickload an attotime, and allow implicit zero.  Removing the MCFG macros properly requires changing the pattern for the delegates. (nw)

* new NOT WORKING machines
Play TV Baseball (NTSC) [Sean Riddle, Peter Wilhelmsen]

dumped XaviX Bass Fishing SEEPROMS containing code for the IO MCUs [Sean Riddle]

* warriorb.cpp: dumped PALs for warriorb [Mike Moffitt, coolmod, The Dumping Union]

*  leapfrog_leappad_cart.xml: New NOT_WORKING software list additions  (mamedev#4611)

* leapfrog_leappad_cart.xml: New NOT_WORKING software list additions

Tad's Good Night (UK) [TeamEurope]
Disney Hüpf, Tigger, hüpf! (Germany) [TeamEurope]
Shrek (Germany) [TeamEurope]
Little Amadeus (Germany) [TeamEurope]
Disney Prinzessin - Prinzessinnen-Geschichten (Germany) [TeamEurope]

Also removed "I Know My abc's", since it's a "My First LeapPad" game, and not "LeapPad".

* Fix cart interface (nw)

* chihiro.cpp docs additions and corrections [f205v]

* tms34010.cpp : Internalize io register, Add notes, Remove register_po… (mamedev#4602)

* tms34010.cpp : Internalize io register, Add notes, Remove register_postload

* tms34010.cpp : Add notes, nw

* tms34010.cpp : Fix spacing

* Fix harddriv.cpp regressions, nw
tms34010.cpp : Remove unnecessary arguments in handlers

* skeetsht.cpp: Fix build after 3d4efd8 (nw)

* tv955kb: Register reset control inputs as inactive on startup

* Add new BIOS to ti83pcev15 (mamedev#4612)

Adds missing OS version 5.22

* aristmk6: Give BIOS options mnemonic names: "set-" prefix for set chips, ISO 3166-1 apha-2 country code, hyphen and state/province/territory abbreviation if applicable, and ascending number

* apricot: Add Windows 1.03 to the softlist

* fidelz80: get rid of unnneeded trampoline (nw)

* New NOT_WORKING software list additions

A Day at Moss Lake (Germany) [TeamEurope]
Das Angel-Abenteuer (Germany) [TeamEurope]
Bob der Baumeister - Bob und Heppo: Alles im Griff! (Germany) [TeamEurope]
Englisch Kurs - Let's go 1 (Germany) [TeamEurope]
Englisch Kurs - Let's go 2 (Germany) [TeamEurope]
A Day at Moss Lake (Germany) [TeamEurope]

* new working clones
The Glob (Pacman hardware, Magic Electronics Inc. license) [jordigahan, ClawGrip]
Red Clash (Suntronics) [coolmod]

new not working machine
Champion 85 [PinMAME]

* netlist: Refactoring after adding clang-tidy support to netlist makefile

- convert macros to c++ code.
- order of device creation should not depend on std lib.
- some state saving cleanup.
- added support for clang-tidy to makefile.
- modifications triggered by clang-tidy-9.

* sbrain: mark 4_2_50 as hack (nw)

* Awkward workaround for "undefined symbols" error caused by stupid non-inline constexpr semantics (nw)

* Reworked split of Apple softlists + WOZ Feb 7 2019 [Firehawke]

Okay, let's try this again.
* Moved Impossible Mission to correct location in softlist
* Added 4AM original WOZ images up to Feb 7th, 2019
* Split apple2.xml into apple2_flop_clcracked.xml and apple2_flop_misc.xml
* Changes Apple 2 drivers to support the split softlists. Note there's no compatibility metadata for the older content, so we can't easily filter to the machine type there.

Remaining to be done:
* Sort the clean cracks list alphabetically
* Add 2000+ remaining 4AM clean cracks

I've gone over this PR about three times before commiting on my side just to make sure I didn't miss any major issues, including -valid checks.

* Fixed XML file structure for files in HASH folder which required it.  (nw)

* srcclean the softlists, add pinyin for C2 Color (nw)

* Add support for Hi Pai Paradise 2 (Aleck64) (mamedev#4617)

* aleck64.cpp: added hipai2 (Hi Pai Paradise 2)

* added hipai2 (Hi Pai Paradise 2)

* Revert "added hipai2 (Hi Pai Paradise 2)"

This reverts commit 1e8163e.

* Update mame.lst

Adds hipai2 to aleck64

* cleanup (nw)

* indy: remove dependencies on mips3 (nw)

No functional change, only makes it easier to test with r4000 instead of mips3.

* r4000: tweak address calculation (nw)

* -dmvbus, psi_kbd: Removed MCFG macros, nw

-dmv, kdt6: Removed MACHINE_CONFIG macros, nw

* i8089: Disable logging

* apricot: Add mouse support

* dmvbus: Add address space finders; remove machine().device (nw)

* bus/ti99x: Add address space finders; remove machine().device (nw)

* nscsi_cd: Add new nscsi_cdrom_device derived type for SGI systems

Some versions of IRIX will always send an SGI vendor specific SCSI command to the CDROM, so we need some specialization to acknowledge this command.

* some more MCFG macros removal (nw)

* amiga/zorro: Bus modernization (nw)
- Remove all MCFG_ macros and use devcb3 for callback configuration
- Use address space finder to replace one call to machine().device
- Require accessor for slot cards to access bus space

* amiga/zorro: Be more consistent about resolving callbacks (nw)

* netlist: more cpp core guidelines work. (nw)

* netlist: make constants struct members constexpr const. (nw)

- enable GCC diagnostics in vector ops for GCC 7 again
- Use forwarding in vector_ops

* netlist: added parameter STARTUP_STRATEGY to switch between ...

startup strategies. This determines the order of device triggering.
0: Full - trigger all delegates. Next all devices not touched.
1: Backwards - trigger all devices backwards (only update delegate)
2: Forward - trigger all devices forward (only update delegate)

* netlist: constants are now constexpr functions. (nw)

* netlist: added missing noexcept. (nw)

* Fix clang build (nw)

* lisa: Add XTAL definitions (nw)
- Remove "kbcop" device. The COP-based keyboard seems to be mostly undocumented and not actually dumped. (Bitsavers has documentation for a 8748 keyboard.)

* leland: dma line mask bits (ne)

* lisa: Put back keyboard COP and add input that switches its code path; use get_fc instead of hacking into SR (nw)

* Add four new BIOS files to ti84pcev15 (mamedev#4613)

Adds OS versions 5.15 to 5.22, thanks to a hack that downgrades OS on 5.1.5 boot codes.

* misc MACHINE_CONFIG macros removal (nw)

* New working software list additions

ibm5150: Budokan - The Martial Spirit (Big Games release), Lagaf': Les Adventures De Moktar - Vol 1: La Zoubida, Monty Python's Flying Circus (3.5"), Xenon (3.5") [ArcadeShadow]

* get rid of some copy/pasted macros for different numbers of arguments (nw)

* New working software list additions

ibm5170: Micro Machines [ArcadeShadow]

* devices/bus: a few more MACHINE_CONFIG macros removed (nw)

* audio/snk6502.cpp: fixed MT07225 (nw)

* new WORKING Gamate game + Working DBZ JAKKS + misc bits (mamedev#4614)

* new WORKING Software List entries
gamate:fortress Fortress of Fierceness [Peter Wilhelmsen]

new NOT WORKING Software List entries
ekara_japan_a:a7 A-7 Pichi Pichi Pitch Pure Chapter 3 (Japan) [Peter Wilhelmsen, Sean Riddle]
ekara_japan_a:a5 A-5 Pichi Pichi Pitch Karaoke Party (Japan) [Peter Wilhelmsen, Sean Riddle]
ekara_japan_a:a4 A-4 Pichi Pichi Pitch Pure Chapter 1 (Japan) [Peter Wilhelmsen, Sean Riddle]
ekara_japan_a:a1 A-1 Pichi Pichi Pitch vol.1 (Japan) [Peter Wilhelmsen, Sean Riddle]

new NOT WORKING clones
Play 2000 (Super Slot & Gran Tesoro) (v7.0i) (Italy)  [Peter Wilhelmsen, Morten Shearman Kirkegaard]

* new WORKING machines
Dragon Ball Z (JAKKS Pacific TV Game, Game-Key Ready) [Sean Riddle, 19 external donators]

* flag (nw)

* allow 'a7' to boot (nw)

* move XaviX2 sets to new files (nw)

* new machines marked as NOT WORKING
Let's TV Play Naruto [Peter Wilhelmsen, Sean Riddle]

This is another XaviX2 thing.

* -indy_indigo2: Switch to using new R4x00 core, nw

-sgi_mc_device: Preliminary (broken) VDMA, nw

-newport: Various changes: [Ryan Holtz]
 * Switched to using a buffer of bytes, and doing the palette lookup in screen_update.
 * Added preliminary FB readback support.
 * Added preliminary line-drawing support.
 * Added support for more commands. Should eventually be handled in a different way than now.

* netlist: more core guidelines work. (nw)

* netlist: Fix crashes on certain hardware/library combos. (nw)

At least on macosx memory used by an object seems to be invalidated
before the dtor is executed. This of course is deadly for child objects
with references to the parent-in-deletion which may call back into the
One of the worst issues I had to fix. Ever. Lesson learnt: No tricks in
dtors. Never.

* scn2674: Row buffering and timing improvements
- Add optional read callbacks for row buffering DMA
- Add MBC output
- Correct timing of BREQ and VBLANK outputs
- Improve character blink and cursor blink timings

wy50: Power-up tests pass now; very preliminary character display (nw)

* -r4000: Added the ability to CTC and CFC from unknown fpr30, which IRIX does often, nw

* -wd33c9x: Silence logging by default, nw

* -sgi_mc_device: Basic VDMA support, address translation is currently broken. [Ryan Holtz]

-newport: Various changes, nw

* sgi_mc_device: Hooked up VDMA done interrupt, no appreciable effect, nw

* wy50: Encode a few attributes (nw)

* berzerk.cpp: Update comments about ROM labels needing verification. (nw)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.