| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
analysis) (#6010)
* misc sunplus work (nw)
* unbreak a few things, remove some test code (nw)
* mask shift values, maybe correct based on code study (nw)
* refactor (nw)
* notes based on code study (nw)
* force a different codepath in wrlshunt, static screen, but differnet, no crash, need to see if it's valid (nw)
* test (nw)
|
|
|
|
| |
error, nw
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
suggested (nw)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* fix opcode (nw)
* (nw)
* allow wrlshunt to move forward (nw)
* more ops (nw)
* more ops (nw)
* (nw)
* more dma fixes (nw)
* (nw)
* (nw)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* unsp : goto MR
* not banked? (nw)
* dma tweaks (nw)
* (nw)
* prep (nw)
* prep (nw)
* prep (nw)
* prep (nw)
* preparation (nw)
* experimental (nw)
* testing (nw)
* cleaner implementation (nw)
* skip over EEPROM(?) check (nw)
* push forward (nw)
|
|
|
|
| |
states (nw)
|
| |
|
|\
| |
| | |
WIP Alfaskop S41 skeleton drivers
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* plusd working (rom patch)
* plusd done
* added disciple, not working
* disciple working
* wd_fdc fix
* final tidy-up
* ready for pr
* Pernod70 changes
* cuavas changes #1
* combine devices + files
* sort out side_effects
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
device, Add notes (#5929)
* mb8421.cpp : Support variable size and data width, Reduce duplicate, Add notes
twinkle.cpp, firebeat.cpp : Device-fied CY7C131 Dual port SRAM, Add notes
esqmr.cpp : Add IDT7130 Dual port SRAM placeholder, Add notes
* esqmr.cpp : Fix spacing
* mb8421.cpp : Fix data width behavior
* mb8421.cpp : Forgot this
* mb8421.cpp : Fix spacing
* mb8421.cpp : Use const in initializers, Fix class name related to support more similar DPRAMs in future
, Add notes, Remove internal helpers
* mb8421.cpp : Re-add masking
* mb8421.cpp : Fix notes
* mb8421.cpp : Fix manufacturer tags, Add notes
* mb8421.cpp : Fix ram size argument behavior, Add notes
* mb8421.cpp : Use template for base device, Fix build
* mb8421.cpp : Use template and static constexprs for RAM defines
* mb8421.cpp : Use extern template, Fix build, RAM size
|
|\
| |
| | |
ins8250: reverted BAUDOUT pin support and documented findings in eispc.cpp
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
state usage. [Ryan Holtz]
-sun4.cpp: Various changes: [Ryan Holtz]
* Split sun4 and sun4c hardware emulation into separate derived classes.
* Hooked up Sbus IRQs.
* Removed now-unnecessary duplicate MMU code.
-cgsix.cpp: Added VSync IRQ, cleaned up save state usage, and added THC MISC register. [Ryan Holtz]
-sparc.cpp: Renamed MB86901 to SPARCV7, and added a separate class for SPARCV8. [Ryan Holtz]
-bt45x.cpp: Made logmacro.h usage more consistent. [Ryan Holtz]
|
|/ |
|
| |
|
|
|
|
|
|
| |
- refactor error messages.
- Fix some drivers to cope with outputted added my the mame driver
for video and sound.
- Fix validation.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Removed DUMMY_INPUT. NC (not connected) pins should now use NC_PIN.
If a NC_PIN is actually connected, an error will be logged and
validation will fail.
- Enabled "extended" validation. This will catch now if power terminals
are not connected.
- Added const and noexcept where appropriate.
- Removed dead code.
- Fixed the 7414 Schmitt-Trigger device to use nld_power_pins
|
|
|
|
|
|
|
|
| |
* ins8250: improved support for BAUDOUT pin and added rclk_w to allow special receiver clock circuit required for descrete BRG of the epc driver
* epc: Added 8087 support
* epc: Added S21 jumper supporting secondary keyboard connector interface and completed the descrete BRG
|
|
|
|
|
|
|
| |
- Separate MM74C922 and MM74C923 device types
- Add line read handler for data available output
- Use array for read callbacks and provide more sensible default value than 0
- Eliminate read_x5 callback (no such line on either MM74C922 or MM74C923)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Devices ttlhigh and ttlhow are no longer automatically created.
- All logic input devices (e.g. TTL_INPUT, LOGIC_INPUT) now need to have
their power terminals (VCC, GND) connected. This opens the route
for more appropriate proxy devices but comes at a cost. If the
connections are omitted your circuit will not work as expected.
Example:
LOGIC_INPUT(I_SD0, 1, "AY8910PORT")
NET_C(VCC, I_SD0.VCC)
NET_C(GND, I_SD0.GND)
- Updated all netlists.
- Removed proxy information from terminal objects. This was replaced by
a lookup hash whose life-span does not exceed netlest setup.
These changes enable the removal of a number of hacks from the
source going forward.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
devices in machine config
bus/c64/rex_ep256.cpp: fixed array of EPROM slots not being populated (subdevices don't exist at construction time)
cleanup: (nw)
* having a macro for a device's expected tag in a header is bad - devices should not make assumptions about their tag or their location in the system hierarchy
* device types exist in the global namespace - you must not use overly generic names for them as this is likely to cause collisions
* device short names and titles each have their own namespace, but they're also global, and it should be possible to work out vaguely what a device is from its names
* POSIX reserves all names ending in "_t" at global scope - we want fewer of these causing potential future issues, not more
* if your device is in the global namespace, you should name it in a way that's not asking for name collisions to happen
* we have a simple convention for device class names - it doesn't hurt to follow it:
- concrete device_t implementations end with "_device"
- device_interface implementations end with "_interface" (and often start with "device_")
- abstract classes that derive from device_t end with "_device_base"
* if you want to give your slot card device classes short, generic names, put them in a namespace for the "bus"
* if you really want to use names ending with "_t", put them in a namespace or nest them inside a class
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* vii.cpp: tvgogo, return value written on a port so that it boots (nw)
also for spg2xx_io, add machine().describe_context() to more of the logging calls to make it more informative for debugging.
* workaround so poker boots without debugger trick (nw)
* uart read notes (nw)
* not ideal, but force poker UART reads for now (nw)
* improve input (nw)
* clickable artwork fixes (nw)
* comment (nw)
* srcclean (nw)
* tidy (nw)
|
|
|
|
|
|
| |
- move memory pool to netlist_state_t removing one static allocation.
- add memory allocation stats to verbose output
- nl_assert no longer throws, first step to remove NL_EXCEPT macro.
|
|
|
|
| |
clock divider for V40/V50
|
|
|
|
|
|
| |
v40, v50: Add timer 2 control input (nw)
ncr5380n: This error really needs to be non-fatal (nw)
|
|
|
|
|
|
|
| |
- Eliminate all global-level static variables and functions in thomflop.cpp
- Simplify read/write handlers for floppy interfaces
mc6843: Simplify read/write handlers (nw)
|
|
|
|
|
|
|
|
| |
"information" overrides. This also covers several time-related functions in attotime, running_machine and emu_timer. (nw)
m6805: Calculate min_cycles and max_cycles once at device_start time (Nw)
attotime: Add as_khz and as_mhz (nw)
|
|
|
|
| |
starting with diimage. also fix a slight bug in the interface matching function for software list parts. (nw)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Senario Poker SunPlus (not working) (#5874)
* elan sound stuff (nw)
* move more audio bits into audio file (nw)
* new NOT WORKING machines
-----
Texas Hold'em TV Poker - 6 Player Edition (UK) [David Haywood, Morten Kirkegaard, Peter Wilhelmsen]
need to emulate the controllers etc. (currently requires debug hack to boot past initial logo)
* start moving some more elan stuff around (nw)
|
| |
|
| |
|
|
|
|
|
|
| |
* mm5740 X pins are numbered starting from 1, also fix typo in pinout comment (Y10, not Y0)
* make more members protected/private as appropriate
* got rid of one more video start override in a clean way
|
|
|
|
|
|
| |
- Get rid of the hardcoded FLOPPY_n tags as much as practical, mostly adding device finder arrays in their place
- Move remaining functions using FLOPPY_n down into appldriv and sonydriv (both of which may be eliminated once FDC emulation is modernized)
- Replace CLEAR_LINE and ASSERT_LINE with 0 and 1 (these were being inaccurately used to represent active-low control line states)
|
|
|
|
| |
Still not optimal, but better than what we had previously. No exception
logging comes closer.
|
|
|
|
|
|
| |
Both compiling the core and the shaders with __float128 now work.
The support was added to be ready to deal with academic edge cases.
Performance drops to 10% of double - thus disabled by default.
|
|
|
|
| |
- fixed a bug in the parray constructor
- replaced NL_NOEXCEPT with noexcept where appropriate
|
|
|
|
| |
This is intended to facilitate future planned changes to CPU input lines.
|
|
|
|
|
|
|
|
|
|
|
| |
Added ability to compile using float instead of double. Specifically the
the solver as well as the infrastructure now can have their own floating
point type. Currently this is only an academic exercise since
numerically demanding circuits like kidniki only work with double/double
support. Using float here is pushing numerical stability over the
limits.
The long term design goal is too have the matrix type (double/float)
being a parameter.
|
|
|
|
|
|
|
| |
- solver: align matrix population along the various solvers
- solver: delete dead code
- renamed nl_double to nl_fptype and use nl_fptype where previously
double has been used.
- renamed param_double_t to param_fp_t
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Changed emu_fatalerror to use util::string_format semantics
* Fixed some incorrectly marked up stuff in build scripts
* Make internal layout compression type a scoped enum (only zlib is supported still, but at least the values aren't magic numbers now)
* Fixed memory leaks in Xbox USB
* There can only be one "perfect quantum" device - enforce that only the root machine can set it, as allowing subdevices to will cause weird issues with slot cards overiding it
* Allow multiple devices to set maximum quantum and use the most restrictive one (it's maximum quantum, it would be minimum interleave)
* Got rid of device_slot_card_interface as it wasn't providing value
* Added a helper template to reduce certain kinds of boilerplate in slots/buses
* Cleaned up some particularly bad slot code (plenty more of that to do), and made some slots more idiomatic
|
| |
|
|
|
|
| |
Simplification, remove some trampolines.
|
| |
|