Commit Graph

1231 Commits

Author SHA1 Message Date
arbee
32703cfa5a decstation: move SFB video chip to separate device for future AlphaAXP sharing [R. Belmont] 2019-01-20 21:29:32 -05:00
MooglyGuy
953d9737d4 -vsmile: Converted to use slot devices for controllers. Breaks controller input. Checkin in so Vas can look at it, nw 2019-01-20 05:12:08 +01:00
MooglyGuy
165e617ca2 -spg2xx: Added additional timer logging, nw.
-vsmile: Demoted all drivers to MNW, nw.

This reverts commit d48481df90.
2019-01-19 19:43:31 +01:00
MooglyGuy
d48481df90 -vsmile: Removed all of my work and returned to a skeleton driver, since it's not good enough for Haze. nw 2019-01-19 18:36:05 +01:00
Vas Crabb
db178071f5 no need to add that twice (nw) 2019-01-20 02:02:19 +11:00
Vas Crabb
57d9f16115 vsmile: add skeleton controller bus 2019-01-20 01:25:44 +11:00
Vas Crabb
9198c2bd58 More UI stuff:
* Split up the different parts of ICO loading in the menus (locating files, scaling, drawing, etc.)
* Added icon support to software selection menu
* Added support for more ICO file variants, including PNG-in-ICO (new DIB parser is overkill for ICO but I can factor it out for BMP loading at some point)
* Added favourites filter for software menus - includes software that's favourited on any system, so GBC includes DMG favourties and vice versa
* Eliminated unnecessary member variables and O(n) walks in software selection menu
* Made the menus' cached texture structures a bit more efficient
2019-01-19 17:34:43 +11:00
mooglyguy
eb6223426d -vsmile: Added proper slot device emulation for the cartridge slot. Gets vsmile techart fully working. [Ryan Holtz]
-vsmileb: Found enough port bits to show the VTech logo and V.Smile Baby intro. No game boots yet. [Ryan Holtz]

