allow PDS cards to hijack the internal screen. [R. Belmont]
bus/nubus: Many updates. [R. Belmont]
* All cards: modernized with short types, fewer boilerplate comments, general cleanups,
and card memory map support.
* Lapis ProColor: fixed "encrypted" 4 and 8 bit-per-pixel modes and added the NuBus and PDS/30
versions of the ProColor 8. Also used the TLC34075/34076 DAC device.
* m2video: use the CRTC registers of the TFB 1.0 chip and the Bt453 DAC device.
* m2hires: use the CRTC registers of the TFB 2.2 chip, merge in the Apple Portrait Card, and
add the Apple Workstation Card. All 3 of these were the same card with different ROMs,
pixel clock crystals, and DAC models (Bt473 or Bt474).
* Sigma Designs LaserView: Now uses the CRTC register values.
* RasterOps ColorBoard/264 NuBus: Much better correctness on the NuBus version, including support
for the 30 Hz NTSC mode
* RasterOps ColorBoard/264 PDS: Near-total rewrite using the TMS34061 and Bt473 devices.
* SuperMac Spectrum/8 Series III: Use Bt478 DAC device like the real card.
* SuperMac Spectrum PDQ: Documented that the card uses 3 Bt458 DACs. Not actually hooked up that
way yet.
* Moniterm MacViking: Documented that the CRTC is a TTL state machine, there are no registers.
* Micron/XCEED MacroColor/30: Merged with Color 30HR which is 99% the same hardware, and
added an "internal" version which takes over the SE/30's internal display and allows you to
show grayscale on the original CRT.
* Micron/XCEED Color HR30: All available video modes are supported now with the MonitorXCEED
software. Also added an "internal" version like the MacroColor/30, decoded the register
encryption, and used the correct Bt473 and Bt478 devices.
* shared/exidysound.cpp: Use real 8253 PIT device rather than a local
implementation, fixed class memory access error, cleaned up code to
use virtual member functions idiomatically.
* cpu/alto2: Fixed class memory access error (was nuking unique
pointers).
* interton/vc4000_v.cpp: Fixed class memory access error, got rid of
indirection on bitmap, cleaned up a little.
* Enabled error for GCC class memory access warning to avoid rot.
* Made it a bit easier to cross-compile for x86-64 or i686 on an AArch64
Windows system.
* Choose the default native recompiler back-end based on predefined
macros rather than requiring the build scripts to set it.
* Don't require every target without a native recompiler to declare
this.
* Got rid of the code that was supposed to set -m32 or -m64 when
building GENie (it didn't work - it tried to use ARCHITECTURE before
setting it).
* Avoid relying on the unreliable PROCESSOR_ARCHITECTURE environment
variable.
* Got rid of stuff for versions of Xcode that are definitely no longer
supported.
* Got rid of workarounds for very old Linux distros.
* Use newer makefile syntax for if/else/if structures, comment some else
and endif statements for clarity.
Attempt to enable SSE features explicitly specified in ARCHOPTS. It
will still fall back to SSE 2 if you just use -march= to enable later
SSE features.
* bus/snes/st018.cpp: Add primary support of ST018 coprocessor
moritas2 now boots, but still hangs at in-game.
* bus/snes/st018.cpp: Fix CPU latch accessing
* Fixed behaviour of exceptions in delay slots, and fixed recompiler not
updating ILC and P for some exceptions.
* Implemented privilege error exception on setting L in user mode for
interpreter.
-emu/debug, osd/modules/debugger: Added an option to show
exceptionpoints in breakpoints windows.
* Implement MMC5 sound emulation
- Heavily based from devices/sound/nes_apu.cpp, Adjusted to differences compares to NES APU and MMC5.
* bus/nes/mmc5,cpp: Fix save state support, Implement MMC5 sound
* bus/nes/nes_slot.h: Fix save state support
* sound/nes_defs.h: Fix save state support
* scripts/minimaws: Set option strict for JavaScript code.
* util/mfpresolve.h: Be explicit about turning nullptr into a pointer to
data.
* cpu/drcbearm64.cpp: Reduced number of temporary registers used for AND
with some operand combinations.
* frontend/mame/infoxml.cpp: Recursively discover device types when
filtering output.
* frontend/mame/infoxml.cpp: Don't waste time/memory collecting device
types when not filtering.
* scripts/target/mame: Sort driver projects and sources within driver
projects to give more determinisitc output on filesystems that don't
enumerate in order by filename (e.g. XFS or ext).
-machine/s3c24xx.hxx: Got rid of a layer of indirection on LCD bitmaps.
WK-1800 floppy support is not implemented.
New working systems
----------
Casio WK-1800 [Edward d-tech, Devin Acker]
New working clones
----------
Casio WK-1600 [Edward d-tech, Devin Acker]
apple/gsc.cpp: Split Apple Gray Scale Controller (remarked C&T 65210) to its own device. [R. Belmont]
apple/csc.cpp: Initial Apple Color Screen Controller (remarked C&T 65220) support. [R. Belmont]
apple/msc.cpp: Initial Apple Main System Controller and MSC II support. [R. Belmont]
m6805/m68hc05pge.cpp: Initial support for the Apple/Motorola "PG&E" microcontroller. [R. Belmont]
apple/macpwrbkmsc.cpp: New driver for MSC and MSC II-based Mac PowerBooks and PowerBook Duos. [R. Belmont]
Systems promoted to working
---------------------------
Apple Macintosh PowerBook Duo 210 [R. Belmont]
New working systems
-------------------
Apple Macintosh PowerBook Duo 270c [R. Belmont]
Apple Macintosh PowerBook Duo 280 [R. Belmont]
New working clones
------------------
Apple Macintosh PowerBook Duo 230 [R. Belmont]
Apple Macintosh PowerBook Duo 250 [R. Belmont]
Apple Macintosh PowerBook Duo 280c [R. Belmont]
* Emscripten: Fixes to get BGFX working
* Move emscripten specific setup into an #elif statement
* Fix indentation
* emscripten: remove no longer link option DEMANGLE_SUPPORT
- Rewrite DMAC DMA controller. Now actually transfers data.
- Add preliminary support for the A590 hard disk controller
- Add preliminary support for the Action Replay freezer devices
- Add support for the MegaMix 500 RAM expansion
- Add preliminary support for the A2091 hard disk controller
New working software list additions
-----------------------------------
A590 Setup Disk 1.7 (Western Digital Harddisk) [Turran FTP]
A2091 Setup Disk 1.27 [Amiga Hardware Database]
* Build all native back-ends if any native back-end is enabled so errors
caused by changing interfaces can be found faster.
* cpu/drcbeut.cpp: Moved resolved member function stuff to a place where
it can be shared by back-ends.
* cpu/drcbearm64.cpp: Use ubfx instruction to extract unordered flag.
* cpu/drcbearm64.cpp, cpu/drcbex64.cpp: Bypass trampolines when calling
get map variable value and debugger instruction hook functions.
* cpu/drcbearm64.cpp: Moved some internal helpers that don't need to be
members to anonymous namespace.
* cpu/drcbearm64.cpp: Added a comment with some info to help when
debugging generated code.
* cpu/drcbec.cpp: Put code in the drc namespace.
* util/delegate.cpp, cpu/drcbex64.cpp, cpu/drcbearm64.cpp: Use common member function resolution code.
-cpu/drcbearm64.cpp, cpu/drcbex64.cpp, cpu/drcbex86.cpp: Moved some stuff to anonymous namespaces.
-cpu/drcbex64.cpp, cpu/drcbex86.cpp: Defer allocating labels if they aren't always needed.
* z80sio: add support for wait/ready, fix rx int logic, fix SDLC bit stuffing bug
* hp98x6: added support for HP98628 & HP98629 exp. cards
* hp98x6: removed dependency on buggy hp_dio functions, restored original hp_dio.*
* The CPU passes its initial memory test, but no I/O is connected.
-dynax/ddenlovr.cpp: Identified 18 of 40 DIP switches for hanakanz with
high confidence, and improved inputs.
* Properly support Wayland under EGL and Vulkan. (#3358)
* Dynamically load libwayland-egl.so.1 when dealing with Wayland to remove dependencies at program startup. (#3359)
* Cleanup.
* Support both X11 and Wayland in the same build. (#3360)
* Support both X11 and Wayland in the same build.
- Works for both Vulkan and OpenGL.
- Remove --with-wayland from genie options.
- Vulkan loads all three extensions for surface creation instead of only one.
- Add width and height parameter to GlContext::createSwapChain(), which is needed for EGL to create
a SwapChain with the given window size.
- Dirty-fix the example-22-windows to recreate the FrameBuffer by first destroying and then
recreating to make sure the window is released of its swapchain.
- Fix dbgText glitch in example-22-windows.
- Remove old X11-related dependencies for GLFW3.
* Formatting.
* Adapt to latest bgfx wayland code
* Cleanup.
* Fix Vulkan swapchain invalidation issue. (#3379)
* Fix Vulkan swapchain invalidation issue.
* Always clamp render pass to frame buffer size.
* Fix formatting.
* Hopefully fix macOS build
* Hopefully fix macOS build, attempt 2
---------
Co-authored-by: Martijn Courteaux <courteauxmartijn@gmail.com>
Co-authored-by: Бранимир Караџић <branimirkaradzic@gmail.com>
* rename previous ds1315 to earlier/original ds1215 device
* support both ds1215 and transparent access methods
* implement rtc and nvram interfaces
* support updating registers
* cpu/upd177x/upd177x.cpp: Add NEC uPD177x cpu core.
* scv.xml: Promoted 1 item.
Software list items promoted to working
------------------------------------------
Star Speeder
* cpu/upd177x/upd177x.cpp: Remove a comment.
* cpu/upd177x/upd177x.cpp: Remove callback on PA.
* cpu/upd177x/upd177x.cpp: Update comment about setting m_pc to 1 during reset.
* Add a different workaround for the sync issue between the 2 cpus in scv.
* cpu/upd1771x/updf177x.cpp: Use little endian.
* cpu/upd177x/upd177x.cpp: Include device tag in fatalerror messages.
* epoch/scv.cpp: Update upd1771c rom region sizes.
* nec/apc.cpp: Switch to upd177x_cpu_device.
* epoch/scv.cpp: Add location to upd1771c rom name.
* cpu/upd177x/upd177x.h: Remove 'overrides' comments.
New working software list additions
-----------------------------------
Rainbow II Diashow Professional V1.92 [Amiga Hardware Database]
RainbowPainter V0.99b [Amiga Hardware Database]
* Fixed 2P side inputs for tenkai, ougonhai and mjmyster.
* Use hanafuda input types for hginga.
* Use proper bookkeeping and memory reset inputs for hginga and hanakanz.
* Started using I/O port finders for mahjong keyboards.
* More side effects checks.
* Reduced some duplication.
* Replaced hjingi hopper hack with a hopper device.
* Improved DIP switch labels for mjembase and hooked up hopper.
* Improved a few DIP switch labels for mjelctrn.
-Fixed some more #include guards and added a CI task to check them in
src/devices and src/mame.
* Updated to GENie 1181.
* Applied local fix for GENie resource include directory bug, sent upstream as bkaradzic/GENie#572.
* Set MSVC flags to use conformant preprocessor, standards conformance mode, and assume UTF-8 encoding.
* abandoned cassette vison work
* remove comment now that the useful table is gone
* force github to rebuild because github is being github
* add a note based on earlier research
* bring this part over from the previous tree too, it seems worth having still
* actually use this version instead, I thought it was broken, but it actually has advantages
* I've been informed this will be merged if I assign a copyright holder, so as I don't really recognize it as my own design anymore, I'm assigning Vas.
* Update cpu.lua
* Start cleaning up:
* cassvisn_cart.xml: Fixed program region width.
* cassvisn_cart.xml: Added Japanese titles and proper markup for release
dates.
* epoch/cassvisn.cpp: Removed unnecessary byte swapping when loading
software list items.
* cpu/upd777.cpp: Made order of declarations and definitions more
consistent with each other, added more inline and const hints.
* tools/unidasm.cpp: Make data source big Endian to match CPU core.
* epoch/cassvisn.cpp: Digit grouping for big numbers, better error messages.
---------
Co-authored-by: David Haywood <hazemamewip@hotmail.com>
Co-authored-by: Vas Crabb <vas@vastheman.com>