Commit Graph

4656 Commits

Author SHA1 Message Date
Olivier Galibert
1cea8b8df6 Ensure that the has_* file actually has data in them. The previous PR had clearly never been tested 2023-12-09 23:37:24 +01:00
Devin Acker
37a73726df
Added Casio WG-130 waveblaster device (#11826) 2023-12-09 12:06:00 -05:00
Olivier Galibert
20b2f08fb5 waveblaster: add the dx60xg [O. Galibert, Matt] 2023-12-08 09:17:53 +01:00
Olivier Galibert
f627895caf waveblaster: add the db50xg [O. Galibert, Phil Bennett] 2023-12-08 08:55:42 +01:00
Olivier Galibert
6a05e69541 wavesynth: Slotify the omniwave 2023-12-08 08:54:40 +01:00
Vas Crabb
e5186344e5 Tied up loose ends:
* Updated copyright for FLAC.
* Enabled some more warnings for LZMA now that upstream is cleaner.
* Removed Subversion attributes from .gitattributes.
2023-12-06 17:31:13 +11:00
Vas Crabb
414c5ce5a5 3rdparty: Renamed libflac to flac - it's a full FLAC distribution, libFLAC is just a small part of it. 2023-12-06 17:12:45 +11:00
Vas Crabb
faf991a563 3rdparty/libflac: Updated to version 1.4.3.
Also removed FLAC documentation - it's a lot of bloat.
2023-12-06 17:12:45 +11:00
Vas Crabb
79bef1e230 3rdparty/lzma: Updated to version 23.01. 2023-12-06 07:58:49 +11:00
Vas Crabb
466c450cb3 3rdparty/utf8proc: Updated to 2.9.0. 2023-12-06 07:05:45 +11:00
Vas Crabb
12590d6ad8 3rdparty/zlib: Updated to 1.3.0. 2023-12-06 06:42:53 +11:00
MooglyGuy
0c9f5dd225
-machine/pxa255.cpp: Cleaned up peripheral emulation code. (#11780) [Ryan Holtz]
* Implemented free-running timer.
* Eliminated internal header in favor of scoped enums.
* Eliminated double-dispatch switch/case in handlers, in favor of individual register handlers.
* Reworked GPIO handling for correctness.

-misc/39in1.cpp: Fixed GPIO hookup, now boots on its own. [Ryan Holtz]
2023-11-28 06:19:45 +11:00
Devin Acker
b46f3beddc
casio/cz1.cpp: Added driver for Casio CZ-1 and MZ-1 prototype. (#11779)
* casio/ra3.cpp: Added support for software list ROM cartridges.
* sound/upd933.cpp: Clear pending interrupt flag when read.
* sound/upd933.cpp: Implemented presumed pitch modulator register.

New working systems
--------------------
Casio CZ-1 [Mastropiero, Devin Acker]

New working clones
--------------------
Casio MZ-1 (prototype) [Mastropiero, Devin Acker]

New working software items (cz1_cart.xml)
------------------------------------
Orchestra (RC-10) [Edward d-tech]
Organ / Synth. Sound / Sound Effect (RC-30) [Edward d-tech]
Piano / Guitar / Percussion (RC-20) [unknown]
2023-11-26 02:03:22 +11:00
AJR
7174ef98d4 skeleton/hudson_poems.cpp: Create and hook up skeleton Xtensa CPU device 2023-11-25 09:01:40 -05:00
AJR
428fbb7c55 unidasm: Add disassembler for Tensilica Xtensa architecture 2023-11-22 08:56:17 -05:00
Nigel Barnes
7d4de65b7b psion/psion3.cpp: Added save state flag.
psion/psion3a.cpp: Added preliminary Condor serial device for Series 3c, and added save state flag.

psion/psionhc.cpp: Removed expansion port C, and added save state flag.

psion/siena.cpp: Added preliminary Condor serial device, and added save state flag.

psion/workabout.cpp: Added save state flag.
2023-11-22 12:42:34 +00:00
Vas Crabb
418d093e54 Revert "3rdparty/portaudio: Enabled PulseAudio backend for Linux. [invertego]"
This reverts commit c5927d37e7.

PortAudio's PulseAudio backend currently has issues.  We'll sit this out
until that's sorted out upstream.
2023-11-20 02:32:34 +11:00
Nigel Barnes
4a29438376 bus/bbc/analogue: Added Microwriter Quinkey input device. 2023-11-17 20:28:32 +00:00
Nigel Barnes
fccb3e2f47 6883sam.cpp: Moved to machine folder, for use in non coco/dragon machines. 2023-11-17 19:08:43 +00:00
buffi
74b32921e1
misc/cv1k.cpp, misc/nexus3d.cpp: Migrated to use newer machine/nandflash.cpp Flash memory emulation. (#11708)
* machine/nandflash.cpp: Only reset page address on read or program command.
* machine/nandflash.cpp: Added Samsung K9F1G08U0M and K9F2G08U0M.
* Removed now-unused machine/serflash.cpp.
2023-11-13 02:55:41 +11:00
Vas Crabb
6e60af32c1 sega/sega_beena.cpp: Added basic book page display.
sega_beena_cart.xml: Put page scans in individual data areas.

frontend/mame/luaengine_mem.cpp: Added a raw read function for memory
regions.

plugins/layout: Added bitmap classes to layout sandbox.
2023-11-04 00:37:48 +11:00
mamehaze
f2bd8d63d0
skeleton/evolution_handheld.cpp: Added skeleton for Kidz Delight Evolution Max. (#11676)
cpu/evolution: Added dummy CPU core so disassembly will show in debugger.
* new skeleton - Evolution

New systems marked not working
-------------------
Kidz Delight Evolution Max [TeamEurope, David Haywood]
2023-11-03 03:15:48 +11:00
Brian Johnson
998d4083f7
nabupc: Add nabu floppy disk formats (#11688) 2023-11-01 12:44:20 +01:00
Olivier Galibert
74ba1e0e7d evolution: First stab at understanding the cpu 2023-10-31 20:28:35 +01:00
Olivier Galibert
556de9bd1e Argh, sorry about the forgotten files. 2023-10-30 00:42:51 +01:00
arbee
f923597fed Revert "swp30: Use natural addresses, reorganize the meg, make envelopes and keyoff a little better"
This reverts commit ae2ee86fe8.
2023-10-29 18:38:19 -04:00
Olivier Galibert
ae2ee86fe8 swp30: Use natural addresses, reorganize the meg, make envelopes and keyoff a little better 2023-10-29 21:03:09 +01:00
qufb
ba621ec24d
sega/sega_beena.cpp: Emulated Advanced Pico BEENA and TV Ocha-Ken. (#11213)
Basic functionality is supported, making most games playable.

StoryWare display is not yet implemented.

Game-specific peripherals are not emulated.

There are still some issues with graphics.

emu/ioport.h: Fixed rarely-used PORT_CROSSHAIR_MAPPER and PORT_CROSSHAIR_MAPPER_MEMBER macros.

cpu/arm7: Added AP2010 CPU device.

sound/ap2010pcm.cpp: Added basic AP2010 PCM audio output device.

Systems promoted to working
------------------------
Sega Advanced Pico BEENA

New working systems
------------------------
Sega TV Ocha-Ken
2023-10-28 03:06:55 +11:00
Bernhard M. Wiedemann
e15b7dfcdc
Make generation of has_foo.h files deterministic (#11651)
Without this patch, order of entries in
generated/has_{buses,cpus,formats,machines,sounds,videos}.h
varied across builds.

This patch was done while working on reproducible builds for openSUSE.

Co-authored-by: Bernhard M. Wiedemann <bernhard+gitcommit lsmod.de>
2023-10-24 12:33:43 -04:00
Vas Crabb
ea3a55c607
3rdparty/portaudio: Suppress clang unused label warning. 2023-10-24 06:31:22 +11:00
Vas Crabb
c5927d37e7 3rdparty/portaudio: Enabled PulseAudio backend for Linux. [invertego] 2023-10-24 02:27:07 +11:00
Phil Bennett
cbe16a03a8
casio/casloopy.cpp: Promoted system to working. (#11621)
* Emulated most features of the system, with the exception of sound output and the thermal printer.
* bus/vboy/slot.cpp: Fixed loading loose software on big Endian hosts. [Vas Crabb]

Systems promoted to working
---------------------------
Casio Loopy [Phil Bennett, Ryan Holtz]

New working software list items (casloopy.xml)
-------------------------------
Chakra-kun no Omajinai Paradise [Rachel Simone Weil]
2023-10-18 05:45:26 +11:00
Devin Acker
3574a5aa74
casio/cz101.cpp: Added sound output and RAM cartridge, and promoted system to working. (#11613)
* casio/ra3.cpp: Added simple Casio RA-3 RAM cartridge device.
* sound/upd933.cpp: Emulated Casio/NEC uPD933 phase distortion synthesis chip.

Systems promoted to working
----------------
Casio CZ-101 [Devin Acker]
2023-10-18 03:00:22 +11:00
arbee
23b19b492e nubus/thunder4gx.cpp: Preliminary support for Radius Thunder IV GX video card. [R. Belmont] 2023-10-16 22:15:15 -04:00
arbee
095da87df0 nubus/8lc.cpp: Add support for the RasterOps 8LC card for the original Macintosh LC. [R. Belmont]
* This card provides unaccelerated 1024x768 video, which isn't the greatest idea on a 68020.

video/tms34061.h: Added accessors to get the horizontal and vertical visible resolution and totals. [R. Belmont]

nubus/cards.cpp, apple/maclc.cpp: Support a list of cards for only the original Macintosh LC. [R. Belmont]
2023-10-11 22:45:07 -04:00
invertego
963561c7cb
3rdparty/portaudio: Updated to latest upstream version. (#11604)
Up-to-date with revision 24c8d575e588d557d28f4011becb753421346860.  Resolves issues building with Visual Studio.

Enabled PortAudio when building with Visual Studio and clang-cl.

docs: Removed note about duplicate GUID symbols in PortAudio when built with MSVC.
2023-10-09 01:50:30 +11:00
arbee
7906b34f3d macOS: Xcode 15 requires explicitly setting -rpath to find the SDL framework. [R. Belmont, Carbon] 2023-10-01 13:23:18 -04:00
Julian Sikorski
117c384d4a
render/drawbgfx.cpp: Added initial support for Wayland on Linux. (#11451) 2023-09-29 01:24:59 +10:00
Julian Sikorski
80155dfa8c
3rdparty/bgfx: Cherry-picked upstream commits needed to support Wayland on Linux. (#11539) 2023-09-29 01:14:29 +10:00
ajrhacker
d8f1b27939
Filesystem code refactoring (#11570)
- Separate fs::block_t and fs::filesystem_t to a new source file and header
- Remove inclusion of flopimg.h from fsmgr.h
2023-09-27 09:48:50 +02:00
Patrick Mackinlay
c398cf3073 dec: reorganize and rename some device files 2023-09-22 16:17:16 +07:00
987123879113
f60fd23e3e
namco/namcos12.cpp: Emulated games with CDXA board. (#11558)
* machine/t10mmc.cpp: Added support for T10SBC_CMD_SEEK_10 command.
* cpu/sh: Added SH7014 SoC.
* machine/icd2061a.cpp: Emulated IC Designs 2061A programmable clock generator.
* sound/lc78836m.cpp: Emulated Sanyo LC78836M audio DAC.
* namco/namcos12_cdxa.cpp: Emulated Namco System 12 CDXA board.

Systems promoted to working
-----------------------------
Truck Kyosokyoku (Japan, TKK2/VER.A) [Windy Fairy]

New working systems
-----------------------------
Um Jammer Lammy NOW! (Japan, UL1/VER.A) [Phil Bennett, Eric Yockey, Windy Fairy]
2023-09-22 14:56:24 +10:00
AJR
2d6f756d70 Add dump of Iomega Zip 100MB IDE drive [Guru] 2023-09-21 22:44:07 -04:00
angelosa
ff66041afb bus/pc_joy: implement Interact Magnum 6 Game Controller
New working software list items
-------------------------------
ibm5170.xml: Interact Magnum 6 Game Controller Driver for Windows 95 [archive.org]
2023-09-21 20:32:13 +02:00
Miëtek Bak
5353a8df14
nscsi: Add SCSI tape device based on SIMH tape image format (#11430) 2023-09-14 07:27:47 +07:00
Patrick Mackinlay
aa5b612270 bus/vme: major overhaul
- add support for address modifiers
 - add support for shared interrupt request lines
 - add support for interrupt acknowledge daisy chain
 - add support for bus error
 - add slot device option aggregator
 - standardized slot device file, device and class naming
 - enp10: implement vme interface
 - hk68v10: convert to slot device, improve boot vector and rom handling
 - mzr8105: convert to slot device, improve boot vector and rom handling, add vme short space access
 - mzr8300: convert to slot device, expose to bus
 - sys68k*: convert to slot device, improve boot vector and rom handling
 - force/fccpu20: converted to slot device
 - sgi/ip4: converted to twin tower chassis with ip4 slot device
2023-09-13 13:20:27 +07:00
Vas Crabb
44eb5ea3c6 Revert "Updated bgfx, bx and bimg to current upstream versions. (#11493)"
This reverts commit 1c61ccfe84.
2023-09-08 05:14:35 +10:00
Julian Sikorski
1c61ccfe84
Updated bgfx, bx and bimg to current upstream versions. (#11493)
* Reverted "macOS, iOS: Removed OpenGL/OpenGLES support. (commit 4693983242a698eaafed87faf4ffef1789adc8f9).
* Reverted "Fix macOS build" (commit ce2c2c13eda7d699051f75f598e740a447343a88).
* Reverted "macOS: Fixed deprecated warnings." (commit 10a8cb61f882ebc9bb376ee2341d003880b7037f).
* Added bgfx/README.mame explaining deviations from upstream.
2023-09-06 01:10:24 +10:00
Curt Coder
27fdce1f58 c64: Emulated the TIB Disc Drive DD-001 cartridge. [Curt Coder]
New working software list items
-------------------------------
c64_cart:
	Disc Drive DD-001 (v1.1) [Steve Gray], Disc Drive DD-001 (v1.0) [LHS]

c64_flop_misc:
	Games and Utility Disc (v1.1) [LHS]
2023-09-04 10:00:29 +03:00
holub
ae1e45853b
bus/spectrum: Added ZXBUS Nemo IDE Controller. (#11523) 2023-09-03 03:23:51 +10:00
invertego
20a8b896ab
Fixed MinGW AArch64 issues: (#11521)
* 3rdparty/bimg: Don't enable SSE on MinGW arm64 targets.
* diagnostics/diagnostics_win32.cpp: Added Windows arm64 support.
2023-09-02 02:06:21 +10:00
Vas Crabb
4701887d6c machine/7400.cpp: Removed unused 7400 logic device. 2023-08-30 04:31:07 +10:00
987123879113
68f8469cf9
cpu/sh: Refactored SH-2 refactored code to separate onboard peripherals from CPU core. (#11500) 2023-08-27 19:58:32 +10:00
angelosa
775eb69d1d capcom/alien.cpp: stub MB86292 as a device 2023-08-20 00:43:08 +02:00
Patrick Mackinlay
b877d9c15e vme/enp10: add new device [CJ, System Source Computer Museum] 2023-08-16 18:49:59 +07:00
AJR
81c3564ccf unidasm: Add disassemblers for DDP-516 and Prime S, R, V architectures 2023-08-14 19:57:58 -04:00
angelosa
f640bd1d6c video/mga2064w.cpp: add base infrastructure 2023-08-06 02:48:58 +02:00
AJR
e1bf43e670 unidasm: Add disassembler for Mitsubishi/Renesas M16C architecture 2023-08-01 20:44:17 -04:00
wilbertpol
1ab5b69499
msx1_cart.xml: Added 81 items, 80 working. (#11448)
New working software list items (msx1_cart.xml)
-------------------------------
C_So! (Japan, alt) [file-hunter]
Campeón de Conductores (Spain) [file-hunter]
Cannon Fighter (Japan, The Link) [file-hunter]
Cannon Turbo (Japan, alt) [file-hunter]
Circus Charlie (Japan, The Link) [file-hunter]
Custar (Japan) [file-hunter]
Midway (Japan, alt) [file-hunter]
Video Hustler (Japan, alt 3) [file-hunter]
C.C.R. Anexo 1 El Algoritmo (v1.2) [MSXDev]
C.C.R. Anexo 1 El Algoritmo (v1.1) [file-hunter]
C.C.R. Anexo 1 El Algoritmo (v1.0) [file-hunter]
Cacorm [inufuto]
Caos Begins [MSXDev]
Caos Begins (alt) [file-hunter]
Caos Begins (alt 2) [file-hunter]
Cardwork Orange (unlicensed) [file-hunter]
Casio GPM-Collection Volumen 1 (unlicensed) [file-hunter]
Casio GPM-Collection Volumen 2 (unlicensed) [file-hunter]
Castle Tomb [MSXDev]
Caverns of Titan [MSXDev]
Caverns of Titan (alt) [MSXDev]
Cavit [inufuto]
Chambers of Thyrea [MSXDev]
Champion Billiards [mastropiero]
Cheating Wives [MSXDev]
Chocobo Racing [MSXDev]
Classic Minesweeper [file-hunter]
Classic Pong [file-hunter]
CMJN [MSXDev]
Cocoa and the Time Machine [file-hunter]
Cold Blood [file-hunter]
Cold Blood (demo) [file-hunter]
Computer Wars (English) [MSXDev]
Computer Wars (Spanish) [MSXDev]
Corona's Spree [file-hunter]
Corridor Runner (v1.1.2) [aburi6800]
Corridor Runner (v1.1.1) [aburi6800]
Corridor Runner (v1.1.0) [aburi6800]
Corridor Runner (v1.0.1) [aburi6800]
Corridor Runner (v1.0.0) [aburi6800]
Corridor Runner (v0.3.1) [aburi6800]
Corridor Runner (v0.3.0) [aburi6800]
Corridor Runner (v0.2.2) [aburi6800]
Corridor Runner (v0.2.0) [aburi6800]
Corridor Runner (v0.1.0) [aburi6800]
Cosmic Battle (beta) [MSXDev]
Cow Abductors [MSXDev]
Cow Abductors (older) [file-hunter]
Crappy Olympics [Orazio Cacciola]
Crazy Buggy [MSXDev]
Crazy MSX Frenchies [MSXDev]
Cross Bomber (2022-07-20) [Fabrizio Caruso]
Cross Bomber (alt) [file-hunter]
Cross Bomber (2020-09-25) [Fabrizio Caruso]
Cross Chase (2021-05-13) [Fabrizio Caruso]
Cross Chase (alt) [file-hunter]
Cross Chase (2020-04-02) [Fabrizio Caruso]
Cross Chase (2018-11-13) [Fabrizio Caruso]
Cross Chase (2018-08-10) [Fabrizio Caruso]
Cross Chase (2018-07-19) [Fabrizio Caruso]
Cross Chase (2018-05-19) [Fabrizio Caruso]
Cross Chase (2018-04-15) [Fabrizio Caruso]
Cross Chase (2018-02-03) [Fabrizio Caruso]
Cross Chase (2017-12-16) [Fabrizio Caruso]
Cross Chase (2017-10-30) [Fabrizio Caruso]
Cross Chase (2017-10-11) [Fabrizio Caruso]
Cross Horde (2021-05-12) [Fabrizio Caruso]
Cross Horde (2021-05-01) [Fabrizio Caruso]
Cross Horde (2021-04-25) [Fabrizio Caruso]
Cross Shoot (2022-02-26) [Fabrizio Caruso]
Cross Shoot (alt) [file-hunter]
Cross Shoot (2021-05-12) [Fabrizio Caruso]
Cross Snake (v2.0) [Fabrizio Caruso]
Cross Snake (v2.0, alt) [file-hunter]
Cross Snake (v1.0) [Fabrizio Caruso]
Cross Snake (preview) [Fabrizio Caruso]
Cryptogram - Anagrams Crosswords (v1.1) [MSXDev]
Cryptogram - Anagrams Crosswords (v1.0) [MSXDev]
Cuncuna [MSXDev]
Cuncuna (older) [file-hunter]

New NOT_WORKING software list additions (msx1_cart.xml)
------------------------------------------
Codename: INTRUDER [file-hunter]
2023-07-30 04:42:25 +10:00
hap
d18f2469ac mos6530n(ew): rename to mos6530 2023-07-25 21:39:51 +02:00
hap
5a84d5568e 6532riot: remove unused device 2023-07-25 21:39:51 +02:00
hap
e51d95f08c mos6530l: remove unused device 2023-07-25 21:39:51 +02:00
hap
9a8c1f6564 mos6530: rename device to mos6530l 2023-07-25 21:39:50 +02:00
holub
c2a516abd4
js_sound.js: fix sound level default for underrunning case (#11317) 2023-07-24 20:38:18 -04:00
hap
0409e04151 m6502: add 6503 cpu 2023-07-24 18:25:27 +02:00
AJR
58ff567edf a2bus: Add emulation of ADS Noisemaker II board 2023-07-20 16:35:58 -04:00
Patrick Mackinlay
009f31fae2 dp8573: add dp8572a variant 2023-07-20 11:31:31 +07:00
SomeRandomGuyIdk
7fd6a0b10c
bfm/bfm_blackbox.cpp: Added driver for Bellfruit Black Box electromechanical fruit machines. (#10417)
* machine/em_reel.cpp: Encapsulated electromechanical reel simulation.
* barcrest/mpu1.cpp: Refactored to use new electromechanical reel device.

New systems marked not working
------------------------
Nudge Climber (Bellfruit) (Black Box) (5p Stake, £1 Jackpot, all cash)
21 Up (Bellfruit) (Black Box) (5p Stake, £1 Jackpot)
Bell Trail (Bellfruit) (Black Box) (5p Stake, £1 Jackpot)
The Nudge Machine (ADMC) (Black Box) (5p Stake, £1/£2 Jackpot)
Upstairs 'N' Downstairs (Bellfruit) (Black Box) (5p Stake, £1 Jackpot)
Double It (Bellfruit) (Black Box) (10p Stake, £2 Jackpot)
Fire Cracker (Bellfruit) (Black Box) (10p Stake, £2 Jackpot)
Oranges And Lemons (Bellfruit) (Black Box) (10p Stake, £2 Jackpot)
Golden Spin (BWB) (Black Box) (MK1.5, 5p Stake, £50 Jackpot)

New clones marked not working
------------------------
21 Up (Bellfruit) (Black Box) (10p Stake, £2 Jackpot)
Reel Gambler (Bellfruit) (Black Box) (10p Stake, £2 Jackpot)
Upstairs 'N' Downstairs (Bellfruit) (Black Box) (5p Stake, £1 Jackpot, all cash)
Spin Up (CTL) (Black Box) (10p Stake, £3 Jackpot)
Crackerjack (Bellfruit) (Black Box) (5p Stake, £2 Jackpot)
Fiesta (Associated Leisure) (Black Box) (2p Stake, £1/£2 Jackpot)
2023-07-18 02:51:12 +10:00
holub
40b5fec069
sinclair/scorpion.cpp: Added Scorpion ZS-256 TURBO+. (#11418)
bus/spectrum: Added ZXBUS SMUC storage controller.

New working clones
------------------
Scorpion, Ltd. Scorpion ZS-256 TURBO+
2023-07-18 02:22:51 +10:00
Jindřich Makovička
5fe341cb0c
modules.lua: Remove stray MOC setting after the Qt6 Linux support change (#11419) 2023-07-18 01:02:26 +10:00
hap
3bd1b2f2b7 seabattl: add pcb locations to parent set,
bus/vidbrain: add info_manager and comp_language cartridge types

Software list items promoted to working
---------------------------------------
vidbrain: The Computational Language [hap, Sean Riddle, Ianoid]
2023-07-15 01:13:38 +02:00
angelosa
778f805f6a apple/macpwrbk030.cpp: convert macpb180c to use a WD90C26 VGA device 2023-07-15 00:32:32 +02:00
Jindřich Makovička
4649cf0248
Allow the use of either Qt5 or Qt6 on Linux (#11413)
* Look for MOC in QT_HOME/libexec if not found in QT_HOME/bin
* Use the Qt6* libraries if the Qt version is >= 6
* Switch the include paths for QAction & QActionGroup for Qt >= 6
* Replace the deprecated + operator for keys with |
2023-07-14 10:04:57 -04:00
hap
7fe64bf65f fix tiny compile, probably 2023-07-12 22:46:42 +02:00
Vas Crabb
6e2d6cd2c5 Revert "Clean up the Votrax SC-01[-A] class names and device names. [Lord Nightmare]"
Names in the global namespace need to be specific.  Making them overly
generic is a very bad idea, and leads to confusion and conflicts.
Device type names must always be in the global namespace, and most
device classes are in the global namespace.

Changing members like m_votrax to m_sc01 doesn't help understand the
code.  If there's only one Votrax speech module in the system, it's
obvious what it is.

This reverts commit c6f0e83ecf.
2023-07-12 07:33:52 +10:00
Lord-Nightmare
c6f0e83ecf Clean up the Votrax SC-01[-A] class names and device names. [Lord Nightmare] 2023-07-11 17:17:00 -04:00
arbee
a8d33279b8 osd/mac: Make compile again. Does not yet start up because BGFX tries to force OpenGL. [R. Belmont] 2023-07-09 18:44:28 -04:00
angelosa
e3f493b094 isa/isa_cards.cpp: add Paradise Systems PVGA1 ISA16 card 2023-07-04 19:33:37 +02:00
Angelo Salese
498b7a0a7d
video/pc_vga.cpp: part 2 of interface modernization (#11315)
* video/pc_vga.cpp: update QA, move SVGA related function to bottom of file

* chore: rename clgd542x.cpp -> pc_vga_cirrus.cpp

* chore: move SiS630 SVGA portion to pc_vga_sis.cpp

* chore: intermediate step to convert crtc/seq/attribute/gc_reg_read/write to maps from violating parties

* video/pc_vga_cirrus.cpp: preliminary implementation of hidden DAC mode

* misc/gambl186.cpp: fix compile

* pc_vga_cirrus.cpp: fix gambl186 regression

* chore: convert pc_vga sequencer regs to space memory

* chore: make sure that address_space_config is preserved when inheriting

* trs/vis.cpp: convert VGA to sequencer_map

* chore: move s3virge out of bus/isa

* pc_vga.cpp: convert ATC to attribute_map

* pc_vga.cpp: convert GC to gc_map

* pc_vga.cpp: convert CRTC to crtc_map

* fixes trs/vis.cpp refresh rate by chain reaction (40 Hz -> 61 Hz)

* video/s3virge.cpp: fix regression

* video/pc_vga.cpp: reorder functions

* chore: modernize VGA main I/O interfaces

* video/clgd546x_laguna.cpp: update to latest

* konami/konmedal020.cpp: fix -validate

* video/pc_vga.cpp: use yet another custom address_map_constructor in place of the non-working memory_view pattern

* video/ibm8514a.cpp: address self review [skip ci]
2023-07-04 19:10:46 +02:00
Patrick Mackinlay
8512d4655c New systems marked not working
------------------------------
Motorola M8120 [Xolod]
2023-06-30 17:07:09 +07:00
Vas Crabb
f197f35c25 machine/ataflash.cpp: Untangle from the parallel ATA interface.
This isolates the ATA disk drive interface implementation from the
physical parallel ATA device interface. The ATA Flash PC Card is no
longer a kind of parallel ATA device.
2023-06-29 05:31:33 +10:00
angelosa
5a29fd8903 Add nVidia Geforce 256/Geforce 256 DDR/Quadro 2023-06-26 22:25:00 +02:00
angelosa
fbf356023c Add nVidia Riva TNT (NV4)
misc/ez2d.cpp: repair ez2d2m BIOS from OEM image inside HDD

New systems marked not working
------------------------------
Asus CUBX [The Retro Web]
2023-06-25 05:25:31 +02:00
angelosa
fe898720e9 pc/pcipc.cpp: add base PCI for Cirrus Logic CL-GD5465 Laguna 3D 2023-06-25 03:46:05 +02:00
angelosa
2b4b520f39 misc/odyssey.cpp: write a skeleton device for PC87306 Super I/O 2023-06-19 23:45:58 +02:00
AJR
89698e42d6 cpu.lua: Correct name of header 2023-06-19 09:41:20 -04:00
AJR
02192d18e1 New machines marked as NOT_WORKING
----------------------------------
Orla HK1000
Orla XM200 Orchestra Module
2023-06-19 09:32:26 -04:00
AJR
e2edca4404 unidasm: Add disassemblers for ST9 and ST9+ architectures 2023-06-18 16:48:38 -04:00
Angelo Salese
0855900ded
bus/a800: modernize cart slot interface (#10528)
- use address_maps instead of catch-all handlers;
- implement rd4 and rd5 line views;
- converted a800_rom_williams_device to the new system, make almost every entry in mega* and prisma* SW to actually boot;
- bus/a800: implement maxflash_1mb / maxflash_8mb devices. 
* This allows loading arbitrary collection of .xex files built thru Maxflash Cartridge Studio program as flash ROM binaries;
- bus/a800: implement sic_128kb / sic_256kb / sic_512kb flash ROM devices;
- bus/a800: implement  ast2k, atrax, Blizzard 32kb, Adawliah, SpartaDOS 128KB, A5200 Super Cart variants;
- bus/a800: implement Super Charger math unit device;
- a800_slot.cpp: fix xegs cart default slot for loose cart loading;
- a800_carts.h: merge a800_turbo64 and a800_turbo128 into single a800_turbo slot option;
- bus/a800/a800_slot: split a5200 to own interface

New working software list additions
-----------------------------------
a800.xml: Maxflash Cartridge Studio - Demonstration Workbook [Atarimax Team], SIC! 31-in-1 Demonstration [SIC! Team]
a800.xml: Atrax 01, Atrax 02, Atrax 03, Atrax 04, Atrax 05, Atrax 06, Atrax 08, Atrax 09, Atrax 10, Atrax 11, Atrax 12, Atrax 13, Atrax 15 [Atarimania]
a800.xml: Prince of Persia (AtariMAX i/f), Prince of Persia (SIC! i/f) [AtariAge]

New software list items marked not working
------------------------------------------
a800.xml: Atrax 14, Atrax 16 [Atarimania], Turbo Hit (Blizzard 32kb) [atari.area]
a5200.xml: Bosconian 5200 - Star Destroyer (Ultimate Version) [AtariAge]
2023-06-12 01:51:23 +02:00
arbee
958e912777 apple/apple2.cpp: added Apple ROM/Firmware card with 3 options: Applesoft, Integer, and User-Defined. [R. Belmont]
* Use "-rom file.bin" with the user-defined ROM card to make your own custom Apple.  File must be 12KiB and goes in
  D0/D8/E0/E8/F0/F8 order.

a2bus: wire up a method to assert the reset line on the slots. This is important for the ROM card. [R. Belmont]

apple/apple2.cpp,apple2e.cpp,apple2gs.cpp,apple3.cpp: Reset the a2bus when the 6502/65816 is reset. [R. Belmont]

apple/apple2gs.cpp: Reset the softswitches like a IIe on Control-Reset. [R. Belmont]

apple/apple3.cpp: Now has the same Control-Reset behavior improvements as the Apple IIs. [R. Belmont]
2023-06-08 20:37:09 -04:00
wilbertpol
218dddf630
msx1_cart.xml: Add four Quick Disk interfaces (not working). (#11306)
New NOT_WORKING software list additions (msx1_cart.xml)
------------------------------------------
DPQ-280 Quick Disk Drive
DPQ-280 Quick Disk Drive (alt)
QDM-01 Quick Disk Drive
VY-0002 Quick Disk Drive
2023-06-05 00:50:11 +10:00
angelosa
de6a59bd26 scripts/src/video.lua: fix PC_VGA_S3 header 2023-05-31 01:18:34 +02:00
angelosa
892cfe410b pc/pcipc.cpp: derive a very preliminary i440bx AGP target from savquest BIOS
machine/w83977tf.cpp: preliminary Super I/O PoC
2023-05-30 02:29:30 +02:00
Angelo Salese
93888542d2
video/pc_vga.cpp: part 1 of interface modernization (#11284)
- video/pc_vga.cpp: Move everything that doesn't belong to main VGA/SVGA interfaces to per-manufacturer family files;
- shared/pcshare.cpp: retire pcat_base_state::pcvideo_* fns;
- video/pc_vga.cpp: temporary move gamtor_vga_device to misc/gamtor.cpp;
- bus/isa/isa_cards.cpp: retire TGUI9680 from being selected (all refs points to be a PCI card only, there's mention of a VLB card but haven't seen a single retail dump/photo yet)
- bus/isa/svga_trident.cpp: add TVGA9000 ISA card
- bus/isa/svga_tseng.cpp: add earlier ColorImage ET4000AX variant
- bus/isa/svga_tseng.cpp: add Kasan Hangulmadang-16 Korean variant ISA
- Adds a very preliminary implementation of nVidia Riva 128 PCI card, added as a temp target in pc/pcipc.cpp (pcinv3);
- video/pc_vga.cpp: Rework and fix VGA input sense (necessary to allow Riva 128 to survive POST);
- video/pc_vga_s3.cpp: Fix s3_vga_device inheritance (was subclassing from ati_vga_device)
- pc/calchase.cpp: convert custom JAMMA i/f to ISA device;
- pc/calchase.cpp: connect Trident VGA to ISA bus;
2023-05-30 02:19:46 +02:00
Olivier Galibert
78661e9aa9 m68008: Implement as a 68000 variant
m68000mcu: Extract from m68000
2023-05-27 21:27:59 +02:00
Vas Crabb
6911b9198f Set LinkSupportCircularDependencies for FreeBSD as well as NetBSD (#11271). 2023-05-28 03:39:39 +10:00
Olivier Galibert
f432d6e4d2 hrdvd: Add placeholders for all the chips, thanks Guru for tracing the pcb 2023-05-26 09:37:50 +02:00
Brian Johnson
b29b71071f
misc/nabupc_kbd.cpp: Fully emulated NABU PC keyboard. (#11220) 2023-05-23 23:02:13 +10:00
Brian Johnson
69f7e7b103
bus/epson_qx: Add QX-10 Commodity Quote graphics memory expansion board. (#11222) 2023-05-23 22:52:41 +10:00
Angelo Salese
a7425f83df
Initial work towards i440bx chipset (#11037)
- implement stubs for i82443bx_host and i82371eb PCI devices, hooks up base PCI stubs to midway/midqslvr.cpp, misc/comebaby.cpp and misc/xtom3d.cpp
- misc/xtom3d.cpp: preliminary implementation of Oksan ROM DISK ISA card
- machine/pci-smbus.h: make map public so it can be reused by i82371eb_acpi (would otherwise fail mapping to the intended HW)

New systems marked not working
----------------------------------
Pump It Up: The 1st Dance Floor [ATR4X, Gergc, Pawprint, infamouspat, Ruubbinnexx, H4M573R, Angelo Salese, Hammy]
2023-05-21 22:17:46 +02:00
arbee
9de67ba595 video/atirage.cpp: Extremely preliminary emulation of PCI ATI 3D Rage family SVGA chips. [R. Belmont]
apple/powermacg3.cpp: Hooked up ATI Rage II video, you can now enter and interact with Open Firmware. [R. Belmont]
2023-05-18 19:57:03 -04:00
Nigel Barnes
c35b7cb57f New working systems
-------------------
HC 120 [Nigel Barnes, zedstarr]

New working clones
------------------
HC 100 [Nigel Barnes, zedstarr]
HC 110 [Nigel Barnes, zedstarr]
2023-05-18 19:54:36 +01:00
Nigel Barnes
f97a17275f New systems marked not working
------------------------------
Series 3 [Nigel Barnes, The Last Psion]

New clones marked not working
-----------------------------
Pocket Book [Nigel Barnes, The Last Psion]
Series 3s [Nigel Barnes, The Last Psion]
2023-05-17 22:13:52 +01:00
AJR
cc2bc77004 Add dump and skeleton device for Conner Peripherals CD-2024 hard disk [Bitsavers] 2023-05-17 14:10:16 -04:00
wilbertpol
d605021ac0
msx1_cart.xml: Added 100 items (99 working). (#11235)
bus/msx/cart: Added support for Love Plus Pack 0 multi-game cartridge.

New working software list items (msx1_cart.xml)
-------------------------------
The Love Plus Pack 0 (Korea, pirate) [file-hunter]
Trun (demo) [file-hunter]
Twin Hammer (Europe, alt) [file-hunter]
Twin Hammer (Europe, alt 2) [file-hunter]
Video Hustler (Japan, alt 2) [file-hunter]
Volguard (Japan, alt) [file-hunter]
TT Racer (Al Alamiah) [file-hunter]
Voyage to Mecca (Arab, alt 3) [file-hunter]
T-Game 4 [file-hunter]
T-Game 4 (alt) [file-hunter]
T-Virus [MSXDev]
Tales of Popolon (English, v1.3.1) [santiontanon]
Tales of Popolon (Spanish, v1.3.1) [santiontanon]
Tales of Popolon (English, v1.3) [santiontanon]
Tales of Popolon (Spanish, v1.3) [santiontanon]
Tales of Popolon (English, v1.2) [santiontanon]
Tales of Popolon (Spanish, v1.2) [santiontanon]
Tales of Popolon (English, v1.1.1) [santiontanon]
Tales of Popolon (English, v1.1) [santiontanon]
Tales of Popolon (English, v1.0) [santiontanon]
Teki-Paki [file-hunter]
Teki-Paki (beta) [MSXDev]
Tekmo 400 [file-hunter]
Teodoro no Sabe Volar (English) [MSXDev]
Teodoro no Sabe Volar (Spanish) [MSXDev]
The Circus Mystery (v1.4) [MSXDev]
The Circus Mystery (v1.3) [file-hunter]
The Cure [MSXDev]
The Cure (alt) [file-hunter]
The Lost Mines [file-hunter]
The Mansion (English) [MSXDev]
The Mansion (Spanish) [MSXDev]
The Menace from Triton (v1.2) [santiontanon]
The Menace from Triton (v1.1) [santiontanon]
The Menace from Triton (v1.0.2) [santiontanon]
The Menace from Triton (v1.0.1) [santiontanon]
The Menace from Triton (v1.0.0) [santiontanon]
The Queen's Footsteps (v1.1.1) [Davide Bucci]
The Queen's Footsteps (v1.0) [file-hunter]
Tiles of Shalom [MSXDev]
Tilez [[msx.org](http://msx.org/)]
Tina's Adventure Island [hobbyretro]
Tiny Slot Checker (v3.2) [tiny-yarou]
Tiny Slot Checker (v2) [tiny-yarou]
Tiny Slot Checker (older) [file-hunter]
Tomb of Genghis Khan [MSXDev]
Tool Blocks [MSXDev]
Tortilla Sunrise (English, v1.1) [MSXDev]
Tortilla Sunrise (Spanish, v1.1) [MSXDev]
Tortilla Sunrise (English, v1.0) [MSXDev]
Toss a Coin to your Witcher [cobinee]
Traffic Jam [MSXDev]
Traffic Jam (alt) [file-hunter]
Tragaperras (Spanish) [MSXDev]
Trail 2 [file-hunter]
Transball (v1.3.2, English) [santiontanon]
Transball (v1.3.2, Spanish) [santiontanon]
Transball (v1.3.1, English) [santiontanon]
Transball (v1.3.1, Spanish) [santiontanon]
Transball (v1.3, English) [santiontanon]
Transball (v1.3, Spanish) [santiontanon]
Transball (v1.2.1, English) [santiontanon]
Transball (v1.2.1, Spanish) [santiontanon]
Transball (v1.2, English) [santiontanon]
Transball (v1.2, Spanish) [santiontanon]
Transball (v1.1.1, English) [santiontanon]
Transball (v1.1.1, Spanish) [santiontanon]
Transball (v1.1, English) [santiontanon]
Transball (v1.1, Spanish) [santiontanon]
Transball (v1.0.1, Spanish) [santiontanon]
Transball (v1.0, English) [santiontanon]
Transball (v1.0, Spanish) [santiontanon]
Turfy (2019 version) [file-hunter]
Turfy (2016 version) [file-hunter]
Twinlight [retrosouls]
Twinlight (alt) [file-hunter]
Txupinazo! [MSXDev]
U-Do [file-hunter]
U.F.O. [file-hunter]
UnidentifiedFlyingObject [cobinee]
Universe Unknown [file-hunter]
Universe Unknown (alt) [file-hunter]
Up Tack [cobinee]
Uridium [file-hunter]
Uridium (alt) [file-hunter]
Uridium (alt 2) [file-hunter]
Uridium (alt 3) [file-hunter]
Utopia [file-hunter]
veejingSX (v0.996b) [303bcn]
veejingSX (v0.99b) [303bcn]
veejingSX (v0.9b) [303bcn]
9918-veejing (v0.7b, Russian) [303bcn]
9918-veejing (v0.1b) [303bcn]
Viking (English) [MSXDev]
Viking (Spanish) [MSXDev]
Virus LPQ-79 (v1.20) [MSXDev]
Virus LPQ-79 (v1.10) [file-hunter]
Virus LPQ-79 (v1.00) [file-hunter]
VVVVVV (unfinished) [hap]

New NOT_WORKING software list additions (msx1_cart.xml)
------------------------------------------
Tel-Tron (Netherlands) [file-hunter]
2023-05-17 11:40:14 +10:00
Nigel Barnes
6992b3816e bus/psion: Added SIBO and Honda expansion port devices:
- 3Fax Modem, 3Link Parallel Printer Interface, 3Link RS232 Serial Interface, and Siena SSD Drive.

psion/psion3a.cpp: Added wakeup with specific keys, and SIBO/Honda expansion ports.

psion/siena.cpp: Added wakeup with specific keys, and Honda expansion port.

psion/workabout.cpp: Added wakeup with specific keys.

machine/psion_asic5.cpp: Partially implemented peripheral mode.

machine/psion_asic9.cpp: Implemented memory protection, and additional external interrupt lines.
2023-05-16 22:05:22 +01:00
Lord-Nightmare
f64470c568 Add support for the older Votrax SC-01 chip; currently only used by Bally Astrocade-derived arcade hardware. All other devices remain using the Votrax SC-01-A. [Lord Nightmare] 2023-05-16 14:52:48 -04:00
987123879113
fb2b5745d1
namco/namcos10.cpp: Add MP3 decoder support to the MEM(P3) board. (#11210)
* 3rdparty/minimp3: Update to latest source (afb604c06bc8beb145fecd42c0ceb5bda8795144).
* sound/mp3_audio.cpp: Add helper class to decode MP3 frame data, abstracting away minimp3 from devices.
* sound/lc82310.cpp: Added basic Sanyo LC82310 MP3 decoder emulation.
* namco/namcos10.cpp: Fixed light gun inputs for Golgo 13: Juusei no Requiem.

Systems promoted to working
------------------
Golgo 13: Juusei no Requiem (Japan, GLT1 VER.A)
Tsukkomi Yousei Gips Nice Tsukkomi (NTK1 Ver.A)
Seishun-Quiz Colorful High School (CHS1 Ver.A)
2023-05-15 14:38:30 +10:00
fulivi
57b08b8374
formats/fs_hp98x5.cpp: Added filesystem handlers for HP9825, HP9831 and HP9845. (#11175) 2023-05-15 06:24:48 +10:00
arbee
a849e79a69 machine/opti82c861.cpp: Skeleton for OPTi 82C861 PCI USB OHCI controller. [R. Belmont] 2023-05-13 19:34:02 -04:00
holub
430be796c6
sinclair/sprinter.cpp: Added Sprinter Sp2000 enhanced Spectrum clone. (#11018)
cpu/z80:  Added support for variants with address translation and implemented Z84C015 chip selects.

New working clones
-------------------
Peters Plus, Ivan Mak Sprinter Sp2000
2023-05-12 04:02:16 +10:00
Patrick Mackinlay
534b7d1595 sgi: add 4D keyboard low-level emulation [Bitsavers] 2023-05-09 11:08:30 +07:00
wilbertpol
df3877c47b
bus/msx/ctrl: Added Arkanoid Vaus controller. (#11201) 2023-05-09 13:48:44 +10:00
Olivier Galibert
029264ad48 zr36110: Add skeleton
hrdvd: Hook up the mpeg chip
2023-05-07 13:03:59 +02:00
hap
dff3955a3a mn1400: add device skeleton 2023-05-06 18:07:43 +02:00
Luigi Thirty
90e394850a
bus/isa: Added IBM PS/2 speech adapter card. (#11157) 2023-05-07 01:24:54 +10:00
Olivier Galibert
28104cdbdf chd: Add dvd support. better abstraction in general, multi-image support in arcade-type drivers 2023-05-04 20:29:58 +02:00
Vas Crabb
a504bde3a7 3rdparty/lzma: Updated to LZMA SDK version 22.01 2023-05-04 02:41:16 +10:00
hap
7c2b592432 mn1400: add disassembler 2023-05-01 14:45:07 +02:00
Dirk Best
402dd6aba0 mc68000: Add floppy support 2023-05-01 03:51:53 +02:00
AJR
ea328e873b wy60: Add keyboard emulation and cursor 2023-04-30 20:34:05 -04:00
Vas Crabb
c649fa82fd ui: Don't use facets of destructed locales. 2023-05-01 02:37:28 +10:00
Dirk Best
347318a1c2 mc68000: Add expansion bus and ram card 2023-04-30 14:34:43 +02:00
arbee
006389f631 Fixed another warning, a full compile now completes with GCC 13.1. [R. Belmont] 2023-04-29 22:33:00 -04:00
arbee
e17706aec2 Support GCC 13.1 / Fedora 38 [R. Belmont] 2023-04-29 21:46:16 -04:00
AJR
5a037bccb2 wicat: Add MCU dump and LLE of keyboard; update layout to include keyboard LEDs [AJR, Bitsavers]
* im6402: Remove ugly hack to force bits into receiver and make it work the normal way instead
2023-04-22 15:01:09 -04:00
Devin Acker
35cb398d8a
yamaha: new GEW7 and GEW12 machines, various GEW8/MultiPCM improvements (#11105)
* yamaha: implement GEW7, partially implement GEW12, some GEW8/MultiPCM fixes (envelope behavior, sample lengths, stream updates, save state members)

New working machines
----------
Yamaha PSR-150 [Edward d-tech, Devin Acker]
Yamaha PSR-180 [Edward d-tech, Devin Acker]
Yamaha PSR-78 [Edward d-tech, Devin Acker]

New working clones
----------
Yamaha PSR-110 [Edward d-tech, Devin Acker]
Yamaha PSR-75 [Edward d-tech, Devin Acker]
Yamaha PSR-76 [Edward d-tech, Devin Acker]
Yamaha PSS-11 [Edward d-tech, Devin Acker]
Yamaha PSS-21 [Edward d-tech, Devin Acker]
Yamaha PSS-31 [Edward d-tech, Devin Acker]
Yamaha PSS-6 [Devin Acker]

Machines promoted to working
----------
Yamaha PSS-12 [Devin Acker]

New NOT_WORKING machines
----------
Yamaha PSR-260 [Edward d-tech, Devin Acker]
Yamaha PSR-79 [Edward d-tech, Devin Acker]

New NOT_WORKING clones
----------
Yamaha PSR-160 [Edward d-tech, Devin Acker]
2023-04-22 08:07:03 -04:00
wilbertpol
9ffd85dd7d
bus/msx/cart: Added Sony HBI-55/Yamaha UDC-01 SRAM data cartridges. (#10966) 2023-04-18 03:52:50 +10:00
Vas Crabb
864bfe17eb cpu/m6502: Template 6502 microcontroller helper on underlying CPU type. 2023-04-17 03:30:51 +10:00
wilbertpol
65306b5624
bus/msx/module: Added Yamaha SKW-01 emulation. (#11113)
msx/msx2.cpp, msx/msx1_v9938.cpp: Changed the name of all MSX_SLOT_YAMAHA_EXPANSION devices to 'module'.
2023-04-17 01:39:50 +10:00
AJR
38498868fc roland_s50.cpp: Add floppy format 2023-04-13 22:37:05 -04:00
AJR
c3c625c8f3 Add device emulation of Dallas DS2430A 1-Wire EEPROM
- crazyfgt, lastfght, all games in subsino2.cpp: Hook up DS2430A device, add handcrafted EEPROM data to satisfy serial protection checks and remove ROM patches that forced them to pass
- crazyfgt: Hook up coin counter
- queenbeei, queenbeesa, qbeebing, treamary: Add RTE-to-RTS ROM patches that were missing
- treamary: Change configuration to one that allows booting into title screen rather than getting stuck on initial tests
2023-04-11 21:29:29 -04:00
Justin Kerk
657c19f2a7 Fix single-driver compile for sony/psx.cpp 2023-04-10 18:10:23 +00:00
hap
b0e88ea915 smc1102: add device skeleton 2023-04-07 19:27:41 +02:00
Patrick Mackinlay
7a0f090406 mb89352: retire legacy scsi device 2023-04-05 18:30:07 +07:00
holub
2a1ba144a5
bus/spectrum: Added ZXBUS and NeoGS card. (#11032) 2023-04-05 04:34:27 +10:00
Olivier Galibert
ca6e220dbb tmp68301: Reimplement in the new68k framework. The timers are not yet implemented, couldn't find a driver which cared. Hopefully the regression testing will find some. 2023-04-04 14:43:17 +02:00
Dirk Best
a2e265a539 pegasos2: Initial devices for MV64361 and VT8231
Enough to get data from the initial bootloader to the serial console.
2023-04-03 14:02:03 +02:00
arbee
c708e0ebac 3rdparty: Another attempt to satisfy Windows Clang. [R. Belmont] 2023-04-01 22:27:22 -04:00
arbee
bd3ea17108 3rdparty.lua: Windows Clang needs another warning suppression for PortAudio. [R. Belmont] 2023-04-01 21:07:16 -04:00
AJR
8081f94107 3rdparty.lua: Fix clang build after portaudio update 2023-04-01 19:41:40 -04:00
arbee
645bbe989b PortAudio: sync to upstream GitHub revision 0e9b386a1053261340bc8bb32335484ef77b258b [R. Belmont, PortAudio team]
* Tested and works on Windows, macOS, and Linux.
* Fixes compatibility with macOS Ventura and bugfixes WASAPI and WDM-KS on Windows.
2023-04-01 19:03:31 -04:00
987123879113
ec6b3d2b55
namcos10: Refactored driver, and implemented MEM(M) and MEM(N) boards. (#11053)
* machine/smartmed.cpp, machine/nandflash.cpp: Separated NAND Flash from smartmed.
* sound/spu.cpp: Calculate tables based on clock speed.
* machine/intelfsh.cpp: Added Intel 28F640J5 device.
* namco/namcos10.cpp: Refactored driver, and implemented MEM(M) and MEM(N) boards.
* namco/namcos10.cpp: Fixed parenting of Mr. Driller 2, and renamed Kono e Tako.
2023-04-01 05:39:02 +11:00
Brian Johnson
56281ca463
bus/nabupc: Added support for RS232 Card. (#11047) 2023-03-29 15:49:58 +11:00
Curt Coder
30e34256b1 abc80: Devicify the SN74S263 character generator. [Curt Coder] 2023-03-28 13:26:59 +03:00
Curt Coder
d280b65088 abc80x: Split floppy software lists by disk drive type. [Curt Coder]
abc800_dsk: Split to interleaved and non-interleaved disk formats. [Curt Coder]

New working software list items
-------------------------------
abc838_flop: Systemskiva ABC800 v1.0 (Sweden), Systemskiva för UFD-DOS v6.3 (Sweden) [Curt Coder]
2023-03-26 11:30:36 +03:00
AJR
0cc8539dfa mos8563: Split device source from mc6845 2023-03-25 18:52:27 -04:00
wilbertpol
6c28bd93ba
scripts/minimaws: Fixed last-minute change to zipfile use. (#11028) 2023-03-26 04:47:30 +11:00
Vas Crabb
4cf33cfe0a Various optimisations to code generaton.
util/bitmap.cpp, util/palette.cpp: Marked lots of things constexpr.
Bitmaps don't throw exceptions on allocation failure, they just become
invalid.  Almost nothing in MAME actually checks for this.

emu/profiler.cpp: Abort if the profile stack overflows rather than
throwing an exception.  This is a developer feature and if it overflows,
the code is broken.  Calling a noreturn noexcept function generates less
code than throwing an exception, which adds up.

util/strformat.cpp: Traded away some unnecessary flexibility for more
compact code.  The stream objects must derive from std::basic_ostream
now - they can't just be any old objects with the expected operators.
2023-03-26 01:32:50 +11:00
wilbertpol
fb81cb16bb
minimaws: Let command-line romident identify media inside zip archives. (#11024) 2023-03-26 01:31:09 +11:00
Nigel Barnes
469c2906d9 New systems marked not working
------------------------------
Series 3a [Nigel Barnes, The Last Psion]
Series 3c [Nigel Barnes, The Last Psion]
Series 3mx [Nigel Barnes, The Last Psion]
Siena [Nigel Barnes, The Last Psion]
Workabout [Nigel Barnes, The Last Psion]
Workabout mx [Nigel Barnes, The Last Psion]

New clones marked not working
-----------------------------
Pocket Book II [Nigel Barnes, The Last Psion]
Series 3a (2M) [Nigel Barnes, The Last Psion]
Series 3a (2M) (German) [Nigel Barnes, The Last Psion]
2023-03-25 12:25:50 +00:00
Sven Schnelle
972703281d
bus/ISA: Added HP82321A BASIC Language coprocessor (#10926)
* emu: add defer_access() method, which is useful for keeping the cpu in a loop restarting the current
instruction to emulate waitstates.

* add HP82321A Basic Language Coprocessor
This adds support for the HP82321A Basic language coprocessor, which emulates a HP9816 system with a 68K cpu. See http://www.hpmuseum.net/display_item.php?hw=681 for more details and software to run on this card.
2023-03-24 23:35:18 -04:00
Vas Crabb
5f97af903c
-Lua engine: run everything in coroutines. (#11019)
* This lets you use emu.wait(...) directly without mucking around creating coroutines.
* Allow emu.wait to accept an attotime argument.
* Added a couple more wait helper functions.

-emu/profiler.h: Actually use scope-based profiling helpers.
* This makes the comment at the top of emu/profile.h less dishonest, and makes it easier to write exception-safe code.
* Got rid of some do { ... } while (0) loops that only existed so break could be used like a goto.
2023-03-25 05:53:58 +11:00
AJR
da94203755 Remove unused cd90_640_dsk formats (functionally replaced by thom_dsk)
* apple2video.cpp: Fix permissions
2023-03-23 19:04:15 -04:00
BartmanAbyss
4ff301b134
brother/lw30.cpp: Added driver for Brother LW-30 word processor. (#10996)
New working systems
---------------------
Brother LW-30
2023-03-20 03:54:11 +11:00
wilbertpol
2461397c80
bus/msx: Moved Yamaha module and minicart slots into their own folders. (#10984)
Also defined MSX cartridge slot options in one place.
2023-03-14 06:35:01 +11:00
AJR
6543248641 unidasm: Add Interdata Series 16 disassembler 2023-03-11 09:19:24 -05:00
wilbertpol
c1b0bf352b
bus/msx: Added Yamaha UCN-01 cartridge-to-module slot adapter. (#10972) 2023-03-11 05:33:19 +11:00
Vas Crabb
2eba8b2112 cpu/z180: Added CSIO emulation. [Vas Crabb, Sandro Ronco] 2023-03-11 05:02:50 +11:00
Ivan Vangelista
9006ed9c92
bus/snes/profighter.cpp: Added skeleton devices for "Pro Figher" SNES cartridge copiers. (#10952)
Dumped four SNES copiers (3 Super Pro. Fighter Q variants and a Pro Fighter X). [Darksoft, Apocalypse]
2023-03-10 06:17:46 +11:00
Curt Coder
3b8c1569cf abc1600: Implement Luxor R8 mouse. [Curt Coder] 2023-03-07 12:28:40 +02:00
Vas Crabb
31c0d2a4a8 Reduce warnings that need to be suppressed to build linenoise. 2023-03-07 05:46:28 +11:00
Vas Crabb
8384223ac8 Updated forked linenoise to latest upstream.
This removes the need to force it to build as C++, and adds proper UTF-8
support for Windows.

Since this is a fork of linenoise, there's no hope for getting
lua-linenoise to sync with it upstream.  I made the bare minimum changes
to keep it working, but didn't add bindings for new functionality (e.g.
multi-line editing).
2023-03-07 05:33:37 +11:00
Vas Crabb
dc87571a43 3rdparty: Avoid the need for -fpermissive since clang doesn't like it.
I'll try to get some of this upstreamed.
2023-03-07 04:19:36 +11:00
Vas Crabb
b5475eb38b Various updates, mostly around Lua:
Compile Lua as C++.  When Lua is compiled as C, it uses setjmp/longjmp
for error handling, resulting in failure to unwind intermediate stack
frames.  Trying to ensure no objects with non-trivial destructors are in
scope when raising a Lua error is error-prone.  In particular,
converting an exception to a Lua error becomes convoluted, and raising a
Lua error from a constructor is effectively impossible.

Updated Lua to 5.4.4 - this includes a brand-new garbage collector
implementation with better performance.  The main thing removed is the
deprecated bitlib.

Updated sol2 to version 3.3.0 - this adds support for Lua 5.4 and fixes
a number of issues, including not correctly handling errors when Lua is
built as C++.

Updated LuaFileSystem to version 1.8.0 - this adds support for symbolic
links on Windows, as well as Lua 5.4 compatibility.

Updated LuaSQLite3 to version 0.9.5 - this fixes issues in
multi-threaded environments, as well as Lua 5.4 compatibility.

Fixed double-free after attempting to construct a debugger expression
from Lua with an invalid string, and exposed expression error to Lua in
a better way.

Added warning level print function to Lua.

Fixed saving cheats with shift operators in expressions, although this
code isn't actually used as there's no cheat editor.
2023-03-07 01:39:42 +11:00
Eric Anderson
369ecb2f77
vectorgraphic/vector4.cpp: Added Vector 4 driver. (#10710)
* bus/s100: Added Vector Dual-Mode Disk Controller (only floppy supported for now).
* formats/vgi_dsk.cpp: Addec Micropolis VGI floppy disk image format.
2023-02-27 19:47:55 +11:00
Vas Crabb
383ab43dbc Various cleanups:
* cpu/dsp56156: Removed vestigial (and excessively slow) "new" execution code.
* apple/bandit.cpp: Got rid of unnecessary friend declaration.
* nintendo/n64_v.cpp: More const.
* Fixed a few "const qualifier has no effect" warnings.
2023-02-27 06:11:37 +11:00
Miodrag Milanović
bd59a0d447
Removed local copy of SDL source and update Android build support. (#10899)
* Removed SDL2 source.
* Updated gradle.
* Updated SDL2 Java support glue code.
* Increased minimum supported Android API version to 24.
* Updated required asset files for Android app.
* Added proper tag for Android logging.
* Added SDL2 hint to make BGFX work on Android.
2023-02-27 05:40:37 +11:00
AJR
793367ff91 Retire legacy NCR 539X emulation 2023-02-25 20:02:17 -05:00
Dirk Best
281957363e
machine/pccard.cpp, machine/pccard_sram.cpp: Added support for PCMCIA linear SRAM cards. (#10886)
* Added callbacks for card detect, battery voltage and write protect to the PCCard interface.
* Added helpers to read/write data swapped (similar to the existing support in the ATA device).
* Add support for 2 MB and 4 MB SRAM PCMCIA models from Centennial with built-in EEPROM storage for CIS information.
* machine/linflash.cpp: Updated the linear Flash PCMCIA card emulation to use the new card detection support.
* machine/gayle.cpp: Rewrote the Amiga Gayle emulation, adding support for PCMCIA.
* Fixed an issue with Amiga interrupts arriving at the wrong time.
2023-02-26 05:33:56 +11:00
AJR
df80004c3c Add dump and skeleton device for Schneider NLQ 401 Printer [unknown]
* tms1024.cpp: Add optional logging messages
2023-02-25 10:41:37 -05:00
wilbertpol
14d00bf2f7
bus/msx/cart/slotexpander.cpp: Add support for four-slot expander cartridges. (#10890)
* bus/msx/cart/softcard.cpp: Fixed typo in 'Electric Software'.
* bus/msx/slot/ram_mm.h: Renamed m_ramio_set_bits to m_unused bits.
* Don't allow external memory mapper register readback to avoid conflicts with internal memory mappers.
2023-02-23 04:18:47 +11:00
Olivier Galibert
e76e82c9e4 scc68070: Revert to use musashi for now, it's very much not a traditional 68000. 2023-02-22 11:29:51 +01:00
Olivier Galibert
0b6732cf91 emumem: First try at wait states 2023-02-22 11:29:48 +01:00
Olivier Galibert
74971c2f53 m68000: New implementation, generated from the micro/nanocode 2023-02-22 11:29:45 +01:00
Vas Crabb
63ea393695 3rdpary/bimg: Just disable SSE on all 32-bit builds to be safe. 2023-02-20 03:08:50 +11:00
Vas Crabb
46c0de4f55 3rdparty/bimg: Try to keep all the builds working. 2023-02-19 04:37:35 +11:00
Vas Crabb
cca40d6ea1 3rdparty/bimg: Disable SSE on 32-bit x86 - it assumes x86-64 integer ALU is available when using SSE. 2023-02-19 04:20:48 +11:00
Vas Crabb
19a3f5dea2 srcclean and bump copyright date on language files to 2023 2023-02-19 03:28:47 +11:00
Vas Crabb
d4589e0b29 Input refactoring:
osd/modules/input, emu/inpttype.cpp: Made most default joystick
assignments supplied by input modules.  Input modules take available
controls into consideration when generating default assignments.

emu/inpttype.ipp: Added a separate "Back" UI input separate from Cancel.
You may want an easier to hit combination for moving to the previous
menu than for exiting or cancelling input.  They both default to Escape.

emu/inpttype.ipp: Added a UI Help control.  Currently only used by
analog inputs menu

emu/inpttype.h: Moved I/O port field type enum to its own header and
sorted UI controls so they appear in a more logical order.

ui: Don't use UI Select to restore defaults - people should be getting
used to the UI Clear input by now.  UI Select cycles multi-value items
instead.

ui/inputmap.cpp: Don't use immediate cancel to cycle between clearing
and restoring default assignment (use UI Clear instead).

osd: Reduced the number of files needing to include the dreaded emu.h.
Got some implementation out of headers.
2023-02-18 06:18:45 +11:00
hap
9dbf099b65 nes zapper: improve trigger, put bandai lightgun in its own file 2023-02-16 21:54:04 +01:00
arbee
302c0ae5b2 imacg3.cpp, powermacg3.cpp: added Cuda, MacADB, and DIMM serial presence detect readback. [R. Belmont]
mpc106.cpp: fixed endianness of register access, hooked up RAM, made compatible with RAM device. [R. Belmont]

cuda.cpp: Added I2C I/O hookups. [R. Belmont]

heathrow.cpp: Hack for unknown register that imac was stuck on. [R. Belmont]

dimm_spd.cpp: New device that provides a configurable DIMM serial presence detect readback for I2C or SMBus. [R. Belmont]
2023-02-15 22:08:09 -05:00
wilbertpol
d8f70e6446
bus/msx/cart/ram.cpp: Added RAM expansion cartridges. (#10888) 2023-02-15 05:23:22 +11:00
Brian Johnson
5f85581eb7
bus/nabupc: Added hard disk controller card. (#10880) 2023-02-09 01:55:55 +11:00
Vas Crabb
7245878a94 Miscellaneous cleanup:
* Got rid of a few more unnecessary uses of simple_list.
* bus/amiga/zorro: Got rid of a pointer member that would make adding
  save state support unnecessarily difficult.
* nichibutsu/cop01.cpp: Remove need to remove devices from machine
  config.
2023-02-09 01:49:46 +11:00
Patrick Mackinlay
4c512e6ed9 New systems marked not working
------------------------------
Tadpole Technology TP881V [Plamen Mihaylov]
2023-02-08 18:40:24 +07:00
Vas Crabb
7bf3044c32 cpu/arcompact: Cleanup:
* Moved common instruction field accessors used by the CPU core and
  disassembler to a shared base class and made them constexpr.
* Got the inline member functions bodies file out of the public CPU
  header so they aren't pulled in by everything using it.
* Got most of the disassembler handler declarations out of the public
  header so they can be changed withut excessive recompiling.
2023-02-06 07:51:29 +11:00
David Haywood
7bf6964388
-cpu/arcompact: Rewrote core. (#10808)
* Split into files by opcode encode type/group.
* Refactored out macros.
* Added additional opcodes.
* Added interrupt logic.
* Added stub handlers for used but unknown opcodes.

-leapfrog/leapster.cpp updates:
* Put some data uploaded by the leapster BIOS somewhere for debugging purposes.
* Removed a read handler that was only there because of previous bad handling.
* Noted some used Leapster side addresses.
2023-02-06 05:15:25 +11:00
arbee
758fabb885 New machines added as NOT_WORKING
---------------------------------
Power Macintosh G3 [R. Belmont]
iMac (Bondi blue) [R. Belmont, Guru]
2023-02-04 15:44:25 -05:00
Vas Crabb
b98fb7c98e Small batch of input refactoring:
emu/input.cpp: Fixed regression in display of some joystick inputs.

osd/interface: Split up interface classes into a few more files to
reduce where the input device interface class needs to be included.
Made OSD independent of concrete input_device class.

osd/modules/input, emu/inputdev.cpp, emu/ioport.cpp: Allow input devices
to provide tokens for controls without standard item types and
additional default input assignments.  Fixes issues assigning Yen and
Backslash on Japanese keyboards.

ui/textbox.cpp: Added a fixed-content text box menu class for future
use.

Got main.h out of emu.h as it’s only used in a very small number of
places, mostly for getting the application name.  Added eminline.h to
attotime.h as it's used without emu.h.  Cleaned up forward declarations
in emufwd.h a little.
2023-02-05 05:01:40 +11:00
Patrick Mackinlay
1d39af0599 New systems marked not working
------------------------------
Motorola MVME327A [Bitsavers]
2023-02-03 14:44:53 +07:00
Patrick Mackinlay
e914e421c7 New systems marked not working
------------------------------
Motorola MVME181 [Plamen Mihaylov]
2023-02-03 14:37:49 +07:00
Patrick Mackinlay
bc802bb8ac mc88200: new device 2023-02-03 14:15:19 +07:00
Vas Crabb
0ae68e4dea Use EQUIVALENT_ARRAY to avoid issues with std::size on member arrays, enable warnings for VLAs in C++. 2023-02-01 16:12:58 +11:00
Vas Crabb
2810c9d91b osd: Turned video modules into actual modules, fixed various issues.
Don't ignore the return status of OSD module initialisation.  Attempt to
fall back to an alternate module if the selected module fails to
initialise.  Log more useful diagnostic information at verbose level.

Fixed BGFX crash on exit after toggling fullscreen.  Also persist more
settings than just the selected chains across toggling fullscreen.

Turned video modules into OSD modules in the same sense as all the other
OSD modules.  They now use the same selection/fallback mechanism as all
the other modules without special extra code in the OSD implementations.

Untangled some object ownership mess.  Windows own renderers, OSD
objects own windows.  Fixed a refrence loop that caused the first window
object to always leak.

Don't create renderer object until after underlying window has been
created.  Fixed issues with order of creation/destruction when toggling
fullscreen or changing prescale in fullscreen with -switchres in SDL
builds.

Use more smart pointers in BGFX and Direct3D render modules.  Most of
the code now reutrns a smart pointer when handing over ownership or a
naked pointer when retaining ownership.  Fixed a few leaks and
simplified cleanup code.

Encapsulated various OSD modules better.
2023-02-01 04:00:44 +11:00
Vas Crabb
68472d3d72 Various input and OSD refactoring:
osd: Supply OSD object to modules on initialisation.  Encapsulated some
event handling in the OSD objects rather than leaving it in free
functions.  Put various stuff in namespaces.

osd/modules/input: Enabled dinput, xinput and winhybrid modules for
Windows SDL builds, and enabled background input for dinput and xinput
(and by extension winhybrid) modules.  Also fixed some COM and X11
resource leaks.

osd/modules/input/input_sdl.cpp: Flipped SDL mouse button order to match
Windows, and exposed vertical and horizontal scroll as Z and rZ axes.
Moved SDL UI event handling out of input devices into OSD object.

osd/modules/input_rawinput.cpp: Changed lightgun Z axis token so it's
correctly identified as a relative axis (it maps to the scroll wheel
equivalent).

osd: Added an option to choose the network provider module.  Mostly
useful if you build with both TUN/TAP and pcap support included, or if
you want to disable emulated networking completely.

emu/input.cpp: Use a better strategy for assembling input code names
that uses fewer temporary strings and doesn't require use of the
non-Unicode-aware space trimming function (fixes MT08552).

osd/modules/input_dinput.cpp: Improved polling logic.

osd: Made various parts of the input code less dependent on concrete emu
objects, and reduced inappropriately passing around the machine object.
Made input modules less dependent on OSD implementation.  Encapsulated
some stuff and got rid of some vestigial newui and SDL1 support code.
Cleaned up some interfaces.  Moved OSD options classes to their own
files.

Prepare to remove main.h from emu.h - it's mostly used to get the
application name, which the vast majority of emulated devices don't need
to do.
2023-01-29 03:16:14 +11:00
Vas Crabb
2498f2b7cf Miscellaneous fixes and refactoring:
ui/analogipt.cpp: Fixed bar graph display for fields with ranges
that wrap through zero.

emu/inputdev.cpp: Separateed analog axis deadzone and switch threshold
settings, reduced default deadzone, and fixed a potential division by
zero if the deadzone and saturation settings are equal.

emu/ioport.cpp: Fixed behaviour of absolute analog fields where range
passes through zero - it previously only worked for specific
combinations of mask, minimum and default.  Removed a workaround from
universal/getaway.cpp that is no longer necessary.

emu/input.cpp: Fixed unintuitive behaviour when an absolute field is
assigned an OR combination of a relative control folled by an absolute
control (e.g. Mouse X or Joy 1 LSX).  Also fixed reading axis input
sequences where an axis code is followed by a switch code (these can
only be produced by manually editing configuration files, not through
MAME's UI), and fixed the returned type when multiple relative axes sum
to zero.

osd/modules/input_dinput.cpp: Fixed hat switches being stuck in up
position when input is suspended in the background

taito/taitoio_yoke.cpp: Give throttle control a distinct type, and don't
auto-centre.

osd: Added option to select MIDI provider module (currently only
PortMidi and the dummy module are available).  Also put various things
in namespaces, and fixed builds including SDL sound module with native
Windows OSD.

emu/validity.cpp: Added check to catch I/O port fields using UI input
types.

emu/inpttype.ipp: Renamed inputs that were causing confusion.  "Bill"
and "Track" were causing confusion for translators and hence likely
causing confusion for many users, especially those who are not native
English speakers.  "Track" as an abbreviation for "Trackball" was
frequently being mistranslated, e.g. in the sense of a CD track
selection button or even in the sense of a railway track.  There's no
reason to abbreviate it.  "Bill" in the US English sense as a banknote
is too ambiguous and was causing confusion for translators.  It's better
to use the less ambiguous "Banknote".  Corrected Greek translations of
"Trackball".

Don't run GitHub Actions on issue template changes.
2023-01-28 08:16:53 +11:00
Brian Johnson
07b19fb3ed
misc/nabupc.cpp, bus/nabupc: Added support for NABU PC and simulated host. (#10676)
New working systems
-------------------
NABU PC
2023-01-24 03:08:37 +11:00
Patrick Mackinlay
16de1c7df5 New machines marked as NOT_WORKING
---
Motorola MVME180 [Plamen Mihaylov]
2023-01-17 19:11:20 +07:00
Vas Crabb
b97bda1282 3rdparty: Suppress unused variabe warnings for SQLite3 - clang 15.0.5 for Windows considers sqlite3_os_type unused. 2023-01-13 04:04:57 +11:00
Justin Kerk
6e417d79f1
Fix compile error on mingw due to invalid setting for ASTCENC_SSE (#10824) 2023-01-11 05:47:53 +00:00
MooglyGuy
88ea41b887
sun4c, SPARC, and NCR53C90 bug fixes: (#10821) [Ryan Holtz]
* machine/ncr53c90.cpp: Renamed to ncr53c90 to avoid confusion about the actual NCR part name.
* machine/ncr53c90.cpp: Fixed 'Select w/ ATN and Stop' command in DMA mode.
* cpu/sparc: Avoid using temporary C-strings as address space names.
* machine/sun4c_mmu.cpp: Fixed l2p debugger command by removing inadvertent narrowing conversion.
* sun/sun4.cpp: Switched to NCR 53C90 from 53C90A, and fixed DMA byte-address masking - fixes Solaris 2.4 booting.
2023-01-11 04:20:00 +11:00
cracyc
1287b114de i386: fix fpu log2 and atan 2023-01-09 14:08:08 -06:00
Miodrag Milanovic
6dc6c1255a Fix parameters for mingw build
(cherry picked from commit a864b4e5d420893b603d590867720f21d7b21f5a)
2023-01-05 21:31:35 +01:00
Miodrag Milanović
812e6094f4
Update BGFX, BX and BIMG (#10789)
* Update to bgfx a93a714632b79b5ddbf5c86ac323fa9b76ed3433
Co-authored-by: Бранимир Караџић <branimirkaradzic@gmail.com>
2023-01-05 09:32:40 -05:00
R. Belmont
94b1e168b2
Revert "Update BGFX, BX and BIMG (#10750)" (#10787)
This reverts commit 5581eaa50a due to link failure on macOS.
2023-01-04 23:29:18 -05:00
Miodrag Milanović
5581eaa50a
Update BGFX, BX and BIMG (#10750)
* Update to bgfx a93a714632b79b5ddbf5c86ac323fa9b76ed3433
Co-authored-by: Бранимир Караџић <branimirkaradzic@gmail.com>
2023-01-04 23:12:10 -05:00
Vas Crabb
09e4b34dd8 Updated png.py to 0.0.20 (last version before Python 3.4 support dropped) 2023-01-03 16:05:24 +11:00
Vas Crabb
9f99b27d05 Bump dates to 2023 where appropriate 2023-01-02 11:58:17 +11:00
angelosa
f0fb9723c9 bus/pc8801: preliminary implementation of HAL HMB-20 sound card, addresses #10703 2022-12-25 19:32:42 +01:00
Sven Schnelle
0ce06a9d74
formats/hp300_dsk.cpp, formats/hp_lif.cpp: Added HP 300 floppy format and LIF filesystem. (#10729)
Added support for various disk formats used with HP computers. Named
'hp300', but also contains formats used with HP85 and HP150 computers,
using the same floppy drivers as the 300 series.

Most of the information was taken from "HP Flexible Disk Formats" by
Martin Hepperle.

HP LIF was used in quite a lot of different HP products like the
HP 9000/300, HP85/87 and HP150 computers.  Added support for
reading this filesystem.
2022-12-25 06:33:59 +11:00
fulivi
045f23d116
hp/hp9825.cpp: Added support for HP 9825A and HP 9831. (#10595)
* bus/hp9845_io: Added HP9871 printer.

New working machines
------------------
Hewlett-Packard HP 9825A
Hewlett-Packard HP 9831A

New working software list items
------------------
hp9825_rom: 9862 Plotter/Gen I/O ROM for 9825
hp9825_rom: General/extended I/O ROM for 9825
hp9825_rom: General/extended I/O/9862 plotter ROM for 9825
hp9825_rom: General/extended I/O/plotter ROM for 9825
hp9825_rom: Plotter/Gen I/O ROM for 9825
hp9825_rom: String/Advanced programming ROM for 9825
hp9831_rom: Mass storage ROM for 9831

New not working software list items
------------------
hp9831_rom: Matrix/plotter ROM for 9831
2022-12-24 20:15:16 +11:00
MooglyGuy
3178442049
More MC68EZ328 work for palmm100 and iqunlim (#10696) [Ryan Holtz]
* palm/palm.cpp: Promoted palmm100 to working.  Split Palm LCD into a separate device.
* machine/mc68328.cpp: Improved LCD controller emulation.  Fixed reported Coverity issues
* vidoe/mc68328lcd.cpp: Added a generic device to handle MC68328-style LCD output signals.
* vtech/iqunlim.cpp: Hooked up MC68EZ328 device.

Clones promoted to working
---------------------
3Com Palm m100 [Ryan Holtz]
2022-12-22 03:15:56 +11:00
Vas Crabb
bdf4645b73 bus/pce_ctrl: Added PC Engine Mouse support. 2022-12-21 08:26:53 +11:00
hap
d3fbba3a5e m6809: rename *.ops to *.lst 2022-12-18 17:06:25 +01:00
Vas Crabb
a32b70c034 More Micom Soft controller wrangling:
* bus/msx/ctrl: Added XE-1AP pad with defaults for personal computers.
* bus/pce_ctrl: Added XHE-3 PC joystick adapter.
2022-12-18 22:21:33 +11:00
Vas Crabb
d57396edf0 bus/sms_ctrl: Added support for Denpa XE-1AP controller.
This is the "horsehoe crab" game pad version of the Denpa Micom Soft
Analog/Digital Intelligent Controller System (the other version is the
desktop "cyber stick").

Mega Drive games only support this controller in analog mode (the
default).  Digital mode is designed to be used for games on computers
with MSX-style controller ports that don't support analog controls.
2022-12-18 06:40:56 +11:00
Vas Crabb
d464f33772 bus/sms_ctrl: Added Konami Hyper Shot for Sega, too. 2022-12-17 07:56:52 +11:00
Vas Crabb
f87d24a4a2 bus/msx/ctrl: Added Konami Hyper Shot controller. 2022-12-17 07:21:59 +11:00
MooglyGuy
16e265185e
palm/palm.cpp: Improved Palm IIIc support. (#10684) [Ryan Holtz]
* machine/mc68328.cpp: Split MC68328 device into a base class with shared functionality, and derived MC68328 and MC68EZ328 models.
* video/sed1375.cpp: Added roughly-functional implementation of the Epson SED1375 LCD controller.

Machines promoted to working
------------------------
3Com Palm IIIc [Ryan Holtz]
2022-12-16 23:44:37 +11:00
Vas Crabb
905470b653 bus/sms_ctrl: Added support for Sega mouse and four-player adaptor. 2022-12-16 17:52:06 +11:00
Vas Crabb
01c5fe81f1
sega/sms.cpp: Refactored Game Gear handling. (#10682)
Use a memory view to switching between Game Gear and Master System compatibility I/O space mapping.  Got rid of most of the conditional code checking whether it's a Game Gear driver.

Got rid of the special Game Gear EXT port slot.  It's the same thing as a Mega Drive controller/expansion I/O port with a different connector.

sega/mdioport.cpp: Added a variant for the Game Gear with the TH/PC6 interrupt latch, and added it to the Game Gear.
2022-12-14 19:26:21 +11:00
Vas Crabb
85fd7f8c45 -bus/sms_ctrl: Added raphnet DIY SMS/Mark III paddle.
-cpu/avr8: Added minimal ADC support (in particular, ADC interrupts are
 not implemented).

-sega/megadriv.cpp: Further broke up base Mega Drive class.
* Created a light-weight base class with just the core functionality,
  used for "Genie" hardware (Puckman Pockimon).
* Moved built-in controller emulation to a derived class so it isn't
  lurking underneath the consoles with pluggable controllers.
* Moved the Sun Mixing Mega Drive bootlegs to their own source file -
  they're substantially different, not using the I/O blocks for input.

-sega/sms.cpp: Untangled SG-1000 Mark III slightly.
2022-12-13 08:00:03 +11:00
Nigel Barnes
3e8cb6894c bus/archimedes/podules: Added Ethernet podules (not working)
- Acorn AEH50 Ethernet II
- Acorn AEH54 10Base2 Ethernet Podule
- ANT Ethernet 10base2 mini-podule
2022-12-12 20:44:33 +00:00
Nigel Barnes
e09c883434 mdcr: Moved philips/p2000t_mdcr.cpp->machine/mdcr.cpp to allow use with other machines. 2022-12-12 18:47:14 +00:00
Nigel Barnes
8d06c14709 New machines marked as NOT_WORKING
----------------------------------
MiniB Computer [Nigel Barnes, Sprow]
2022-12-12 18:13:59 +00:00
Nigel Barnes
66f4e8d40b bus/archimedes/podule: Added SCSI Interface podules (not working).
- Acorn A500 SCSI Interface
- Acorn AKA31 SCSI Expansion Card
- Acorn AKA32 CDFS & SCSI Expansion Card
- Cumana 16bit SCSI Interface
- Lingenuity SCSI Podule
- Morley Electronics 16bit Cached SCSI card
- Oak Solutions 16 bit SCSI Interface
2022-12-11 23:04:03 +00:00
Nigel Barnes
e3c1dc11fc mt65: Slotified the keyboard port, devicified Microtan Keypad (MT006), Microtan Keyboard (MT009), and ETI Space Invasion Key Unit.
- Added cards ETI Real Time Clock, ETI Sound Card, Microtanic Real Time Clock, TUG Combo Card, and TUG EPROM Storage Card.

mt6809: Fixed keyboard input, RALBUG commands now work, and promoted to working.
- Added support for FLEX and BBC Micro floppy formats.

spinveti: Replaced incorrect ROM to load at &F800.
2022-12-11 22:16:32 +00:00
Vas Crabb
6e5d7328cb sega/mdioport.cpp: Added Mega Drive I/O port controller device.
Adapted all Mega Drive hardware drivers to work with the new I/O port
device, and moved based Mega Drive 68k peripherals to a common address
map function.

sega/megadriv_acbl.cpp: Added base machine configuration to attach an
optional I/O port to the EXP port, and moved some stuff to derived
classes.

sega/megadriv_rad.cpp: Simplified code.

bus/sms_ctrl: Added an RS-232 adapter.  Only sending from the console to
the attached device works so far, reception will have to wait.
2022-12-12 04:25:30 +11:00
AJR
e8823c2ab8 thomson.cpp: Extension bus cleanup
- Make CC 90-232 serial/parallel interface an extension device
- Eliminate spurious custom Centronics interface from MO5NR (CC 90-232 is used with this model instead)
- Make RF 57-932 serial interface an extension device
- Make MD 90-120 modem interface an extension device (emulation still needs work)
- Make Midipak an extension device and completely rewrite emulation
- Make MEA8000-based speech interface an extension device
- Configure 1 MHz E clock for extension bus
- Add FIRQ & IRQ outputs from extension bus
- Expand extension I/O address range from $x7D0-$x7DF to $x7C0-$x7FF
- Clean up various bits of driver code
2022-12-10 18:32:36 -05:00
Vas Crabb
dc360abb02 bus/sms_ctrl: Reworked Sega Master System controller bus.
Rationalised interface, got rid of TH from the "pulled" lines, and
extended to support output on all data lines.  Renamed to be less
specific as the same interface is shared by multiple consoles.

Removed a lot of unnecessary indirection through I/O ports and multiple
levels of inversion in peripheral emulation that was obfuscating the
code.

Made Rapid Fire Unit switches toggles so they can be assigned to
controller buttons and switched on/off easily during gameplay.  You can
still see/change the current state in the Toggle Inputs menu if you
don't want to assign buttons.

Implemented idle timeout in Furrtek 4-player Master System adapter.

Improved crosshair tracking in Graphic Board, added ability to
raise/lower pen, and greatly cleaned up code.

Fixed paddle controller when used with export consoles.

Added 3-button and 6-button Mega Drive control devices.

sega/sms.cpp: SG-1000 Mark III has pin 7 of controller ports tied low -
indicate this to attached controllers (this pin became TH on the Master
System).

sega/mdconsole.cpp: Replaced controller emulation in the driver with
Sega controller ports.  Also removed some vestigial code from the driver
base class.

sharp/x68k.cpp: Replaced controller emulation in the driver with MSX
controller ports.

bus/msx/ctrl: Added a Sega controller adapter device, supported by
X68000 software including chelnov and ssf2.
2022-12-08 05:24:59 +11:00
arbee
0d93398fb3 imgtool: properly remove all Apple modules. (GitHub #10594) [R. Belmont] 2022-12-06 20:15:09 -05:00
tim lindner
b7a807443a
trs/coco12.cpp, trs/coco3.cpp: Moved real-time clocks to where they belong (addresses MT08416). (#10575)
*bus/coco: Remove real-time clock and no-halt functions from Radio Shack floppy disk controller.
* bus/coco: Added Disto Super Controller II floppy disk controller that contains no-halt functionality
* bus/coco: Added "mini expansion bus" that the SCII uses for add on cards, and added slots to SCII and Disto RAM cartridges.
* bus/coco: Added Disto "Realtime Clock" MEB slot device (also includes a parallel printer interface).
2022-12-05 17:09:00 +11:00
AJR
b3ec67fc4c unidasm: Add IBM 1800, IBM 1130 and (DG) Nova disassemblers 2022-12-02 21:52:57 -05:00
wilbertpol
3b9fa5f3c6
bus/msx: Added support for Hudson Soft Bee Card and Electric Software Astron Softcard media. (#10610)
* Copied or moved Bee Cards entries from msx1_cart.xml to msx1_bee_card.xml.
* Copied or moved SoftCard entries from msx1_cart.xml to msx_softcard.xml.
2022-12-03 02:46:39 +11:00
Vas Crabb
516f6b5d2b -debugger: Improved session save/restore.
* Qt: Save expression for memory and disassembly views.
* Qt: Made command history behave more like Cocoa.
* Qt: Added expression history and made behaviour more like Cocoa.
* Qt: Refactored global notifications to use signals.
* Win32: Increased command/expression history size to 100 items.
* Cocoa: Save state of device info viewer windows.
* Qt/Win32/Cocoa: Save command/expression history.

-util/xmlfile.cpp: Fixed bug where copyInto failed to copy nodes.
2022-12-02 02:25:57 +11:00
Vas Crabb
17b9672b1f bus/msx/ctrl: Added Micomsoft Libble Rabble Joypad. 2022-11-26 18:49:19 +11:00
Vas Crabb
f46a046799 -fujitsu/fmtowns.cpp: Use MSX controller slots for pad ports.
-bus/msx/ctrl: Added 2-button and 6-button FM Towns pads.
2022-11-26 03:32:29 +11:00
wilbertpol
be34605ffd
msx.cpp: Made the general purpose ports (joystick/mouse) a slot device. (#10579)
* Also moved msx slot devices to subfolders.
2022-11-24 16:58:31 +11:00
AJR
d653fc0703 Update cpu.lua for 9bb87665ba 2022-11-16 15:35:52 -05:00
Vas Crabb
6c0257b1a1 bus/gameboy: Added support for Liebao Technology cartridges.
gameboy.xml: Changed default NVRAM fill for dbzgeki to 0xff - this will
cause it to treat the three save files as empty rather than starting in
a glitchy state.

New working software list items
-------------------------------
Dragon Ball Z English [lana_chan_, taizou]
2022-11-12 03:39:21 +11:00
Vas Crabb
2a33336d95 bus/gameboy: Added support for newer NT/Makon cartridges.
bus/gameboy: Removed the non-working "Digimon 2" cartridge device.

gbcolor.xml: Corrected titles for a few Chinese games.

New working software items (gbcolor.xml)
----------------------------------------
Capcom Vs. SNK: Millennium Fight 2001 (China) [Pepper9801, taizou]
Digimon 02 4 (China) [taizou]
Digimon 2 (China) [Robyn A1200, taizou]
Digimon Pocket (China) [taizou]
Harry Potter 3 (China) [taizou]
Pokémon Diamond: Special Pikachu Edition [taizou]
Pokémon Jade: Special Pikachu Edition [taizou]
Pokémon: Mewtwo Strikes Back [taizou]
Street Fighter Zero 4 (China) [taizou]

Software items promoted to working (gbcolor.xml)
------------------------------------------------
Shùmǎ Bào Lóng 02 4 (China) [Vas Crabb]
Shùmǎ Bào Lóng 3 Shuǐjīng Bǎn (China) [Vas Crabb]
2022-11-10 03:45:57 +11:00
wilbertpol
ac4af4b16b
msx/msx.cpp, bus/msx_cart, bus/msx_slot: Reimplemented memory using views. (#10473) [Wilbert Pol]
* Made some devices which were not present in all msx models optional; install software lists based on components of the system.
* Updated hardware descriptions.
* Implemented bruc100 firmware banking.
* Added m5.00.011 version of Yamaha SFG05 cartridge.
* Fixed phc28 RAM misconfiguration.
* Added AX-230 internal games mapper.
* Started adding support for FS-A1FM modem.
* Updated input port definitions.
* Added support for kanji font from raw FS-A1FX ROM dump.
* Started adding support for RS-232.
* Added support for Toshiba HX-M200 kanji cartridge - allows hx21 and hx22 to start their firmware.
* Fixed most floppy problems.
* Marked all ROMs that need verification as bad dumps.
* Moved floppy controller and drive configuration from main state to msx_slot disk devices.

New working machines
---------------------------------------
Hitachi MB-H1 (MSX1, Japan)
Mitsubishi ML-8000 (MSX1, Japan)
Panasonic CF-2700 (MSX1, UK)
Pioneer", "UC-V102 (MSX2, Japan)
Sakhr AX-200 (MSX1, Arabic/English)
Sakhr AX-230 (MSX1, Arabic)
Sakhr AX-350 II (MSX2, Arabic)
Sakhr AX-500 (MSX2, Arabic)
Sanyo MPC-25FS (MSX2, Japan)
Sanyo PHC-23 / Wavy23 (MSX2, Japan)
Toshiba HX-32 (MSX1, Japan)
Toshiba HX-51I (MSX1, Italy, Spain)
Yamaha SX-100 (MSX1, Japan)
Victor HC-80 (MSX2, Japan)

New working clones
---------------------------------------
Frael Bruc 100-2 (MSX1, Italy)
Hitachi MB-H1E (MSX1, Japan)
Philips NMS 8250/16 (MSX2, Spain)
Sakhr AX-200M (MSX1, Arabic/English)
Sakhr AX-350 II F (MSX2, Arabic)
Sony HB-101 (MSX1, Japan)
Sony HB-75 (MSX1, Japan)
Sony HB-F500 2nd version (MSX2, Japan)
Spectravideo SVI-728 (MSX1, Spanish)
Talent DPC-200 (MSX1, Argentina, international keyboard)
Toshiba HX-20E (MSX1, Spain)
2022-11-08 15:00:55 +11:00
Olivier Galibert
624ea9dacf 68000: Add a level of transparent indirection, turn the reset output line into devcb. 2022-11-03 09:32:13 +01:00
Nigel Barnes
4c776b71ba bus/electron: Added Millsgrade Voxbox Speech Synthesiser. 2022-10-18 20:23:03 +01:00
Brian Johnson
601b5430c4
Rework QX10 Keyboard implementation (#10384)
* qx10: Rework keyboard code

    * Split keyboard into ascii and hasci variants
    * Update keymappings to be more complete
    * Add output_finders for keyboard LEDs
    * Keyboard now uses sync serial, fixes timing issues with CP/M Plus

* qx10: Add layouts for both hasci and ascii keyboards
2022-10-15 11:21:41 +02:00
fulivi
153f096fd6
Added support for Intel ISIS-II filesystem (#10367)
* fs_isis: support for Intel ISIS-II filesystem added

* fs_isis: fix after CI failure

* fs_isis: adapted to changes in 5499683a23

* all.cpp: fixed amount of ws
2022-10-15 11:02:48 +02:00
Brian Johnson
604d40c826
bus/epson_qx: Added YM2149-based sound card for the Epson QX-10. (#10400) 2022-10-15 03:33:31 +11:00
AJR
6c1e5da058 unkts: Hook up new skeleton CPU device 2022-10-12 13:22:26 -04:00
AJR
8f2beee479 unidasm: Add Nios II disassembler 2022-10-11 21:42:57 -04:00