Idea for a 2D port: Oddworld Abe's Oddysee using R.E.L.I.V.E. engine?

I honestly wasn't trying to put you down. it's just really frustrating that the answer of "how many palettes can the Saturn do" is such a simple thing to actually find out, no need for guessing of burning tokens to get an answer that is completely wrong. And now you know for sure, because I explained it. Good luck with your project.
@nando:
Yes, don't get me wrong, I was mostly frustrated by myself other than something else.
I meant it when I said I needed a good night of sleep and a proper look on it. I should take the time to investigate and find the real problem and solution.
I had to leave for my flight and I knew I would have no more access to my Saturn for over a month, so I tried to finish up too many things at the same time, which only had very poor results because of the way I did it. I will do better next time (and more importantly, will verify what I write here if it was originated by an AI).
My bad on that, thanks again for caring enough to reply and correct my mistakes.
 
Last edited:
@nando:
Yes, don't get me wrong, I was mostly frustrated by myself other than something else.
I meant it when I said I needed a good night of sleep and a proper look on it. I should take the time to investigate and find the real problem and solution.
I had to leave for my flight and I knew I would have no more access to my Saturn for over a month, so I tried to finish up too many things at the same time, which only had very poor results because of the way I did it. I will do better next time (and more importantly, will verify what I write here if it was originated by an AI).
My bad on that, thanks again for caring enough to reply and correct my mistakes.
If you have questions that seem like they should have obvious answers, honestly just ask. There is discord too, and Saturn has halfway decent documentation. VDP2 is the most complicated (almost 500 pages) but if you know what the question is, you can probably find the answer there. The exception being that the descriptions are not always straight forward or easy to understand 😀
 
If you have questions that seem like they should have obvious answers, honestly just ask. There is discord too, and Saturn has halfway decent documentation. VDP2 is the most complicated (almost 500 pages) but if you know what the question is, you can probably find the answer there. The exception being that the descriptions are not always straight forward or easy to understand 😀
Yes, I'm on the discord also, and have the official sega saturn developer cd iso mounted on my computer.
Honestly I have zero excuse not to look it up.
The problem was more about knowing what to look for in this situation, and the final rush to get my plane. But hey, lesson learned. Thanks.
It also seems that I was looking in the wrong direction the entire time, as there are plenty animation / textures poorly converted / stored in the current version, such as shadows for example. Clearly needs some tuning. Carlos point was still helpful and helped me sort out one of the issue.
I'll list, investigate and solve them one by one when I have the time to.
 
Hi guys, I've been wrapping my head around the CRAM issue and the stuttering, and I think that we could look at it from a mixed 4-BPP/8-BPP pipeline perspective combined with a very surgical use of the SCU-DMA for key triggers.
Abe and the main backgrounds definitely need 8-BPP, but maybe we can crunch all secondary assets down to 4-BPP. Stuff like shadows, portal effects, or explosions could easily live in 16 colors with some good old-school dithering, saving a massive amount of palette banks.
As for the SCU-DMA, instead of triggering transfers chaotically, we could restrict its scope to four precise scenarios:
1-SCU DMA Level 0 bursts used exclusively during flip-screen transitions, dumping the background from Work RAM to the VDP2 VRAM (inactive layer) right before Abe hits the screen boundary.
2-Handling Abe's heavy action states via sprite streaming into the VDP1 VRAM during V-blank, so we don't clog the memory with all his frames at once.
3-Mirroring the VDP1 command tables in Work RAM High and performing an indirect DMA transfer per frame to VRAM, keeping both SH-2 cores completely free for AI and collision checks.
4-And for the palette overlapping, updating color data directly from Work RAM to the CRAM palette banks using DMA synced with V-blank.
Sounds like a hot take and a lot of asset management on the PC side first, but maybe it's a viable way to bypass the hardware limits. What do you guys think?
 
I'll check that, thanks. The palette overlapping is fixed, and so are most animations (no more black and white corruption).
I still have to fix the moving barrel rectangle animations, and implement some shadows with saturn hardware (right now, they're 8bpp and using ram space for nothing, just dumbly converted from original format), then I'll see how to optimize everything, ease up ram usage, and adding up the audio.
 
I'll check that, thanks. The palette overlapping is fixed, and so are most animations (no more black and white corruption).
I still have to fix the moving barrel rectangle animations, and implement some shadows with saturn hardware (right now, they're 8bpp and using ram space for nothing, just dumbly converted from original format), then I'll see how to optimize everything, ease up ram usage, and adding up the audio.
Hi N0rt0N85,
That’s fantastic news! Hearing that you already fixed the palette overlapping and the black and white animation corruption is amazing. You are ironing out those bugs fast even while traveling! Handling the shadows natively through Saturn’s hardware instead of wasting RAM with raw 8bpp conversions is definitely the right call, it will free up so much headroom for the upcoming audio engine.
I'm working on a setup right now where I have my raw videos in uncompressed .avi, alongside the audios, backgrounds, and sprites already converted into Saturn-compliant formats for my first level. I would love to send these files over to you via Google Drive if they can help you with your asset testing and pipeline development! Seeing how you map out the RAM tiers is pure gold, as I'm facing those exact same file management challenges at the moment.
Please keep up the amazing work! Enjoy the rest of your trip in August, and we’ll be right here eagerly waiting to see how this engine behaves on real hardware at the end of the month. History is being fixed right here.
Cheers from Spain, you are an absolute crack!
 
Back
Top