Commit Graph

345 Commits

Author SHA1 Message Date
Vas Crabb
b4e1f5f1b5 Only link asmjit if native DRCs are built. 2025-05-01 23:31:40 +10:00
holub
75d9b59cb8
cpu/z80: Corrected name of generated nsc800 source file, removed duplicate sources from build script. (#13622) 2025-04-26 03:16:26 +10:00
Vas Crabb
8c28d3ff7e Cleaned up build scripts and compiling documentation:
* Made it a bit easier to cross-compile for x86-64 or i686 on an AArch64
  Windows system.
* Choose the default native recompiler back-end based on predefined
  macros rather than requiring the build scripts to set it.
* Don't require every target without a native recompiler to declare
  this.
* Got rid of the code that was supposed to set -m32 or -m64 when
  building GENie (it didn't work - it tried to use ARCHITECTURE before
  setting it).
* Avoid relying on the unreliable PROCESSOR_ARCHITECTURE environment
  variable.
* Got rid of stuff for versions of Xcode that are definitely no longer
  supported.
* Got rid of workarounds for very old Linux distros.
* Use newer makefile syntax for if/else/if structures, comment some else
  and endif statements for clarity.
2025-04-20 02:36:58 +10:00
holub
6e595d751f
z80/z80make.py: Revisited z80 code generator (#13573)
* z80/z80make.py: Revisited z80 code generator
* cpu/z80/t6a84.cpp: isolate device specific callbacks
2025-04-10 13:19:01 +02:00
AJR
e95cdde8e9 unidasm: Add Panasonic MN10300 disassembler 2025-03-22 19:28:42 -04:00
AJR
2f4ca0631f scripts/src/cpu.lua: Update comment 2025-03-09 15:46:50 -04:00
AJR
b8de24c775 New machines marked as NOT_WORKING
----------------------------------
MicroVAX I [microvax2.org]
MicroVAX II [microvax2.org]
MicroVAX 3400 [microvax2.org]
MicroVAX 3500 [microvax2.org]
2025-03-09 14:51:01 -04:00
AJR
fb6b48711a Add disassembler for CDC 160(-A) architecture 2025-03-07 19:36:38 -05:00
Felipe Corrêa da Silva Sanches
2905f85348
cpu/tlcs900: Added the TMP94C241 variant (used by the Technics SX-KN5000). (#13220)
matsushita/kn5000.cpp: Use TMP94C241 CPU, hooked up I/O to onboard CPU peripherals.
2025-02-18 06:06:48 +11:00
arbee
f2ba762e0a apple/macpwrbk030.cpp: Moved macpd210 out to new driver for MSC-based portables. [R. Belmont]
apple/gsc.cpp: Split Apple Gray Scale Controller (remarked C&T 65210) to its own device. [R. Belmont]

apple/csc.cpp: Initial Apple Color Screen Controller (remarked C&T 65220) support. [R. Belmont]

apple/msc.cpp: Initial Apple Main System Controller and MSC II support. [R. Belmont]

m6805/m68hc05pge.cpp: Initial support for the Apple/Motorola "PG&E" microcontroller. [R. Belmont]

apple/macpwrbkmsc.cpp: New driver for MSC and MSC II-based Mac PowerBooks and PowerBook Duos. [R. Belmont]

Systems promoted to working
---------------------------
Apple Macintosh PowerBook Duo 210 [R. Belmont]

New working systems
-------------------
Apple Macintosh PowerBook Duo 270c [R. Belmont]
Apple Macintosh PowerBook Duo 280 [R. Belmont]

New working clones
------------------
Apple Macintosh PowerBook Duo 230 [R. Belmont]
Apple Macintosh PowerBook Duo 250 [R. Belmont]
Apple Macintosh PowerBook Duo 280c [R. Belmont]
2025-02-10 22:46:29 -05:00
Vas Crabb
26d8e47c00 DRC cleanup and minor optimisation: [Windy Fairy, Vas Crabb]
* Build all native back-ends if any native back-end is enabled so errors
  caused by changing interfaces can be found faster.
* cpu/drcbeut.cpp: Moved resolved member function stuff to a place where
  it can be shared by back-ends.
* cpu/drcbearm64.cpp: Use ubfx instruction to extract unordered flag.
* cpu/drcbearm64.cpp, cpu/drcbex64.cpp: Bypass trampolines when calling
  get map variable value and debugger instruction hook functions.
* cpu/drcbearm64.cpp: Moved some internal helpers that don't need to be
  members to anonymous namespace.
* cpu/drcbearm64.cpp: Added a comment with some info to help when
  debugging generated code.
* cpu/drcbec.cpp: Put code in the drc namespace.
2025-01-16 06:30:13 +11:00
987123879113
aa5cd150b3
cpu/drcbearm64.cpp: Added a 64-bit ARMv8 (AArch64) DRC back-end. (#13162)
* cpu/uml.cpp: Removed unused vector type.
* 3rdparty/asmjit: Update asmjit to latest upstream.
* cpu/drcbex64.cpp: Fixed crash with LOG_HASHJMPS enabled (stack needs to be 16-byte aligned before calling debug_log_hashjmp_fail).
2025-01-14 02:44:16 +11:00
wilbertpol
926b6182b1
Replace uPD1771c high level emulation with a cpu core. (#13106)
* cpu/upd177x/upd177x.cpp: Add NEC uPD177x cpu core.

* scv.xml: Promoted 1 item.

Software list items promoted to working
------------------------------------------
Star Speeder

* cpu/upd177x/upd177x.cpp: Remove a comment.

* cpu/upd177x/upd177x.cpp: Remove callback on PA.

* cpu/upd177x/upd177x.cpp: Update comment about setting m_pc to 1 during reset.

* Add a different workaround for the sync issue between the 2 cpus in scv.

* cpu/upd1771x/updf177x.cpp: Use little endian.

* cpu/upd177x/upd177x.cpp: Include device tag in fatalerror messages.

* epoch/scv.cpp: Update upd1771c rom region sizes.

* nec/apc.cpp: Switch to upd177x_cpu_device.

* epoch/scv.cpp: Add location to upd1771c rom name.

* cpu/upd177x/upd177x.h: Remove 'overrides' comments.
2024-12-27 21:58:48 -05:00
holub
07cc2cf76a
cpu/mpk1839/kl1839vm1.cpp: Improved VAX-11 code decoder in user space (#13107) 2024-12-27 21:56:18 -05:00
hap
af66ca419b m6502: rename m65c02 to w65c02 as well 2024-12-14 15:23:45 +01:00
hap
ef8fcfeb11 m6502: rename m65sc02.* to g65sc02.* 2024-12-14 15:23:45 +01:00
AJR
7a5fcb5ac9 cpu/m6805: Split off HD6305/63705 emulation to a separate source file 2024-12-01 12:16:47 -05:00
mamehaze
521af022e3
new machines marked as NOT WORKING - Cassette Vision (#11927)
* abandoned cassette vison work

* remove comment now that the useful table is gone

* force github to rebuild because github is being github

* add a note based on earlier research

* bring this part over from the previous tree too, it seems worth having still

* actually use this version instead, I thought it was broken, but it actually has advantages

* I've been informed this will be merged if I assign a copyright holder, so as I don't really recognize it as my own design anymore, I'm assigning Vas.

* Update cpu.lua

* Start cleaning up:

* cassvisn_cart.xml: Fixed program region width.
* cassvisn_cart.xml: Added Japanese titles and proper markup for release
  dates.
* epoch/cassvisn.cpp: Removed unnecessary byte swapping when loading
  software list items.
* cpu/upd777.cpp: Made order of declarations and definitions more
  consistent with each other, added more inline and const hints.

* tools/unidasm.cpp: Make data source big Endian to match CPU core.

* epoch/cassvisn.cpp: Digit grouping for big numbers, better error messages.

---------

Co-authored-by: David Haywood <hazemamewip@hotmail.com>
Co-authored-by: Vas Crabb <vas@vastheman.com>
2024-11-26 00:42:46 +01:00
hap
b632097b1a s2650: move s2650cpu.h contents to s2650.cpp 2024-11-24 15:10:19 +01:00
qufb
6908e70132
sega/sega_ferie.cpp: Add new not working systems (#11862)
New systems added as NOT WORKING
---------------------------------------
Ferie Kitten (1994, Sega)
Ferie Puppy (1995, Sega)
Ferie World Travel (1995, Sega)
2024-11-16 13:52:41 -05:00
smf-
58c2dae999 Added C77, custom H8 for Namco. 2024-10-25 15:16:47 +01:00
smf-
beb51eaa93 f2mc16: Created devices for the onboard analogue to digital converter, clock generator, interrupt controller/Extended intelligent I/O service, I/O port, Programmable Pulse Generator, reload timer and UART.
CPU core exposes the RMW line for onboard devices.
Log messages will contain the address of the start of the instruction, rather than the next byte the CPU is about to fetch.
Added INT9/INT addr16 & INT addr24 software interrupt instructions.
Fixed INCW @RWx & DECW @RWx instruction length
Added missing fetch of immediate value in MOV @RWx + RW7, #imm8.
Rewrote Tomy Prin-C keyboard handling and pen to use new onboard devices, substantially increasing the reload timer 0 frequency as it's now correctly waiting for 0x7530 underflows with reload = 0x37f at startup.
2024-10-25 15:16:46 +01:00
holub
d8761b090c
ussr/pk32.cpp: Electronika PK-32 - not working (#12732)
mpl1839/kl1839vm1.cpp: MPL's l1839vm1 cpu device
2024-09-19 21:23:11 -04:00
hap
dbd8fd2b2c hmcs400: add cpu skeleton device 2024-09-16 22:04:32 +02:00
hap
e27a557f88 fix z80(nsc800) compile, hopefully 2024-08-31 20:06:25 +02:00
hap
0fb6939425 nsc800: move device to its own file 2024-08-31 13:41:33 +02:00
mamehaze
a1b2974ec9
cpu/xa: CPU core work for fearless/superkds - adds sound, promotes to working (#12617)
* This adds basic execution to XA core. It emulates enough of the XA to give fearless and superkds working sound.
* only the exact forms of the opcodes used so far have been implemented
* no optimizations have been done, use of const, inline use, templates etc. are planned for a future update; code is still primed for debugging and development
* overall structure, code style are not 100% final (see above) and will be adjusted as the CPU is better understood
* peripherals, interrupts etc. are not yet fully implemented, nor is anything outside of the page zero mode used here due to lack of test cases

Machines Promoted to WORKING
----------------------------------
Super Kids (S019CN) [David Haywood, XingXing]
Fearless Pinocchio (V101US) [David Haywood, XingXing, Peter Wilhelmsen, rtw]

---------
Co-authored-by: David Haywood <hazemamewip@hotmail.com>
2024-07-26 08:09:30 -04:00
wilbertpol
2c479b20dd
cpu/z80/r800.cpp: (#12530)
- Removed undocumented Z80 instructions that are not supported by the R800
- Updated basic instruction timing
- Implement MULUB and MULUW
  Other R800 features are not implemented
2024-07-10 19:34:51 -04:00
mamehaze
9d66f71e34
cpu/xa: New Philips XA disassembler (#12504)
* show size types on these for consistency with IDA output (manual indicates they're usually optional, but does show this syntax in places)
* use the real CPU type (with internal map for internal ROM space) rather than 'XA' directly.

---------
Co-authored-by: David Haywood <hazemamewip@hotmail.com>
2024-06-29 09:59:13 -04:00
AJR
c6a47e34df Create stub MSM66573 device so Challenge Gear driver can have a CPU type 2024-06-19 13:08:17 -04:00
AJR
a0a91f43cc unidasm: Add disassembler for Oki nX-8/500S architecture 2024-06-19 09:34:50 -04:00
arbee
90984dd2b8 cpu/m6805: Added new devices for 68HC05E1 and 68HC05E4. [R. Belmont]
apple/cuda.cpp: Refactored using 68HC05E1 and 68HC05E4 devices as a base. [R. Belmont]

apple/egret.cpp: Refactored using 68HC05E1 device as a base. [R. Belmont]

apple/macquadra630.cpp: Switched to the correct Cuda 2.40, which no longer crashes during boot with the refactored devices. [R. Belmont]
2024-06-15 19:53:18 -04:00
holub
8e82c9f767
New WORKING - sinclair/specnext.cpp: ZX Spectrum Next (known as tbblue) (#11918)
New Working Machines
-----------------------
ZX Spectrum Next: TBBlue [holub]
2024-06-12 22:12:26 +02:00
holub
ccad8c4c2f
cpu/z80/z80.cpp Update core generator to support r800 [holub, Wilbert Pol] (#12445) 2024-06-05 22:03:05 +02:00
holub
0c42667cf0
cpu/z80/z80.cpp new generatable core (#12423) 2024-06-03 13:22:32 +02:00
grullosgo
1efb9a831c
Add cpu device PIC16x8x - Add PIC16F84 to magicle into misc/magicard.cpp (#12092) 2024-06-03 13:21:59 +02:00
arbee
f9ef8589ef sega/segaybd.cpp: Switch Sega Y-Board games back to Musashi (MT08783). [R. Belmont]
cpu/m68000: added option to use Musashi for M68000 emulation. [R. Belmont]
2024-05-12 14:15:45 -04:00
mamehaze
37c3bbb02d
add MIPS-X CPU and Tomy Kiss-Site system (#12331)
* cpu/mipsx: add MIPS-X CPU stub device and disassembler [David Haywood]

New systems marked not working
------------------------------
Tomy Kiss-Site [TeamEurope]

New software list items marked not working
------------------------------------------
kisssite_cd.xml
Anime Karaoke Series - Pocket Monsters 1 (Japan) [redump.org]
Dance Karaoke Series 01 - Mickey Mouse March - Eurobeat Version and White Love (Japan) [redump.org]
Dance Karaoke Series 02 - LOVE Machine and Goldfinger '99 (Japan) [redump.org]
Dance Karaoke Series 03 - Happy Summer Wedding and Nanda Kanda (Japan) [redump.org]
Dance Karaoke Series 04 - Koi no Dance Site and Night of Fire (Japan) [redump.org]
Dance Karaoke Series 05 - Fly High - Euro-Power Mix and Respect the Power of Love (Japan) [redump.org]
Dance Karaoke Series 06 - Chokotto Love and My Graduation (Japan) [redump.org]
Dance Karaoke Series 07 - Daite Hold on Me! and Try Me - Watashi o Shinjite (Japan) [redump.org]
Dance Karaoke Series 08 - Akai Nikkichou and Time After Time (Japan) [redump.org]
Dance Karaoke Series 09 - Kiiroi Osora de Boom Boom Boom and Don't Wanna Cry (Japan) [redump.org]
Dance Karaoke Series 10 - Manatsu no Kousen and A Walk in the Park (Japan) [redump.org]
Dance Karaoke Series 11 - Com'on! Be My Girl! and Crazy Beat Goes On! (Japan) [redump.org]
Dance Karaoke Series 12 - Kore ga Watashi no Ikiru Michi and Ai no Shirushi (Japan) [redump.org]
Dance Karaoke Series 13 - UFO and Southpaw (Japan) [redump.org]
Dance Karaoke Series 14 - Body and Soul and Long Way Home (Japan) [redump.org]
Dance Karaoke Series 15 - Steady and Alive (Japan) [redump.org]
Dance Karaoke Series 16 - Wake Me Up! and Timing (Japan) [redump.org]
Dance Karaoke Series 17 - Red Beat of My Life and Bright Daylight (Japan) [redump.org]
Dance Karaoke Series 18 - Nakatta Koto ni Shite and Otome Pasta ni Kandou (Japan) [redump.org]
Dance Karaoke Series 19 - Ride on Time and Give Me a Shake (Japan) [redump.org]
Dance Karaoke Series 20 - Love 2000 and Seishun Jidai 1.2.3! (Japan) [redump.org]
Dance Karaoke Series 21 - I Wish and Luv Is Magic (Japan) [redump.org]
Dance Karaoke Series 22 - Barashoku no Hibi and Ginga no Chikai (Japan) [redump.org]
Dance Karaoke Series 23 - Please Smile Again and Treasure (Japan) [redump.org]
Dance Karaoke Series 24 - Koi wa Thrill, Shock, Suspense and Love is Energy! (Japan) [redump.org]
Dance Karaoke Series 25 - Renai Revolution 21 and S.O.S (Japan) [redump.org]
Dance Karaoke Series - Best Selection (Japan) [redump.org]
Movie Karaoke Series - Best Selection - Ballade 1 (Japan) [redump.org]
Oha Star Series 01 - Zonapara (Japan) [redump.org]
Oha Star Series 02 - Oha Ska! (Japan) [redump.org]
2024-05-08 10:24:43 +07:00
Olivier Galibert
055b4c669c sh7042: Add dmac, mtu, adc, intc, sci, bsc. Separate A and non-A
psr540: Add the swx00

New machines marked as MACHINE_NOT_WORKING
------------------------------------------
Yamaha MU500 [Matt, O. Galibert]
Yamaha MU1000 [Matt, O. Galibert]
Yamaha MU2000 [Matt, O. Galibert]
2024-05-02 19:50:14 +02:00
Patrick Mackinlay
b19122db32 palm: new cpu device and disassembler 2024-03-27 15:21:12 +07:00
Olivier Galibert
7fe04d0f8e Start adding the m37640 2024-03-18 22:46:54 +01:00
wilbertpol
8dbb5b3da2
cpu/z80/r800dasm.cpp: Add disassembler for ASCII R800. (#12116) 2024-03-10 20:59:57 -04:00
Vas Crabb
2d6233b8f0 cpu/g65816: Don't expose a pile of macros to downstream users. 2024-03-08 03:35:09 +11:00
hap
9d332ed7be h8: add h8s/2319 family, make 2320 (now renamed to 2329) a subdevice,
h8_watchdog: apparently fix funcube watchdog reset issue,
mentor16: add lcd vertical layout to artwork
2024-03-04 16:56:23 +01:00
Olivier Galibert
1dae50467e Enhance the sh704x. MU128 MSTO, needs interrupts now. 2024-03-03 20:13:26 +01:00
hap
8528c4c14b h8: add basic support for h8/3217,
h8_watchdog: clock divider table was the wrong way around
2024-02-25 21:04:41 +01:00
Olivier Galibert
2785a4df9e New machines marked as MACHINE_NOT_WORKING
------------------------------------------
Yamaha MU128 [Matt, O. Galibert]
2024-02-18 15:50:41 +01:00
Patrick Mackinlay
3b8ad86c87 ns32k: housekeeping 2024-02-11 16:09:05 +07:00
Olivier Galibert
d7e9314388 mu5/15: split the lcd
sh7042: Start fleshing it up
swx00: Same
mu15: Added
swp30: readd the scount increment
2024-02-10 18:52:45 +01:00
hap
c144c79ee3 h8: add preliminary h8/325
New systems marked not working
------------------------------
Kasparov Prisma [hap, Sean Riddle]
2024-02-06 18:08:45 +01:00