summaryrefslogtreecommitdiffstatshomepage
path: root/scripts/src/cpu.lua
Commit message (Collapse)AuthorAgeFilesLines
* dsp563xx: Implement enough to make the dsp56311 reach the first stage ↵ Olivier Galibert2025-10-311-0/+2
| | | | bootloader at 0x100 in the virus b.
* dsp563xx: First stab at the interpreter infrastructure Olivier Galibert2025-10-281-0/+2
|
* new cpu core (start of disassembler): dsp563xx Olivier Galibert2025-10-261-0/+26
|
* evo_cpu -> sonix16: Identify manufacturer of processor used in evolhh (and ↵ AJR2025-10-241-8/+8
| | | | other systems) and greatly improve its disassembler
* mcs51: Modernization step 2 Olivier Galibert2025-10-171-3/+13
|
* mcs51: Modernization step 1 Olivier Galibert2025-10-131-1/+1
|
* swp30: Overhaul Olivier Galibert2025-09-271-5/+0
|
* various VT3xx (mostly VT369) work + some other VT refactoring, many sets now ↵ mamehaze2025-05-231-0/+25
| | | | | | | | | | | | | | | | | | | | | | boot + games selectable (#13727) - added a derived 6502 core for the VT3xx Sound CPU (built into the SoC), it has some customized opcodes - added enough emulation of the Sound CPU to get denv150 to pass initial checks - added internal SoC ROM to a number of sets that copy the sound program from it, allowing those to pass startup checks too - added preliminary support for some of the extra VT3xx background video features, note even the way the hardware implements these is ugly, they really are hacked on top of the standard NES modes - added preliminary support for extra VT3xx sprite modes - the above also allow various Lexibook sets to show boot screens eg. lxcmcysw, lxcmcyfz, lxcmcydp, lxcmcysp, lxcmcycr, lxcmcypj, lxcmcyba, lxcmcypp - paired some scrambling/encryption to specific SoC classes, as it's likely these represent slightly customized models, added modes for nubsupmf, red5mam, dgun2593, gcs2mgp, 240in1ar which also now show something - started looking at the new DMA modes needed by 240in1ar etc. - denv150 basically now works, but leaving it marked as NOT WORKING until the rest of the sound CPU logic is hooked up - flagged a few sets as potentially bad dumps - verified / corrected metadata for a number of sets now that they boot and can be better identified - identified some cases where there seem to be additional protection devices present, supplying either code or data - replaced vt1682 ALU in vt3xx emulation with its own implementation as it isn't the same - added relative offset support (a kind of banking internal to the VT3xx) allowing the majority of games in the multi-game menus to go ingame - added external banking support to a number of the larger games (anything larger than 32Mbytes has to be externally banked) - corrected ROM loading for a number of sets - fixed additional opcodes on sound CPU, and added the remaining peripherals - misc other VT related tweaks
* Only link asmjit if native DRCs are built. Vas Crabb2025-05-011-12/+13
|
* cpu/z80: Corrected name of generated nsc800 source file, removed duplicate ↵ holub2025-04-261-7/+5
| | | | sources from build script. (#13622)
* Cleaned up build scripts and compiling documentation: Vas Crabb2025-04-201-9/+1
| | | | | | | | | | | | | | | | | | | * 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.
* z80/z80make.py: Revisited z80 code generator (#13573) holub2025-04-101-4/+9
| | | | | * z80/z80make.py: Revisited z80 code generator * cpu/z80/t6a84.cpp: isolate device specific callbacks
* unidasm: Add Panasonic MN10300 disassembler AJR2025-03-221-0/+10
|
* scripts/src/cpu.lua: Update comment AJR2025-03-091-1/+1
|
* New machines marked as NOT_WORKING AJR2025-03-091-0/+7
| | | | | | | | ---------------------------------- MicroVAX I [microvax2.org] MicroVAX II [microvax2.org] MicroVAX 3400 [microvax2.org] MicroVAX 3500 [microvax2.org]
* Add disassembler for CDC 160(-A) architecture AJR2025-03-071-0/+10
|
* cpu/tlcs900: Added the TMP94C241 variant (used by the Technics SX-KN5000). ↵ Felipe Corrêa da Silva Sanches2025-02-181-0/+2
| | | | | (#13220) matsushita/kn5000.cpp: Use TMP94C241 CPU, hooked up I/O to onboard CPU peripherals.
* apple/macpwrbk030.cpp: Moved macpd210 out to new driver for MSC-based ↵ arbee2025-02-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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]
* DRC cleanup and minor optimisation: [Windy Fairy, Vas Crabb] Vas Crabb2025-01-161-13/+8
| | | | | | | | | | | | | | | * 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.
* cpu/drcbearm64.cpp: Added a 64-bit ARMv8 (AArch64) DRC back-end. (#13162) 9871238791132025-01-141-6/+13
| | | | | * 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).
* Replace uPD1771c high level emulation with a cpu core. (#13106) wilbertpol2024-12-271-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* cpu/mpk1839/kl1839vm1.cpp: Improved VAX-11 code decoder in user space (#13107) holub2024-12-271-0/+2
|
* m6502: rename m65c02 to w65c02 as well hap2024-12-141-9/+9
|
* m6502: rename m65sc02.* to g65sc02.* hap2024-12-141-3/+3
|
* cpu/m6805: Split off HD6305/63705 emulation to a separate source file AJR2024-12-011-0/+2
|
* new machines marked as NOT WORKING - Cassette Vision (#11927) mamehaze2024-11-261-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* s2650: move s2650cpu.h contents to s2650.cpp hap2024-11-241-1/+0
|
* sega/sega_ferie.cpp: Add new not working systems (#11862) qufb2024-11-161-0/+2
| | | | | | | New systems added as NOT WORKING --------------------------------------- Ferie Kitten (1994, Sega) Ferie Puppy (1995, Sega) Ferie World Travel (1995, Sega)
* Added C77, custom H8 for Namco. smf-2024-10-251-0/+2
|
* f2mc16: Created devices for the onboard analogue to digital converter, clock ↵ smf-2024-10-251-2/+20
| | | | | | | | | | | 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.
* ussr/pk32.cpp: Electronika PK-32 - not working (#12732) holub2024-09-191-0/+17
| | | mpl1839/kl1839vm1.cpp: MPL's l1839vm1 cpu device
* hmcs400: add cpu skeleton device hap2024-09-161-0/+18
|
* fix z80(nsc800) compile, hopefully hap2024-08-311-1/+1
|
* nsc800: move device to its own file hap2024-08-311-0/+10
|
* cpu/xa: CPU core work for fearless/superkds - adds sound, promotes to ↵ mamehaze2024-07-261-0/+1
| | | | | | | | | | | | | | | | | 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>
* cpu/z80/r800.cpp: (#12530) wilbertpol2024-07-101-0/+2
| | | | | | - 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
* cpu/xa: New Philips XA disassembler (#12504) mamehaze2024-06-291-0/+19
| | | | | | | * 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>
* Create stub MSM66573 device so Challenge Gear driver can have a CPU type AJR2024-06-191-1/+9
|
* unidasm: Add disassembler for Oki nX-8/500S architecture AJR2024-06-191-0/+9
|
* cpu/m6805: Added new devices for 68HC05E1 and 68HC05E4. [R. Belmont] arbee2024-06-151-0/+2
| | | | | | | | 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]
* New WORKING - sinclair/specnext.cpp: ZX Spectrum Next (known as tbblue) (#11918) holub2024-06-121-3/+25
| | | | | | | New Working Machines ----------------------- ZX Spectrum Next: TBBlue [holub]
* cpu/z80/z80.cpp Update core generator to support r800 [holub, Wilbert Pol] ↵ holub2024-06-051-4/+2
| | | | (#12445)
* cpu/z80/z80.cpp new generatable core (#12423) holub2024-06-031-0/+12
|
* Add cpu device PIC16x8x - Add PIC16F84 to magicle into misc/magicard.cpp ↵ grullosgo2024-06-031-0/+17
| | | | (#12092)
* sega/segaybd.cpp: Switch Sega Y-Board games back to Musashi (MT08783). [R. ↵ arbee2024-05-121-0/+2
| | | | | | Belmont] cpu/m68000: added option to use Musashi for M68000 emulation. [R. Belmont]
* add MIPS-X CPU and Tomy Kiss-Site system (#12331) mamehaze2024-05-081-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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]
* sh7042: Add dmac, mtu, adc, intc, sci, bsc. Separate A and non-A Olivier Galibert2024-05-021-0/+8
| | | | | | | | | | 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]
* palm: new cpu device and disassembler Patrick Mackinlay2024-03-271-0/+17
|
* Start adding the m37640 Olivier Galibert2024-03-181-0/+3
|
* cpu/z80/r800dasm.cpp: Add disassembler for ASCII R800. (#12116) wilbertpol2024-03-101-0/+2
|