Users browsing this thread: 1 Guest(s)
Sega Arcade sprite interleaving problem
#1
I want to rip sprites from Holosseum, I already know that the sprites don't show up in the MAME tile viewer. I found the sprites in TiledGGD, and I know to interleave it in order to rip it fully but this game has 8 sprite files, interleaving them is such a nightmare! Can someone help me how to interleave these sprites. How do I determine to interleave the sprite files in other games correctly?[Image: Sprite-interleaving-problem.png]
Reply
Thanked by:
#2
(08-09-2019, 01:52 PM)AFruitaday! Wrote: I want to rip sprites from Holosseum, I already know that the sprites don't show up in the MAME tile viewer. I found the sprites in TiledGGD, and I know to interleave it in order to rip it fully but this game has 8 sprite files, interleaving them is such a nightmare! Can someone help me how to interleave these sprites. How do I determine to interleave the sprite files in other games correctly?[Image: Sprite-interleaving-problem.png]

First, open the command prompt and run this code:
Code:
mame64 holo -listxml >> holo.txt

This code will save a bunch of information about the ROM in the holo.txt file. Open the file and scroll until you find this section. I removed the sha1 for readability:
Quote:<rom name="mpr-14973" size="1048576" crc="b3c3ff6b" sha1="" region="mainpcb:gfx2" offset="0"/>
<rom name="mpr-14972" size="1048576" crc="0c161374" sha1="" region="mainpcb:gfx2" offset="1"/>
<rom name="mpr-14971" size="1048576" crc="dfcf6fdf" sha1="" region="mainpcb:gfx2" offset="2"/>
<rom name="mpr-14970" size="1048576" crc="cae3a745" sha1="" region="mainpcb:gfx2" offset="3"/>
<rom name="mpr-14969" size="1048576" crc="c06b7c15" sha1="" region="mainpcb:gfx2" offset="4"/>
<rom name="mpr-14968" size="1048576" crc="f413894a" sha1="" region="mainpcb:gfx2" offset="5"/>
<rom name="mpr-14967" size="1048576" crc="5377fce0" sha1="" region="mainpcb:gfx2" offset="6"/>
<rom name="mpr-14966" size="1048576" crc="dffba2e9" sha1="" region="mainpcb:gfx2" offset="7"/>

This section tells how the graphic files are loaded. In this case, each file loads 1 byte before looping until the end.

mpr-14973 moves 1 byte to 0x0
mpr-14972 moves 1 byte to 0x1
mpr-14971 moves 1 byte to 0x2
...
mpr-14966 moves 1 byte to 0x7
mpr-14973 moves 1 byte to 0x8
mpr-14972 moves 1 byte to 0x9

Now you just need to write a script to do this, I recommend Python. I'll also link a video that has a better explanation and has an example code, it helped me a lot when I was ripping Taisen Hot Gimmick: https://youtu.be/jP-j4F-X9RM
Reply
Thanked by:
#3
Thank you so much! Now I can find both the graphics and palette! And understand how to interleave them correctly!
Reply
Thanked by:
#4
But wait, what do you mean by creating a script on python?
Reply
Thanked by:
#5
(08-10-2019, 02:52 PM)AFruitaday! Wrote: But wait, what do you mean by creating a script on python?

Write a script using Python to interleave the files. This is just faster for me but if you know other programming language or software that interleaves, use it.
Reply
Thanked by:
#6
I know Notepad++, can that interleave the files?
Reply
Thanked by:
#7
n++ is just a text editor. It won't help on its own, you need some way of scripting the behaviour you want. Python can do basically anything you want. You can write python in any text editor. n++ will just give you syntax highlighting, you'll need a python installation and some knowledge of how to actually work on a file with python to do anything.
l m a o
Reply
Thanked by:
#8
oh ok then.
Reply
Thanked by:
#9
Ok, now I got python downloaded, what script should I write?
Reply
Thanked by:


Forum Jump: