Commit Graph

1913 Commits

Author SHA1 Message Date
cam900
24d5367e8f
Implement TT5665 emulation (#6841)
* Implement TT5665 emulation
Similar as OKIM6295, but with Support more ROM capacity and phrase spaces, 2 sound outputs
used in bowltry, igs_m036 (for some hardwares with TT5665, ex: cjddzsp)
bowltry.cpp: Fix game name (BOWLING TRY! in both poster and PCB)

* bowltry.cpp: Typo

* Fix endline

* tt5665.cpp: Reduce unnecessary argument
2020-10-15 14:18:21 -04:00
Vas Crabb
d256f069a5 -3rdparty/expat: Update to 2.2.10."
-Fixed tiny build (missing s11c_bg_device) and unused lambda capture in emu/rendlay.cpp.
2020-10-15 04:28:42 +11:00
Vas Crabb
c751a5348a -emu/natkeyboard.cpp: Allow keyboard devices to be enabled/disabled.
This fixes the "typing on all keyboards at once" issue.  You can now
enable and disable keyboard/keypad inputs per device in the Keyboard
Mode menu.  Default is to enable the first device with keyboard inputs,
and all device with keypad inputs but no keyboard inputs.  The settings
are saved in the CFG file for the machine.

Typing in natural keyboard mode only ever types on one keyboard at a
time, but now you can control which keyboard it types on, as it will be
the first enabled keyboard.

You can easily try this out with something like:
mame64d zorba -rs232 terminal cpm

-ui/inputmap.cpp: Show device descriptions as well as tag paths.

-mac128.cpp: Fixed mouse axis wrap compensation, cleaned up mouse code,
eliminated static variables for mouse input state.

You could see the issue with wrap detection easily enough just by
running mac128k/mac512k/macplus and tapping the arrow keys to move the
mouse one pixel at a time.  As you moved past the point where the axis
count wrapped, it would move one pixel in the opposite direction.

There were two function static variables related to mouse input state,
probably still lurking from when the code was initially made to use a
driver state class.  This obviously messes with save states and prevents
multiple instances.

- bus/a2bus/mouse.cpp: Fixed mouse axis wrap compensation.

This device had the same bug with wrap compensation as mac128k.cpp.
2020-10-11 02:58:46 +11:00
Patrick Mackinlay
e67a06058f ns32202: new device (wip) 2020-10-10 13:28:41 +07:00
Ryan Holtz
dbea17a536 Software list items promoted to working
-----------------------------------
vsmile_cart: V.Smile Tanz Mit Center (Germany), V.Smile Défi Gym (France), Gimnasio Interactivo V.Smile (Spain)

-vsmile: Added support for the Jammin' Gym Class dance mat. [bmx, Ryan Holtz]
2020-10-10 00:44:01 +02:00
Jonathan Gevaryahu
63dc4b41ed
Major update for HC55516 CVSD audio device and related filtering, as well as hooking it to drivers. (#7290)
* Split hc55516 core into separate cores/subclasses for hc55516 and hc55532 (new 'digital' implementation based on decap/die tracing) as well as mc3417 and mc3418 (old existing 'analog' implementation left alone) and hooked the hc55516 and mc3417 implementations to the appropriate hardware drivers. This should vastly improve CVSD sound quality in drivers that use the hc55516. [Lord Nightmare, Sean Riddle]
* Made Exidy's mouse trap use a timer to clock the mc3417 and update the state readable by the z80 rather than relying on the mc3417 to accept a clock parameter and update the z80 state via a callback. The timer implementation ensures proper synchronization and prevents missed clock transitions from the z80 side causing noise in the CVSD audio. [Lord Nightmare]
* Added a biquad-based 2nd order filter emulation for an audio stream (to go along with flt_rc 1st order filter emulation) and hooked it to Exidy's mouse trap (mc3417) and williams drivers (hc55516) following the original schematics. For hc55516 this is necessary as the original chip produces a very pronounced audible 16khz 'carrier' in its output audio even on the real chip, and these filters suppress this. This also happens to a lesser extent with the 8khz quieting waveform noise on both mc3417 and hc55516. [Lord Nightmare]
* Made Williams System 11 and s11_bg relative sound mixing more accurate to the original audio flow on the PCB itself. [Lord Nightmare]
* Switched Williams Joust 2 to use the s11_bg common sound device rather than its own implementation. [Lord Nightmare]
2020-10-10 04:25:40 +11:00
r09
dd73e03c08
fmtowns: add devices for the SCSI card slot and the FMT-121 card (#7306)
* fmtowns: add a SCSI card slot for the original models
- Add a slot device for the Model 1/2 dedicated SCSI slot
- Add a device for the FMT-121 SCSI Card
- Modify the I/O maps and machine configurations so the slot and the
  integrated controller don't overlap
2020-10-08 03:20:32 +11:00
Vas Crabb
b90fd35515 Various improvements to image file handling:
Moved MS DIB parser out of ICO file reader and made it available for
artwork and layout images.

Added more efficient I/O and better error checking for JPEG file loading
(MAME will no longer exit immediately on a bad JPEG file).

Made caller responsible for opening files for loading images, to avoid
decompressing images used in ZIP/7z artwork multiple times.

Added support for JPEG and Windows DIB to picture_image_device.

Added support for SVG image files in external artwork.

Added support for using I/O port value for animation state and masking
animation state values.

Made bounds elements more flexible in layouts.

Reworked headers to reduce dependencies.

Updated layout file format documentation.
2020-10-08 02:04:31 +11:00
Patrick Mackinlay
def86684ac ns32000: avoid potential slave dependency issue 2020-10-06 09:54:38 +07:00
Patrick Mackinlay
a89f9b274e ns32081: new device 2020-10-05 16:02:23 +07:00
couriersud
3a95d1e4fd netlist: Convert driver filenames to lower case. 2020-09-30 08:38:06 +02:00
Olivier Galibert
5352cdbc5e lc58: Add disassembler [O. Galibert] 2020-09-29 13:12:14 +02:00
David Haywood
3cd14b2e0a
machines promoted to WORKING (plug play) (#7299)
machines promoted to WORKING
----
TV MegaMax active power game system 30-in-1 (MegaMax GPD001SDG) [David Haywood]

* added files for the VT APU type, currently no extra functionality, but will be built upon
2020-09-29 19:05:21 +10:00
Justin Kerk
56f30e3ca0 Remove embed files unintentionally added to Emscripten build 2020-09-28 10:04:36 -07:00
Emmanuel Vadot
e996e148f3
FreeBSD fixes (#7295)
* psixptty: Fix for FreeBSD

We need to check for __FreeBSD__ not __FreeBSD_kernel__

* FreeBSD: Use gl includes from pkg-config

FreeBSD doesn't install the includes from 3rdparty software in a default
location so use pkg-config to get the correct path.

* FreeBSD: genieos is named simple bsd
2020-09-27 20:41:14 +10:00
Vas Crabb
6e807013c5 Disable SOUND_DEBUG for non-debug builds, and srcclean 2020-09-27 11:00:56 +10:00
Nigel Barnes
e7b852c7a3 bus/bbc/1mhzbus: Added the Acorn Music 500, Hybrid Music 5000 Synthesiser, Hybrid Music 3000 Expander, and Peartree Music 87 Synthesiser. 2020-09-25 11:06:45 +01:00
couriersud
1bb99466bc netlist: code refactoring
* use default move and copy constructors
* various minor edits like adding noexcept
* removed a lot of inline keywords - you can't beat the compiler
2020-09-24 15:22:22 +02:00
Nigel Barnes
70d8b5deb8 bus/bbc/userport: Added the Hybrid Music 4000 Keyboard. 2020-09-22 19:52:14 +01:00
David Haywood
04672777eb
pcp8718 / pcp8728 / bkid218 - make menu controller a shared device (#7270) 2020-09-21 13:17:25 -04:00
arbee
d3138d7dd4 apple2: preliminary support for the Sider SASI card and the Xebec OEM version [R. Belmont] 2020-09-20 22:41:42 -04:00
couriersud
63efcfcb85 netlist: code refactoring.
- rename mat_cr.h to pmatrix_cr.h
- Optimization to the gmres solver.
- Simplifcation of vector operation code
2020-09-20 17:34:54 +02:00
couriersud
0348faf9ae
Merge pull request #7214 from Lord-Nightmare/master
netlist: devices for MCM14524, CD4029, CD4030, CD4042, CD4049, CD4076 [Lord Nightmare]
2020-09-18 18:44:58 +02:00
couriersud
ed6900b990
emscripten: netlist and OpenGL improvements. (#7254)
* Most OpenGL link issues fixed. Two remain from drawogl.cpp.
    This isn't working anyhow.
* "-video accel" now uses WebGL. This allows GL based scaling and
    provides a performance improvement.
* Fixed pong and other games by adding another function to the
    exception whitelist
* Target now is mame.html. This allows emrun to be used for testing.
    mame.js is created as well and thus the current behaviour
    unchanged.
2020-09-18 23:06:48 +10:00
Lord-Nightmare
bff0710c57 Netlist devices for MCM14524, CD4029, CD4030, CD4042, CD4049, CD4076 [Lord Nightmare] 2020-09-17 22:56:49 -04:00
couriersud
c127811083 netlist: Move ICL8038_DIP and NE556_DIP to core.
* Remove code duplication.
2020-09-17 19:44:51 +02:00
Patrick Mackinlay
eb3d3ccb50 machine.lua: revert unwanted addition 2020-09-17 19:09:37 +07:00
Patrick Mackinlay
4b9cef80f2 news_68k: incorporate dmac changes
* NEWS-OS now boots and runs in serial console mode
2020-09-17 19:06:09 +07:00
MetalliC
bd89e921a3 fix build 2020-09-17 12:22:03 +03:00
Erwin Jansen
9a0c63f673
Add MDCR support for P2000t (#7215)
This adds support for the mini digital cassette recorder that can be
found inside a P2000t. This implementation is based on documentation
that can be found in https://github.com/p2000t/documentation.

In memory of NPM Jansen, who taught me all the magic of bits and bytes.
2020-09-17 18:39:48 +10:00
AJR
7e121d68bb kl5c80a12, kl5c80a16: Added emulation of KP63(A) Timer/Counter unit. This improves timings in animalc, haekaka, pyenaget and tdoboon.
* animalc: Pile kludge upon kludge for poorly understood video timing register
* gocowboy, itazuram: Increase frequency of one timer interrupt (and hopper timing in gocowboy)
* kc82, kp69: Modernize state_add syntax
2020-09-14 23:32:58 -04:00
couriersud
48fada3c34 netlist: remove obsolete headers from netlist.lua 2020-09-13 12:20:11 +02:00
cam900
612bf6546f Device-fied PRO-CT0
for protection, aka ALPHA-8921(in Some later 80s alpha denshi PCBs) or SNK-9201
prot_fatfury2.cpp: Convert protection into alpha_8921.cpp device
2020-09-13 18:51:53 +10:00
couriersud
ca31c844cd netlist: move to generated header and link support files files.
* Removed device and macro header files.
* All of those can be generated automatically so going forward there is
no need for these any longer.
* Introduced the modules concept. Modules are netlists for which
automatic lib entries are generated.
* Going forward you just store them in macro/modules and they will be
automatically registered as device elements.
* You need to do a "make generated" is src/lib/netlist/build
* Some_device.cpp still needs to be added to netlist.lua
* Added documentation on how to add devices to netlist.
* Please refer to adding_devices.md for more information.
2020-09-12 23:20:16 +02:00
Nigel Barnes
e5b039078f bus/electron/cart: Added the Pace RS423 Communications cartridge. 2020-09-07 16:58:02 +01:00
Michael Zapf
82b7fb4ece ti99: Added SID Master expansion card. 2020-09-02 00:04:02 +02:00
Rhett Aultman
49466dc4ad
bus/a2bus: Added Uthernet card emulation for Apple IIgs (#7090)
* Ported Cirrus Logic CS8900A Crystal LAN MAC emulation from VICE and hooked it up to Apple II card device.
* Adds Ethernet networking support for Apple IIgs.
2020-08-31 11:22:32 +10:00
Vas Crabb
97a409b2a9 formats/flopimg.cpp: Use appropriate standard exceptions for reporting errors, allowing libemu to be removed from imgtool and floptool. 2020-08-30 17:22:17 +10:00
Nigel Barnes
471781f99a bus/bbc/userport: Added the Sprow LCD Display. 2020-08-27 19:47:53 +01:00
couriersud
0aa5aea84f netlist: Fix various issues around include directories.
* removed include directory src/lib/netlist from various genie files to
avoid potential issues.
* Code using netlist should use #include "netlist/*".
* Updated includes.
* Fixed standalone makefile depend target to properly deal with relative
paths.
2020-08-25 19:41:32 +02:00
Nigel Barnes
2027f49eb3 bus/electron: Added the P.R.E.S. AP1/AP6 and First Byte Printer Interface devices. 2020-08-23 22:15:36 +01:00
Nigel Barnes
fc785cecbc bus/electron: Added the JAFA Mode 7 Display Unit. 2020-08-19 22:59:51 +01:00
arbee
9006bf69c1 apple2: added HAL Labs Gizmo digital joystick adapter [R. Belmont, Golden Child] 2020-08-16 14:59:44 -04:00
Ryan Holtz
e2231ddcd2 -atarittl: Added netlist for Tank. currently runs at about 0.005% of full speed, unsure why. 2020-08-16 20:04:34 +02:00
Nigel Barnes
ea75086da7 bus/bbc/fdc: Added the Kenda Professional DMFS and Microware/UDM DDFS boards. 2020-08-16 16:14:07 +01:00
ajrhacker
90a55f779d
Merge pull request #7063 from belegdol/disable-obsolete-imgui-functions-consistently
Define IMGUI_DISABLE_OBSOLETE_FUNCTIONS consistently
2020-08-12 15:00:54 -04:00
couriersud
87b702b31f netlist: more include untangling.
* nl_base.h now basically only includes files from core.
* all headers in core compile on their own.
2020-08-12 20:17:10 +02:00
Julian Sikorski
65b0df8761
Fix non-x86 build and try to make sure it does not break silently again (#7041)
* Do not build x64 DRC backend when C backend is forced
* New CI target (mametiny + kinst)
* Switch travis to CI target
* Switch appveyor to CI target
2020-08-12 12:54:22 -04:00
Julian Sikorski
1096db17b6 Define IMGUI_DISABLE_OBSOLETE_FUNCTIONS consistently
IMGUI_DISABLE_OBSOLETE_FUNCTIONS was defined in osd/modules.lua but not
in 3rdparty.lua. As a result, two different variants of struct ImGuiIO
were being defined, causing a C++ One Definition Rule violation
2020-08-12 18:22:59 +02:00
hap
138a281c6c odyssey2: add preliminary Videopac+ C7420 Home Computer Module emulation 2020-08-12 14:41:56 +02:00
hap
19f596c3ad untangle bus/odyssey2/rom.cpp 2020-08-12 00:20:49 +02:00
hap
9baaf19580 odyssey2: add support for 16KB bankswitched roms 2020-08-11 22:43:18 +02:00
Vas Crabb
2a342ec7c9 cpu/nec: use anonymous namespaces to avoid ODR violations with enums 2020-08-11 16:57:47 +10:00
couriersud
9809a7b991 netlist: align naming of files within the macro folder.
* Use a consistent naming scheme. This is a preparational step towards
improved parsing performance.
2020-08-10 18:31:34 +02:00
couriersud
923de88abb netlist: more header file separation 2020-08-08 20:10:12 +02:00
arbee
6fe3a9fa7c apple2: Added support for the CMS SCSI II Card [R. Belmont, Apple II Documentation Project] 2020-08-08 12:56:58 -04:00
Ryan Holtz
e404f347c6 -fireone: Committed netlist for couriersud to have a look at. 2020-08-06 20:16:22 +02:00
Justin Kerk
d2b7643753 netlist: Better fixes for Emscripten (#7031)
Silence indentation warning in 3rdparty/ under Emscripten (#7031)
2020-08-04 23:53:52 -07:00
Justin Kerk
2dd0985999 netlist: Fix build under Emscripten (#7031)
netlist: Fix crash under Emscripten by disabling aligned optimizations
2020-08-05 05:58:14 +00:00
hap
8aa4963218 odyssey2: add support for 4in1 cartridge 2020-08-03 02:51:42 +02:00
fulivi
206767bf56
hp9825: hp98036 serial I/O module added (#7024) 2020-08-01 12:35:59 -04:00
Aaron Giles
9414a219a9 netlist: Added CD4017/4022 devices.
* Also contains squashed clang signedness fixes
2020-08-01 18:27:21 +02:00
Aaron Giles
c0ecd68341 netlist: Device refactoring
* Move DIPs for 82S16, 82S115, and 2102A devices into nlm_proms
* Moved 7448 DIP to a macro. Replaced 7442 with truthtable and macro.
* Moved 74LS629 DIP into macro.
* Expand truthtable to handle 10 outputs.
2020-08-01 18:27:17 +02:00
couriersud
c7359e0aea netlist: Fix an issue during proxy hookup.
* Add cd4053 to netlist.lua
* Recreated nld_devinc.h
2020-07-28 20:44:07 +02:00
AJR
ff5144809c sigmab98.cpp: Change CPU to new KC82-derived type for Sigma/Banpresto games
* dashhero: Add back NVRAM (and more of it) now that memory map has been corrected

* getbass: Add KL5C80A16 I/O CPU to configuration
2020-07-27 22:25:18 -04:00
AJR
4aae75d753 kl5c80a12: Emulate interrupt controller 2020-07-27 14:22:58 -04:00
fulivi
943fc34f39
HP IPC: support for I/O slots and 82919 serial card added (#7001)
* mc68681: tx/rx clocking from timer fixed, added partial support for
break signal

* hp_ipc: support for I/O slots added, 82919 serial I/O card added
2020-07-27 14:12:05 -04:00
couriersud
494690081b netlist: separate nl_base.h into separate header files.
* This clean-up exercise will hopefully make it easier to navigate the
core code. Another long term goal is to further straighten the object
model.
2020-07-25 14:47:22 +02:00
MetalliC
cd02b2f1fd bus/spectrum: add common printer interfaces: ZX Lprint, ZX Lprint III, Kempston Centronics E Interface ('flat' and 'upright' models) 2020-07-25 02:59:28 +03:00
hap
b44810404e added Hughes HLCD 0438 LCD Driver device 2020-07-24 13:31:36 +02:00
Nigel Barnes
de637b8dbb bus/bbc/1mhzbus: Added the Torch Hard Disc Pack. 2020-07-22 12:06:43 +01:00
Dirk Best
8a21783e19 centronics: Add SAMDAC device 2020-07-20 19:22:38 +02:00
Dirk Best
f5ded52474 samcoupe: Add support for the S D IDE Adapter 2020-07-20 13:17:46 +02:00
AJR
9e23d2184a Add ACB-2072 BIOS dumps and skeleton device [rfka01, minuszerodegrees.net] 2020-07-18 20:12:03 -04:00
68bit
bd0b4d9dd0
New WORKING machines
New WORKING machines
--------------------------
Motorola M6800 EXORciser (M68SDT) [68bit]
2020-07-18 08:12:28 -04:00
MetalliC
896a982d1b spectrum: implemented Swift Disc and Swift Disc II interfaces 2020-07-17 00:50:06 +03:00
cam900
e07a7f19b5
Implement FDS sound emulation (#6953)
* Implement FDS sound emulation
2020-07-14 16:56:22 -04:00
MetalliC
fd8088de83 spectrum: add "SDI" VC1541 disk interface (not working), Logitek Proceed1 notes. 2020-07-14 19:24:14 +03:00
Nigel Barnes
d6cbfb3814 bus/bbc/userport: Renamed palette.h->palext.h 2020-07-13 14:34:32 +01:00
Dirk Best
4d89de93c0 samcoupe: Rework driver (WIP)
- Rewrite memory system, now allows supporting expansion devices and better prepared for contention emulation
- Add expansion interfaces for rear expansion, drive ports and mouse
- Now supports the following rear expansion devices:
  * Blue Alpha Sound Sampler
  * Dallas Clock
  * 1 Mb Interface
  * SAMBUS 4-slot Expansion Interface (with clock)
  * SID Interface (6581 and 8580 variants)
  * S.P.I. SAM Parallel Interface
  * Voicebox
- Added support for the Atom HDD interface, used in place of a floppy drive
- Simplified and cleaned up driver
- Temporarily deactivated joystick code, interferes with the keyboard
2020-07-13 11:22:13 +02:00
MetalliC
97042aa7f9 spectrum: add Logitek Proceed 1 C1541 disk interface (not fully working yet) 2020-07-12 22:58:58 +03:00
Ryan Holtz
68f6988509 -midzeus: Moved some Zeus2-specific members into the appropriate subclass, and added more state registration. [Ryan Holtz]
-tsb12lv01a: Added a skeleton device for the TI TSB12LV01A IEEE 1394 link-layer controller. [Ryan Holtz]

-ibm21s850: Added a skeleton device for the iBM 21S850 IEEE 1394 PHY controller. [Ryan Holtz]
2020-07-11 21:21:08 +02:00
MetalliC
fb7f6b7841 spectrum: implemented Speccy-DOS and FloppyOne DOS interfaces, add "IC-DOS" Beta Plus clone 2020-07-11 17:34:41 +03:00
68bit
5972474a21
New machines added as WORKING
New machines added as WORKING
---
Motorola EXORterm 155 [68bit]
2020-07-10 15:41:52 -04:00
Aaron Giles
a6239d582b netlist: Add 74113 device. 2020-07-10 20:04:17 +02:00
AJR
cff37cc7ee Remove x86emit.h 2020-07-10 09:21:14 -04:00
fulivi
729b27d7c1
hp_ipc: added beeper (#6893) 2020-07-02 14:04:21 -04:00
68bit
d5187fe74c MDOS disk format support
Motorola DOS, used on the EXORciser etc.
2020-07-03 00:16:35 +10:00
couriersud
319be2dfd2 netlist: code maintenance and bug fixes.
* palloc.h/pmatrix2d.h: Fix static_assert warnings at the origin.
* Rework hints to broaden their use and fix NC hint.
* 74377: use NC hint
* plists.h: Fix debugging in MSVC
* Include cleanup: Move everything not needed by netlists from
nl_setup.h into core/setup.h
* Fix some clang tidy warnings
* srcclean
2020-07-01 20:59:04 +02:00
MetalliC
2a2a45c024 spectrum: implemented Kempston Disc Interface 2020-07-01 19:47:53 +03:00
Vas Crabb
802de3995d Slotified Mac 128k/512k/512ke/Plus keyboard port.
Available keyboards are us (M0110, U.S.), gb (M0110B, British), fr
(M0110F, French), pad (M0120F, numeric keypad with passthrough port)
and plus (M0110A, U.S. with integrated numeric keypad).  The mac128k,
mac512k and mac512ke drivers default to the numeric keypad with the
U.S. keyboard connected to the passthrough port; the macplus driver
defaults to the U.S. keyboard with integrated numeric keypad.

Note that the numeric keypad may seem strange.  Four of the operators
work as cursor arrows if you don't hold shift.  There is a comma on one
of the keys, but by the time System 6 was released, Apple had decided
an equals sign was more useful, so that's what it will produces on
newer system versions.  The U.S. keyboard with integrated numeric
keypad emulates these aspects of the stand-alone keypad - pressing the
operator keys on the keypad sends fake shit key down/up events, and
using the arrow keys while holding shift will produces operator
characters rather than selecting text.

The ISO layout keyboards (M0110B and M0110F) produce different scan
codes to the ANSI keyboards (M0110 and M0110A) but they don't report a
different identification byte.  To use an ISO keyboard, you must open
the Keyboard control panel and change the layout to International (and
change it back to Domestic if you switch back to an ANSI keyboard).

This doesn't actually work at the moment due to issues with 6522 VIA
emulation, but it will work with macplus sys603 if applied on top of
revision 963a2c166d.
-----------------------------------------------------------------------
2020-07-01 02:37:55 +10:00
AJR
040c88bf1d New machines marked as NOT_WORKING
----------------------------------
Korg WaveStation EX [DBWBP]
Korg WaveStation A/D [DBWBP]
Korg WaveStation SR [DBWBP]

-Add H16 disassembler and skeleton HD641016 CPU device [AJR]
2020-06-28 20:03:13 -04:00
Julian Sikorski
a8bd59055e Only build asmjit on x86 and x86_64 2020-06-27 15:42:47 +02:00
Ryan Holtz
5b115c6fd3 -zaurus: Added skeleton Intel SA-1110 device. Added proper OS dumps for the SL-5500. [Ryan Holtz, O. Galibert] 2020-06-22 22:47:03 +02:00
MetalliC
fc7f76dc12 this format was redundant (nw) 2020-06-22 12:43:34 +03:00
AJR
562cb2139f New machines marked as NOT_WORKING
----------------------------------
Kawai KSP10 Digital Piano [DBWBP]
2020-06-21 20:41:49 -04:00
Vas Crabb
01661be41c srcclean and cleanup (nw) 2020-06-21 14:59:50 +10:00
MetalliC
5c3f020bf8 spectrum.cpp: add Didaktik D40/D80 disk interface 2020-06-21 01:51:11 +03:00
Ryan Holtz
9cc98f0b62 -bgfx: Corrected a data overrun in the d3d12 backend from allocating only enough texture data for width*height, not rowpixels*height. [Ryan Holtz] 2020-06-20 15:37:14 +02:00
AJR
5b502b74c5 Correct cycle counts for TLCS-900/H CPU core; prepare to add support for original TLCS-900 devices 2020-06-19 23:51:50 -04:00
AJR
9c36794ded tlcs900: Split derived types into separate files; no need for separate 8-bit and 16-bit maps now (nw) 2020-06-18 18:15:41 -04:00
AJR
45850cd0be Fix OS X build on older Xcode versions (nw) 2020-06-18 11:17:37 -04:00
Nigel Barnes
19437e461e bus/bbc/fdc: Added Solidisk DDFS Issues 1/2 and DFDC disk controller boards. 2020-06-15 17:12:06 +01:00
couriersud
e949e9c29d netlist: Performance improvement and refactoring. [Couriersud]
Kidniki now achieves up to 910% when run with static solvers and with
nltool. That is significant better than the 860% we have seen
previously.

This increase is driven by using a global memory pool in the solver
code.

In addition the following refactoring and code maintenance work is
included. Please excuse the large commit, some of this took interfered
with other work and the detail development steps were ugly.

- gsl support: This commit adds pgsl.h which implements a very limited
  number of the functionality of the gsl header described in the c++ core
  guidelines.
- clang-tidy fixes
- A significant refactoring of palloc.h. Aligned hints were removed,
  they added complexity without a significant performance gain. Vector
  operations should better be done on special spans/views.

The code has been tested on linux with g++-7, g++-9, clang-11.
On Windows mingw-10 and VS2019, OSX clang-11.
2020-06-13 15:49:35 +02:00
AJR
18f663e49b Fix OS X build with Xcode 7 (nw) 2020-06-12 18:22:15 -04:00
Patrick Mackinlay
19214dd8e6 asmjist: sync with upstream (nw) 2020-06-12 11:55:10 +07:00
Olivier Galibert
1edc4eb359 pic1670: Add a disassembler [O. Galibert] 2020-06-11 23:14:04 +02:00
Sandro Ronco
cdb5ca42c6 Hyperscan updates: [Sandro Ronco]
- Added emulation of the SPG290 CDServo
- Added joypad inputs
- Added RFID card support
- Split SPG290 PPU, Timers and I2C into separate devices
- Added a softlist for the RFID cards
2020-06-11 19:54:45 +02:00
AJR
763ee4e215 tti: Convert driver to QBUS device (qts1) 2020-06-07 14:40:02 -04:00
Andrew Green
77cf3b0413
Support Colecovision Megacart. (#6788)
* Support Colecovision Megacart.
Assume that a rom file that is more than 32K in size is a megacart
and that it should be bankswitched using Megacart protocol.

* Put megacart functionality in its own cartridge type.
2020-06-05 00:15:58 +02:00
AJR
f84e4d036b New machines marked as NOT_WORKING
----------------------------------
Novation BassStation Rack Analogue Synthesizer Module [DBWBP]
Novation Drum Station [DBWBP]
Novation Super Bass Station [DBWBP]

Add disassembler and skeleton CPU device for Panasonic MN1880 architecture [AJR]
2020-06-04 16:21:46 -04:00
hap
7bff87f979 msx: add matra ink cartridge (nw) 2020-06-04 15:09:51 +02:00
David Haywood
4f7c1a03ed
prepare SunPlus rendering code for sharing between SPG2xx and GPL16250 (nw) (#6780) 2020-06-02 14:10:17 -04:00
couriersud
3fd176a7a6 netlist: device factory enhancements. (nw)
Factory elements can now pass additional parameters to device
constructors. This makes the design of interface objects like analog
callbacks easier.

The change also allowed to remove some "deep" calls into the core from
the MAME interface in netlist.h
2020-06-01 19:59:52 +02:00
AJR
d423a96969 Revert "Fix Mac Clang build (nw)"
This reverts commit e84a738432. The problem this addresses was fixed in bc0c1b74c7.
2020-05-31 11:40:20 -04:00
R. Belmont
e84a738432
Fix Mac Clang build (nw) 2020-05-30 17:00:56 -04:00
R. Belmont
531b2fd3ba
Merge pull request #6756 from pmackinlay/asmjit
asmjit: new 3rdparty library
2020-05-30 12:57:14 -04:00
AJR
0b345e7bb6 New machines marked as NOT_WORKING
----------------------------------
JoMoX XBase 09 Midi Controlled Analogue Drum Module [DBWBP]

Add disassembler for PIC17 family and preliminary PIC17C4X emulation [AJR]
2020-05-29 16:32:11 -04:00
Patrick Mackinlay
45615b7f4b asmjit: new 3rdparty library 2020-05-28 20:24:40 +07:00
Sergey Svishchev
963e16d63c Add MM58174 real time clock and use it (nw) 2020-05-26 21:31:20 +03:00
couriersud
10e4f10d41 netlist: split plists.h and fix nvcc compile for 10.2 (nw)
plists.h was splitted into plists.h, pmulti_threading.h and
ptimed_queue.h. In addition removed plists.h from a number of files it
wasn't used in.

Certain minor adjustment needed to be made for cuda toolkit 10.1 and
10.2.
2020-05-25 23:57:49 +02:00
AJR
0fa6e7eb86 Debugger expression and memory access overhaul
- Memory references in expressions no longer default to the console's visible CPU if no device name was specified, except when entered through the console itself. Expressions in view windows now use the context of the currently selected device instead.
- The pcatmem debug command and similar qt mouseover function now produce an error message if the initial address translation fails.

Related internal changes (nw)
- The debugger_cpu class no longer interprets memory accesses. The existing routines have been moved into symbol_table (which used to invoke them as callbacks), and reimplemented in most other places. Thecode duplication is a bit messy, but could be potentially improved in the future with new utility classes.
- The cheat engine no longer needs to hook into the debugger_cpu class or instantiate a dummy instance of it.
- The inclusion of debug/express.h within emu.h has been undone. Some debugging structures now need unique_ptr to wrap the resulting incomplete classes; hopefully the performance impact of this is negligible. Another direct consequence is that the breakpoint, watchpoint and registerpoint classes are no longer inside device_debug and have their own source file.
- The breakpoint list is now a std::multimap, using the addresses as keys to hopefully expedite lookup.
- The visible CPU pointer has been removed from the debugger_cpu class, being now considered a property of the console instead.
- Many minor bits of code have been simplified.
2020-05-25 11:15:39 -04:00
Olivier Galibert
22513fb6fe emumem: A little more speedup. cache and specific change syntax, and are not pointers anymore [O. Galibert]
The last(?) two changes are:

- Add a template parameter to everything (theoretically the address
  space width, in practice a level derived from it to keep as much
  compatibility between widths as possible) so that the shift size
  becomes a constant.

- Change the syntax of declaring and initializing the caches and
  specifics so that they're embedded in the owner device.  Solves
  lifetime issues and also removes one indirection (looking up the base
  dispatch pointer through the cache/specific pointer).
2020-05-25 16:42:57 +02:00
couriersud
de615ac138 netlist: move penum into own header file. (nw) 2020-05-24 10:48:06 +02:00
arbee
1c684902e2 apple2: introduce new accurate IWM controller and switch apple2cr1/3/4 to use it [O. Galibert, R. Belmont] 2020-05-23 19:28:13 -04:00
Sergey Svishchev
9a3245009e pdp11: qbus skeleton, pc11 2020-05-23 12:35:22 +03:00
couriersud
6141fa4a9c netlist: Fix performance issues and VC2019. [Couriersud]
For reasons unknown to me compile optimizations do not behave for
template code. If the implementation is in separate compile units, the
code compiles and performs.
2020-05-22 01:15:18 +02:00
couriersud
5a43cc6432 netlist: consolidate 9316-type counters. [Couriersud]
This needs more attention since for certain compilers there is a
considerable performance degregation. It looks like this is only
triggered if too many variants are declared in one cpp file and the
compiler stops inlining.
2020-05-22 01:15:18 +02:00
tim lindner
eb2db91c65
IMGTOOL: Added Dragon DOS module [tlindner] 2020-05-17 12:04:31 -04:00
couriersud
7d4bb358c8 netlist: Fix cd4013 implementation and include it in compile. (nw) 2020-05-17 02:08:51 +02:00
couriersud
7035821f87 netlist: rewrite rom devices from scratch. [Couriersud]
Thanks to Aaron Giles who made me think about a different approach.

This is a rewrite from scratch for rom devices. It uses a generic
template to implement rom devices which is used together with a
description struct to define a rom device. This leads to highly
efficient code since all information is available at compile time.

This is also a step forward to support tristate outputs. All rom devices
covered by this approach have tristate or open collector outputs and
thus all code changes to support tristate outputs can now be made
consistently in one file.
2020-05-17 01:34:16 +02:00
Ryan Holtz
4feb71b0a7 -unsp: Added DIVQ and extended BIT_OP opcodes. [Ryan Holtz] 2020-05-16 20:50:15 +02:00
Aaron Giles
5739043ced netlist: Add 74377/74378/74379 devices to netlist. [Aaron Giles] 2020-05-15 13:10:15 +02:00
couriersud
88edd7c665 netlist: code cleanup and development stage tristate [Couriersud]
Code cleanup to better separate the following stages:

- parsing
- setup
- run

In addition preliminary native tristate support was added. Not yet
production ready, please don't use it.
2020-05-15 13:09:22 +02:00
hap
97879948c2 6801: remove hack, the real cause of adam locking up at boot was fixed recently with TCSR_OCF clear (nw) 2020-05-09 16:45:45 +02:00
hap
623dc28919 Machines promoted to working
----------------------------
Monty Plays Scrabble [hap]
Master Monty [hap]
2020-05-08 21:39:17 +02:00
tim lindner
2dfb819208
CoCo: Added Disto RAM cartridge (#6664)
* adding disto ram cart

* logging update

* minor change stil no worky

* DSTOTEST.BIN passed tests.
2020-05-08 06:32:30 -04:00
couriersud
b2c40086e6 netlist: Add two noise sources. [Couriersud]
The two sources act as voltage sources, though noise may also be
injected as conductivy or current noise.

SYS_NOISE_MT_U: Mersenne Twister uniform noise
SYS_NOISE_MT_N: Mersenne Twister normal noise

nld_sys_noise is templated:

	using NETLIB_NAME(sys_noise_mt_u) =
		NETLIB_NAME(sys_noise)<plib::mt19937_64,
plib::uniform_distribution_t>;

Thus the approach is scalable. The implementation is state save aware,
and thus reproducible results are guaranteed.

An example use case is provided as well, see examples/noise.cpp.
2020-05-03 17:23:50 +02:00
Ryan Holtz
e9ea36bf28 -am2901b: Added a skeleton device for the AMD Am2901B 4-bit Bipolar Microprocessor Slice. [Ryan Holtz] 2020-05-02 11:29:45 +02:00
David Haywood
a17d577403
Plug and Play work (#6609)
* new WORKING machines
Millennium M505 Arcade Neo Portable Spielkonsole (Family Sport 100-in-1) [TeamEurope]

* new NOT WORKING software list entries
tvgogo.xml : Baseball (US) [Sean Riddle, David Haywood]
tvgogo.xml : What-A-Mole (US) [Sean Riddle, David Haywood]

* added internal NAND dump to didj [Sean Riddle, Clawgrip]
2020-05-01 13:39:42 -04:00
couriersud
9dd0b48b3e netlist: add 393 to netlist.lua (nw) 2020-05-01 10:23:08 +02:00
couriersud
13f6e92cec netlist: Add the NE566 as a macro device. [Couriersud]
The device can be found in nlm_other.cpp.
Removed nld_ne566.*
Added SYS_SW, SYS_SW2 and SYS_COMP. These are single switch,
alternating switch and a analog comparator with digital outputs.
Renamed RES_SWITCH to SYS_SW.
Added example ne566.cpp in netlist/examples.
2020-05-01 10:04:22 +02:00
AJR
9556e3a5bd New working machines
--------------------
MDT 60 Video Display Terminal [Bitsavers, AJR]

z29: Add skeleton for undumped keyboard; try (and fail) to make this work with the MDT 60 keyboard instead

z22: Separate driver (nw)
2020-04-29 11:16:14 -04:00
couriersud
184c198a88 Fixed indenting in netlist.lua. (nw) 2020-04-29 16:00:35 +02:00
couriersud
c782a0ef33 netlist: add NE566 to netlist.lua. (nw) 2020-04-29 14:38:58 +02:00
Vas Crabb
01a4fbef4f
Merge release0221 into master (nw) 2020-04-29 02:17:12 +10:00
Vas Crabb
63a6b19c4a whitespace cleanup (nw) 2020-04-27 18:17:35 +10:00
usernameak
ee76fc0337
Heavily improved emulation of GRiD Compass 1101 (#6599)
Changes:

- added known dump checksums of 1101 BIOS
- high-level emulation of GPIB disk devices
- partial implementation of DMA (currently ignores ACCRQ so devices must have zero latency in order for it to work)
- serial is now properly memory-mapped
- modem stub in order to make system properly ignore modem device
- it now boots without any patches and debug scripts
- merged #6597 (needed in order to make disk devices work)

Still not implemented:

- RTC/MACHINE_ID
- modem
- has problems with multiple disk devices working simultaneously (possibly BIOS bug because this BIOS had some problems with that on real device)
2020-04-26 18:05:40 -04:00
Vas Crabb
8a923f9361 srcclean and manual cleanup (nw) 2020-04-26 12:04:54 +10:00
smf-
90cdeaad89 fixed stray character (nw) 2020-04-25 21:01:00 +01:00
smf-
ad819a3243 appease vs2019_clang with llvm 10.0 2020-04-25 20:52:35 +01:00
smf-
42e8d29742 unbreak vs2019 after 822e051896 (nw) 2020-04-25 03:40:45 +01:00
smf-
822e051896 fixes for clang 10.0.0 misleading indentation and xor used as a pow warnings (nw) 2020-04-23 17:04:29 +01:00
npwoods
7610231242
Refactoring of AVI/MNG recording code (#6537)
* Initial refactor of AVI/MNG movie recording, consolidation of copy and paste
code, hiding of AVI/MNG behind interfaces

* Extracted recording specific code out of src/emu/video.cpp and put into
src/emu/recording.cpp

* Took the opportunity to move slightly more logic out of video.cpp into
recording.cpp

* Bug fix

* Consolidated frame counting logic
2020-04-22 19:00:30 -04:00
couriersud
0054862e3c netlist: compile time improvement and code maintenance. (nw)
Added a define NL_USE_ACADEMIC_SOLVERS and disabled it in the build.
This will not compile in solvers which are either illustrative or only
perform for large sparse matrices like GMRES.
2020-04-19 16:08:43 +02:00
couriersud
7c96a897dc main.lua: fix linking order of netlist. (nw)
Moved netlist between dasm and utils,expat,... link statements
This fixes the resolution of symbols in netlist code which may be used
in machine/netlist.cpp.
Change tested on ubuntu, windows and macosx.
2020-04-18 15:40:35 +02:00
Michael Zapf
efeddba15b bq48xx: Adding Benchmarq RTC chip emulations. 2020-04-14 23:58:11 +02:00
couriersud
5b6013caea netlist: improve performance up to 65% on audio netlists. [Couriersud]
This commit introduces precompiled static solver code. Due to
additional optimizations the compiler can use because the detail
calculation steps for the solution are known e.g. the kidniki netlist
sees a 100% speed increase.

In all environments (windows/*nix/osx) the source for the static
solver code can be created using
	bash src/lib/netlist/nl_create_mame_solvers.sh

This will create src/lib/netlist/generated/static_solvers.cpp which is
compiled into the mame binary.
The script is just a temporary workaround. The intention is that nltool
whill be able to create this file with one call.

There are other improvements in this commit speeding up the processing
of timestep and dynamic calculations.
2020-04-13 21:32:00 +02:00
Vas Crabb
af82c0eca8 util: re-implement SHA-1 and get rid of the two third-party implementations (nw) 2020-04-13 06:16:03 +10:00
hap
1c728274e9 microvsn: move lcd chip emulation to device (nw) 2020-04-12 15:37:21 +02:00
cracyc
fdeca033d8 nec: 8080 mode [Carl] 2020-04-11 21:37:54 -05:00
hap
d708a86325 added Philips PCF2100 LCD Driver (nw) 2020-04-10 15:33:13 +02:00
Michael Zapf
4ef6a1d594 ti99: Add PGRAM card; fixed IDE adapter card. 2020-04-10 00:00:08 +02:00
AJR
2d68e6dae9 m3002: New device 2020-04-07 19:39:17 -04:00
AJR
f47877cfd1 pasopia, pasopia2: PAC2 overhaul
- PAC2 is now a separate bus with slot devices
- Kanji ROM and RAM PAC2 expansions are no longer built into pasopia7, but may be configured as slot options
- RAM PAC2 expansion made nonvolatile and provided in multiple sizes
- Two PAC2 slots added to pasopia
2020-04-06 21:20:01 -04:00
hap
7a86e1910e 6800ops: unneeded workaround? (nw) 2020-04-06 19:30:03 +02:00
Michael Zapf
c5b838bc2c Add octal registered transceiver 74543 2020-04-06 13:39:34 +02:00
Robbbert
b5e08ae5e8 H8: added support for H8T tapes. 2020-04-06 01:37:05 +10:00
AJR
9abc6733ba Add H8/500 disassembler and skeleton CPU device family
alesis_qs.cpp: Document XTALs; replace legacy MCFG in comments (nw)

picno.cpp: Replace legacy MCFG in comments (nw)
2020-04-04 17:21:59 -04:00
cam900
6aef7adadd
Split S-SMP and S-DSP implement in snes_snd.cpp (#6417)
* Split S-SMP and S-DSP implement in snes_snd.cpp
both convert memory handler into device_memory_interface, Internalize ROM region of S-SMP
s_smp.cpp : Use callback for S-DSP interface, Split internal and external memory space
snes.cpp : Convert WRAM into shared_ptr

* s_dsp.cpp : Reduce #define macros
2020-04-04 08:59:50 -04:00
Olivier Galibert
6e7fe63f60 upd177x disassembler [O. Galibert] 2020-04-04 12:42:48 +02:00
hap
ceabc2c798 cpu/alph8201 can be removed now (nw) 2020-04-03 21:58:40 +02:00
Patrick Mackinlay
5693fa0691 cxd1185: new device 2020-03-29 18:21:11 +07:00
Olivier Galibert
d35c3977c9 unidasm: Add pic16 generic disassembler with extended instructions [O. Galibert] 2020-03-28 19:45:41 +01:00
AJR
6c6a55d5bb upd7001: New device
ssv.cpp: Split state class up a bit (nw)
2020-03-28 12:05:15 -04:00
arbee
8434fd6213 Added ICM7170 real-time clock device. [R. Belmont] 2020-03-22 21:01:59 -04:00
Nigel Barnes
24579647dc bus/bbc/1mhzbus: Added PEDL Multiform Z80. 2020-03-22 02:26:12 +00:00
Vas Crabb
bdd2a33776 compile in the contents of the COPYING file for the about box - safer than assuming it will be in the working directory. no attempt at compressing it for now (nw) 2020-03-22 00:03:07 +11:00
Nigel Barnes
e42ad156b5 bus/coco: Added CoCo PSG cartridge device. [Roberto Fernandez, Nigel Barnes, Ed Snider] 2020-03-21 02:20:16 +00:00
Nigel Barnes
49264dd6e1 bus/bbc/userport: Added the Clwyd Technics Colour Palette and Chameleon devices. 2020-03-21 02:20:16 +00:00
Julian Sikorski
931aee1b54 Roll back no longer needed /ZI workaround
It has been fixed as of Visual Studio 2019 16.5
2020-03-19 20:51:21 +01:00
Michael Zapf
fa500f400d ti99: Added FORTi sound card. 2020-03-17 23:27:19 +01:00
arbee
6f3f0b805e mac: Initial support for the Sigma Designs LaserView monochrome NuBus video card [Al Kossow, R. Belmont] 2020-03-15 21:43:38 -04:00
David Haywood
389126869f
Plug & Play / sh6578 work (#6447)
* PPU refactoring (nw)

* PPU refactoring (nw)

* start making a new device (nw)

* PPU device refinements (nw)

* tear things down (nw)

* refactoring (nw)

* more refactor and teardown (nw)

* (nw)

* rebuilding (nw)

* (nw)

* (nw)

* (nw)

* (nw)

* checkpoint (nw)
2020-03-15 15:26:47 -04:00
ajrhacker
07c987b5bc
Merge pull request #6448 from ValleyBell/cm32p
add CM-32P PCM emulation
2020-03-15 14:36:56 -04:00
Valley Bell
539598fab4 add Roland PCM sound emulation for CM-32P 2020-03-15 18:58:38 +01:00
Nigel Barnes
692f254c21 bus/bbc/1mhzbus: Added the RetroClinic DataCentre. [Nigel Barnes, RetroClinic] 2020-03-15 17:06:04 +00:00
Michael Zapf
5fda8f6406 ti99: Added Myarc DDCC-1 disk controller card. 2020-03-15 11:46:31 +01:00
Olivier Galibert
e4e91bd6bd ks0164: Turn it into a device (nw) 2020-03-14 12:05:59 +01:00
Michael Zapf
91b633c363 ti99: Added CorComp disk controller cards. 2020-03-14 01:27:29 +01:00
MooglyGuy
4a909eb16b -frontend: Added an About menu option to display the contents of COPYING in order to be more license-compliant. [Ryan Holtz] 2020-03-11 22:11:20 +01:00
AJR
6ab1dfb1a8 Clean up odds and ends (nw)
- com8116: Delete SY2661-1/-2 tables (these are just second sources of SCN2661A/B)
- mc2661: Remove obsolete device
- rs232: Remove 7200 baud setting formerly required by one driver to work around incorrect table
2020-03-06 15:03:31 -05:00
Vas Crabb
ddfe149872 (nw) It helps if you're using the same data types in both places (VGM
visualiser device and WDL FFT libarary).

I changed the VGM visualiser to use single-precision float which is the
default for WDL FFT.  GCC's loop vectoriser can make better use of SSE
with single-precision maths, and the extra precision shouldn't be needed
for the visualisation.  If this is a problem, let me know and I'll
revert this and flip the WDL FFT library over the other way.
2020-03-07 07:01:48 +11:00
AJR
415128cae4 New and completely rewritten emulation of SCN2651 PCI, SCN2661 EPCI & SCN2641 ACI
This is far more thorough and accurate than the preexisting MC2661 device emulation. Synchronous modes have been implemented but not tested.
2020-03-06 14:37:35 -05:00
Vas Crabb
5bce46bd75 Removed winpcap and cleaned up network module selection.
(nw) The pcap.h header itself has the problematic original BSD license,
including the obnoxious advertising clause.  Using tap/tun networking on
Windows provides a much better experience, so the extra setup is worth
it.  This patch also allows you to enable pcap on platforms where it's
disabled by default with USE_PCAP=1 if you really want to use it.
2020-03-05 21:23:21 +11:00
R. Belmont
43a9794c20
Merge pull request #6388 from fulivi/hp80_dev07
HP82900 CP/M module
2020-03-04 10:45:30 -05:00
Vas Crabb
11ac7454db Maintenance:
* Removed empty nl_examples from dist.mak
* Added copyright acknowledgements and full text of licenses to binary distribution
* Fixed up the list of third-party libraries
* Moved WDL fft.c to 3rdparty
2020-03-04 22:41:15 +11:00
mahlemiut
d291908486 Added Microlog Baby Blue II CPU Plus ISA card. [Barry Rodewald] 2020-03-04 15:35:42 +13:00
Nigel Barnes
660194d7ce bus/bbc/1mhzbus: Added Pull Down RAM and Colour Card 500 devices. 2020-03-03 19:40:23 +00:00
Nigel Barnes
a1a70c4357 cms6502: Cleanups and promoted to working.
- Corrected M4 ROM ordering.
- Added IEEE controller card.
2020-03-03 19:40:23 +00:00
fulivi
d469028abc hp80: added HP82900 CP/M module 2020-03-03 12:55:35 +01:00
Sergey Svishchev
c155d424ac ibmxdf_dsk: IBM Extended Disk Format support (nw) 2020-03-02 20:21:04 +03:00
fulivi
8b70a55e7d
hp80: HP82939 serial I/O module added (#6366)
* hp80: added HP82939 serial I/O module.
Fixed a small bug in INS8250 that prevented module self-test to pass.
Improved the interrupt handling of hp80 systems.

* hp80: changed scheduling to use "set_perfect_quantum"
2020-03-01 14:11:01 -05:00
MooglyGuy
bcefd95275 -vgmplay: Added a visualizer. [Ryan Holtz, Justin Frankel] 2020-03-01 19:58:07 +01:00
mooglyguy
d808dd967a -ex1280: Added skeleton device for Vectrix EX1280 ISA card. [Ryan Holtz, Bitsavers] 2020-03-01 13:20:42 +01:00
AJR
8e52be5c1e z80dart: Replace old device with new variant of modern SIO emulation
z80sio: Make LOGBIT less spammy; booleanize a few members (nw)

machine/mtx.cpp: Remove unnecessary includes (nw)
2020-02-29 22:49:10 -05:00
Vas Crabb
f011a9134d clean up crud (nw) 2020-02-29 18:32:52 +11:00
Vas Crabb
001389f052 Remove src2html tool (nw)
This tool was previously used to generate HTML-formatted source for
the website from releases.  It hasn't been used in years, since we
rely on the repository browsing features of GitHub/GitLab/SourceForge.
It also hasn't been updated to handle C++14, Lua, and other changes to
the source.  If we do want to publish source code on our own web site
in the future, we'd be better off using an off-the-shelf library to
handle parsing the source.
2020-02-29 04:49:56 +11:00
AJR
ae0a68c935 New skeleton device: Am79C30A DSC
eurit30: LCDC writes identified, but exact type remains unknown (nw)
2020-02-27 20:55:37 -05:00
Patrick Mackinlay
6038ff41f7 rtpc keyboard: new device (nw)
The host is a long way from being done, but the keyboard seems to be working well enough already.
2020-02-25 20:32:57 +07:00
Olivier Galibert
c849d1dc42 ks0164: First try at a disassembler [David Carne, O. Galibert] 2020-02-22 16:45:32 +01:00
cam900
21dae89c14
Add skeleton LZ8420M device (#6339)
* Add skeleton LZ8420M device
It has additional IO, Embedded RAM
Used in psikyo.cpp

* lz8420m.cpp : Fix copyright holder
2020-02-21 10:43:56 -05:00
Patrick Mackinlay
52d1a412fa romp: new device 2020-02-13 21:35:44 +07:00
AJR
9ce46c7cd5 New machines marked as NOT_WORKING
----------------------------------
Roland D-50 (Ver. 2.xx) [DBWBP, depblue]

New NOT_WORKING clones
----------------------
Roland D-50 (Ver. 1.xx) [DBWBP]
Roland D-550 [DBWBP]

Add disassembler for NEC 78K/III architecture [AJR]
2020-02-12 11:59:41 -05:00
AJR
d7db95aea9 Add disassemblers for NEC 78K/0, 78K/I and 78K/II MCU types
hotd2: Make "Gun Sense" board a separate device
2020-02-10 23:43:03 -05:00
Joakim Larsson Edström
1f12ad3fca
Alfaskop 4110 keyboard and related improvements (#6291)
* mc6844.cpp: WIP NEW DEVICE Motorola mc6844 DMA controller (devicified from swtpc09.cpp)

* 6821pia.cpp: improved LOG messages a bit

* mc6854: Added support for external clocks, DMA, improved LOG messages and fine tuning of IRQ handling

* mc6846: Removed nonexistant CP1 output callback and added a CP1 input interface call

* 6850acia.cpp: Updated use of logmacro.h

* alfaskop4110: WIP added keyboard and fixed build errors
2020-02-10 19:30:11 -05:00
Olivier Galibert
536652387f Oops (nw) 2020-02-07 21:35:46 +01:00
Olivier Galibert
23556e65f5 xavix2: First stab at the cpu [O. Galibert, N. Gilbert] 2020-02-07 21:31:25 +01:00
AJR
b5eb7d4bab a2bus: Add 8251-based RS232 serial interface from BYTE magazine 2020-02-03 22:23:30 -05:00
Ivan Vangelista
a0e4df0deb
sound.lua: fixed mm5837 entry, allows clean single driver build of beezer.cpp to complete (nw) 2020-02-03 10:39:13 +01:00
Vas Crabb
bddfe1030c
Revert "Alfaskop improvements" 2020-01-31 20:05:02 +11:00
Joakim Larsson Edström
7d5c59f6e5
Merge pull request #6068 from JoakimLarsson/alfaskop_pla
Alfaskop improvements
2020-01-31 09:50:18 +01:00
AJR
4e0540d25b sdk85: Updates and expansion
- Make second 8355 into ROM expansion slot that can load custom 8755 programs
- Add software list for expansion ROMs, including Peter Naszvadi's version of Mastermind
- Add optional TTY interface
- Improve accuracy of button labels and change key bindings
- Add vectored interrupt and soft reset buttons
2020-01-29 20:03:31 -05:00
Melissa Goad
e6595b06a7
iphone2g wip (nw) (#6226)
* iphone2g wip (nw)

* fixup

* fixup

* fixup

* iphone2g: hacky spi and non-existent timers (nw)
2020-01-29 10:13:48 -05:00
Vas Crabb
a7fec751ed srcclean, manual adjustments (nw) 2020-01-26 12:39:27 +11:00
couriersud
42d351a4eb netlist: New devices and some fixes. [Couriersud]
- add CD4006 and CD4070 devices
- add TL084 opamp model
- Clock now supports proxies, i.e. can be connected to
  analog devices.
- Fixed netlists using CLOCK
- added some comments
- removed a forgotten header file.
2020-01-25 15:26:59 +01:00
AJR
0f052a51f8 New machines marked as NOT_WORKING
----------------------------------
NCD19c [Don Maslin Archive]

Add disassemblers for Motorola MC88100 and MC88110 [AJR]
2020-01-23 16:45:51 -05:00
hap
685907679b gigatron: fix compile (nw) 2020-01-23 11:58:29 +01:00
Nigel Barnes
967092ccb9 bus/bbc/1mhzbus: Added Acorn Winchester Disc. 2020-01-22 21:42:34 +00:00
Nigel Barnes
417176a102 bbcmaiv: Added internal modem port, with Acorn AIV SCSI Host Adaptor. 2020-01-22 21:42:34 +00:00
Sterophonick
0ff7e2ea0d new NOT_WORKING machine (#5811)
* minor spelling fix

* new NOT_WORKING machine

Gigatron TTL Microcomputer [Sterophonick]

also add a skeleton cpu core

* Revert Minor Spelling Fix

* Make some fixes

thanks cuavas

* Fix resolution

* gigatron: update cpu device name

* update copyright

* fix part of gigatron disassembler

* Set screen refresh rate

* found a set of all the ROM files, update main ROM name

* Fix cpu.lua

* Whoops

* Update gigatron.cpp

* gigatron: clear execute_set_input

* Update gigatron.h

* Update gigatrondasm.cpp

* Update gigatrondasm.h

* clean up but doesnt compile ffs
2020-01-21 13:33:33 -05:00
AJR
96ec01a614 Add tentative VT61/VT62 disassembler and skeleton CPU device 2020-01-13 21:18:27 -05:00
Nigel Barnes
9e93b10838 Revert "bus/centronics: Added a R-2R ladder DAC device."
This reverts commit 1564c566c1.
2020-01-07 16:47:42 +00:00
Nigel Barnes
1564c566c1 bus/centronics: Added a R-2R ladder DAC device. 2020-01-07 12:39:16 +00:00
Nigel Barnes
5b46a3b8ab bus/bbc/1mhzbus: Added Sprow BeebIDE 16-bit and RetroClinic BBC 8-bit IDE interfaces. 2020-01-07 12:39:16 +00:00
Nigel Barnes
b1d16b6c9a bus/bbc/1mhzbus: Added BeebOPL FM Synthesiser. 2020-01-07 12:39:16 +00:00
AJR
cdb9578471 rx01: Dumped firmware PROMs [Lord Nightmare]
rx01: Add disassembler and skeleton CPU device for custom firmware architecture [AJR]
2020-01-06 09:21:09 -05:00
fulivi
2ec25ca6d5 Emulation of isbc202 floppy disk controller (#6119)
* imds2: isbc202 floppy disk controller added

* imds2: attempt to fix problems with CI checks
2020-01-04 16:11:48 -05:00
yz70s
00ac4f46f5 Lower number of warnings disabled with visual studio from 71 to 27 (nw)
And most of the remaining ones could be removed with simple code
modifications.
2020-01-02 12:36:09 +01:00
AJR
f48f57ef81 Add new disassembler for WE32100 architecture
New machines marked as NOT_WORKING
----------------------------------
AT&T 3B2/300 [Bitsavers]

New clones marked as NOT_WORKING
--------------------------------
AT&T 3B2/310 [Bitsavers]
AT&T 3B2/400 [Bitsavers]
2019-12-30 19:15:31 -05:00
AJR
14c4dcc643 Add new disassembler for PACE architecture
New machines marked as NOT_WORKING
----------------------------------
unknown INS8900 Multibus card (980305652) [Bitsavers]
2019-12-28 12:39:46 -05:00
AJR
5da18d7422 New machines marked as NOT_WORKING
----------------------------------
VT52 [Dalby Datormuseum]
2019-12-18 11:07:59 -05:00
Joakim Larsson Edstrom
73732ffb39 WIP NEW DEVICE Motorola mc6844 DMA controller (devicified from swtpc09.cpp) 2019-12-18 12:35:45 +01:00
Angelo Salese
f58c3ea264
Rewrite ARM IOMD/VIDC20 chips into own devices, merged implementations from ssfindo.cpp & riscpc.cpp [Angelo Salese] #6047
* riscpc now enters in desktop mode with a valid nvram;
* adds preliminary sound for ppcar;
2019-12-13 21:42:42 +01:00
arbee
24eb8d5d07 apple2: add support for paddles [R. Belmont] 2019-12-10 22:56:48 -05:00
hap
323914f25b added Hitachi HD61603 LCD Driver (nw) 2019-12-08 19:47:30 +01:00
AJR
efbe4b30ba New S-100 device: ASC Associates SASI Host Computer Adapter [AJR, Bitsavers] 2019-12-06 19:02:57 -05:00
hap
cc116dc972 added LC7582 LCD Driver (nw) 2019-12-06 02:25:10 +01:00
algestam
f5869f4018 Add bgfx artwork path for Emscripten build (nw) 2019-12-03 22:03:19 +01:00
AJR
e69ff59e42 New machines marked as NOT_WORKING
----------------------------------
Speedcom VD56SP [ClawGrip]

Add disassembler and basic execution core for Rockwell R65C19 [AJR]
2019-11-25 22:55:20 -05:00