Commit Graph

938 Commits

Author SHA1 Message Date
Sergey Svishchev
24d016f62c New skeleton: GRiD Compass series 2017-06-06 21:29:43 +03:00
Michael Zapf
6e577c5465 ti99: Hexbus implementation; floppy HX5102 early WIP 2017-06-06 16:21:51 +02:00
arbee
876f0bb0b3 Initial support for SiS85c496/497 PCI chipset. [R. Belmont] 2017-06-05 22:26:49 -04:00
Olivier Galibert
cb29a590d0 Revert "state: Turns the current state save feature to a menu [Nathan Woods]"
This breaks saving a state from a joystick button, e.g. the
joy%i-%i.sta states, which are rather useful when you don't have a
keyboard handy.
2017-06-01 18:41:21 +02:00
npwoods
82974981a6 state: Turns the current state save feature to a menu [Nathan Woods]
* This turns the current state save feature to a menu; one can still press 0-9, but you can also browse a menu when loading and saving state

* Fixed some issues requested by Vas Crabb

* Updated state menu to support arbitrary character slots
2017-06-01 12:56:36 +02:00
npwoods
4d50a02111 CoCo: Overhaul to the cartridge slot subsystem and Speech/Sound Cartridge support [Nathan Woods, Tim Lindner] 2017-06-01 12:45:51 +02:00
tim lindner
2c2458bbac Added read support for the disk format SDF used in the CoCoSDC (#2345) 2017-05-31 16:23:49 +10:00
Vas Crabb
e892661905 srcclean (nw) 2017-05-28 13:40:48 +10:00
Vas Crabb
2d4ba2471d netlist: add a crude TTL schmitt trigger model and hook up in 1B11142
sound board, completing the tromba circuit

(nw) I'm not sure whether the model works properly or not, but in the
circuit where it's used, I don't think it can work properly with the
current TTL output model.  A capacitor is charged by the Q output of a
74LS74 flipflop (U3A) until the voltage passes the Schmitt trigger's
threshold, causing it to reset the flipflop.  However, the positive
trigger voltage of the Schmitt trigger is 1.6V, but our TTL output model
has a high output voltage of 1.0V (see nl_base.cpp:89).  I realise the
simplified model of TTL logic with high impedance inputs and outputs
behaving as though thery're loaded is convenient and fast to simulate,
but it's not detailed enough for applications like this where
7400-series chips are used in analog circuitry.  This is what held me up
last time I tried adding a netlist for this sound board.
2017-05-27 18:44:23 +10:00
couriersud
bc29593982 Netlist refactoring:
- OPENMP refactored. All OPENMP operations are now templatized in pomp.h
- We don't need thread-safe priority queue. Event code updating analog
outputs now runs outside the parallel code. 
(nw)
2017-05-27 00:11:14 +02:00
AJR
b201ad2cc0 Update cpu.lua properly (nw) 2017-05-26 17:20:31 -04:00
AJR
d1fb75b2e7 Quick and dirty split of most MC6801/MC6803/HD63701 features from base M6800 class (nw)
The code remains generally archaic and awful and in need of a sweeping rewrite. At least one static variable is no more.
2017-05-26 17:08:54 -04:00
Michael Zapf
347e8a4fb7 ti99: Created bus gromport, split monster file gromport 2017-05-25 16:01:23 +02:00
Michael Zapf
1e77ec65c1 ti99: Added console connector "ioport" with PEB as slot option 2017-05-25 00:34:17 +02:00
R. Belmont
fbd2e33023 Merge pull request #2332 from DavidHaywood/nesvt2
preliminary steps for basic VT03 (NES clone) support
2017-05-23 21:22:07 -04:00
Michael Zapf
50b20ddf23 ti99: Wrapped into namespaces; minor rearrangement 2017-05-23 23:22:06 +02:00
David Haywood
7eeae7892d basic VT03 support 2017-05-23 21:12:26 +01:00
Vas Crabb
96c9112785 general cleanup:
* move rarely-used output and pty interfaces out of emu.h
* consolidate and de-duplicate forward declarations, also remove some obsolete ones
* clean up more #include guard macros
* scope down a few more things

(nw) Everyone, please keep forward declarations for src/emu in src/emu/emufwd.h -
this will make it far easier to keep them in sync with declarations than having
them scattered through all the other files.
2017-05-23 15:01:11 +10:00
dankan1890
f09ba1e562 Fixed some inaccuracies in file names in lua scripts. 2017-05-21 15:22:03 +10:00
fulivi
e2b9e11da0 Hp9845: Support for HPI floppy format (#2310)
hp9845: Support for HPI floppy format [F. Ulivi, A.Kückes]
2017-05-16 09:52:31 +02:00
smf-
dc1dcd260b fix MSVC debug builds by specifying /bigobj (needed for mpu4). Release builds don't seem to require it. (nw) 2017-05-16 07:56:04 +01:00
Dirk Best
85c01f5721 New device: SN54/74166 8-Bit Parallel-In/Serial-Out Shift Register 2017-05-16 00:24:08 +02:00
cracyc
40e1e3e698 Merge pull request #2303 from cracyc/linenoise_new
linenoise work
2017-05-15 11:41:06 -05:00
tim lindner
239f178cfe Merge branch 'master' into games_master_cartridge 2017-05-14 13:35:43 -07:00
Vas Crabb
0f0d39ef81 Move static data out of devices into the device types. This is a significant change, so please pay attention.
The core changes are:
* Short name, full name and source file are no longer members of device_t, they are part of the device type
* MACHINE_COFIG_START no longer needs a driver class
* MACHINE_CONFIG_DERIVED_CLASS is no longer necessary
* Specify the state class you want in the GAME/COMP/CONS line
* The compiler will work out the base class where the driver init member is declared
* There is one static device type object per driver rather than one per machine configuration

Use DECLARE_DEVICE_TYPE or DECLARE_DEVICE_TYPE_NS to declare device type.
* DECLARE_DEVICE_TYPE forward-declares teh device type and class, and declares extern object finders.
* DECLARE_DEVICE_TYPE_NS is for devices classes in namespaces - it doesn't forward-declare the device type.

Use  DEFINE_DEVICE_TYPE or DEFINE_DEVICE_TYPE_NS to define device types.
* These macros declare storage for the static data, and instantiate the device type and device finder templates.

The rest of the changes are mostly just moving stuff out of headers that shouldn't be there, renaming stuff for consistency, and scoping stuff down where appropriate.

Things I've actually messed with substantially:
* More descriptive names for a lot of devices
* Untangled the fantasy sound from the driver state, which necessitates breaking up sound/flip writes
* Changed DECO BSMT2000 ready callback into a device delegate
* Untangled Microprose 3D noise from driver state
* Used object finders for CoCo multipak, KC85 D002, and Irem sound subdevices
* Started to get TI-99 stuff out of the TI-990 directory and arrange bus devices properly
* Started to break out common parts of Samsung ARM SoC devices
* Turned some of FM, SID, SCSP DSP, EPIC12 and Voodoo cores into something resmbling C++
* Tried to make Z180 table allocation/setup a bit safer
* Converted generic keyboard/terminal to not use WRITE8 - space/offset aren't relevant
* Dynamically allocate generic terminal buffer so derived devices (e.g. teleprinter) can specify size
* Imporved encapsulation of Z80DART channels
* Refactored the SPC7110 bit table generator loop to make it more readable
* Added wrappers for SNES PPU operations so members can be made protected
* Factored out some boilerplate for YM chips with PSG
* toaplan2 gfx
* stic/intv resolution
* Video System video
* Out Run/Y-board sprite alignment
* GIC video hookup
* Amstrad CPC ROM box members
* IQ151 ROM cart region
* MSX cart IRQ callback resolution time
* SMS passthrough control devices starting subslots

I've smoke-tested several drivers, but I've probably missed something.  Things I've missed will likely blow up spectacularly with failure to bind errors and the like.  Let me know if there's more subtle breakage (could have happened in FM or Voodoo).

And can everyone please, please try to keep stuff clean.  In particular, please stop polluting the global namespace.  Keep things out of headers that don't need to be there, and use things that can be scoped down rather than macros.
It feels like an uphill battle trying to get this stuff under control while more of it's added.
2017-05-14 21:44:11 +10:00
dankan1890
0e638ad0a2 Lua scripts cleanup. 2017-05-14 14:20:38 +10:00
cracyc
4ebc18aeec linenoise: replace linenoise-ng with a different port that is simpler and uses a different UTF8 parser [Carl]
plugins/console: better completions [Carl]
2017-05-13 16:57:47 -05:00
Ted Green
d2224d2eee vrc5074: Added new Nile 4 System Controller device 2017-05-13 14:30:06 -06:00
tim lindner
06d430fbcb Emulation of Games Master Cartridge 2017-05-13 13:29:53 -07:00
Lord-Nightmare
3d18cb2faa Add preliminary Sharp SM590 CPU core [Lord Nightmare, hap] 2017-05-09 14:24:39 -04:00
Olivier Galibert
2b066459bd k054321: Implement as a device [O. Galibert, Phil Bennett] 2017-04-25 19:54:17 +02:00
Vas Crabb
dac6dc4f62 srcclean (nw) 2017-04-23 12:27:42 +10:00
Nigel Barnes
735ab4f355 electron: Added Power Software joystick interface 2017-04-21 16:42:52 +01:00
AJR
0188b4e80b segaybd.cpp, srallyc: Add OKI MSM6253 device 2017-04-12 23:09:13 -04:00
cracyc
490d00afb7 ds1205: Add Dallas DS1205 Multikey [Carl] 2017-04-12 17:32:22 -05:00
AJR
32984a5a51 segaxbd.cpp: Rewrite CXD1095 as a device and also add it to megatech.cpp 2017-04-10 22:55:00 -04:00
AJR
5f29d0b1a3 Fix OS X tools build when MAME_DIR includes spaces (nw) 2017-04-09 10:36:18 -04:00
AJR
8fe18e9ecc New device interface for palettes
- Create device_palette_interface, which takes over most functionality from palette_device except for the initialization/decoding routines and RAM interface.
- Update screen_device and device_gfx_interface to use a device_palette_interface object rather than a palette_device. This necessitates slight alterations to a few drivers and devices.
- Modify v9938 and v9958 to use the new device_palette_interface rather than a subdevice. This entails breaking a cyclic dependency between device_video_interface and screen_device for this case.
2017-04-06 11:30:40 +10:00
Miodrag Milanovic
eb04392728 well issue is on any gcc 5.x (nw) 2017-03-30 08:50:24 +02:00
Miodrag Milanovic
3fff3faf6c proper fix (nw) 2017-03-30 08:36:15 +02:00
Miodrag Milanovic
0921d7aaae 2nd try (nw) 2017-03-29 18:14:35 +02:00
Miodrag Milanovic
456d9e3b47 Fix linux compile (nw) 2017-03-29 17:58:36 +02:00
Branimir Karadžić
49f7c99c77 Update BGFX and BX (nw) 2017-03-29 17:09:40 +02:00
Nigel Barnes
3ee922ace8 electron: Added First Byte joystick interface 2017-03-23 20:47:26 +00:00
Nigel Barnes
f224898523 archimedes: Added JFD floppy format as used by JASPP (Archimedes Software Preservation Project) 2017-03-23 20:47:26 +00:00
R. Belmont
8b9ef0b09e Merge pull request #2172 from kazblox/master
Additions/improvements to nes driver and softlist
2017-03-21 15:23:29 -04:00
kazblox
c488308495 nes: Add Subor Type 2 board. (nw)
nes: Fix debug output when reading iNES headers. (nw)

nes/ppu2c0x: Improved PAL clone timings. (nw)

nes/n2a03: Refactored clock definitions [includes other drivers using the
N2A03] (nw)

nes: Improved refresh rates and timings to reflect nesdev (nw)

nes: Softlist improvements and corrections [koko, mkgoogoo and others] (nw)

nes: Verified koko in the softlist as a good dump (nw)

nes: Softlist additions [subor5, subor6, subor10, subor11, subor13, doolybld]
(nw)

New not working machines added: Subor SB-486, M82 Display Unit (PAL) (nw)

nes: Marked drpcjr as NOT WORKING due to missing hardware. (nw)

New working machines added: Micro Genius IQ-501, Micro Genius IQ-502, Dendy Classic 2 (nw)

nes: marked dendy as a clone of iq501 (nw)
2017-03-21 07:46:36 -04:00
Miodrag Milanovic
ad2bedf06b Refactored HTTP handling to be easier to extend and use (nw) 2017-03-19 18:35:05 +01:00
Michael Zapf
5322568267 ti99/geneve: Bus mouse now a separate device, may also be used with evpc. 2017-03-19 00:22:33 +01:00
ajrhacker
1265aae040 Merge pull request #2154 from shattered/_b85368c
hp_ipc: de-skeletonize.
2017-03-16 23:35:15 -04:00