* create derived 6502 type for XaviX because it has at least one custom 4-byte opcode that doesn't fit any other type.
treating that opcode as NOP for now.
have a feeling it might be something to do with the other integrated hardware, might be 'execute co-processor code chain at this address' or something similar
It isn't a standard JSL (Jump Subroutine Long) like the SNES cpu opcode in the same place as this, it seems to point at some code-like structures tho)
could also be a secondary operation mode with different encoding like ARM's Thumb mode tho I guess.
We currently only have a single XaviX based dump (taitons1) but there are more on the way. I'm going to see if the code flow makes any sense at all with these missing, or if any of it gives a clue as to what they should actually do.
* xavix - let's call these callf and retf then
after further investigation these are some kind of extra 'long jump' subroutine / task handlers, the 0x80 also being a custom opcode was throwing me off trying to identify them before.
looks like they might have been hacking 65816 features into the regular 6502 core?
* prepare for extra address bits (nw)
* better program flow (nw)
- P.R.E.S. Advanced Plus 3/4
- Advanced Quarter Meg Ram
- Cumana Floppy Disk System
- Sound Expansion
- Sound Expansion v3
- Stop Press 64
- Solidisk EFS
New working software list additions
-----------------------------------
electron_cart: Solidisk EFS 2.1E
New NOT_WORKING software list additions
---------------------------------------
electron_cart: Stop Press 64
Software list items promoted to working
---------------------------------------
electron_cart: Advanced Plus 3, Advanced Quarter Meg RAM, Slogger Electron Disk System, Sound Expansion v3
* fix/tidy tvboy driver (nw)
* missed file (nw)
* framework for adding 'gamebooster' (need to figure out how it actually works / maps tho) (nw)
(code based on zx spectrum expansion port code)
* (nw)
* lost a line (nw)
* allow it to run (nw)
* continued work (nw)
* mame64 psj -parallel gamebooster -cart tetris now works
* rm outdated (nw)
* remove unneeded code (nw)
* limit accesses, log unexpected ones, might have custom banking (nw)
* write bytes in an order that keeps the gb code happier , sml boots (nw)
* various reorganization of radica and vtech stuff
* missed this (nw)
* correct file (nw)
* newlines and stuff (nw)
* less c_str (nw)
* worse (IMHO) filenames (nw)
* format got messed up (nw)
* some bits for golden tee (nw)
* get us renderng something in rad_gtg (nw)
* some basic inputs (nw)
* further improvements to the Golden Tee Home Edition (radica eu3a14)
added Radica Sensible Soccer [Sean Riddle]
* tilebase handling (nw)
* golden tee home video improvements (nw)
Revert "Removal of voltage_regulator_device (nw)"
This reverts commit 1af133752a.
Revert "New way to provide DAC reference inputs (nw)"
This reverts commit 1c6a7ab40c.
* restored basic support for SANITIZE make option
* disabled some unwanted UBSAN checks / enabled nullability checks / enabled ASAN use-after-scope checks (nw)
* new NOT WORKING
Space Invaders (Radica, Arcade Legends TV Game) [Team Europe, Sean Riddle]
(not sure what this is really called, it's a 5-in-1, it probably contains a customized 6502 core, or there should be an internal bootstrap rom)
* typo (nw)
* based on a jump to e092 which looks like it should maybe skip an opcode this seems a more possible mapping (nw)
* actually vectors are right there (nw)
* memory map improvements (nw)
* various notes etc. (nw)
* various banking bits (nw)
* actually remember to hook up the read (nw)
* clearly inputs (nw)
* show that the game is actually running, even if we don't understand the video format, there's clearly some kind of tilemap structure in ram (nw)
* this is bitmap ram on qix (nw)
* didn't mean to change this (nw)
* gfx are stored more like texture pages?! (nw)
please people, remember to keep source UTF-8 and if you're committing on behalf of others, clean up indents to meet MAME conventions
anyone can run srcclean over a submission and see what will get hit
promoted China set of Oriental Legend 2 to working
promoted Knights of Valour 2 New Legend to working
as each game/region requires a valid default card in order to save said cards are part of romset.
(there's probably a cleaner way to do the device finder stuff but I forgot and can't find reference)
An implementation of the National Semiconductor DP8510 BITBLT Processing Unit. This is used on the InterPro GT family graphics boards, and this implementation seems to be correct enough to enable me to progress there, hence the PR. While I'd love to have another system to test against, I'm not aware of any other systems that ever used this device other than some NatSemi reference designs, which are not (yet) in MAME.
* hp9845 & hp64k: fixed breakage caused by c46e1007a8
* hp9845: HLE of internal printer added
* hp9845: fix to printer interrupt line
* hp9845: moved src/devices/machine/hp9845_printer.* to src/mame/machine
Disassemblers are now independant classes. Not only the code is
cleaner, but unidasm has access to all the cpu cores again. The
interface to the disassembly method has changed from byte buffers to
objects that give a result to read methods. This also adds support
for lfsr and/or paged PCs.
Implementation of 28F010 and family flash memory devices. These are not compatible with the JEDEC-standard flash command protocol implemented in intelfsh.
* Don't use device_serial_interface for transmit - it can't support sync modes, on-the-fly register updates, and other weirdness.
* Better modelling of 1-deep transmit queue.
* Better RTS/CTS behaviour.
* Completely overhauled interrupt logic - vectors should be correct for most async modes.
* Implemented different auto-reset receive errors in MPSC vs SIO.
* Implemented SDLC transmission including bit stuffing, transmit CRC, abort, and underrun/end-of-message behaviour.
Added an SDLC consumer device that logs SNA frame headers and data.
The analogue joystick is now emulated. Also fixed a few minor issues
with the memory map.
This also adds a generic Z80 dasisy chain device, for use in drivers
with non-Z80 peripherals.
Use "mame einstein -pipe tk02" to attach the 80 column device.
* Removed no longer needed einstei2 driver
* Added cursor rendering to the 80 column device
* Added support for the alternate character set (use dip switch to
change)
* Cleaned up and added save state support to the 80 column device
Many changes in this PR, including the following:
* added support for InterPro 20x0, 24x0 and 27x0 systems
* added support for SR bus/slot devices
* added support for Ethernet, graphics, keyboard and mouse
* added support for serial DMA
* improved timer, interrupt and DMA handling
* improved comments/documentation
Note: ioga is still a major work in progress, and most of the other *ga's don't do anything useful yet, however this build can do some new and useful things, and it's closer to OS boot than before, as well as cleaned up in some of the better known areas.
* added basic support for the system bus variously referred to as SR, SR bus, SRX and CBUS
* added an initial GT graphics card implementation, only supports the video ram and ramdac for now, but sufficient to boot the diagnostic monitor in graphics mode
* added a high-level emulation of the InterPro keyboard
protection handled etc. written from scratch based on notes from Kevtris and Peter
banking in the slot system seems somewhat archaic compared to proper modern banking, but this is how all other drivers I saw using slot roms did it.
---------------------
E-Touch Mahjong Series #6: Scandal Blue - Midara na Daishou [ShouTime, Team Japump, The Dumping Union]
E-Touch Mahjong Series #7: Trap Zone - Yokubou no Kaisoku Densha [ShouTime, Team Japump, The Dumping Union]
--------------------------------------
Ton Puu Mahjong [ShouTime, The Dumping Union]
This is only a skeleton driver. ShouTime will keep the PCB only for a few more days, so if someone has the time to have a look.. (nw)
* Remove duplicate code
* Screen raw parameters and XTAL values
* Added PAL dumps for supbtime [Luiskiko/jammarcade.net]
* Add dip switch locations to all games
* Emulate LC7535 based volume control for Dragon Gun board based games
* Add DSW3 and DIP locations to Captain Avenger
* Reorganize driver and start cleaning it up (in progress)
Specifically, this creates a call osd_get_command_line() that returns UTF-8 command line arguments as std::vector<std::string>. On non-Windows platforms, this does nothing more than build the vector. On Windows, this invokes GetCommandLineW() and CommandLineToArgvW(). This also attempts to unwind usage of wmain()/_tmain() on Windows, which is not standard.
Related to this, this fixes a bug in Imgtool; specifically, non-7 bit ASCII was not being handled correctly in Windows.
This is really an admission that the way that Windows handles Unicode and command line arguments sucks, and it is my belief that having a wmain() or _tmain() declaration specific for Windows is a worse solution. C'est la vie.
I'm very open to the idea that src/osd/osdcore.[cpp|h] is not the best place to do this. Let me know if I should move it.
------------------------------------------------------
Mephisto Modena [yoyo_chessboard, Sandro Ronco]
Mephisto Monte Carlo [Sandro Ronco]
Mephisto Monte Carlo IV LE [Sandro Ronco]
Mephisto Mega IV [Sandro Ronco]
Used by games in the cninja and deco32 drivers. This implies proper
VBlank IRQ ack for all games now. Also added and improved raw screen
parameters for various games.