Commit Graph

1442 Commits

Author SHA1 Message Date
David Haywood
d24fc57a95 Plug & Play / Elan EU3A05 / EU3A14 splitting up, identifying of common features etc. (#5849)
* elan eu3a05 / eu3a14 - identify some common bits (nw)

* some elan refactoring baed on current knowledge / standards (nw)

* elan refactoring (nw)

* elan splitting / refactoring (nw)

* validate (nw)

* note used areas (nw)

* register observations (nw)

* another observation (nw)

* add the sprite double feature (nw)

* rendering tweaks (nw)

* rendering improvements for air blaster 3d stages (nw)

* refactoring (nw)
2019-11-03 22:50:48 -05:00
Robert Hildinger
74ade68194 galaga: Implement accurate starfield based on reverse eng. 05xx (#5824)
* galaga: Implement accurate starfield based on reverse eng. 05xx
----------------------------------------------------------------
This commit implements an accurate starfield for Galaga and
Bosconian based on reverse engineering the Namco 05xx chip.
Documentation and notes have been added inline to the code
for the galaga video driver.

Changes in this commit:

1. Regenerates starfield colors based on LFSR state for every frame
2. Pixel accurate to Namco original 05xx
3. Restores one line horizontal starfield shift for every 256
   vertical pixel shifts
4. Properly handles LFSR reset (_STARCLR)
5. Restores missing 4 stars from previous implementations
6. Fixes potential issue with the number of stars on screen at any
   one time
7. Restores 4 pixel/line scrolling capability (not currently used
   for any driver)

* galaga: inplement accurate starfield - change request 1
-------------------------------------------------------
1. Remove stdlib.h from src/mame/video/galaga.cpp

* galaga: inplement accurate starfield - change request 2
-------------------------------------------------------
1. Refactor starfield generator into stand-alone video
   device
2. Simplify Bosconian and Galaga video drivers
3. Add in documentation about different LFSR form used
   by Wolfgang Scherr and Jindřich Makovička.

* galaga: inplement accurate starfield - change request 3
---------------------------------------------------------
Minor changes from pull request review
2019-11-03 20:16:45 +11:00
braintro
296da02579 (nw) fix build 2019-11-01 14:34:19 -05:00
Vas Crabb
74bd9899a7 New working machines
--------------------
RS-232 DCE-DCE Bridge

(nw) This is a simple machine for wiring together two things that want
to plug into an RS-232 port.  This means that for DCE-like things (e.g.
serial printers) there's no need to create an extra machine to allow
them to talk to the outside world with the null_modem device.  (Also
added some asserts, removed a FIXME, and put the swtpc8212 terminal in
the default RS-232 devices.)
2019-11-02 02:07:50 +11:00
Vas Crabb
ef37c69c9b clean up cane/orbite additions (nw) 2019-10-31 23:27:33 +11:00
68bit
7aa1490a7e swtpc8212: get it running, and on the rs232 bus (#5729)
This patch gets it running, and splits it into two front ends, one
being a rs232 bus slot so that is can be used as a terminal option. It
adds the MCM66750 character generator, and implements the MC6845 row
update function. Most of the I/O has been worked out with help from
the CT-82 user manual. The various screen formats and the graphics
modes appear to be working and plausible. Printer support has been
added, and a beeper.
2019-10-30 13:02:31 +11:00
Vas Crabb
32868b8e2a srcclean (nw) 2019-10-26 10:40:50 +11:00
AJR
d4eb7c7d2c aha1542a, aha1542b: Split out AIC-580 emulation to new device (nw) 2019-10-25 16:51:03 -04:00
AJR
17d95ecab5 New machines marked as NOT_WORKING
----------------------------------
Teleray Model 10 [Bitsavers]
2019-10-25 02:56:55 -04:00
AJR
41a333e791 Add Fujitsu FR disassembler and skeleton CPU device 2019-10-23 21:54:26 -04:00
fulivi
430bd2d508 Hp9825: support for external ROM cartridges added (#5761)
* hp9825: optional ROM cartridges added (9825b only, ATM)

* hp9825: optional ROMs added to 9825t, added support for banked ROMs
@5c00, separated RAM & ROM spaces in 9825t

* hp9885: added missing post-amble when writing sectors on disk

* hp9825: added acknowledgments to comments (nw)

* hp9825: changes requested by V.Crabb (nw)
2019-10-23 10:23:12 -04:00
ajrhacker
23a05f7e85 Move IDE devices into bus/ata (nw) (#5756) 2019-10-23 10:22:17 -04:00
AJR
55f5096abd New machines marked as NOT_WORKING
----------------------------------
LMS46-V9 [Don Maslin Vintage Computer Archive, AJR]
2019-10-21 09:04:21 -04:00
AJR
559fa0fa39 Add file somehow omitted in previous commit (nw) 2019-10-19 22:47:14 -04:00
cam900
866b52fda9 mame/video/tmap038.cpp : Device-fied 038 Tilemap generator (#5704)
* mame/video/tmap038.cpp : Device-fied 038 Tilemap generator
Used on cave.cpp, mcatadv.cpp
cave.cpp, mcatadv.cpp : Convert tilemap draw routine into tmap038.cpp
cave.cpp : Add notes, Fix spacing, Reduce duplicates
mcatadv.cpp : Simplify handlers, Reduce unnecessary line, Fix tilemap flicker with debug function enabled, Use shorter/correct type values

* tmap038.cpp : Add notes for manufacturer

Date marking (ex: 9341EX702) seems like NEC style.

* mcatadv.cpp : Minor revert

* tmap038.h : Add notes, const'd getters
2019-10-18 10:32:00 -04:00
Dirk Best
39bde3e473 New skeleton driver: Termtek TK-635 [nextvolume, Dirk Best] 2019-10-16 16:35:07 +02:00
AJR
f398123bc3 Emulate ADC0804 and add device to various drivers 2019-10-16 00:16:14 -04:00
AJR
439605cee6 mess.lua: Move some drivers to more specific subtargets, including new ones (nw) 2019-10-14 08:08:17 -04:00
Robbbert
ac1c53d379 (nw) mess.lua: don't need this line any more 2019-10-14 02:54:40 +11:00
couriersud
a89b7d194d netlist: mame netlist reorganization. [Couriersud]
- moved netlists out of driver code into audio/ or machine/ as
nl_xxx.cpp files.
- identified and documented extended validation
- updated arcade, mess and nl targets
2019-10-13 16:45:30 +02:00
Joakim Larsson Edström
6e98146ef4
Merge pull request #5686 from JoakimLarsson/epc_3
Rebase and completion of split out of epc driver and addition of graphics card
2019-10-11 21:59:27 +02:00
68bit
fec97d902a uchroma68: Motorola Micro Chroma 68, new machine
Motorola evaluation board for the MC6847 VDG and MC1372 RF modulator,
running the TV-BUG 2k monitor.
2019-10-11 00:06:00 +11:00
AJR
fe1178a819 swtpc8212: Split into separate driver (nw) 2019-10-08 20:13:03 -04:00
Vas Crabb
f43b28ed4a (nw) misc stuff:
* screen: validate crystal values used for set_raw
* driver: get rid of sound start/reset overrides in machine configuration
* vrender0.cpp, nexus3d.cpp: corrected pixel clock crystal value
* mw8080bw.cpp: turned several audio subsystems into devices
* bus/sat_ctrl: don't start subdevices in device_start - the machine does it for you
* mb14241.cpp: simplify handlers
* fgoal.cpp: updated for simplified handlers
* devfind, screen: repair some doxy comments that had rotted with refactoring
* doxygen: disable warnings for undocumented things - it's most of our codebase
* snowbros.cpp: restore an output level setting lost in MCFG removal

There's an outstanding validation error from the HP98543 DIO video card
not using a valid crystal value.  Someone needs to find a picture of the
card and confirm or deny the existence of the 39.504MHz crystal.

The various start/reset overrides are bugs waiting to happen.  It's not
immediately obvious that the ones run earlier can end up being called
multiple times if subsequent ones throw missing dependencies exceptions.
They're a relic of when everything from the old C-style drivers was
thrown into classes all jumbled together.
2019-10-09 02:26:45 +11:00
AJR
4d3b24ae79 Fix full build (nw) 2019-10-07 18:39:45 -04:00
Robbbert
44e456fb5b (nw) basic52: fixed url 2019-10-06 23:34:29 +11:00
Vas Crabb
4b414fa45b clean up some .hxx abuse (nw) 2019-10-05 14:02:58 +10:00
Philip Bennett
2bc95fcd87 New working machine added
---------
Super Dead Heat [Phil Bennett]
2019-10-02 01:07:31 -07:00
cam900
5707a77cfe nmk16spr.cpp : Device-fied NMK 16 bit sprite hardware (#5697)
nmk16spr.cpp : Device-fied NMK 16 bit sprite hardware (original source by nmk16.cpp
* Fix flipped case
* Allow pdrawgfx drawing
* Correct clock source (Pixel clock mostly)
* Add value for sprite limitation
* Add notes
* nmk16.cpp, powerins.cpp : Convert sprite draw routine into nmk16spr.cpp

powerins.cpp : Verify clock related to on-board XTALs
2019-10-02 14:12:26 +10:00
angelosa
783a3bae2b alpha68k.cpp, snk68.cpp: converted to a common palette device and decoded it with NeoGeo specs, causing more accurate colors especially visible on dithered backgrounds [Angelo Salese] 2019-10-01 00:08:09 +02:00
Joakim Larsson Edstrom
dda15d1b6d eispc.cpp: Split out of the Ericsson PC (epc) from pc.cpp and added a serial keyboard 2019-09-26 14:06:08 +02:00
angelosa
2961878efe Split up alpha68k I and N games into own files (nw) 2019-09-26 01:01:54 +02:00
AJR
97d29e7220 New machines marked as NOT_WORKING
----------------------------------
Vortex (Island Design) [unknown]
2019-09-24 17:11:54 -04:00
AJR
3274284dbd ribrac, awetoss: Combine into a single driver and start fleshing it out (nw) 2019-09-24 14:20:04 -04:00
AJR
9afcd9c9b9 acorn_vidc: All right, move this back to src/devices/machine (nw) 2019-09-20 11:12:44 -04:00
AJR
0917a7295f acorn_vidc: Move to src/devices/video and fix full build (nw) 2019-09-20 10:13:01 -04:00
Angelo Salese
3e6b9f9756
Rewritten Acorn VIDC10 into own device file [Angelo Salese] #5671
* Improved raster effects on games that dynamically change palette on active frame;
* Added stereo sound support;
2019-09-20 15:38:24 +02:00
AJR
f1610825cb New machines marked as NOT_WORKING
----------------------------------
Cablenet 2039 Controller [Al Kossow, Bitsavers]
2019-09-20 07:45:50 -04:00
Patrick Mackinlay
4cfde79a28 4dpi: refactoring (nw)
* added dip switches for graphics hardware
* devicified xmap2
* overlay/underlay support
2019-09-19 17:21:01 +07:00
68bit
7a9f16d1f5 MEK6802D3: new machine
Motorola MC6802 evaluation kit. This emulator implements the Keypad and the
LED display, and the MEK68R2 CRT and parallel keyboard interface with support
from the D3BUG2 ROM, and the RS232 terminal support using the MEK68IO and with
support for this also included in the D3BUG2 ROM. Much of the monitor commands
appear to operate properly.
2019-09-18 13:18:03 +10:00
68bit
8c17acdc71 MEKD4 and D5: new machines (#5632)
* MEK6809D4: new machine

Motorola MC6809 evaluation board. This emulation implements the keypad and LED
7 segment display, the RS-232 terminal interface, and the MEK68R2 MC6845 CRT
and parallel keyboard interface. The RAM and ROM banking is not yet
implemented but most of the D4BUG monitor commands are supported.

* MEK6802D5: new machine

Motorola MC6802 trainer board. This emulation implements the keypad
and LED 7 segment display, and the RS-232 terminal interface even
though there is no monitor support for it. All the D5BUG monitor
commands appear to be working.
2019-09-16 23:01:16 -04:00
hap
b2d8689462 nl: prodigy has no netlist (nw) 2019-09-11 17:21:40 +02:00
couriersud
29575e4704 Fix SUBTARGET nl and move netlist makefile to gcc-9. (nw) 2019-09-10 21:40:24 +02:00
mooglyguy
451066eaca -saa7191: Skeleton device for the Philips SAA7191 Digital Multistandard Colour Decoder (DSMD), nw
-sgi_mc: Fixed a silly oversight which should fix an Indigo 2 regression, nw

-vino: Added kludge devcbs for I2C data out/in/stop, nw
2019-09-09 22:38:20 +02:00
fulivi
d4e2fbd306 HP9845: TACO driver re-written (#5601)
* hp9825: fixed a bug in 9825t

* hp9845: TACO driver re-written from scratch, DC100 tape separated into
a new device, various adaptations

* hp9845: "new TACO" renamed to just "TACO"
2019-09-09 16:05:41 -04:00
zzemu-cn
404b3e172f add mess nf500a h01jce
new computer nf500a h01jce
2019-09-05 22:04:42 +08:00
Olivier Galibert
e6ecaac339 vrender0: Fix link by moving mame/video/vrender0 to devices (nw) 2019-09-05 09:37:27 +02:00
hap
1826db774e New working machines
--------------------
Super Sensor IV [hap, Berger, Achim]
2019-09-01 21:47:51 +02:00
hap
0311e621b9 New machines marked as NOT_WORKING
----------------------------------
Chess Champion: Mark V [hap, Berger]
Chess Champion: Mark VI/Philidor [hap, Berger]
2019-09-01 12:26:06 +02:00
AJR
857cd30a22 New machines marked as NOT_WORKING
----------------------------------
Alpha Micro AM-1000 [Bitsavers]
2019-08-31 19:29:43 -04:00
Dirk Best
5c4048ad73 Emulate the Sega Billboard and hook it up to the STV driver
[biggestsonicfan, Dirk Best]

It's not shown by default. To view it, choose the layout
view 'Billboard'.
2019-08-30 14:04:13 +02:00
Patrick Mackinlay
194691c634 4dpi: graphics wip (nw) 2019-08-29 19:49:21 +07:00
braintro
388474a705 fix build 2019-08-27 22:11:53 -05:00
AJR
29a33decc0 Fix full build (nw) 2019-08-27 12:04:03 -04:00
DavidHaywood
021d89b7fe fix compile (nw) 2019-08-24 14:55:30 +01:00
Angelo Salese
f5b2fd9ee6
Major refactoring of VRender0 SoC device [Angelo Salese] (#5527)
*    Improved encapsulation between video and machine SoC periperals;
*    Split up HWs in individual files where they don't belong to Crystal System HW, makes future development easier;
*    Untangled reads/writes to draw/display bankswitches from screen_update, now they can be unthrottled safely;
*    Added CRTC screen raw parameters;
*    Add DMA hold feature and clear irq on mask writes, specific for P's Attack;
*    Improved Cross Puzzle flash loading, currently failing at POST for a SPU error;

nexus3d.cpp: add some preliminary work, currently does some VRender3d pipeline fill with a debug trick [Angelo Salese]

(out of whatsnew)
Some stuff definitely needs fine graining, like removing the few lines that are still necessary to configure the VRender0 from driver files, which I'm gonna do in my next feature branch.
2019-08-24 11:33:39 +02:00
Nigel Barnes
1e9643e4d2 New working machines
--------------------
Husky [Nigel Barnes, Phill Harvey-Smith]

New machines marked as NOT_WORKING
----------------------------------
Husky Hawk [Nigel Barnes, Phill Harvey-Smith]
2019-08-22 13:49:27 +01:00
AJR
3b0c5ea52b New machines marked as NOT_WORKING
----------------------------------
Colex VME-80186 [Al Kossow, Bitsavers]
2019-08-21 16:21:58 -04:00
AJR
8ae2eeb09e Fix build (nw) 2019-08-21 12:38:25 -04:00
hap
0617790932 add md4330/4332 lcd driver (nw) 2019-08-21 14:52:35 +02:00
hap
a067ce5b85 ssystem3: rewriting driver from scratch (nw) 2019-08-21 00:23:31 +02:00
AJR
de57ef7b97 atronic.cpp: Add more onboard devices, including new PCF8584 skeleton (nw) 2019-08-17 22:40:15 -04:00
Robbbert
57a0155782 (nw) mmd2 split out of mmd1 to its own source. Fixed cassette on mmd1 and mmd2. 2019-08-18 03:32:18 +10:00
Dirk Best
ab3e6b1228 New skeleton driver: SNES 4 Slot arcade switcher
Credits: ClawGrip, Roberto Fresca, Recreativas.org,
Dumping Union, System11, Dirk Best

This is based on an MCS-51 core, like the MK3 bootleg. They are
clearly based on the same code, so the MK3 bootleg was moved to
this driver.
2019-08-15 17:15:23 +02:00
Roberto Fresca
6c7ff97dac New working machines
--------------------
Potten's Poker stealth with Breakout front game
[Roberto Fresca, Grull Osgo, Pako Ortiz, Rockman, Recreativas.org]
2019-08-15 03:31:54 +02:00
Sandro Ronco
3b71b6c955 New working machine added
---------
Mephisto Mondial 68000XL [Sandro Ronco, Berger]
2019-08-14 23:10:15 +02:00
angelosa
597c4e2f8e pc9801.cpp: proper support for MEMSW device [Angelo Salese] 2019-08-14 17:31:38 +02:00
AJR
83e63dacf4 Add device emulation for DS17x85 series of MC146818-compatible RTCs with additional features 2019-08-14 09:12:12 -04:00
S.Z
a3588c18bf Enable precompiled header usage in the Visual Studio compiler (#5473)
* Enable precompiled header usage in the Visual Studio compiler
But only for libraries emu frontend precompile dasm optional
Also add emu.h include to hpcdasm.cpp

* Include emu.h in some disassembler sources to use precompiled headers

* Remove debug message
2019-08-13 13:20:53 -04:00
hap
1a33fe9945 New not working machine added
---------
Mephisto MM I [hap, Berger]
2019-08-10 21:54:31 +02:00
AJR
30373b66fd New machines marked as NOT_WORKING
----------------------------------
Microdar SPD [jordigahan, ClawGrip]
2019-08-09 19:13:07 -04:00
mahlemiut
d7267c1cdd pcipc: added a slightly more usable PCI S3 Virge/DX video card.
s3virge: added PCI interface, and linear framebuffer support. [Barry Rodewald]
2019-08-09 15:00:48 +12:00
Dirk Best
abbe4fec09 New not working machine
-----------------------
Digitek Micrologic 20 [ClawGrip, Dirk Best]
2019-08-07 13:12:42 +02:00
hap
fff1fe468b New working machine added
---------
Superstar 28K [hap Berger]
2019-08-06 20:11:23 +02:00
Julian Sikorski
0b5b13cf1e Fix building using system rapidjson 2019-08-05 21:16:54 +02:00
hap
f914fc8854 New working machine added
--------------
Mephisto [hap, Berger]
Mephisto II [hap, Berger]
Mephisto III [hap, Berger]

New working clone added
---------------
Mephisto Amsterdam (older) [Berger]
Mephisto London 16 Bit [Berger]
2019-08-04 23:22:02 +02:00
AJR
6a3e79f9a7 e9161: Add skeleton CRTC device; document SIO accesses (nw) 2019-08-03 10:51:44 -04:00
angelosa
fc90117d37 Whoops (nw) 2019-08-03 05:15:10 +02:00
angelosa
a7ec2bcff2 new NOT_WORKING machine
===================
Wanted (Sega) [Jamesv833, SeanC]

Out of whatsnew: boots with hugely wrong colors, inputs needs verifying.
2019-08-03 05:13:31 +02:00
Dirk Best
8632105397 juku: Floppy support WIP, enable BASIC 2019-08-02 16:15:04 +02:00
AJR
b218528e1f microdrv: Change image type to magtape; default clock; move to imagedev (nw) 2019-07-30 21:04:38 -04:00
Dirk Best
cae9d542aa New skeleton driver: Juku E5101 2019-07-30 17:02:04 +02:00
Dirk Best
c6b4027e43 bionicc: More cleanups
- Clean up notes, add TODO
- Use pulse_input_line for NMI
- Document coin lockout
- Document attribute RAM layout
- Background layer color is actually 3 bits
2019-07-30 17:02:04 +02:00
hap
30d9a40f3d prefix mephisto driver files(group them together) (nw) 2019-07-27 18:44:26 +02:00
hap
62e74625d2 New working machine added
---------
Constellation [hap, Berger]
2019-07-27 16:26:09 +02:00
hap
368d4e42be supercon: berger verified irq/beeper (nw) 2019-07-27 11:48:35 +02:00
Nigel Barnes
7e988f9563 microtan.cpp: The Microtan driver overhaul!
- Renamed driver microtan->mt65
- Added alternative monitor ROMs: TANBUG V3.1, TANBUG V.3B, TUGBUG V1.1, TANBUG V1.
- Replaced XBug with original 0.75MHz version, fixes cassette loading.
- New machine Micron, consisting of MT65 and Tanex boards only.
- Implemented the Microtan motherboard backplane and moved Tanex to slot device.
- Additional boards implemented: Bulldog Sound Generator Board, Mousepacket Designs Colour VDU Card, Tangerine Tandos Board (not working), Tangerine High Resolution Graphics Card (monochrome), Tangerine High Resolution Graphics Card (colour), Tangerine Tanram Board, TUG 64K RAM Card, TUG Programmable Graphic Module Card,  Microtanic Video 80/82 (not working), Ralph Allen 32K EPROM-RAM Card (incomplete), Ralph Allen Disc Controller Card (not working), Ralph Allen Colour VDU card
- Added Microtan 6809 System, not yet working.
- Added Space Invasion (ETI), the DIY project from Electronics Today based on the Microtan.
2019-07-26 12:46:24 +01:00
hap
8aff7550a5 New working machine added
-------
Debut-M [hap, Berger]
2019-07-25 01:56:03 +02:00
Nigel Barnes
1003cd2bf5 New working machines
--------------------
Hektor III [Nigel Barnes, jltursan]

New machines marked as NOT_WORKING
----------------------------------
Hektor II [Nigel Barnes]
2019-07-23 15:11:11 +01:00
Robbbert
65054fc4f1 (nw) split binbug into 3 sources. 2019-07-22 01:22:40 +10:00
hap
0ba5d412a4 saitek_corona: move to own driver (nw) 2019-07-21 00:36:33 +02:00
AJR
c968f79282 New machines marked as NOT_WORKING
----------------------------------
Space Byte 8085 [AJR, S100Computers.com]
2019-07-19 19:16:25 -04:00
Ivan Vangelista
98a4bcf1f7 new not working machines
--------------------------------------
Lucky 21 [Team Europe]
Lucky 21-D [Team Europe]
Lucky 25 [Team Europe]
Lucky 37 [Team Europe]
2019-07-19 18:32:38 +02:00
AJR
63bda946e2 poly88, poly8813: Bus expansion
- Replace additional driver RAM with S-100 bus
- Convert Video Terminal Interface into a S-100 bus device
- Add skeleton S-100 bus device for SSSD disk controller
2019-07-18 20:24:03 -04:00
hap
4be0e75517 aci_prodigy: add chesspieces (nw) 2019-07-14 02:01:28 +02:00
Nigel Barnes
c8dc4bb558 New machines marked as NOT_WORKING
----------------------------------
H/H Tiger [Centre for Computing History]
2019-07-13 02:11:08 +01:00
AJR
69fd6c1dc4 pitagjr: Move set and accompanying notes to geniusjr.cpp (nw) 2019-07-12 18:29:31 -04:00
AJR
4105acd1ed cw7501, cdr4201: Transform skeleton drivers into SCSI bus devices 2019-07-11 17:08:12 -04:00
AJR
60d4805d55 Move modern SCSI CD/HD devices into src/devices/bus/nscsi (nw) 2019-07-11 14:20:32 -04:00
AJR
12eb294124 New machines marked as NOT_WORKING
----------------------------------
CD-R 4210 (v1.13) [Metropoli BBS Archive]
2019-07-10 23:49:04 -04:00