mirror of
https://github.com/holub/mame
synced 2025-04-22 16:31:49 +03:00
![]() While investigating alternate gfx layout schemes, I stumbled across the fact that some drivers are allocating graphics with one layout and then decoding them with another (!). There's no guarantee this will work, but for the drivers that do so (all Konami games), the layouts are similar enough that it does. A related potential bug is that many drivers are decoding using the layout provided to allocgfx, not the layout attached the element returned from allocgfx. If the element had scaling applied to it, this would be incorrect, but since scaling is rare these are also benign. It would also be a problem if the layout data had a different internal representation (which is something I'm experimenting with), so to reduce the possibility of coding errors and allow for future changes, I'd like to remove the layout parameter from decodechar. So here's two patches, the first fixes the affected Konami drivers to allocate and decode using the same layouts. It changes the notion of plane_order and bpp in the functions somewhat to let the start routines select the appropriate layout, but acceptably so IMHO (I can clean this up further if there are loud objections). The second patch then removes the layout parameter from all the decodechar() calls. I also reviewed MESS to see if it had similar problems and didn't find any. |
||
---|---|---|
docs | ||
src | ||
.gitattributes | ||
makefile |