Commit Graph

4783 Commits

Author SHA1 Message Date
lucinda lovebuny
ff8d142873
3rdparty.lua: fix LZMA PPMD support (#13981) 2025-07-21 05:33:57 -04:00
Nigel Barnes
9e0c471bf9 votrax/votrtnt.cpp: Converted Votrax TNT to a device, and added to bus/rs232 devices. 2025-07-19 23:35:31 +01:00
Julian Sikorski
59e34c7a1a
Removed wayland-egl-backend requirement at compile-time (#13903)
Since ba6f5853e9 wayland is dynamically
loaded at run-time.
2025-07-19 08:58:54 -04:00
Naoki Saito
6d18df7a3c
Add support for Freescale mcf5206e peripherals for Pluto 6 emulation (#13261)
* excal: correct rom labels

* Super Mini-Boy improvements:
 - Implemented and documented the PIA port B multiplexion.
 - Lot of fixes, getting the game working.
 - Added lamps support and button-lamps layout.
 - Fixed the color scheme.
 - Worked inputs and DIP Switches from the scratch.
 - Added technical and games notes.
 - Some clean-up.

Systems promoted to working
---------------------------
Super Mini-Boy [Roberto Fresca, Grull Osgo]

* bus/nubus: Updates and minor cleanup [R. Belmont]
- Refactored around an internal address space object so both 32 and 64-bit host machines just work
- A few minor bits of cleanup/modernization

apple/maclc.cpp: Patch macclas2's ROM to fix a verified-on-hardware illegal 68030 instruction that
                 manages to work by accident. This fixes MAME showing a sad Mac after POST in 32-bit
		 mode (pending determination of what the 68030 actually does). [Doug Brown, R. Belmont]

* mg1: handle display disable

* misc: set_clock_scale takes a double, not a float

* alesis/midiverb.cpp: Routed entire audio path. DSP just a passthrough. (#13244)

- Routed the entire audio path.
- DSP is mostly a passthrough. Just does quantization (ADC) right now.
- Using 'samples' mechanism for audio input.
- Other style and code organization fixes.

* new NOT WORKING machines (#13252)

--------
Gwasuwon (Korea) [Taksangs, David Haywood]

Co-authored-by: David Haywood <hazemamewip@hotmail.com>

* New working clones
-------------------
N-Sub (cocktail) [system11]

* Clones promoted to working
--------------------------
IPM Invader (set 2) [system11]

* xavix: Clean up some machine-translated Japanese titles

* excal: update notes

* Bonanza's Joker Poker improvements [Roberto Fresca, Grull Osgo]:
 - Lot of fixes and new machine driver, getting Joker Poker working.
 - Fixed crystal/clocks and derivatives.
 - Added lamps support and button-lamps layout for Joker Poker.
 - Worked Super Joker Poker inputs and DIP Switches from the scratch.
 - Added more technical and games notes.

Systems promoted to working
---------------------------
Bonanza's Joker Poker [Roberto Fresca, Grull Osgo]

* Bonanza's Joker Poker: Added docs and technical notes.

* hash/ibm5170.xml: sort out pbfant

* amiga/amigaaga.cpp: align hires fmode 3 DDFs, experimentally enable drawing even if bitplane fetch DMA disabled

* misc/changyu.cpp: address QA feedback

* oberheim/dmx.cpp: Stereo output. VCA optimizations and docs. (#13257)

- Optimized VCA sound processing.
- Emulated the stereo output, along with the fixed panning of voices.
  - This also improved accuracy of relative voice volume.
- Added config option for selecting audio output.
- Documentated the VCA.

* dynax/royalmah.cpp: Identified demo sounds and auto reach DIP switches for Mahjong Deringer.

* Added DIP switch locations for Mahjong Deringer from input test.
* Also improved labels for first and second banks of DIP switches for Mahjong Vegas.

* New clones marked not working
-----------------------------
Magic Bomb (Ver. A3.0) [Ioannis Bampoulas]
Magic Bomb (Ver. AB4.3A, 10/30/01S) [Ioannis Bampoulas]
Magic Bomb (Ver. AB5.3, 20/06/03) [Ioannis Bampoulas]
Magic Bomb (Ver. EB4.0, 05/04/01) [Ioannis Bampoulas]

* amiga/amigaaga.cpp: calculate fmode at copper time, remove dubious XOR calculation for fmode 1 delays

* mcs51: remove unneeded powerdown check

* New working systems
-------------------
Pocketchess (CXG) [hap, Sean Riddle]

* New working clones
------------------
Excel 68000 Mach IV 68020 Master 2325 (set 1) [Berger]

* prehisle: remove 1930 from title

* ui/widgets.cpp: Use a smooter, symmetrical highlight texture (MT09095).

* misc: remove "all rights reserved" copyright comment,
mcs51: remove old changelog from comments, remove copypasted comment block

* mcs51: clean up source code spacing

* Updated game list to remove pluto 6 video programs

* Fixed the R and ALU comments in the generated files

* Re-add the ATTR_COLD flags removed by accident

* Fix checksums for files

* Missed a b

* Changed variables to lowercase

* Fix BITWRITE to actually store things.

* Remove PC bios from pl6_cm as per suggestion.

* Fix register mapping oversights

* Add preliminary DMA module support

* Add preliminary GPU slot device support

* fex68km4: update rom labels

* Improve DL11 emulation (maintenance mode, break rx/tx) and add support for (#13184)

1801VP1-065 variant.  Passes ZDLDH0 test and works with TU58 driver (DD.SYS).

* Preliminary emulation of the ColdFire SIM module interrupt controller, pl6_demo now starts to run.

* Small oversights fixed

* Fix warnings to make Clang happy on macOS

* mc68681.cpp: remove "Device" from device string

* Revert changes to new68k - HALT is not a valid 68k instruction

* Add TODO tag

* Updated JPM FPGA map with more functions found

* Fix wrong DUART chip type used in info.

* Merge mame.lst

* prehisle: re-add 1930 to title anyway

* sinclair/scorpion.cpp: Updated new ProfROM V.4.xx.043.9226su BIOS for ZS-256 TURBO+. (#13256)

* dynax/royalmah.cpp: Improved DIP switch labels for Mahjong Diplomat and Mahjong Deringer.

* spectrum_cass.xml: Added 34 working items. (#13245)

Also improved metadata with information from Spectrum Computing.

New working software list additions (spectrum_cass.xml)
--------------------------------------------
Channel 1 - Spectrum Music Club - Issue 5 (Jan. 1991) [Planeta Sinclair, Steven Brown]
Channel 1 - Spectrum Music Club - Double Issue 6 + 7 (Sept. 1991) [Planeta Sinclair, Steven Brown]
Computer Form Pools Predictions [Planeta Sinclair, Steven Brown]
Libreria de Software Spectrum № 6 (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 6 (covertape, alt) [Spectrum Computing]
Libreria de Software Spectrum № 7 (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 7 (covertape, alt) [Spectrum Computing]
Libreria de Software Spectrum № 8 (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 9 (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 9 (covertape, alt) [Spectrum Computing]
Libreria de Software Spectrum № 10 (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 10 (covertape, alt) [Spectrum Computing]
Libreria de Software Spectrum № 11 (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 12 (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 12 (covertape, alt) [Spectrum Computing]
Libreria de Software Spectrum № 13 (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 14 - Spy Chip (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 14 - Spy Chip (covertape, alt) [Spectrum Computing]
Libreria de Software Spectrum № 15 - Invasion (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 16 - Carr-2001 (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 17 - Xirius (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 18 - Zortron (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 18 - Zortron (covertape, alt) [Spectrum Computing]
Libreria de Software Spectrum № 19 - Argon (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 19 - Argon (covertape, alt) [Spectrum Computing]
Libreria de Software Spectrum № 20 - Night (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 21 - Voyager (covertape) [Spectrum Computing]
Libreria de Software Spectrum № 22 - Blue Lands (covertape) [Spectrum Computing]
Light Force (Zafi Chip) [Spectrum Computing]
Lode Runner (48K) [Spectrum Computing]
Misiles [Spectrum Computing]
Sample Editor [Planeta Sinclair, Steven Brown]
Silent 'e' & /y/ Rules [Planeta Sinclair, Steven Brown]
VTX 711 Prestel & Terminal Software [Planeta Sinclair, Steven Brown]

* tvgames: Added seventeen tvgames (4 working). (#13241)

tvgames/elan_eu3a14vid.cpp: Improved emulation of 2*1 pages and 1*1 pages video modes.

New working systems
--------------------
Epoch Minna no Tetris (Japan) [TeamEurope, David Haywood]
Techno Source Interactive Coloring Book: Disney / Pixar Toy Story [Sean Riddle, David Haywood]
Techno Source Interactive Coloring Book: Disney / Pixar Cars [TeamEurope, David Haywood]
Techno Source Interactive Coloring Book: Disney Princess [Sean Riddle, David Haywood]

New systems marked not working
---------------------------------
AtGames 40 Bonus Games in 1 (AtGames) [TeamEurope, Patryk Stefanski]
Bandai / Koto Digimon X Arena (Japan) [TeamEurope, David Haywood]
BornKid 32 Bit Preloaded 139-in-1 Handheld Game Console [TeamEurope, David Haywood]
Fisher-Price 3-in-1 Smart Sports! (US) [Sean Riddle, David Haywood]
Fizz Creations Pac-Man Arcade in a Tin [TeamEurope]
Fizz Creations Tetris Arcade in a Tin [TeamEurope]
Lexibook Arcade Center (JL1800_01) [TeamEurope, David Haywood]
Radica / Sega Menacer (Radica Plug & Play)
Senario The Amazing Spider-Man (Senario, floor  [TeamEurope, David Haywood]mat) [Sean Riddle, David Haywood]
Thinkway Toys Interactive M.A.G. Motion Activated Gear: Teen Titans Arena Showdown [Sean Riddle, David Haywood]
unknown VT369 based 128-in-1 (GC31-369-20210702-V2) [TeamEurope, David Haywood]
Vibes Retro Pocket Gamer 240-in-1 [TeamEurope, David Haywood]
YSN Play Portable Color GameU+ (90-in-1) (Japan) [TeamEurope, David Haywood]

* hash/pc8801_flop.xml: Updated comments for Babylon. (#13262)

* Noted that PC8801mk2SR is needed (uses V2 mode).
* Noted that instructions for creating a Crimson user disk are applicable.

* dbridgec: correct company string

* machine/mv_sonora.cpp: Support 2, 4, and 16bpp modes. [R. Belmont]

apple/macpdm.cpp: Fix HMC reads and writes, map RAM properly, and hook up NuBus. [R. Belmont]

* ns32081: avoid link failure due to inline virtual functions

* also use correct name for /SPC output

* added Power Rangers to the Rescue (JAKKS Pacific TV Game) (Aug 8 2008 16:46:59) (#13265)

New systems marked not working
------------------------------
Power Rangers to the Rescue (JAKKS Pacific TV Game) (Aug 8 2008 16:46:59) [David Haywood, TeamEurope]

* oberheim/dmx.cpp: Surfacing mouse-controlled tunning trimmers on the layout. (#13266)

Also made slider script and the sliders in the layout more reusable.

* msx_keyboard: remove most PORT_CHAR hex literals,
dbridgec: small tweak to internal artwork:
misc: update some notes

* mspacman: correct return value after bankswitch

* seta/simple_st0016.cpp: Remove unnecessary trampoline (#13270)

* seta/simple_st0016.cpp: Remove unnecessary trampoline

* seta/st0016.cpp: Fix naming

* namco/ygv608: update_screen -> screen_update

* New software list items marked not working
------------------------------------------
amiga_cd: Gunbee F-99: The Kidnapping of Lady Akiko, Pinball Brain Damage, 17 Bit - Phase Four, 17 Bit - The Fifth Dimension, 17 Bit - Level 6 [redump.org]

* amiga/amigaaga.cpp: implement BRDRBLNK, extend DDF stop for hires fmode 3 to +16

* amiga/amigaaga.cpp: update QA

* hash/pc8801_flop.xml: Added 1 working item. (#13269)

New working software list addition
--------------------------------------------
Berserkers Front Gaiden 3 Plus - Turning Point (Developer Studio K2) [krugman on archive.org]

Updates metadatas of other Studio K2 doujin games.

* New working systems

-------------------
Disney Pixar Classics (JAKKS Pacific TV Game) [David Haywood, TeamEurope]

* seta/seta.cpp: identified an unknown DIP switch for drgnunit [GoldS_TCRF]

* hiscore.dat: Updates

* sinclair/scorpion.cpp: Added three variants of the new Scorpion GMX ProfROM +GMX V.6.xx.043.9226s BIOS. (#13254)

* amiga/amiga_m.cpp: impose DDFSTOP HW limit on bits 15-8 writes

* philips/mcd212.cpp: Implemented RBG decoding and RGB transparency bit. (#13246)

* casio/ct8000.cpp: Emulated Casiotone 8000 keyboard and related systems. (#13237)

* sound/flt_biquad.cpp: Added Sallen-Key high-pass filters.
* sound/bbd.cpp: Added MN3207P variant.
* sound/upd931.cpp: Emulated µPD931 synthesis chip.

New working systems
--------------------
Casio Casiotone 8000 [=CO=Windler, Devin Acker]
Casio Casiotone FK-1 [BCM, Devin Acker]

New systems marked not working
------------------------
Casio Casiotone MB-1 [=CO=Windler, Devin Acker]

* galaxian/galaxian.cpp: Added Rocket Convoy (War of the Bugs clone from Radar Ltd.). (#13198)

New working clones
------------------
Rocket Convoy [Luis Arrufat]

* seta/downtown.cpp: Adjusted Meta Fox/Arbalester video refresh rate to improve Meta Fox music tempo. (#13267)

Also improved names of some member functions and updated comments.

* apple2gs_flop_orig.xml, apple2_flop_clcracked.xml: Added sixteen working items and replaced one crack. (#13146)

* apple2gs_flop_misc.xml: Removed a duplicate dump.
* Also cleaned up metadata and spacing around comment delimiters.

New working software list items (apple2gs_flop_orig.xml)
-------------------------------
2088: The Cryllan Mission
Draw Plus (version 1.0)
First Categories
List Plus (version 1.0 (11-Dec-87))
MultiScribe IIgs (version 3.01c)
Panzer Battles IIgs
Peanuts Maze Marathon IIgs
Photonix II (version 2.50)
Reading Magic Library: Jack and the Beanstalk IIgs
Skate or Die IIgs (version 1.0)
The New Talking Stickybear Alphabet
The New Talking Stickybear Opposites
The Ugly Duckling (version 1.1)
TopDraw (version 1.01A (8/4/87))
Transylvania III IIgs

New working software list items (apple2_flop_clcracked.xml)
-------------------------------
The Coveted Mirror (version 1983) (4am crack)

Redumped software list items (apple2_flop_clcracked.xml)
-------------------------------
Un Día Típico (4am crack)

Removed (apple2gs_flop_misc.xml)
-------------------------------
Transylvania (Duplicate of Transylvania III)

* amiga/amigaaga.cpp: increment fmode 3 offset hack

* srcclean and manual cleanup

* machine/spg110_video.cpp: Hide logging behind logmacro

* modelracing/sshot.cpp: dumped sound PCB PROMs for sshot [IZ8DWF]

* amiga/amiga_m.cpp: misc popmessages aimed at AGA unsupported stuff

* amiga/agnus_copper.cpp: add vblank line mechanism for penalties

* amiga/amigaaga.cpp: remove intermediate misprint

* cpu/m68000: Fix disassembly of CAS. [Doug Brown, R. Belmont]

* gauntleg: correct button labels

* Prevent out-of-bounds reads in the upd7725 cpu core. [Lord Nightmare]

* Fixed up some metadata

* ibm5170_cdrom.xml: Demoted Sonic CD Pentium Processor Edition items to unsupported.

* seta/seta.cpp: Fixed undocumented Dragon Unit DIP switch settings.

* New working clones
------------------
Raiden Fighters (Korea, SUB2 cart) [NFG]
Super Shot (set 2) [f205v]

New systems marked not working
------------------------------
GPi 1200 [taksangs]

- namco/quickncrash.cpp: dumped correct dot CPU ROM for qncrasha [DogP, man-of-eel]

* sega/vicdual.cpp: dumped PAL for nsubc [system11, caius, Porchy]

* formats/tzx_cas.cpp: Cut data size in case header requesting more than available (MT8952) (#13289)

* lib/formats: Fix build after cdb94c2be5

* formats/oric_tap.cpp, formats/uef_cas.cpp: Fixed build after #13289, tidied code. (#13290)

* rocktcnvy: Add missing PROMs (#13288)

* misc: correct "lenght" typo

* amiga/amigaaga.cpp: hookup bplam for single playfield mode

* amiga/amigaaga.cpp: hookup DDFSTOP bits 1-2

* formats/cassimg.cpp: prevent regression in cass images (#13292)

* mole: reduce unrealistic 6502 clock

* source org: add yachiyo folder

* alesis/midiverb.cpp: DSP emulation. Transitioned to working. (#13283)

* alesis/midiverb.cpp: DSP emulation. Transitioned to working.

* Addressing review feedback.

* amiga/amigaaga.cpp: implement pf2ofx color table

* apple2gs_flop_clcracked.xml: added 6 dumps, 1 redump [Brian Troha] (#13293)

New working software list items (apple2gs_flop_clcracked.xml)
-------------------------------
Draw Plus (version 1.0) [Brian Troha]
MultiScribe IIgs (version 3.01c) [Brian Troha]
The New Talking Stickybear Alphabet [Brian Troha]
The New Talking Stickybear Opposites [Brian Troha]
The New Talking Stickybear Shapes [Brian Troha]
TopDraw (version 1.01A (8/4/87)) [Brian Troha]


- redumped Skate or Die IIgs (version 1.0) [Brian Troha]

* toaplan/toaplan1.cpp: Added release regions to descriptions, and cleaned up code: (#13284)

* Improved saved state support, suppress side effects for debugger reads.
* Use more appropriate types for some variables, reduced local variable scope and made more variables const.
* Reduced literal tag use, improved ROM region names, reduced preprocessor macros.

* amiga_demos.xml: Added 2 not-working entries (#13280)

- Interference (demo) [pouet.net]
- Puggs In Space (demo) [pouet.net]

* sstrangr: correct company string,
aburner: make 'prequel' a parent set

* New working clones
------------------
Fruit Bonus 2004 (Version 1.4) [Ioannis Bampoulas]

New systems marked not working
------------------------------
Dream 9 (v1.52) [Hammy]

New clones marked not working
-----------------------------
Cherry Bonus IV (V1.2) [Hammy]
Speed Up / Kkot Bi Nyo (Korea) [taksangs, charlie]
The Roulette (Visco, medal) [Hammy]

- modelracing/sshot.cpp: redumped sshota [f205v]

* seta/speglsht.cpp: Cleaned up code: (#13271)

* Cleaned up drawing code.
* Removed redundant gfxdecode and palette (both are already handled in ST0016).
* Improved save state support, suppress side effects for debugger reads.
* Reduced literal tags, updated comments.

* hash/pc8801_flop.xml: update QA (#13279)

* hash/pc8801_flop.xml: update QA

- sf3dopv is the same game sf3dthxg. So I make it a clone. Add sf3dopv to undumped list. Fix the name to reflect the box name.
- Carmine fix name to reflect the box and set V2 Mode required.

* readd orignal

* add complete name of the box on alt_title and restore previous info name

* cpc_cass.xml: resolve MT#09093

* 3rdparty/ymfm: sync to latest (#13263)

* hash/pc8801_cass.xml: Added 1 not-working item (#13297)

New software list items marked not working (pc8801_cass.xml)
-----------------------------------------------
Computer the Golf (1983)(Nihon Falcom) [shawnji on archive.org]

* Fixes for MC68EZ328 (#13286)

* MC68EZ328: Allow selection and use of Port A

On EZ and VZ, PASEL is reserved, and it was hard-coded to 0 (disabled).
However, the user manual notes: "In an 8-bit-only system, you can
configure these pins as a parallel I/O port by writing a 1 to the
WDTH8 bit of the SCR."

According to the MC68328 datasheet, something similar should be needed
to activate its Port B, but that change is not included here. Its PBSEL
is exposed, so there is likely no difference in emulation.

* MC68EZ328: Fuller implementation of timer

The existing implementation left the timer counter (TCN) at zero until
the compare value (TCMP) was reached. However, some software relies on
reading the TCN values to measure elapsed time.

The timer counter (TCN) now increments on every timer tick.

* ymfm_opn: apparently there is no internal flag when latch was written

* Fix up some stuff:

* formats/cassimg.cpp: Put allocation outside loop again, check more allocations for failure.
* pc8801_flop.xml: Actually mark clones as clones, transliterate title for S.F.3.D.
* apple/macadb.cpp: Tidy a little.

* Cleaned up various stuff.

* nec/pc8001.cpp: grant a slot for DIY expansion ROMs

* roland/roland_d70.cpp: Corrected name of layout.

* salmndr2: remove obsolete note/unemulated protection flag

* am79c90: delay interrupt after initialization

* megacd.xml: Use conventional phonetic 'zu' reading rather than 'du' in 'Kanzume'.

* Bumped version to 0.274

* ymfm_opn: writes to 0xa7/0xaf also go to latch

* Revert "ymfm_opn: writes to 0xa7/0xaf also go to latch"

This reverts commit 659471456a.

* ymfm_opn: OPNA does not have 4 latches

* paia/midi2cv8.cpp: Adding driver for MIDI2CV8. (#13298)

* paia/midi2cv8.cpp: Adding "not working" driver for MIDI2CV8.
Includes layout.

* midi2cv8: Marked as working.

* amiga/paula.cpp: trigger an irq if channel DMA gets disabled during playback

* amiga/agnus_copper.cpp: delay suspend_offset a bit

* New clones marked not working
-----------------------------
Head Panic (ver. 8.30) [trol]

- seta/speedatk: merged driver into single file

* New working clones
------------------
Mephisto Risc 1MB (v1.0) [anonymous]

* misc/esd16.cpp: marked hedpanic830's audio CPU ROM as bad

* toaplan/twincobr.cpp, toaplan/wardner.cpp: Cleaned up code: (#13285)

* Corrected Wardner palette size.
* Suppress side effects for debugger reads, register for save states in machine_start().
* Use bit extraction helpers, reduced scope of loop counter variables.
* Reduced literal tag usage, use more appropriate types for variables, made some variables const.

* skeleton/zorba.cpp: Improved save state support and cleaned up code: (#13305)

* Use explicitly sized integer types for member variables that need to be saved.
* Use a memory view for the ROM overlay.
* Use object array finders.

* -kontron/kdt6.cpp: Cleaned up code: (#13301)

* Use a memory view for the boot ROM overlay.
* Reduced literal tags, reduced duplicated code, and made some variables const.

-machine/z80dma.cpp: Suppress side effects for debugger reads.

* New machines marked as NOT_WORKING
--------------------------------
CYB Systems Multibox [Bitsavers]

* ymfm_opl: actually emulate opl2 waveform enable bit

* ymfm_opl: no need to check for IsOpl2Plus here

* dec0: lower opl2 volume

* ohmygod: increase oki clock [Mylstar Electronics]

* -konami/konppc.cpp, konami/gticlub.cpp, konami/hornet.cpp, konami/nwk-tr.cpp, konami/zr107.cpp: Cleaned up code: (#13300)

* Removed hard-coded tags and reduced code duplication.
* Improved save state support, suppress side effects for debugger reads.
* Increased size of CG board ROM regions to avoid out-of-bounds errors if higher banks are selected.
* Use bitfield extraction helpers, reduced literal tag usage, use logmacro.h for logging, made some variables const.
* Reduced preprocessor macros, updated comments.

-konami/gticlub.cpp: Removed unnecessary code.

-konami/hornet.cpp: Split driver state class for different configurations, moved bank configuration into machine_start().

-konami/nwk-tr.cpp: Split palette per CG boards (K001604 also has palette RAM interface?).

* hh_sm510: add preset for triple screen games

* cpu/drcbearm64.cpp: Optimised load/store and call generation. (#13307)

* amiga/cubo.cpp: hookup 8-bit NVRAM device

* amiga/agnus_copper.cpp: revert 51919d5e4b

* konami/k037122.cpp: Fix max palette numbers of gfxs (#13315)

* k001604.cpp: Fix max palette numbers of gfxs (#13314)

* formats/tzx_cas.cpp: Fixed regression in TAP format; Added checksum validation (MT9104) (#13322)

* hash/x68k_flop.xml: Added 1 working items. (#13275)

New working software list additions (x68k_flop.xml)
--------------------------------------------
Last Force - The Virtual Battle in 1930's (1993)(Hong Kong Project) [Shentok on archive.org]
Xadlak Plus (1996)(Sprite) [danielham on archive.org]

* Cleanup:

cpu/drcbex86.cpp: Don't use static address space accessors.  This gives
a big performance improvement.

cpu/drcbeut.cpp: Made failure to resolve address space accessors fatal.

cpu/drcbearm64.cpp: Removed fallback to static address space accessors.

cpu/mips3/mibs3.cpp: Removed static address space accessors.  All they
were doing was hurting performance.

cpu/drcbex64.cpp: Don't use goofy X64_WINDOWS_ABI macro, just check
_WIN32.  The only other environment that uses the Windows calling
convention is (U)EFI, and we can move feature detection to util/abi.h if
we ever need to care about it.

* wd33c9x: Add support for the Translate Address command

* isa/hdc: Improve initial state, proper units for dma transfers

* amiga: Untangle CPU slot bus from Zorro-II slot

- 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]

* formats/h8_cas.cpp: Update H8T to newer cassette handling (#13250)

* cpu/drcbeut.cpp: Removed static address space accessors.

cpu/drcbex64.cpp: Removed fallback to static address space accessors.

cpu/drcbex86.cpp: Fixed regression in FWRITE.

* paia/fatman.cpp: Adding driver for FatMan. (#13324)

* oberheim_dmx.lay: Proper tracking of pointer IDs. Easier fine adjustments. (#13319)

- Click and adjustment state is now tracked for each pointer ID individually,
  rather than globally.
- If a user selects the slider knob, the adjustment will be proportional to
  the knob movement. This allows for finer adjustments. If the user clicks
  elsewhere on the slider, the adjustment is based on the absolute position
  of the click.

* New working software list items
-------------------------------
pc8801_flop: Hibernia [archive.org]

* New software list items marked not working
------------------------------------------
pc8801_flop: Hibernia (alt .d88 format), Red Stack [archive.org]

* amiga/amigaaga.cpp: fix playfield-sprite collisions

* New systems marked not working
------------------------------
Bomberman Misobon Roulette (961028 JPN) [Steamy Jimmy, Sean Riddle]

Clones promoted to working
--------------------------
Head Panic (ver. 8.30) [trol]

* intel/intellec8.cpp: Add two Intellec 8 MOD80 sets (#13327)

New systems marked not working
------------------------------
Intellec 8 MCS MOD80 (set 1, 884A) [ArcadeHacker]

New clones marked not working
------------------------------
Intellec 8 MCS MOD80 (set 2, 880) [ArcadeHacker]

* pc8801_flop.xml: Fix region size for hibernia

* pc8801_flop: fix broken image and mark bad

* cpu: Got rid of the rest of the static member function trampolines.

cpu/drcbearm64.cpp, cpu/drcbex64.cpp: Removed static trampoline
fallbacks for get map variable value and debugger instrcution hook
functions.

cpu/drcbex86.cpp: Removed static trampolines for get map variable value
and debugger instrcution hook functions.

cpu/drcbex64.cpp: Corrected stack diagram in comment.

* sm5a: remove kb1013vk12_device as it's identical to sm5a_device

* New working systems
-------------------
Basketbol (Elektronika) [hap, Milan Galcik]

* amiga/amigaaga.cpp: implement CLXCON2

* New software list items marked not working
------------------------------------------
amiga_cd: Wendetta 2175 [redump.org]

* linn/linndrum.cpp: Added driver for LinnDrum. (#13330)

* linn/linndrum.cpp: Added driver for LinnDrum.

* linndrum: Fixed typos.

* New systems marked not working
------------------------------
Hana Arashi (Japan) [Hammy]
Hana no Ren-Chan II (Japan) [Hammy]

- igs/goldstar.cpp: added default NVRAM for fb2010, corrected dips [Ioannis Bampoulas]

- pce/ggconnie.cpp: verified Oki pin 7 [Sean Riddle]

* amiga/amigaaga.cpp: implement palette reads

* -cpu/drcbex64.cpp: Directly dispatch memory accesses no larger than native width to specific handlers. (#13325)

emu/emumem_aspace.cpp: Got rid of static accessors structure, added a
helper for obtaining info for dispatching specific accessors.

* cpu/drcbearm64.cpp: Added scaffolding for directly dispatching memory accesses.

* igs/goldstar.cpp: fixed missing closing bracket in fb2010 title

* cosmac: add pull callbacks for int/dmain/out

* -cpu/drcbex64.cpp: Fixed handling of address map global mask.

* Fixed Final Furlong failing to boot.

-util/mfpresolve.cpp, emu/emumem_aspace.cpp: Moved some member function
 pointer manipulation stuff into the library.  Gives another slight
 reduction in the size of libemu.

* kim1: add view toggle for keypad

* elf2: improve internal artwork

* alba/hanadojo.cpp: add proms hookup and sketchy video emulation

* Rewrote the Truco-Tron driver. [Roberto Fresca, Grull Osgo]
 - Added real NVRAM support.
 - Added a default NVRAM to get the system working.
 - Improve the memory system.
 - Inputs from the scratch based on the new reverse-engineering.
 - Added jumpers connections.
 - Created settings for the hardcoded functions/modes.
 - Added coin-in and coin-out counters.
 - Added workaround to unmask the inputs for the gambling mode.
 - Redefined the interrupt system.
 - Documented all the different modes and features.
 - Documented the reverse-ingeneering done to get all the modes working.
 - Documented the inut system through reverse-engineering.
 - Modded the coin-in input, now tied to the PIA6821.

* emscripten: fixes to get bgfx working (#13255)

* Emscripten: Fixes to get BGFX working

* Move emscripten specific setup into an #elif statement

* Fix indentation

* emscripten: remove no longer link option DEMANGLE_SUPPORT

* alba/hanadojo.cpp: improve colors, pinpoint service dip

* konami/nwk-tr.cpp: implement broadcast CG select

* dmx.cpp, midiverb.cpp, fatman.cpp: Added _device suffix to devices. (#13334)

* konami/tp84.cpp: Cleanup: (#13310)

* Enlarged sound CPU ROM region to match size mapped in CPU address space.
* Cleaned up graphics decoding layout.
* Zero-fill empty ROM areas.

* konami/spy.cpp: Cleaned up code: (#13311)

* Use a memory view for the RAM overlay.
* Reduced the sound CPU ROM region size to match the area mapped in the CPU address space.
* Added comments about unknown writes in address map.

* konami/k051733.cpp: Suppress side effects for debugger reads, use logmacro.h logging, and cleaned up code. (#13316)

* konami/k001005.cpp, konami/k001006.cpp: Cleaned up code: (#13313)

* Suppress side effects for debugger reads.
* Use bit helpers, made some variables constant.
* konami/k001006.cpp: Derive from device_palette_interface for palette.
* konami/k001006.cpp: Throw a fatal error if the texture ROM size is not a supported size.
* konami/k001006.cpp: Match texture data size to texture ROM size.

* megacd.xml: Mark the US version of Eternal Champions - Challenge from the Dark Side as a clone of the PAL version. (#13306)

* konami/tutankhm.cpp, konami/junofrst.cpp: Cleaned up code: (#13309)

* Increased main CPU ROM region size to fix out-of-bounds accesses in some banks.
* Reduced sound CPU ROM size to match area mapped in address map.
* Made some variables const and reduced preprocessor macros.
* konami/timeplt_a.cpp: Use a device finder array for audio filters.

* konami/megazone.cpp: Cleaned up code: (#13308)

* Use more appropriate integer types, and made some variables const.
* Reduced duplication.
* Cleaned up graphics decoding layouts and improved ROM region and object finder names.

* Cleaned up some recent commits.

* Abort ATA commands when writing to command block registers and DRQ or BSY is set, which is mentioned in the ATA3 specification as a possible outcome. Removed the equivalent hack used by the cojag games. Improved the logging in the ATA code. [smf]

* ATA-1 specification says that some drives will de assert interrupts if there is more data to be read. [smf]

* New working machines added
--------------------------
Mawasunda!! (V2.08J 2000/02/01 11:02:54) [twistedsymphony, buffi, rtw, ekorz, Hammy, smf]
Cool Boarders Arcade Jam Bootleg (Export) [buffi, smf]
Aero Fighters Special (VER 1.00G) [smf]
Brave Blade (VER 1.40G) [smf]
Flame Gunner (VER 1.40G) [smf]
Fighters' Impact (VER 2.10G) [smf]
G-Darius (VER 2.70G) [smf]
Ray Storm (VER 2.60G) [smf]
Shanghai Matekibuyuu (VER 1.20G) [smf]
The Block Kuzushi (VER 1.10G) [smf]

Machines promoted to working
----------------------------
Space Invaders Anniversary (V2.02J 2003/09/12 20:00) [smf]
Kollon (V2.04JA 2003/11/01 12:00) [smf]
Primal Rage 2 (Ver 0.36a) [smf]
Strider 2 [smf]

New not working machines added
------------------------------
Bust a Move 2 (CDROM JAPANESE ROM ver. 1999/07/17 10:00:00) [windyfairy, smf]

Refactored ZN1/ZN2/G-NET driver, added coin lockout based on manufacturer, removed unused inputs from each game. [smf]

* Added a delay after SPU DMA is triggered to prevent a lock up in Primal Rage 2 test mode & improved logging. [smf]

* sony/zn.cpp: primrag2 title string numeral change (#13338)

* New clones marked not working
-----------------------------
Fruit Bonus 2010 (v. 2.0.1.0) [Ioannis Bampoulas]
Tengai (bootleg) [Taksangs]

- namco/namcos12.cpp: verified that contents of the TKK1-A CD for truckk are the same of the TKK2-A CD [Hammy]

* punisherbz: set year according to title screen (#13335)

* jaleco/ms32.cpp: fix gratia roztiles file names to match PCB silkscreen (#13295)

* snk/snk6502.cpp: removed BAD_DUMP flag and fixed bits comment for ic10 in nibblera. ROM passes test and the fixed bits comment simply isn't true

* tiny.lst: remove comments from file

* New working systems
-------------------
Computachess II [hap, Sean Riddle]

* nwk-tr: revert broadcast CG select after Kale changed his mind of this implementation

* cpu/drcbex64.cpp: Slightly optimised some degenerate cases for memory accesses.

This gives a very small improvement for systems with 32 address lines
and no global address mask (e.g. pmac6100, sf2049 or coolmini).

* mame.lst: Removed majority of comments.

A lot of them were empty anyway, or years at risk of getting out of
synch with the source files.  There's still a commented system entry for
some Nokia PC, and the comment at the top of the file.

Also sorted systems for some PC source files.

* mame.lst: remove unused nws286 entry (it's a commented out NO_DUMP set in driver)

* -konami/simpsons.cpp: Cleaned up code. (#13312)

* Reduced literal tags and run-time tag lookups, use more descriptive tags.

-konami/konami_helper.cpp: Made layer sorting functions templates, reduced dependence on preprocessor.

* aerofgts: add note

* namco/namcos12.cpp: changed truckk region description (#13337)

* renamed pchess to kpchess, pplus to kpplus, and cpchess to pchess

* coleco: add m1 and soundchip waitstates

* taito/taito_b.cpp: dumped PLDs and updated ROM labels for rambo3 set [f205v]

* elbaskb: default to 1 player

* dynax/ddenovr.cpp: Improved DIP switch settings for Mahjong Daimyojin.

* dynax/ddenovr.cpp: Fixed a few more DIP switch settings for Mahjong Daimyojin.

* dynax/ddenlovr.cpp: Fixed credit limit settings for Mahjong Daimyojing and Hanafuda Hana Ginga.

The credit limit is multiplied by the coin rate for these games.

* New working clones
------------------
Cameltry (World, YM2610) [fraspe]

* scc68070: limit external memory addresses to 24 bits (fixes cdi:zombie and clones, possibly others) (#13321)

* bus/centronics: hookup The Adaptator DE-9 multitap device (#13341)

* bus/centronics: hookup The Adaptator DE-9 multitap device

* bus/centronics/adaptator: register a possible DDR variable

* seta: move alba into seta folder

* ATA: reading the status doesn't acknowledge interrupts unless BSY is 0, update RDY when reading either cs0 or cs1, log the correct device number even when device 0 is standing in for device 1, don't log data reads/writes if the device isn't selected, fix regression from 5fcf2f031c that prevented slave devices working [smf]

* cpu/drcbearm64.cpp: Optimised immediate value generation.

* Detect immediates that can be generated with a single movz/movn/orr.
* Prefer adr over add to base register (no register dependency).
* Don't bother trying to load base register value from memory.
* Got rid of loop in check for contiguous mask values.
* Slightly optimised generation of ROLAND/ROLINS shift counts.

* oric1_cass.xml: Added 3 working items (#13348)

New working software list additions
--------------------------------------------
Hnefatafl [Defence Force]
Mieyen [Inufuto]
O-Thrust (v1.2) [Defence Force]

* taito/taitocchip.h: Remove bankdev.h usage (#13346)

* bus/amiga/zorro: Add emulation (seemingly working) of Oktagon 2008 SCSI controller [AJR, unknown]

* Rework amiga_workbench.xml software list. The list now contains Workbench for all systems, wile AMIX still uses its own list. Synchronize data where possible with the "Workbench Project" website.

New working software list items
-------------------------------
Workbench 1.3 Rev. 34.20 (Enhancer Software) [Turran FTP]
Workbench 1.3.2 Rev. 34.28 (US) [Turran FTP]
Workbench 1.3.2 Rev. 34.28 (Es) [displayman]
Workbench 1.3.3 Rev. 34.34 (Fr/Be) [steel-alive.fr]

All other additions sourced from TOSEC or merged from previous a1000/a3000 lists.

* multibus: report unmapped addresses

* make bus device available during card configuration
* improve interrupt routing

* m68000: add missing set_current_cpu function

* sun1: refactor into multibus cage/card

* added more firmware revisions
* added mmu emulation

* bus/amiga/zorro/oktagon2008.cpp: Improve ROM mapping

* seta/hanadojo.cpp: preliminary IOX HLE devices

* oberheim/xpander.cpp: Added driver for Xpander. (#13351)

* oberheim/xpander.cpp: Added driver for Xpander.

* xpander: Fixed typos and comments, removed unused variable, cast to bool.

* cpu/drcbearm64.cpp: Further optimisation:

* Recognise immediate values that can be generated using a movn with
  shift 16 or an orr immediate into a W register.
* Recognise repeating patterns that can be represented as a bitmask
  immediate value.
* Slightly optimised generated code for UML AND when at least one
  argument is immediate zero.
* Added optimised UML AND code when the instruction size is 8 but the
  second argument is a valid 32-bit bitmask immediate.

* hash/x68k_flop.xml: fix #8870

* New working clones
------------------
Waku Waku Anpanman [SpinalFeyd]

- dumped PLDs for phozon, shanghaij and zaxxon2 sets [f205v, Corrado Tomaselli]

* konami/mystwarr_v.cpp, k053246_k053247_k055673.cpp: improve sprite blending (#13328)

* mystwarr & metamrph & dadandrn sprite callbacks:
mark sprites with their attribute bits for blending

* reverse sprite blending

* minor k053247_device::zdrawgfxzoom32GP cleanup:
-move variable declarations closer to use
-use appropriate variable types
-mark applicable variables as const
-move "cull off-screen objects" early out check earlier in function
-move back "dst_" vars under appropriate comment
-further reduce reuse of "eax" variable
-use cliprect directly inside function
-rename various "eax" variables
-simplify switch-case to if statement

* seta/hanadojo.cpp: inputs improvements, patch protection check 1

* Update mame.lst with Pluto 6 changes

* Sync video script changes

* fix mame.lst `goldpyrua`

* Update mame.lst: fix missing `pp01`

* machine/pl6_fpga.cpp: connect to the right audio device

* Fixed formatting issues as highlighted

---------

Co-authored-by: hap <happppp@users.noreply.github.com>
Co-authored-by: Roberto Fresca <robbie@robertofresca.com>
Co-authored-by: arbee <rb6502@users.noreply.github.com>
Co-authored-by: Patrick Mackinlay <pmackinlay@hotmail.com>
Co-authored-by: m1macrophage <168948267+m1macrophage@users.noreply.github.com>
Co-authored-by: mamehaze <140764005+mamehaze@users.noreply.github.com>
Co-authored-by: David Haywood <hazemamewip@hotmail.com>
Co-authored-by: Ivan Vangelista <mesgnet@yahoo.it>
Co-authored-by: Justin Kerk <dopefishjustin@gmail.com>
Co-authored-by: angelosa <lordkale4@gmail.com>
Co-authored-by: Vas Crabb <vas@vastheman.com>
Co-authored-by: shattered <shattered@users.noreply.github.com>
Co-authored-by: holub <andrei.holub@gmail.com>
Co-authored-by: ArcadeShadow <arcadeshadow@gmail.com>
Co-authored-by: Marc Roy <roy.marc.91@gmail.com>
Co-authored-by: cam900 <dbtlrchl@naver.com>
Co-authored-by: cracyc <cracyc@users.noreply.github.com>
Co-authored-by: Vincent-Halver <Vincent.Halver@gmail.com>
Co-authored-by: Devin Acker <d@revenant1.net>
Co-authored-by: ClawGrip <clawgrip@hotmail.com>
Co-authored-by: A-Noid33 <108240177+A-Noid33@users.noreply.github.com>
Co-authored-by: AJR <ariedlmayer@gmail.com>
Co-authored-by: Lord-Nightmare <Lord-Nightmare@users.noreply.github.com>
Co-authored-by: ICEknigh7 <47050710+ICEknigh7@users.noreply.github.com>
Co-authored-by: Barry Rodewald <mahlemiut75@gmail.com>
Co-authored-by: Angelo Salese <angelosa@users.noreply.github.com>
Co-authored-by: Kirk Meyer <kirk.meyer@alpaxo.com>
Co-authored-by: Vas Crabb <cuavas@users.noreply.github.com>
Co-authored-by: Dirk Best <mail@dirk-best.de>
Co-authored-by: Mark Garlanger <mgarlanger@users.noreply.github.com>
Co-authored-by: algestam <henrik@algestam.se>
Co-authored-by: jflatt <jflatt@cox.net>
Co-authored-by: smf- <smf-@users.noreply.github.com>
Co-authored-by: Michael Sanborn <95501796+mikehyrus@users.noreply.github.com>
Co-authored-by: barbudreadmon <barbudreadmon@users.noreply.github.com>
Co-authored-by: kuzearcade <111523960+kuzearcade@users.noreply.github.com>
Co-authored-by: Fred <fredrik.sandq@gmail.com>
Co-authored-by: NaokiS28 <biz@nsaito.co.uk>
2025-07-13 16:51:34 +02:00
arbee
cc5af07c4c machine/macseconds.cpp: mix-in to consolidate all of the copy-pastes of the Mac-style time generation. [R. Belmont]
* Also restored the clocks syncing to the local time zone rather than GMT.

m6502/m5074x.cpp: Make external IRQs edge-triggered as documented for the M5074x and M5075x. [R. Belmont]

apple/macprtb.cpp: Properly ack the VBL interrupt to the microcontroller.  Fixes the one-second IRQ. [R. Belmont]
* This fixes the Alarm Clock desk accessory so it updates every second on the Portable and PowerBook 100.
2025-07-12 22:11:46 -04:00
holub
b16e683664
sinclair/glukrs.cpp: Replaced custom RTC with verified KR512VI1/MC146818 (#13932)
* machine/ds1307.cpp: Dropped i2c prefix in the file name
2025-07-09 21:27:53 -04:00
holub
e0ab4c4196
machine/i2cds1307.cpp: Added I2C DS1307; Used the device in Spectrum Next (#13930) 2025-07-08 22:59:23 -04:00
Justin Kerk
8f37851517 Emscripten build: Prevent excessive link times with the default optimization level 2025-07-05 18:18:11 -07:00
holub
4e591c2097
z80dma.cpp: Added UA858D variant; sinclair/spectrum.cpp: Added configurable DMA slot (#13879)
* z80dma.cpp: Added UA858D variant
* sinclair/spectrum.cpp: Added configurable DMA slot
2025-07-04 17:29:18 +02:00
Ivan Vangelista
1c55fd1bdc tiny.lua: added SN76496 2025-07-02 21:51:56 +02:00
arbee
7c8d5d3eef machine/icd2053b.cpp: Support for the Cypress Semiconductor ICD2053B programmable clock generator. [R. Belmont]
pwrbkduo/duodock.cpp: Hook up the ICD2053B for real timings and remove monitors that the hardware doesn't support. [R. Belmont]
2025-06-29 16:32:44 -04:00
angelosa
1215098bc7 sharp/mz2500.cpp: preliminary MZ80 bus slot implementation:
* Move MZ-1E30 SASI, MZ-1R37 EMM from mz2500 base emulation;

* Fix range of EMM to 640KB max RAM;

* Add basic MZ-1E35 ADPCM emulation;

* Add SuperTurboZ EH-SASI ROM BIOS to MZ-1E30;

* implicitly fix dustbx01-dustbx02-dustbx03 bootups: they are incompatible with MZ-1E30 Sharp BIOS;
2025-06-23 12:19:56 +02:00
Devin Acker
ad6b93869e
casio/fz1.cpp: Add floppy to FZ-1 and clones (#13849)
* fz1: drive select is not connected
2025-06-21 08:27:53 -04:00
arbee
858987da83 a2bus/a2ieee488.cpp: Added support for the Apple IEEE-488 Card. [R. Belmont, Golden Child] 2025-06-20 21:43:39 -04:00
Nigel Barnes
1d0e436fd7 bus/bbc/1mhzbus: Added BEEBEX Extender for BBC Micro. 2025-06-19 18:21:47 +01:00
Nigel Barnes
6a0a1af3f9 bus/acorn: Buffered the bus using device_memory_interface.
- Added BLK0 and PB lines to the interface.
- Moved existing devices into anonymous namespaces.

bus/acorn/atom: Added GDOS, GDOS-2015, MDCR, Speech Synthesis Module, EPROM Switch Card, Tube Interface, EF9345 80 Column Card.

bus/acorn/cu: Added High Resolution Graphics, CUBIO w/ Race Controllers, Teletext Video Interface.

bus/acorn/system: Added configuration to use 32K RAM card with the Atom.

acorn/acrnsys.cpp: Devicified the System keyboard with AY-3-4592 encoder.
2025-06-18 23:33:21 +01:00
holub
d438fea99d
sinclair/spec128.cpp: Support multiple kinds of AY devices through a slot (#13808) 2025-06-17 22:08:52 -04:00
Olivier Galibert
f0e6df8048 sound:
move positions to osd interface
  add special-casing for LFE
  add reverb (currently too subtle, need to find out why)

vgm_visualizer: stop going OOB on the bitmap
2025-06-17 00:56:05 +02:00
Nigel Barnes
673b0861f2 video/mr9735.cpp: New MR9735-002 Teletext/Viewdata Video Generator device.
New systems marked not working
------------------------------
STC 3910 Executel [Binary Dinosaurs, Nigel Barnes]
2025-06-16 22:44:34 +01:00
Nigel Barnes
b4e04ba8cf machine/ay34592.cpp: New AY-3-4592 keyboard encoder device. 2025-06-16 22:44:33 +01:00
Pino Toscano
557a45157a
osd: remove redundant checks when setting BASE_TARGETOS/SDLOS_TARGETOS (#13830)
The vast majority of the OSes use BASE_TARGETOS=unix and
SDLOS_TARGETOS=unix, which are set as default values; the few exceptions
(Windows and macOS) already have their own selections.

Hence drop all the empty if statements for other OSes than Windows and
macOS, as actually redundant.
2025-06-15 16:25:22 -04:00
holub
e3efc055b1
bus/spectrum/zxbus.cpp Moved to separate folder (#13809) 2025-06-13 12:56:04 +02:00
m1macrophage
9112f09cb5
roland_tr707.cpp, video/hd61602.cpp: LCD emulation. (#13798)
* Emulated HD61602 device.
* Incorporated it into the 707 driver and layout.
* Corrected tempo potentiometer curve.
* Made dinsync testable.
* Marked systems as supporting save.
* Minor layout cleanup.
2025-06-12 10:21:01 +02:00
arbee
bca9f1b061 nubus/enetlc.cpp: Support for the Apple Ethernet LC Card and Apple Ethernet LC Twisted Pair Card. [R. Belmont, Al Kossow]
nubus/enetnbtp.cpp: Support for	the Apple Ethernet NB Twisted Pair card. [R. Belmont, Al Kossow]

apple/macpwrbkmsc.cpp: Support the dock	slot on	all supported PowerBook	Duos. [R. Belmont]

nubus/pwrbkduo/duodock.cpp: Preliminary	support	for the	PowerBook Duo Dock, including video, SCSI bus, floppy, and NuBus slots. [R. Belmont, Al Kossow]

nubus/pwrbkduo/ethernetudock.cpp: Support for the Newer	Technology Ethernet MicroDock. [R. Belmont, Doug Brown]

nubus/pwrbkduo/floppydock.cpp: Support for the PowerBook Duo Floppy Dock. [R. Belmont]
2025-06-11 21:55:17 -04:00
arbee
8da6d7a8b0 video/ariel.cpp: New device for the Apple "Ariel" RAMDAC used in several lower-end Macs. [R. Belmont]
apple/v8.cpp: Use the Ariel device.

machine/pseudovia.cpp: Improved accuracy, support more interrupt lines, and support the "AIV3" variant used in Duo Docks. [R. Belmont]
2025-06-11 07:38:27 -04:00
Patrick Mackinlay
c8a1636422 rtpc: fix keyboard diagnostic 2025-06-09 17:08:34 +07:00
AJR
c41e9e0754 atarifdc: Convert to slot device 2025-06-08 23:03:25 -04:00
Justin Kerk
92b4640d3c sound: Set SOUND_DISABLE_THREADING for Emscripten target 2025-06-05 17:48:32 -07:00
Michael Zapf
b42f1752ee Add 74LS61x memory mapper circuit. 2025-06-01 23:17:01 +02:00
Vas Crabb
a0412a6387 -sound: Removed DirectSound sound module.
-sound/xaudio2_sound.cpp: Use more fine-grained locking in voice
 callbacks, simplified further simplified buffer queueing.
2025-05-29 16:20:33 +10:00
Vas Crabb
72de682bbf -sound/wasapi_sound.cpp: Added preliminary WASAPI sound module (not enabled yet).
-sound/xaudio2_sound.cpp: More fixes:
* Fixed a couple more potential deadlocks when handling critical engine errors.
* Better tracking of the default device when devices are reconfigured.
2025-05-25 05:03:57 +10:00
mamehaze
7ba36c5d36
various VT3xx (mostly VT369) work + some other VT refactoring, many sets now boot + games selectable (#13727)
- added a derived 6502 core for the VT3xx Sound CPU (built into the SoC), it has some customized opcodes
- added enough emulation of the Sound CPU to get denv150 to pass initial checks
- added internal SoC ROM to a number of sets that copy the sound program from it, allowing those to pass startup checks too
- added preliminary support for some of the extra VT3xx background video features, note even the way the hardware implements these is ugly, they really are hacked on top of the standard NES modes
- added preliminary support for extra VT3xx sprite modes
- the above also allow various Lexibook sets to show boot screens eg. lxcmcysw, lxcmcyfz, lxcmcydp, lxcmcysp, lxcmcycr, lxcmcypj, lxcmcyba, lxcmcypp
- paired some scrambling/encryption to specific SoC classes, as it's likely these represent slightly customized models, added modes for nubsupmf, red5mam, dgun2593, gcs2mgp, 240in1ar which also now show something
- started looking at the new DMA modes needed by 240in1ar etc.
- denv150 basically now works, but leaving it marked as NOT WORKING until the rest of the sound CPU logic is hooked up
- flagged a few sets as potentially bad dumps
- verified / corrected metadata for a number of sets now that they boot and can be better identified
- identified some cases where there seem to be additional protection devices present, supplying either code or data
- replaced vt1682 ALU in vt3xx emulation with its own implementation as it isn't the same
- added relative offset support (a kind of banking internal to the VT3xx) allowing the majority of games in the multi-game menus to go ingame
- added external banking support to a number of the larger games (anything larger than 32Mbytes has to be externally banked)
- corrected ROM loading for a number of sets
- fixed additional opcodes on sound CPU, and added the remaining peripherals
- misc other VT related tweaks
2025-05-23 15:19:52 -04:00
Vas Crabb
aa1a83e481 sound/xaudio2_sound.cpp: Initial support for new sound system features. 2025-05-23 07:49:09 +10:00
hap
1e8c8d01b7 remove obsolete wave (cassette sound) device 2025-05-21 16:56:27 +02:00
Patrick Mackinlay
02651759af tsvme104: added Tekmis TSVME104 card [Xolod] 2025-05-20 14:34:05 +07:00
Olivier Galibert
4f0ced57de muichiz 2025-05-18 00:34:09 +02:00
Patrick Mackinlay
da468a4f50
build: update vs/msbuild settings to reflect current clangcl (#13633) 2025-05-13 11:38:55 +07:00
Olivier Galibert
c0fa1306b8 sound: Add a compressor. May need some tuning 2025-05-10 14:09:03 +02:00
hap
141c8f1db6 modules.lua: only check for pipewire lib if NO_USE_PIPEWIRE is 0 2025-05-07 14:05:47 +02:00
holub
745e040e16
3rdparty/expat: Updated expat to version 2.7.1. (#13643) 2025-05-03 00:18:06 +10:00
Vas Crabb
b4e1f5f1b5 Only link asmjit if native DRCs are built. 2025-05-01 23:31:40 +10:00
Olivier Galibert
d0f1c15a0f New sound infrastructure.
Should be added soon:
- mute
- speaker/microphone resampling

To be added a little later:
- compression
- reverb

Needs to be added by someone else:
- coreaudio
- direct
- portaudio
- xaudio2
- js
2025-04-27 22:23:20 +02:00
arbee
bf499766fc apple/macii.cpp: Fixed regression where NuBus was stealing the internal video's slot $E space and
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.
2025-04-26 07:19:39 -04:00
holub
75d9b59cb8
cpu/z80: Corrected name of generated nsc800 source file, removed duplicate sources from build script. (#13622) 2025-04-26 03:16:26 +10:00
angelosa
de28051b3b bus/cbus: preliminary conversion of MSX style DE-9 ports in -26 and -86
* -86 uses only one port not two;
* Remove joystick readback from -118, mounts a DA-15 PC gameport instead;
* Remove pc9801_snd_device glue logic;
2025-04-23 11:30:18 +02:00
Patrick Mackinlay
458d529007 build: fix msvc build 2025-04-23 14:49:14 +07:00
Vas Crabb
670e2062cb osd: Got rid of the gross globals and functions for manipulating them in the network modules. 2025-04-23 04:25:39 +10:00
Vas Crabb
c10ecb0941 Fixed the last GCC class memory access warnings and cleaned up some stuff.
* 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.
2025-04-21 05:28:13 +10:00
Vas Crabb
fd2ff42459 3rdparty/portmidi: Disable another warning to help clang on Windows. 2025-04-20 10:20:13 +10:00
Vas Crabb
435f04a4c5 3rdparty/portmidi: Fixes for Linux and clang builds. 2025-04-20 09:12:55 +10:00