Commit Graph

2768 Commits

Author SHA1 Message Date
Julian Sikorski
0837e7451a WIP: sync bgfx, bx and bimg with latest upstream (#5723)
* Sync with bgfx upstream revision b91d0b6

* Sync with bx upstream revision d60912b

* Sync with bimg upstream revision bd81f60

* Add astc-codec decoder

* Rename VertexDecl to VertexLayout

* Rename UniformType enum Int1 to Sampler.

* Add NVN stub

* Fix unused-const-variable error on macOS

* Drop redundant explicit language parameters
buildoptions_cpp are only applied to c++ files and buildoptions_objcpp are only
applied to objective c++ files. As such, hardcoding -x offers no benefit while
preventing overrides (such as one needed by 3rdparty/bgfx/src/renderer_vk.cpp on
macOS) from working.

* Re-introduce -x c++ in places where C code is compiled as C++ to prevent clang from throwing a warning

* Build bgfx as Objective-C++ on macOS
It is needed due to included headers

* Enable Direct3D12 and Vulkan bgfx rendering backends

* Enable building of spirv shaders

* Properly escape /c in cmd call

* Comment out dx12 bgfx renderer

* Honor VERBOSE setting during shaders build

* Only invert hlsl shader XYZ_TO_sRGB matrix for opengl

* Add spirv shaders

* OpenGL ES needs transposed matrix too

* Metal needs transposed matrix as well
2019-10-13 07:50:38 -04:00
couriersud
8f83e4392f netlist: code maintenance (nw)
- clang lint and pedantic fixes
- mat_cr.h: separate solving linear systems from underlying matrix
2019-10-12 19:36:50 +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
56b000344e nmk16spr, superfx, makedep: misc cleanup (nw) 2019-10-05 21:56:49 +10:00
Vas Crabb
4b414fa45b clean up some .hxx abuse (nw) 2019-10-05 14:02:58 +10:00
Vas Crabb
d8998f5d9b (nw) fix std::array initialisation with GCC5 in nlwav.cpp, stop suppressing -Wterminate now that asserts are really asserts 2019-10-05 00:37:55 +10:00
Vas Crabb
bcfa6047c3 Build system maintenance:
* Re-write makedep.py for better performance and better parsing front-end
* Make srcclean deal with kinds of preprocessor abuse I never want to see in real life

(nw) The new parser front-end is better at recognising C++ syntax and
also substantially faster - bootstrapping a single-driver build should
be noticeably quicker.  Having a single parser for C++, .lst and .flt
files also gets us a bit closer to making it simpler to create custom
subtargets.
2019-10-04 22:55:01 +10:00
smf-
3187306416 mingw-clang now links again (nw) 2019-10-02 17:10:51 +01:00
Philip Bennett
2bc95fcd87 New working machine added
---------
Super Dead Heat [Phil Bennett]
2019-10-02 01:07:31 -07:00
Julian Sikorski
fc31772d53 vs2019 fixes, initial clang-cl support (#5698)
* Add initial clangcl support

* Fix uwp builds' vs version typos

* Add missing vs2019 toolchain.lua bits
2019-10-02 14:30:05 +10: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
Vas Crabb
9a6e04b01f (nw) misc cleanup:
* subhuntr.cpp: S2636 PVI was seemingly uncommented by mistake in 93308b483e - offsets and sound routing seem to be copy/pasted from somewhere
* phi: prettier config
* scramble.cpp, wallc.cpp: avoid some calls to subdevice<...>(...)
* makedep.py: open source files as UTF-8 (GitHub #5482)
* minimaws: be less trusting
2019-10-02 02:11:58 +10:00
smf-
a42f6019b6 Fix for Visual Studio builds (nw) 2019-10-01 13:15:38 +01:00
AJR
12c08b06c8 Split generic Z180 device into several subtypes. HD647180X now has specific device emulation for the internal PROM, RAM and parallel ports. 2019-09-30 21:30:10 -04: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
Vas Crabb
722e8720f9 minimaws: allow read-only database connections to be passed between threads (nw) 2019-09-30 23:03:21 +10:00
Vas Crabb
9fbded3fa1 minimaws: easier mod_wsgi deployment (nw) 2019-09-30 20:00:23 +10:00
Vas Crabb
fcbc60c183 minimaws: python 2 is more fussy about generator function distinction (nw) 2019-09-30 15:00:24 +10:00
Vas Crabb
85376ad4df minimaws: Chromium doesn't like in-place modification of returned JSON data (nw) 2019-09-30 14:54:25 +10:00
Vas Crabb
24544c9dfd minimaws: add web interface for identifying ROM dumps 2019-09-30 14:38:26 +10:00
couriersud
cc8114f394 netlist: less cpp - more headers (nw)
- move more code in headers - delete some cpp files.
2019-09-29 00:31:30 +02:00
Vas Crabb
8e31f22bcd minimaws: load ROMs and disks, and add a romident subcommand 2019-09-28 21:25:50 +10: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
Vas Crabb
9a12ab37af Make osd_printf_* use util/strformat semantics.
(nw) This has been a long time coming but it's here at last.  It should
be easier now that logerror, popmessage and osd_printf_* behave like
string_format and stream_format.  Remember the differences from printf:
* Any object with a stream out operator works with %s
* %d, %i, %o, %x, %X, etc. work out the size by magic
* No sign extending promotion to int for short/char
* No widening/narrowing conversions for characters/strings
* Same rules on all platforms, insulated from C runtime library
* No format warnings from compiler
* Assert in debug builds if number of arguments doesn't match format

(nw) Also removed a pile of redundant c_str and string_format, and some
workarounds for not being able to portably format 64-bit integers or
long long.
2019-09-26 20:53:06 +10: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
mooglyguy
1a5bf558cc -avivideo.cpp: Added an image device to provide looping uncompressed AVI frames as input. [Ryan Holtz]
-vino.cpp: Adapted to support both avivideo_image_device and picture_image_device. [Ryan Holtz]
2019-09-23 17:44:05 +02:00
Vas Crabb
5036387ab4 srcclean (nw) 2019-09-22 13:34:40 +10: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
Vas Crabb
36cbaa12b1 (nw) misc cleanup:
* Fix path for coleco cartridge bus header
* Remove some assert_always
* Fix some comments that seem to have been victims of scripted editing
2019-09-19 13:16:01 +10: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
Michael Zapf
4495c35113 geneve: Add PC KBD connector; allow for using XT keyboards in place of the currently high-level emulated XT/AT 101 keyboard. 2019-09-17 17:47:14 +02: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
AJR
e4903df939 drawgfxm.h: Rename to drawgfxt.ipp and replace the mega-macros with template functions (nw) 2019-09-16 22:21:29 -04:00
arbee
2292cf332c Preliminary Mac native OSD. Not working yet. [R. Belmont]
This will compile, link, and run a driver all the way to the first info screen, provided you use -video bgfx.

However, although there's a valid NSWindow created, it never actually appears on screen for unknown (but likely silly) reasons.

Inputs are not implemented and fullscreen exists but is untried.
2019-09-15 20:00:59 -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
Nigel Barnes
035380ca97 dragon32: Added JCB Speech Synthesis cartridge. 2019-09-07 17:39:53 +01:00