summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/mcs51
Commit message (Collapse)AuthorAgeFilesLines
* ui: Improved media control experience, cleaned up a lot of bad code. Vas Crabb14 days4-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ui/imgcntrl, ui/floppycntrl.cpp: Completely reworked logic - backtracking through menus is more intuitive, and more context is retained when encountering an error (it should be a bit easier to follow the code as well). ui/floppycntrl.cpp: Don't show the initial content selection menu when opening an image to read from while writing to a separate file. ui/filecreate.cpp: Moved the logic to enumerate floppy formats into the menu, use headings and separators, use callbacks to notify when an item is selected, don't pop menus when an item is selected, avoid actual work in destructors. ui/midiinout.cpp: Fixed infinite growth when repopulating the menu, don't pop the menu when a port is chosen, use a callback to notify that a port is chosen, use headings and separators, and in informative placeholder if no ports are available. ui/filesel.cpp: Don't show the option to write to a floppy diff (it still isn't implemented, it can be re-added if it's ever implemented), don't pop the menus when selecting an item, avoid actual work in destructors. ui/filemngr.cpp: Show more detail in the info box below the menu for software items and presets, substantially simplified the code for walking media devices. ui/info.cpp: Got rid of the media information menu, added media information to the system information menu. ui/menu.cpp: Allow immediately adjusting the hovered item with pen/mouse, saving a click. emu/ioport: Fixed incorrect strings displayed for 4C_5C, 3C_4C, 2C_3C and 3C_5C. The array absolutely must stay in order. Also added an assertion to catch these errors early. emu/ioport.cpp: Use a much less gross method of handling default strings (apparently someone forgot about function overloading). emu/ioport.cpp: Retired the crosshair mapper member macros - they don't serve much purpose. util/zippath.cpp: Actually report a failure to open a plain file rather than looking for files inside non-existent archives, making every error turn into "file not found". formats/flopimg.cpp: Allow matching extensions on string object names, rather than requiring a NUL-terminated string.
* mcs51: Fix regression with sfr_map in derived classes AJR2026-05-081-1/+1
|
* hexa,brixian: increase ay clock (matches pcb videos) hap2026-05-061-1/+1
|
* mcs51: Change address space names to resemble those used by Intel's tools AJR2026-03-274-100/+93
|
* -cpu/sharc: More recompiler improvements: Vas Crabb2026-03-081-3/+5
| | | | | | | | | | | | | | | | | | | | * Implemented fixed point CLIP and add/subtract with carry for recompiler. * Cleaned up and de-duplicated code for setting ASTAT flags on fixed point ALU operationf for recompiler, and fixed AC flag for subract operations. * Optimised generated code for fixed point dual add subtrat, PASS and COMP for recompiler. * Reduced unnecessary ASTAT flag copies for recompiler and added more glue that will be needed for supporting saturating arithmetic. * Cleaned up fixed point COMP code for interpreter. -machine/microtch.cpp: Added the host interface microcontroller to make it easier to look at the program (disabled for now, will be emulated in the future). -video/vrender0.cpp: The inline qualifier implies internal linkage for free functions in C++ - there's no need for static.
* sidearms: correct z80 clock (guru readme and now jwestfall), remove old ↵ hap2026-01-241-1/+1
| | | | changelog and move guru readme to driver notes
* srcclean and minor manual cleanup. Vas Crabb2026-01-251-11/+11
|
* mcs51: clean up some single line comments hap2026-01-248-180/+179
|
* i8051: small cleanup to spacing hap2026-01-2411-206/+203
|
* i8051: some variables were missing savestates after OG's refactor [TheLostNinja] hap2026-01-241-0/+9
|
* mcs51: Add read/write slave address registers to 80c51 Olivier Galibert2025-11-192-0/+46
|
* [Access Virus] Analog input knobs for Virus A & B (#14461) Felipe Corrêa da Silva Sanches2025-11-032-1/+37
|
* mcs51: remove spurious port read messages Olivier Galibert2025-10-281-4/+4
|
* sab80c535: hook up the ports 4-5 Olivier Galibert2025-10-194-4/+131
|
* Fix include guards Olivier Galibert2025-10-172-4/+4
|
* mcs51: Modernization step 2 Olivier Galibert2025-10-1713-1185/+1331
|
* mcs51: Modernization step 1 Olivier Galibert2025-10-134-2567/+2627
|
* mcs51: start turning the internal maps into real maps Olivier Galibert2025-10-122-102/+85
|
* mcs51: Rename the external data bus from io to data Olivier Galibert2025-10-122-47/+52
|
* mcs51: fix destination RAM type in XCHD A, @R0/@R1 (#14289) Fabio D'Urso2025-10-081-1/+1
| | | | | - The initial value is read from internal RAM (IRAM_IR). - The final value must be written to the internal RAM too (IRAM_IW instead of IRAM_W).
* srcclean and manual cleanup Vas Crabb2025-01-261-6/+6
|
* mcs51: clean up source code spacing hap2025-01-222-559/+560
|
* misc: remove "all rights reserved" copyright comment, hap2025-01-224-181/+103
| | | | mcs51: remove old changelog from comments, remove copypasted comment block
* mcs51: remove unneeded powerdown check hap2025-01-221-4/+0
|
* mcs51: max opcode cycles is 4 hap2025-01-191-1/+1
|
* mcs51: improve execute_run icount timing hap2025-01-192-83/+51
|
* micro3d: correct mcu type, re-add underclock hack, it was still crashing, ↵ hap2025-01-181-5/+6
| | | | | | just not specifically at the last stage, mcs51: add some todo notes
* cpu/mcs51/mcs51.cpp: Implemented PES bit for DS5002FP. (#13224) cam9002025-01-192-4/+12
| | | PES bit is peripheral enable select on bytewide bus.
* mcs51: don't mask P3.1 at reset Patrick Mackinlay2025-01-141-1/+1
|
* mcs51: update savestates, hap2025-01-102-86/+100
| | | | micro3d: reverse throttle control
* mcs51: fix P3.1 output logic Patrick Mackinlay2025-01-102-7/+19
| | | | * mode 0 is still incorrect
* system1: clean up mcfg names, lower sound hw clocks for starjack and upndown hap2024-12-161-1/+1
|
* diexec: Add callback to allow debugger to break into the middle of wait-type ↵ AJR2024-11-171-0/+1
| | | | | | | | | | instructions whose execution time is normally indefinite. When this happens, a special message may be printed to the debug console stating the location of the last actual instruction executed before the wait (if there was one). Note that since the callback ignores the current value of the program counter, this special type of debugger break cannot be entered through breakpoints or instruction stepping commands. The callback also leaves no effect on PC history tracking or trace logs. * cpu/hd61700, cpu/tms32031: Add standard IRQ callback * cpu/m68000gen.py: Change name of invoked executable to bin/python3 * cpu/m6809: Eliminate PC "massaging" for SYNC and similar instructions
* Added ATTR_COLD to common lifecycle methods for many files in src/devices. ↵ holub2024-09-271-4/+4
| | | | (#12822)
* diexec: remove vestigal execute_input_lines() hap2024-09-181-1/+0
|
* util/ioprocs.cpp: Added wrappers for common patterns. (#11608) Vas Crabb2024-02-251-6/+14
| | | | | emu/diimage.h: Removed fread overloads that allocate memory for output. util/core_file.cpp: Changed output size of load to size_t.
* New machines marked as NOT_WORKING AJR2024-02-192-0/+22
| | | | | | ---------------------------------- Quasimidi Sirius [DBWBP] Quasimidi Rave-O-Lution 309 [DBWBP]
* mcs51: Correctly override some SFR names in dissassemblers AJR2024-02-141-10/+11
|
* mcs51: Add placeholder device types for P87C552 and P80C562, with custom SFR ↵ AJR2024-02-134-0/+189
| | | | definitions for their disassemblers
* emu/devcb.h: Eliminated the need to call resolve() on callbacks. (#11333) Vas Crabb2023-06-171-4/+1
| | | | | | | | | | | | Read callbacks now need a default return value supplied at construction. Replaced isnull() with isunset() which tells you if the callback wasn't configured rather than whether it isn't safe to call. Enabled validation of device callbacks (it seems it was disabled at some point, probably accidentally). Device callbacks and object finders now implement the same interface for resolution.
* mcs51: add rxb8 to uart reset hap2023-06-032-4/+5
|
* mcs51: implement serial input/output as bit stream (#11190) Patrick Mackinlay2023-05-083-122/+231
| | | * fix [MT#05495](https://mametesters.org/view.php?id=5495)
* Interrupt callback rationalization AJR2023-03-111-10/+15
| | | | | | | | | | | - Make CPUs pass interrupt return PC as a second argument to standard_irq_callback - Add interrupt return PC to "Stopped at interrupt" message produced by debugger 'gint' command - Add messages to trace logs whenever interrupts are accepted - Attempt to step over interrupt routines for applicable debugger commands - Eliminate standard_irq_callback_member wrapper method - Update many CPU cores to invoke standard_irq_callback at the start of or during interrupt processing, rather than at the end or when the input line changes - Remove IRQ callbacks for some input lines that never cause interrupts - mb88xx, mcs48: Add IRQ callbacks for internal interrupts
* cloned the mcs51 core as axc51, stripped it back, will allow monon work to ↵ David Haywood2022-07-285-1278/+1
| | | | | | | | | | | continue without making a mess of the original mcs51 core. (#10140) * cloned the mcs51 core as axc51, stripped it back, will allow monon work to continue without making a mess of the original mcs51 core. * remove some redundant bits * replace SFR table with AXC51 / AX208 one, removing some other functionality which is not the same on this series * remove some other bits that are redundant now we're not trying to support other mcs51 models in the axc core
* Monon / AX208 - load internal AX208 ROM in device [Peter Wilhelmson, David ↵ David Haywood2022-07-264-10/+78
| | | | Haywood] (#10131)
* i8xc51gb: Correct SFR address of ACON for disassembly AJR2022-06-151-1/+1
|
* src/devices/cpu: Remove #include "debugger.h" where no longer necessary AJR2022-04-062-3/+0
|
* Debugger feature improvements AJR2022-03-271-2/+13
| | | | | | | | - Add 'gbt' and 'gbf' debugger commands to step until a true or false conditional branch has been detected. - Update over 100 of the disassemblers in MAME to output a new STEP_COND flag for all conditional branches. Besides being used for execution of the new 'gbt' and 'gbf' commands, this flag also now helps the debugger 'out' command to properly handle conditional return instructions. - Remove STEP_OVER from many instructions that aren't actually subroutine calls (e.g. DJNZ on Z80). A 'gni' debugger command (go next instruction) has been added to accommodate some of the misuse. - Add instruction flag support to several more disassemblers that lacked them entirely (e.g. st62xx) - Don't pass over delay slots for debugging in ASAP core
* Use ioprocs classes instead of emu_file for device_nvram_interface's load ↵ AJR2022-02-272-9/+16
| | | | and save methods, and have these return false on I/O errors
* Remove fileio.h from emu.h AJR2022-02-111-1/+3
|