Skip to content

jaleco/megasys1.cpp, jaleco/ms1_gatearray.cpp: Updates and Cleanups - #15249

Merged
cuavas merged 6 commits into
mamedev:masterfrom
cam900:ms1_optimize
Apr 24, 2026
Merged

jaleco/megasys1.cpp, jaleco/ms1_gatearray.cpp: Updates and Cleanups#15249
cuavas merged 6 commits into
mamedev:masterfrom
cam900:ms1_optimize

Conversation

@cam900

@cam900 cam900 commented Apr 23, 2026

Copy link
Copy Markdown
Contributor
  • Add side effect check for debugger reads
  • Improve loggings
  • Reduce preprocessor defines, Literal tag usages
  • Remove unnecessary include
  • Make some variables constant
  • Fix spacings
  • Fix main CPU ROM region size for reduce unnecessary ROM_CONTINUE
  • Fix typename value for save state support
  • Minor optimization in sprite draw routine
  • Fix naming
  • Reduce unnecessary struct
  • Use BIT helper for single bit values

jaleco/ms1_gatearray.cpp:

  • Use required_address_space for target space to install handler

cam900 added 3 commits April 24, 2026 00:13
- Add side effect check for debugger reads
- Improve loggings
- Reduce preprocessor defines, Literal tag usages
- Remove unnecessary include
- Make some variables constant
- Fix spacings
- Fix main CPU ROM region size for reduce unnecessary ROM_CONTINUE
- Fix typename value for save state support
- Minor optimization in sprite draw routine
- Fix naming
- Reduce unnecessary struct

jaleco/ms1_gatearray.cpp: Use required_address_space for target space to install handler
@Hammy1986

Hammy1986 commented Apr 23, 2026

Copy link
Copy Markdown

Hey cam! Regarding the megasystem 1 graphics, the naming in mame does not match the hardware (scroll 0 , 1, 2 is wrong named.
The hardware is quite like the NMK16 with 1 text layer , 2 graphics layers and 1 sprite layer.

The text layer used the same chip as the other graphics, sure - but it's not fully hooked up, so some of the features do not work for that layer
MAME treats all layers the same, but that's not the case.

Legend of makai is 1 text layer, 1 graphic layer and 1 sprite layer.
I ported it to the double layer board and this is when i found the layer differences!

Regarding the correct names of the scrolls, avenging spirits test mode tells the "official" names.

0000

@cuavas cuavas left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This breaks jaleco/cischeat.cpp and possibly other drivers using the gate array device. You really should do a complete build before opening the PR.

Comment thread src/mame/jaleco/megasys1.cpp Outdated
@cuavas
cuavas merged commit dffc846 into mamedev:master Apr 24, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants