summaryrefslogtreecommitdiffstatshomepage
path: root/scripts/src
Commit message (Collapse)AuthorAgeFilesLines
* bbcmc: Added expansion port and Mertec Companion expansion device. Nigel Barnes2018-10-261-0/+15
|
* bbcb: Added ReCo6502 co-processor. Nigel Barnes2018-10-261-0/+2
|
* r9751: Implement proper SMIOC emulation through new uart emulation (#4188) Brandon Munger2018-10-241-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [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
* Don't error on undefined GL symbols for the WebAssembly target (#4187) Justin Kerk2018-10-231-0/+1
|
* z8038: new device (nw) Patrick Mackinlay2018-10-181-0/+12
| | | | Zilog Z8038 FIO (FIFO Input/Output Interface Unit). Used to drive the parallel/printer port on the MIPS Rx2030. Passes basic diagnostic tests, but further work depends on progress in the mips.cpp driver.
* New machines marked as NOT_WORKING AJR2018-10-121-0/+12
| | | | | ---------------------------------- Scientific Instruments Model 5500 Temperature Controller [ClawGrip]
* Merge pull request #4119 from hp9k/hp_hil_mouse R. Belmont2018-10-111-0/+4
|\ | | | | hp_hil: add HP 46060B mouse
| * hp_hil: add HP 46060B mouse Sven Schnelle2018-10-111-0/+4
| | | | | | | | | | | | - move hle_device_base to it's own files - add hlemouse.{cpp,h} - add mouse device to hp_ipc and hp9k_3xx
* | pcat101: skeleton for IBM Model M PC/AT and PS/2 keyboard Patrick Mackinlay2018-10-111-0/+2
|/
* hp9k_3xx: add HP98265A SCSI controller (nw) Sven Schnelle2018-10-091-0/+2
|
* hp9k_3xx: add HP98620 DMA controller (#4094) dxl2018-10-091-0/+2
| | | | | | * hp9k_3xx: add HP98620 DMA controller * hp98620: remove unused defines (nw)
* hp9k_3xx: move Sound, GPIB, Keyboard and RTC to human interface module Sven Schnelle2018-10-081-0/+2
| | | | | | On HP9000/300, these modules where always a logical unit connected to the DIO bus. On some systems this was even a seperate DIO module. Lets represent this in software. It also cleans up hp9k_3xx.cpp.
* mb87030: add new SCSI controller (nw) Sven Schnelle2018-10-071-0/+12
|
* vii: Device-ified the SPG2xx SoC. [Ryan Holtz] mooglyguy2018-10-061-0/+12
|
* bbc_tube_6502/65c102: Added ReCo6502 Tube 1.21 ROM. Nigel Barnes2018-09-251-2/+0
| | | | - Rewritten using bankdev and combined 6502/65c102 variants (nw)
* Preliminary emulation of National DP8350 CRT controller family AJR2018-09-251-0/+12
|
* -sun4: Added a sun4c MMU device. Currently wraps the functionality of ↵ mooglyguy2018-09-222-0/+13
| | | | | | S4-buffer, S4-cache, and S4-MMU, will eventually be split. [Ryan Holtz] -sun4: Significant optimization, from 150% -> 330% unthrottled on an i7-5930K. [Ryan Holtz]
* jazz: new skeleton driver (nw) Patrick Mackinlay2018-09-202-0/+24
| | | | | | | A skeleton for the Microsoft Jazz architecture, which was implemented in the MIPS Magnum 4000, Olivetti M700-10 and was the base/origin of several other MIPS ARC systems. * added skeleton Inmos G300/G332/G364 device * added skeleton NatSemi DP83932C SONIC device * added skeleton MCT-ADR device
* Re-write serial mouse support: Vas Crabb2018-09-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | * Separate Microsoft 2-button mouse and Logitech 3-button Microsoft-compatible mouse * Add Microsoft wheel mouse * Make Mouse Systems mouse behave more realistically * Add Mouse Systems "rotatable" mouse * Simplify code and eliminate timers (nw) X/Y translation and buttons works for all devices. The wheel on the wheel mouse seems to be transmitting the right data, and CuteMouse detects the wheel as being present, but no software seems to support it properly. Software supporting the Mouse Systems "rotatable" mouse is very rare - typically people just set the DIP switches on their M-1 for "non-rotatable" mode. A standard mouse driver will see the "rotatable" mouse moving two mickeys for each count, and move eratically on rotation. The "rotable" mouse is poorly tested due to lack of software. (nw) MAME doesn't have a proper input type for a mouse wheel, and it doesn't seem to be possible to map the host mouse wheel to an axis when configuring inputs. The default mapping ends up assigining the wheel or rotation to one of the translation axes, which is very unhelpful.
* bbc: Added Acorn Bitstik and Bitstik 2 analogue controllers. Nigel Barnes2018-09-171-0/+2
|
* bbcb: Added floppy disc controller options:- Nigel Barnes2018-09-171-2/+6
| | | | | - AMS 3" Microdrive Disc System - Microware DDFS FDC (not working)
* Add Sun mouse port and hook it up to sun3, sun3x, sun4, and sun4c. Vas Crabb2018-09-171-0/+14
| | | | | | | | | | | | | | | | | Also add notes to Sun keyboard emulation. There's a hack to make the 1200 Baud mouse actually run at 9600 Baud. This is necessary because the SCC is incorrectly expecting 9600 Baud rather than 1200 Baud. I don't have time to fix the SCC, so I'd appreciate it if someone else would. There's no way it should be expecting 9600 Baud on the mouse port. Solaris 2.3 and later support 1200 Baud and 4800 Baud, and earlier versions support 1200 Baud only. No version of Solaris works with a 9600 Baud mouse. The workaround allows the mouse to be used in SunView on sun4_60 - I haven't tested any other drivers.
* -sbus: Added a skeleton device for the Artecon SB300P 3-serial 1-parallel ↵ mooglyguy2018-09-161-0/+2
| | | | SBus card. [Ryan Holtz]
* -cgsix: Renamed turbogx.* to cgsix.* and added TurboGX+ support. [Ryan ↵ mooglyguy2018-09-151-2/+2
| | | | Holtz, Andrew Liles]
* -sbus: Added a skeleton device for the SunSwift 10/100 + Fast Wide SCSI SBus ↵ mooglyguy2018-09-151-0/+2
| | | | board. [Ryan Holtz, Andrew Liles]
* -sbus: Added a skeleton device for the SunPC 5x86 Accelerator SBus board. ↵ mooglyguy2018-09-151-0/+2
| | | | [Ryan Holtz, Andrew Liles]
* -sun4: Added basic support for cgsix/TurboGX SBus card. [Ryan Holtz] Ryan Holtz2018-09-131-0/+2
|
* -sbus: Added preliminary cgthree support. [Ryan Holtz] mooglyguy2018-09-131-0/+2
|
* -sun4: Added SBus slot bus and basic bwtwo slot device. [Ryan Holtz] mooglyguy2018-09-131-0/+14
|
* -am79c90: Added rudimentary AMD 79C90 LANCE ethernet controller support, ↵ mooglyguy2018-09-081-0/+12
| | | | enough to make sun4 happy. [Ryan Holtz]
* -st62xx: Added a skeleton driver for the STmicro ST6 series of ↵ mooglyguy2018-08-251-0/+17
| | | | | | | | microcontrollers. [Ryan Holtz] New machines marked as NOT_WORKING ---------------------------------- Catherine Wheel [f205v, Ryan Holtz]
* Merge pull request #3795 from felipesanches/gtrak10_2018-jul-27 ajrhacker2018-08-241-0/+4
|\ | | | | A large portion of the Atari Gran Trak 10 schematics (1974) implemented on MAME using the netlist subsystem.
| * A large portion of the Atari Gran Trak 10 schematics (1974) Felipe Corrêa da Silva Sanches2018-07-281-0/+4
| | | | | | | | implemented on MAME using the netlist subsystem.
* | Add huc6230 Emulation (#3829) cam9002018-08-231-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add huc6230 Emulation huc6272.cpp : Add ADPCM transfer, Add save states PC-FXGA for PC-9801 C Bus is released in December 1995 in Japan, Correct metadata * huc6272.cpp : Fix ADPCM address * huc6230.cpp : Simpler interpolate * huc6230.cpp : Fix clamp huc6272.cpp : Fix ADPCM nibble * huc6272.cpp : Fix data type * Revert pcfxga year; PC-FXGA for PC9801 C-bus is not dumped?
* | tms57002: Trick to reduce the compiler memory usage [O. Galibert] Olivier Galibert2018-08-231-0/+2
| |
* | Amiga keyboard overhaul: Vas Crabb2018-08-232-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | * Implement Mitsumi Amiga 500, 600, and 2000/3000/4000/CDTV keyboards * Add unlabeled keys to UK layout * Restrict available keyboards depending on system type * Note that C-A-A reset is now broken on "big box" Amigas as MAME doesn't implement it properly, and the hack providing a fake dedicated reset line has been removed 6502 MCU: fix execute loop 6500/1: implement as device with onboard peripherals Fix some bogus comments
* | New Working Game Tomasz Slanina2018-08-221-0/+12
| | | | | | | | | | ------------------------------- Nightmare [Tomasz Slanina, Roberto Fresca, Jordi Beltran, Paco Ortiz, Recreativas.org]
* | -pcf8583: Added rudimentary Philips PCF8583 RTC emulation, based on the ↵ Ryan Holtz2018-08-201-0/+12
| | | | | | | | PCF8593 device. [Ryan Holtz]
* | amiga: add support for Amiga 2000 keyboard with 8039 and external ROM ↵ Vas Crabb2018-08-151-0/+2
| | | | | | | | | | | | | | | | | | | | manufactured by Cherry (nw) New keyboard only has U.S./Canada and UK variants for now. This keyboard doesn't drive a dedicated reset line, instead using some sequence on the clock line detected by the host chipset. MAME doesn't support this, so keyboard reset won't work. Also started documenting the character labels on the keypad NumLock/ScrLock keys for language variants but still need more pictures.
* | h8: H8/3003 support [R. Belmont] arbee2018-08-021-0/+2
| |
* | taptun: add support for Windows (#3790) Patrick Mackinlay2018-07-301-0/+1
|/ | | | | | | | | | | | | | | | | | | * taptun: add support for Windows Looking for feedback only at this point, because it's the first time I've attempted any OSD stuff - be gentle. This extends the existing taptun OSD module to support Windows through the TAP-Windows6 driver (https://github.com/OpenVPN/tap-windows6). * TAP-Windows6 is GPLv2, however only the header file is required in MAME, and the driver itself is entirely optional. * I've tried to minimise the size of the diff, rather than completely separate the Windows/non-Windows implementations - not sure which is preferable in this case. * The license file has Mac(?) line-endings - unsure if they should be normalized or used verbatim. * Uncertain about the non-Windows case (or the Windows SDL case) - existing code uses __linux__, but I'm not clear on how that works with OSX, for example? * I can't claim this actually "works" yet, because I don't know enough to configure the tap end of it properly to get networking doing something useful, but I will get there and correct anything necessary in a subsequent real PR. * minor fixes/improvements (nw) * Use Unicode Windows APIs, and UTF-8 for MAME * Deal with unterminated registry string values * Cancel any pending I/O in destructor
* Better support for screen orientation/geometry: Vas Crabb2018-07-261-10/+0
| | | | | | | | | | | | | | | | | | | | | * Eliminates the need for the horizontal/vertical/LCD/SVG layout files * Screens can now have orientation and physical aspect ratio specified * RASTER/VECTOR defaults to 4:3, LCD/SVG defaults to square pixels at config time * System orientation is applied on top of screen orientation Automatically generated single-screen views and orientation flags in XML output now work correctly for systems with multiple screens in different geometries/orientations, e.g. housemnq, rocnms, stepstag, or netmerc. The "core rotation options" only interact with system orientation. Allowing multi-screen systems to work well with one monitor per emulated screen is a complex topic. System orientation also affects the GFX viewer while screen orientation doesn't. The orientation displayed in the system selection menu is from the system orientation. Let me know if I've broken any systems or use cases. Also, add save state support for std::array/C array nested to any depth.
* Flesh out TLCS870 core (#3763) David Haywood2018-07-231-0/+5
| | | | | | | | | | | | | | | | * rewrote most of the execution for my tlcs870 core * no longer the case (nw) * note updates (nw) * address concerns, const qualify more things where possible (nw) * more const (nw) * oops (nw) * consistency (nw)
* Better Emscripten parameter handling, & update docs (nw) Justin Kerk2018-07-211-4/+1
|
* ps2sony: Some basic VU1 support, major file reshuffling, nw mooglyguy2018-07-214-2/+168
|
* ps2sony: Checkpoint, nw mooglyguy2018-07-171-0/+4
|
* Update WebAssembly parameters for current Emscripten (nw) Justin Kerk2018-07-151-1/+4
|
* New skeleton device: Western Digital WD1007A ESDI hard disk controller [Al ↵ AJR2018-07-141-0/+2
| | | | Kossow]
* Acorn Bus slot devices for:- Nigel Barnes2018-07-101-0/+41
| | | | | | | | | | | | | | | | | | | | Acorn Atom: - AtomSID - Acorn Atom Disc Pack - Econet Board Acorn System: - 32K Dynamic RAM Board - 8K Static RAM Board - Cassette Interface Board - Econet Board - Floppy Disc Controller Board - 40 Column VDU Board - 80x25 VDU Board - Versatile Interface Board CMS: - CMS 40/80 Video Terminal Card - CMS Floppy Disc Controller - CMS High Resolution Colour Graphics Card
* emumem: Backend modernization [O. Galibert] Olivier Galibert2018-06-291-0/+27
|