Skip to content

igs/igs011_video.cpp, igs/igs012.cpp: Make IGS011 and IGS012 as device, Update related drivers - #15233

Merged
cuavas merged 3 commits into
mamedev:masterfrom
cam900:igs011_igs012
Apr 16, 2026
Merged

igs/igs011_video.cpp, igs/igs012.cpp: Make IGS011 and IGS012 as device, Update related drivers#15233
cuavas merged 3 commits into
mamedev:masterfrom
cam900:igs011_igs012

Conversation

@cam900

@cam900 cam900 commented Apr 16, 2026

Copy link
Copy Markdown
Contributor

igs/igs011.cpp:

  • Move IGS011 (including decryption, protection, and video), IGS012 into separated device
  • Fix relocate protection area function
  • Fix naming for per-game protection functions
  • Fix logging
  • Fix post load function
  • Add notes for dbc title screen transparency
  • Fix typename values

igs/pgmprot*.cpp:

  • Add include guard
  • Fix spacings
  • Fix save state support

igs/pgmprot_igs025_igs012.cpp:

  • Add notes for IGS012, Add IGS012 placeholder

igs/igs025.cpp:

  • Fix spacing, Suppress side effect for debugger reads

cam900 and others added 3 commits April 16, 2026 14:13
…e, Update related drivers

igs/igs011.cpp:
- Move IGS011 (including decryption, protection, and video), IGS012 into separated device
- Fix relocate protection area function
- Fix naming for per-game protection functions
- Fix logging
- Fix post load function
- Add notes for dbc title screen
- Fix typename values

igs/pgmprot*.cpp:
- Add include guard
- Fix spacings
- Fix save state support

igs/pgmprot_igs025_igs012.cpp:
- Add notes for IGS012, Add IGS012 placeholder

igs/igs025.cpp:
- Fix spacing, Suppress side effect for debugger reads
Comment on lines +9 to +10
TODO:
- transparent pixel is wrong in dbc title screen

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.

There’s also a video output disable flag that currently isn’t emulated (causes the video output to be black, and I suspect it also allows the blitter to work faster because it won’t have to compete with the video output for access to layer RAM).

Blitter timings and busy flag are currently unemulated, too – we just pretend it works instantaneously, as none of the games depend on realistic performance. I suspect the blitter can only access layer RAM during horizontal and vertical blanking, or while video output is disabled.

@cuavas

cuavas commented Apr 16, 2026

Copy link
Copy Markdown
Member

I’m not sure all the graphics ROM decoding belongs in the IGS011 device. At least some of it is probably per-game logic. It’s more manageable like this anyway.

@cuavas
cuavas merged commit 851f27d into mamedev:master Apr 16, 2026
4 of 7 checks passed
@cuavas

cuavas commented Apr 17, 2026

Copy link
Copy Markdown
Member

The bad fade on the title screen for dbc is an original game bug. It writes incorrect palette data. See MT02497.

I removed the imperfect graphics flag in 46a890d as the only graphical issues I’m aware of in that game are original game bugs.

@cuavas

cuavas commented Apr 17, 2026

Copy link
Copy Markdown
Member

Also see MT02151 which has a photo taken with an original game board.

@happppp

happppp commented Apr 17, 2026

Copy link
Copy Markdown
Member

For bugs like those (where emulator developers will likely suspect it's an emulation bug), it's good to have a BTANB list so noone in the future will have to chase ghost bugs.

@cuavas

cuavas commented Apr 17, 2026

Copy link
Copy Markdown
Member

For bugs like those (where emulator developers will likely suspect it's an emulation bug), it's good to have a BTANB list so noone in the future will have to chase ghost bugs.

It was already mentioned at the top of igs/igs011.cpp:

- dbc: The title screen background palette is wrong since the fade
  routine is called with incorrect argument values, but the PCB does the
  same thing.

@cam900 must have missed it.

@cuavas

cuavas commented Apr 17, 2026

Copy link
Copy Markdown
Member

Actually, I’ll add the drgnwrld BTANBs to the list.

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