N.B. Many of these ROMs are really accessed as bytes or 16-bit words rather than at the native 32-bit or 64-bit widths, thanks to unemulated dynamic bus sizing and/or bridge controllers.
* New working software list additions
-----------------------------------
apple2_flop_orig: Checker King, Gammon Gambler [4am, Firehawke]
* New working software list additions
-----------------------------------
apple2_flop_orig: Bloody Murder, The Best of MUSE, Beneath The Pyramids, Asteroid, Roadwar 2000 (Version 1.1) [4am, Firehawke]
apple2_flop_clcracked: MECC-A315 Freedom! (Version 1.0) (cleanly cracked), Labyrinth: The Computer Game (Lucasfilm Games) (cleanly cracked), Labyrinth of Crete (cleanly cracked), Fractions: Addition (cleanly cracked), The Tournament Manager (cleanly cracked), Questron (cleanly cracked),The Adventures of Kristen and Her Family (cleanly cracked) [4am, Firehawke]
apple2_flop_clcracked: The Cosmic Balance (cleanly cracked) [4am, san, Firehawke]
* Additional metadata and formatting fixes. (nw)
* Make input mapping menus more efficient - most of the properties of a field won't change
* Get rid of the pool allocator in base menu class - it was encouraging bad design
* Cleaned up memory management in some more menus
* Don't walk the directory every time the crosshair menu is refreshed
* Sort crosshair pictures
* Show a selector menu when crosshair picture item is selected
* Made DIP switch display scale with UI font and improved layout
* Improved analog control display giving an indication of neutral position
* Fixed menu heading sizes not being recalculated after font is changed
- 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
- BBR and BBS use one or two extra cycles when the branch is taken, like other conditional branches
- TRB and TSB perform an extra read of the operand instead of an extra write
new WORKING machines
--------------------
Pinball (P8002, ABL TV Game) [David Haywood, Morten Kirkegaard, Peter Wilhelmsen]
* divided up large nes_vt.cpp class, and did some general tidy up, commented some known addresses etc. to stop code rot.
* temporarily disabled timer on elan when running rad_bb3 until timer enable can be identified, made a few notes.
* 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.
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