B0/C0 Tables

Members research, findings and information that can be useful towards the PlayStation 1.
Post Reply
jaguar
What is PSXDEV?
What is PSXDEV?
Posts: 1
Joined: Jun 02, 2020

B0/C0 Tables

Post by jaguar » June 2nd, 2020, 2:44 pm

I'm doing some reverse engineering, try to figure out how a game works and I've hit a feature that isn't very well documented (at least that I can see).

There are two system calls "GetB0Table" and "GetC0Table". However, I can't figure out what these tables actually relate to. The functions I see these used in seem to relate to memory cards, but I can't figure out their exact purpose.

The return value seems to be of type (u)int**.

Is anyone aware of what is stored in these tables?

solomonu
What is PSXDEV?
What is PSXDEV?
Posts: 2
Joined: Dec 24, 2020

Post by solomonu » December 24th, 2020, 8:37 am

This is the relevant code in the PCSXR emulator, but I'm not really sure what it represents or where most the table is initialized: see lines 2240 and 2672 in https://github.com/iCatButler/pcsxr/blo ... /psxbios.c. Lines 2710 and 2713 are also suspicious, but I'm not completely sure what their role is. FWIW, they both encode the instruction "SWC3 0" (according to https://www.cs.cmu.edu/afs/cs/academic/ ... ps-isa.pdf).

If you figure anything else out about this, please let me know.

solomonu
What is PSXDEV?
What is PSXDEV?
Posts: 2
Joined: Dec 24, 2020

Post by solomonu » December 24th, 2020, 8:43 am

FWIW, I also noticed that there's always a psxBios_FlushCache call soon after.

Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests