O.k no probs, these tests would def be better done by some with access to PPC HW, so I might skip that then.Bart wrote:Not a bad idea but it would be easier to do this on a PPC eval board or even an old Mac. Also, the tests would have to be carefully designed. There is a PowerPC stress test out there somewhere that was used once to test our PPC emulation (at least for arithmetic flags).
I was the 1st to get a triangle on the R-Pi screen without using a driver, here is the documentation I used: https://www.broadcom.com/docs/support/videocore/VideoCoreIV-AG100-R.pdfBart wrote:I didn't know that the Raspberry Pi GPU was documented. I thought a driver was needed to access it.
Heh no probs, I will checkout the Supermodel source and try to get a triangle on the screen, it'll be a fun challengeBart wrote:No real docs but I could send you the SDK and API manual. It won't be all that helpful in actually writing code, though. The best place to look is really Supermodel's code.
for (int offset = 0; offset < file_size_in_bytes; offset += 4)
printf("%06x: %08x %f\n", base_addr + offset/4, *(uint32_t *) &buf[offset], *(float *) &buf[offset]);
// Translates 24-bit culling RAM addresses
const UINT32 *CLegacy3D::TranslateCullingAddress(UINT32 addr)
addr &= 0x00FFFFFF; // caller should have done this already
if ((addr>=0x800000) && (addr<0x840000))
else if (addr < 0x100000)
ErrorLog("TranslateCullingAddress(): invalid address: %06X", addr);
// Translates model references
const UINT32 *CLegacy3D::TranslateModelAddress(UINT32 modelAddr)
modelAddr &= 0x00FFFFFF; // caller should have done this already
if (modelAddr < 0x100000)
Great idea, I was thinking about doing something like this, & it might get some cool results =DBart wrote:The more I think about it, your best bet would be to dump the InGen sequence and use that as your base line! Just write exactly what it writes to set up your scene database and then just supply your own polygons to polygon RAM!
Users browsing this forum: No registered users and 2 guests