-spg2xx: Added separate logging for external interrupts and address mapping. [Ryan Holtz]
2019-01-17 19:05:46 +01:00
Nigel Barnes
01ef9a6a44 bbc: Re-implemented ROM slots to be able to handle non-standard ROM devices, and added support for:
- 32K ROM slots in B+ and Master series.
- PALPROM carrier boards from Computer Concepts, Watford Electronics, etc.
- Real Time Clock ROM devices from Solidisk and PMS.
- UserRAM sideways RAM from Acorn User.
- MRM E00 DFS.
2019-01-16 20:05:03 +00:00
David Haywood
884a2fd070 new NOT WORKING --- Classic Arcade Pinball (JAKKS Pacific TV Game) [Sean Riddle, David Haywood] (#4502)
* new NOT WORKING --- Classic Arcade Pinball (JAKKS Pacific TV Game) [Sean Riddle, David Haywood]

* move to new driver instead (nw)

* minor note updates (nw)

* map inputs in matelcs (currently needs a hack to boot, so won't show anything yet) also removed a pointless bitswapping in a read function for some other stuff in the driver, and just correct the ports instead

* fix a typo (nw)

* note (nw)
2019-01-13 11:19:06 -05:00
R. Belmont
665eb5001c
Merge pull request #4501 from fulivi/hp9825_dev4
hp9825: added HLE of HP9885 floppy drive
2019-01-13 11:18:39 -05:00
AJR
830b460819 uts20: Add UTS 400-Format Keyboard as slot option [AJR, Bitsavers] 2019-01-12 13:23:56 -05:00
fulivi
c6dff30d7a hp9825: added HLE of HP9885 floppy drive. Extended HPI format to
handle single-sided disks.
2019-01-12 18:57:39 +01:00
MooglyGuy
6784650038 unsp: Created a SunPlus u'nSP recompiler. [Ryan Holtz] 2019-01-12 12:51:22 +01:00
AJR
66b50810f2 uts20, uts10: Keyboard emulation and more
- Add custom keyboard port and emulate most of the Expanded Typewriter Keyboard
- Add unidirectional printer port
- Use addressable latch devices to control various things, including disabling display during RAM test
- Hack to pass non-volatile memory test on uts10
2019-01-08 17:52:10 -05:00
R. Belmont
43110c956e
Merge pull request #4487 from shattered/_1c5572b0c3
netlist wip: 7474, 7497, test driver
2019-01-07 16:12:35 -05:00
Sergey Svishchev
737093be1e netlist wip: 7474, 7497, test driver 2019-01-07 22:33:54 +03:00
David Shah
6d3238ead8 nes_vt: APU improvements (#4476)
* nes_vt: Add support for second APU and VT03 PCM

* nes_vt: Add support for VT3x PCM in DGUN2573, etc

* nes_vt_apu: Tidy up after rebase (nw)

Signed-off-by: David Shah <dave@ds0.me>

* nes_vt_apu: Add IRQ support

Signed-off-by: David Shah <dave@ds0.me>

* nes_vt_apu: Remove debug printing (nw)

* nes_vt_apu: Fix indentation (nw)
2019-01-05 21:31:57 -05:00
Vas Crabb
8d40db558e additional documentation on compiling MAME (nw) 2019-01-01 23:30:41 +11:00
Patrick Mackinlay
a6f8b885da wd33c9x: somebody dropped this (nw) 2019-01-01 09:17:02 +07:00
Justin Kerk
3c34a1d307 Fix errors with single-driver build of vsnes.cpp [Justin Kerk] 2018-12-30 12:54:48 -08:00
arbee
b242f119b6 Added a skeleton for the DEC DC7085 (aka "DZ") quad UART. [R. Belmont] 2018-12-30 00:25:32 -05:00
David Haywood
35ff1ea40b XaviX work (new softlist entries etc. promote ddrfammt, popira, nostalgia, card night etc. to working) (#4439)
* XaviX work
new Software List items [Sean Riddle, David Haywood]
ekara_japan_d:dc0002 BAT Volume 6 (Japan) (DC0002-BAT)
ekara_japan_d:dc0005 TV Pop Volume 9 (Japan) (DC0005-TPJ)
ekara_japan_p:pc0001 BHT Volume 4 (Japan) (PC0001-BHT)
ekara_japan_p:pc0003 ENB Volume 1 (Japan) (PC0003-ENB)
ekara_japan_g:gc0001 BAT Volume 1 (Japan) (GC0001-BAT)
ekara_japan_g:gc0016 TV Pop Volume 5 (Japan) (GC0016-TPJ)
ekara_japan_web:ekaraweb12 e-kara Web cartridge 12M (blank) (Japan)

new clones
e-kara (US?, NTSC, set 2) [Sean Riddle]

enable support for 'p' type cartridges for use with ddrfammt [David Haywood]

various documentation improvements [Sean Riddle, David Haywood]

(there are also 3 bad dumps, currently commented out, will replace later)

* improved filenames (nw)

* for later (nw)

* checkpoint (nw)

* seeprom stuff (nw)

* (nw)

* correctly saves, does not correctly reload, also promote popira and ddrfammt to working

* new Software List entries [Sean Riddle, David Haywood]

ekara_japan:ec0001 J-Pop Mix Volume 1 (Japan) (EC0001-JPM)
ekara_japan:ec0032 ANM Volume 2 (Japan) (EC0032-ANM)
ekara_japan:ec0037 ENK Volume 4 (Japan) (EC0037-ENK)
ekara_japan:ec0046 J-Pop Mix Volume 20 (Japan) (EC0046-JPM)
ekara_japan:ec0005 J-Pop Mix Volume 5 (Japan) (EC0005-JPM)
ekara_japan:ec0007 1976-78 Volume 1 (Japan) (EC0007-G76)
ekara_japan:ec0079 ETZ (Japan) (EC0079-ETZ)
ekara_japan:ec0082 Matthew's Best Hit Selection (Japan) (EC0082-MBH)
ekara_japan:ec0009 ANM Volume 1 (Japan) (EC0009-ANM)
ekara_japan_en:en3 EN-3 (Japan)
ekara_japan_m:mc0013 KSM Mini Volume 5 (Japan) (MC0005-KSM)
ekara_japan_s:sc0012 SAI (series 3) Volume 3 (Japan) (SC0012-SAI)
ekara_japan_s:sc0004 SAI (series 1) Volume 1 (Japan) (SC0004-SAI)
ekara_japan_g:gc0002 BHT Volume 1 (Japan) (GC0002-BHT)
ekara_japan_g:gc0003 BAT Volume 2 (Japan) (GC0003-BAT)
ekara_japan_g:gc0004 BHT Volume 2 (Japan) (GC0004-BHT)
ekara_japan_p:pc0004 BHT Volume 7 (Japan) (PC0004-BHT)

* (nw)

* notes (nw)

* (nw)

* this register seems to be r/w (nw)

* fix crash in popira when pausing (requires register readback)

* save state stuff (nw)

* give excite fishing some inputs while I'm making misc minor changes (nw)

* also promote the Nostalgia games, and Card Night, as they have simple digital inputs and seem to work

* (nw)

* copy+paste modernization

* 2 more dumps (nw)

* doesn't seem to have an seeprom (nw)

* preliminary taikodp controls (nw)

* P4 uses SEEPROM (nw)

* rejig some bases (nw)
2018-12-28 21:03:40 -05:00
Nigel Barnes
2eb95974d9 bbc: Added Music 2000 and EMR BBC Midi Interface 1MHz bus devices. 2018-12-22 17:46:25 +00:00
mooglyguy
dc8834b8dc Last round of macro removals before the freeze. (nw)
-sound/discrete, okim6295: Removed MCFG macros. [Ryan Holtz]

-norautp, osi, audio/mario: Removed MACHINE_CONFIG macros. [Ryan Holtz]

-vsmile: Split into its own driver from vii.cpp. [Ryan Holtz]

-vii: Fixed broken controller inputs. [Ryan Holtz]

-konamim2: Massive update. Most games work, but are still marked non-working due to rare MAME crashes in the PPC DRC. [Phil Bennett, Ryan Holtz]
2018-12-22 17:06:47 +01:00
mooglyguy
f25021c47f Actually, let's not completely break compilation with MSVC just because someone is really enthusiastic about unsupported build flags. 2018-12-16 17:04:54 +01:00
R. Belmont
2d814a363a
Merge pull request #4402 from DavidHaywood/131218
add derived CPU type for AXC51-CORE (used by AX208 and others) so that we can start to customize disassembly and execution
2018-12-14 14:19:35 -05:00
Dirk Best
625cfabe02 amiga: Add support for the A2058 memory expansion 2018-12-14 19:50:18 +01:00
DavidHaywood
90fef4da16 add derived CPU type for AX51-CORE (used by AX208 and others) so that we can start to customize disassembly and execution 2018-12-14 11:54:49 +00:00
Celelibi
2f70f9698e Fix compilation errors with -Og
Signed-off-by: Celelibi <celelibi@gmail.com>
2018-12-11 14:26:30 +01:00
yz70s
bac960a725 i386.cpp: move cpuid and msr routines to new file cpuidmsrs.hxx ... (nw)
... and add placeholders for athlonxp msrs.
2018-12-09 13:57:13 +01:00
mooglyguy
0bd02131b6 3rdparty: Updated bgfx, bimg, and bx to latest upstream. [Ryan Holtz] 2018-12-05 19:45:08 +01:00
fulivi
72dc8609aa hp9825 & hp9845: refactored I/O sub-system. Added 98032 GPIO module. (#4353) 2018-12-05 01:10:58 +11:00
Sven Schnelle
8ac744ebcf hp9122: add layout (nw) 2018-11-23 13:37:47 +01:00
Sven Schnelle
1edf5a32fd Add HP98643 LANIC network card 2018-11-21 21:44:50 +01:00
Nigel Barnes
0e59a7fa27 bbc: Added Aries B488 and Acorn IEEE488 Interface devices on 1MHz bus. 2018-11-20 21:55:05 +00:00
Dirk Best
76637c49f4 Initial version of Commodore A2065 Ethernet card 2018-11-20 17:20:46 +01:00
ajrhacker
2c575fe8bc
Merge pull request #4313 from hp9k/hp98550
add HP98550 high-res color graphic card
2018-11-18 22:47:37 -05:00
Sven Schnelle
f6efe2921f add HP98550 high-res color graphic card
Used in the high end HP9000/300 machines. Provides a resolution
of 1280x1024 @ 8bpp. It also provides two overlay planes and one
phantom plane. Each plane contains two window movers that are used
for copying characters and tiles on the screen. It also has a RUG
for line/vector drawing. The current state implements everything
that is required to have a working HP Visual user environment in
MAME.

Working:

- window mover
- pixel replacement rules
- window replacement rules
- f0 tripple replacement rule (copy src or keep destination depending on pattern register)
- VRAM bit access mode
- solid line drawing

Not implemented yet:

- drawing circles
- linetype vector/circles
- rectangles
- filling areas
- tripple replacement rules other than f0
2018-11-18 23:18:36 +01:00
mooglyguy
7b4440920a -o2.cpp: Added CRIME and MACE skeleton devices. [Ryan Holtz]
-mips3.cpp: Various changes: [Ryan Holtz]
 * Added an #ifdef to display DPRINTF calls from the SGI O2 PROM.
 * Switched R4000BE/LE, R4400BE, R4600BE, and R5000BE to 64-bit data bus.
 * Fixed a bug that caused a crash with 64-bit data bus and the DRC.

-indy_indigo2.cpp: Moved a number of devices into HPC3. [Ryan Holtz]

-hpc3.cpp: Fixed an oversight with IRQs. [Ryan Holtz]
2018-11-18 21:51:53 +01:00
mooglyguy
882b5376a8 -scsicd512.cpp: Added various legacy SCSI CD-ROM devices which support 512-byte blocks by default. [Ryan Holtz]
-nscsi_cd.cpp: Added various new-SCSI CD-ROM devices which support 512-byte blocks by default. [Ryan Holtz]

-sgikbd.cpp: Added a rudimentary HLE SGI Indigo keyboard device. Still needs keys to be mapped. [Ryan Holtz]

-indigo.cpp: Various changes: [Ryan Holtz]
 * Expanded logging.
 * Enabled PIT8254 timer. Has the wrong clock value; the correct clock causes a hang.
 * Improved RAM layout.
 * Added stubs for DSP RAM and Entry-level graphics.
2018-11-13 17:55:47 +01:00
mooglyguy
1b08996e2b -dp8573.cpp: Added DP8573 Real-Time Clock emulation. [Ryan Holtz]
-indigo.cpp: Hooked up new DP8573 implementation. [Ryan Holtz]
2018-11-12 02:42:19 +01:00
Patrick Mackinlay
9df6cfe087 r3000: call it like it is (nw) 2018-11-06 17:21:01 +07:00
Olivier Galibert
cc537e30db mu100: Make some noise [O. Galibert]
Two sample roms are missing, sad.  Volume is not taken into account
yet (because the registers are not yet understood), pan is though.
Don't even think about reverb or effects :-)

Current code plays a scale in a loop.  Comment the timer alloc in
machine_reset to kill that.

Demo song (missing lots of sounds, because roms): U then > until demo
then ENTER ENTER.
2018-11-05 15:35:07 +01:00
yz70s
4f5f5c6c92 i386.cpp: prepare to change hxx files into regular cpp files (nw)
-change order of include files at top of i386.cpp
-move some routines between i386.cpp and i386priv.h
-move part of x87ops.hxx into new file x87priv.h
.
Now you only have to rename the hxx files to cpp and add the following
at the top of each one
.
 #include "emu.h"
 #include "i386.h"
 #include "i386priv.h"
 #include "x87priv.h"
 #include "cycles.h"
 #include "debugger.h"
 #include "debug/debugcpu.h"
 #undef i386
2018-11-03 10:25:11 +01:00
Patrick Mackinlay
8740d148c1 v53: final tidy (nw)
* changed copyright holder due to near-complete replacement
* name changed to v5x which better reflects actual use
* minor comment cleanup
2018-11-01 11:47:28 +07:00
Patrick Mackinlay
a3244603db aic6250: new device (nw)
Very WIP status and some obvious issues, but working well enough to load RISC/os.
2018-10-31 18:19:24 +07:00
Nigel Barnes
9bcf933bcc bbcmc: Added expansion port and Mertec Companion expansion device. 2018-10-26 17:42:36 +01:00
Nigel Barnes
e4f1635973 bbcb: Added ReCo6502 co-processor. 2018-10-26 17:42:36 +01:00
Brandon Munger
fbcc6c1b37 r9751: Implement proper SMIOC emulation through new uart emulation (#4188)
* [R9751] (Squashed) Early work on SMIOC emulation

commit 9b587be762abfd576e92792c612cd205c570924d
Author: Stephen Stair <sgstair@akkit.org>
Date:   Tue Apr 10 19:41:55 2018 -0700

    Connected SMIOC DMA to 68k

    * SMIOC now reading bytes for serial from the 68k memory space successfully.

commit 0f801a05a3fa5b78768a1a2bcb9981466e8f2b0e
Author: Stephen Stair <sgstair@akkit.org>
Date:   Tue Mar 27 18:31:32 2018 -0700

    68k now running in lockstep with SMIOC for serial

    * 68k now uses actual SMIOC as source of SMIOC status, so it waits for the SMIOC to complete commands before continuing.
    * SMIOC DMA controllers now being asked to move bytes around
    * "write character" (4100) commands to SMIOC are now completing and resulting in correct status being written and sent back to the 68k
    * Every now and then the SMIOC stalls for a bit, it seems to be due to spending some time trying to communicate with the 8051 CPU (used to communicate with another cpu on the serial breakout box) that is not currently present in the emulated device.

    Next Steps:
    * We're going to move the terminal from the r9751 into the SMIOC, and hook it up to the DMA controllers as a hacky temporary solution.
    * We need to emulate the 5xxxx memory range in SMIOC to proxy data to/from the 68k memory
    * Then we'll start work on emulating the octal uart properly and hooking it up to RS232 channels.

commit ca91614fca3f43d87755d0c3439521276d7bfafb
Author: Stephen Stair <sgstair@akkit.org>
Date:   Wed Mar 14 19:52:04 2018 -0700

    Tinkering to get SMIOC further along

    1) Enable 188 cpu to advance DMA immediatley if DRQ is held high when source synchronous DMA is started (It's not clear whether the DMA actually works this way yet)
    2) Retrigger the DMA DRQ when a memory access is made to the DMA window (future work needed to proxy the reads/writes to the 68k's main memory) This is needed to support multibyte DMA reads/writes to the 68k window.
    3) Reverse the bytes in the status register (based on current incomplete understanding of how this is encoded)
    4) Connect the status register back to the r9751 on SMIOC status read
    Current state: SMIOC's main board DMA state machine now completes the DMA transfer from the main board (With incorrect data), but we are still getting stuck.
    Next steps: SMIOC is now hanging waiting on DMA to UART to complete, we need to implement some emulation of the UART and its connections to the surrounding 16 dma channels in order to make progress.

commit 62c1455c97a53ed970622e08cb03a225625914fd
Author: Stephen Stair <sgstair@akkit.org>
Date:   Sun Mar 4 20:13:32 2018 -0800

    Progress on emulating SMIOC

commit daee8498c5840417aee3ed9def0acfba5476335a
Author: Stephen Stair <sgstair@akkit.org>
Date:   Sun Feb 25 20:02:32 2018 -0800

    Working on bringing up SMIOC

    Trying to get emulated SMIOC in lockstep with the main 68k.

commit 5a929fde90307040a0544682888f2f21a914b900
Author: Stephen Stair <sgstair@akkit.org>
Date:   Wed Feb 21 20:06:27 2018 -0800

    re-enable SMIOC, Logging improvements, first steps towards emulating on-board hardware.

commit f0c7a1665a18c99df5527ae45994f39f95223814
Author: Stephen Stair <sgstair@akkit.org>
Date:   Sun Feb 11 16:26:31 2018 -0800

    Emulation fix - Terminal now responds to input

commit ecff4035f3fdaa0329df46f99ccd516aa23ec8af
Author: Stephen Stair <sgstair@akkit.org>
Date:   Tue Feb 6 19:00:35 2018 -0800

    Hacky emulation of SMIOC

    now successfully receiving serial characters!

commit 376bca90dff311d24e1f5014d8d6f0dc297bf671
Author: Stephen Stair <sgstair@akkit.org>
Date:   Sun Jan 28 18:31:38 2018 -0800

    Experimenting with SMIOC emulation

* Partial fixes for line state issues with persistent line values

When the AM9517 DMA controller mode is updated to change the polarity of DACK/DREQ, it doesn't update the DACK line values / request values (respectively).
This fixes this issue for one of the emulated devices in the file, but the other device has the same problem.

* Add skeleton of SCC2698B UART device

* Early progress on emulating SCC2698B Octal UART

Core structure for IO lines and writing registers is in place.

* Update address maps to new format.

* SCC2698b: Add tx/rx, baud rate generation

* Emulation improvements for scc2698b device

* MPP output pins emulated
* Improved logging for baud rate changes
* Channel configuration emulated
* Support for TX/RX Enable
* Started integrating new features into SMIOC

* Minor progress on the path to enabling new UART for SMIOC

* Resolved code issues related to upstream changes
* Working around an apparent problem with callbacks on sub-device devices
* Terminal added for serial port attached to SCC2698B UART.
* Things compile and seem to work.

* SMIOC: Serial is now outputting correctly through emulated SMIOC

Some glitches to work out, but this is nearly ready.

* AM9517a should not forget about input line status on master reset.

* Disable tracing

* SMIOC: Improving diagnostics and making some progress on the emulation

* Revised tracing in SMIOC and SCC2698B
* Improved tracing approach in r9751
* Minor progress towards working SMIOC emulation.

* [R9751] Update drivers  to new code patterns after rebase

Rebased on latest mame, Fixed a few issues and updated the callback code patterns based on recent changes in devcb

* [R9751] Improve logging, fix interrupt race

Serial no longer drops output characters

* [R9751] Working on SMIOC emulation

Improved SMIOC emulation accuracy, Made some progress in getting through the disktool initialization sequence, but we are still hitting a problem - It looks like disktool should be resetting the SMIOC board when it starts, but the mechanism for this has not been found.

* [R9751] Improve tracing for system board registers

* [R9751] Improve SMIOC emulation

Still having some trouble with SMIOC but this seems to be an improvement.
SMIOC is now waiting for a status to be read before applying a new status, and mandatory parameter read logic is in place.

* [R9751] Incremental emulation improvements

the SMIOC failure was understood and fixed, and a new approach to getting the hardware to bootstrap correctly was implemented - Still having some problems with it though.

* [R9751] Fixed emulation issues

* Disktool now boots to the console
* UART receive only partly working, I don't think it's fully connected yet.

* [R9751] Further progress on SMIOC emulation

* Figured out the missing command parameter interface to the SMIOC board
* Still blocked because the SMIOC interface to the breakout board through an onboard 8051 is not emulated and the disktool software depends on properties coming from it.

* [R9751] Terminal is fully working for disktool

* Improved the emulation of the 80188 to 451 connection in order to reliably set a status bit disktool depends on.

* [R9751] Fix build after rebase

* [R9751] Cleanup, tracing improvements

* Remove second emulated terminal - SMIOC is now stable enough to run the terminal.
* Remove older and unnecessary emulation/tracing code

* r9751: Fix compile error and modify copyright holders
2018-10-24 20:16:35 -04:00