What's new

Pj64 CRC doesn't match

Doomulation

?????????????????????????
Is this just me or is this something really strange?
I've checked some rom-headers, and what I just found is that Pj gets it diffrently from me.

Exmples:

Yoshi's story (J) (!):
I get: CF14602D-54CA4783
Pj says: 2DCFCA60-8354B147

Exmample2:

1080 Snowboarding (U) (!):
I get: FD142558-2E3F8DD9
Pj says: 58FD3F25-D92EAA8D


I even tried to search the rom-headers for that CRC. But I can't find 'em! It's really weird....
 

Gent

The Soul Reaving Gentleman
Administrator
Ok i think you mean the (E) Doom

Here is what it says in The Info
 

Witten

Emulator Developer
PJ64 calculates the CRC with a CRC32 algoritm!

the first is with the header, the second without. Or was it the other way round.
 
Last edited:
OP
Doomulation

Doomulation

?????????????????????????
Um, alright, I know that Pj uses some technique to read the CRC.
I'd like to ask why, since other utilities doesn't, but that doesn't matter.

What I would like to know, is how to get the CRC Pj does. How do I decrypt this information, this CRC32 algrotim so it matches the CRC I get?

You Witten, who knows a lot about this, could u plz tell me?
 

Witten

Emulator Developer
hmmm... my mind is screwed up... :p

Doomulation, just read 4bytes starting from 0x10 for CRC1 and 4bytes starting from 0x14 for CRC2. This is the easy way. :)
Just make sure the rom is in the correct byteorder.
 

flow``

flow``
what format are you roms in ? .z64 or .v64

pj64 and 1964's INI's use the .v64 endian whereas tr64 uses the .z64 endian

get tool64 and convert to .v64 would be my suggestion although i'd think pj64 byteswaps the rom's before it loads the data to compare with entries from the INI that match the rom's crc :/
 
OP
Doomulation

Doomulation

?????????????????????????
That was the first post I've seen u post that is nice to me, flow.
Anyway, the problem is not with gameplay, rather about getting the CRC right. Converting the roms would be the most stupid thing I could do.

It's just that it should be able to read all roms whatsoever and get the CRC. 'Cuz other don't byteswap the roms to another format.

And I use both formats.
I see a little how this encryption works. However, the CRC which I get from headers are screwed up! Look at the yoshi example. The "14"-part of CRC1 is supposed to be B1. I figured that out, since that was the only that was missing from the CRC's when I compared them to 1964. I tried to switch place of data and stuff, and I got it all right, except for the last 2 digits of CRC2. The "b1"-part, which is "14" in my CRC.

?????? Weird.
 

N-Rage

New member
doom, the CRCs are stored in the Rom-header, so yes it makes a difference in which byteorder the Rom is stored. the right order to read the CRCs is big-endian.

If u want to calculate the CRCs yourself u still have to change the byteorder to big-endian i believe( usually they are calculated with that BO ), or make a CRC-routine that can handle all kind of orders.
 
OP
Doomulation

Doomulation

?????????????????????????
N-Rage said:
doom, the CRCs are stored in the Rom-header, so yes it makes a difference in which byteorder the Rom is stored. the right order to read the CRCs is big-endian.

If u want to calculate the CRCs yourself u still have to change the byteorder to big-endian i believe( usually they are calculated with that BO ), or make a CRC-routine that can handle all kind of orders.
Yes, no problem with that ;)
I know that already.

Yet, there are problems. Some CRC's don't get long enough!
Some CRC's are 7 bytes long! Even though it's supposed to 8 bytes!
I've checked the ASCII-number of the characters in the rom-header. And some of them are < 15, which they are not supposed to be!

That's one my problems. And check above, the CRC didn't match. Undepending the byte-order, 2 bytes were wrong!
 

flow``

flow``
you aren't getting this..
(dont ask me if this is the right order or not) but each CRC endian places the CRC in a different ABCD order

i think smiff has the ABCD order chart somewhere on his site..

and ACBD should not resemble ADCB, its a little more complex then moving the values around

if you dont believe me
get rtool, calc the crc of a z64 rom, then use tool64 and byteswap it to v64 and calc it again.. there might be a few resemblences in values but not many

just download tool64 and see if you can clean up the mess you've already made with the crc
if not, you might as well download the rom again
 
OP
Doomulation

Doomulation

?????????????????????????
flow`` said:
you aren't getting this..
(dont ask me if this is the right order or not) but each CRC endian places the CRC in a different ABCD order

i think smiff has the ABCD order chart somewhere on his site..

and ACBD should not resemble ADCB, its a little more complex then moving the values around

if you dont believe me
get rtool, calc the crc of a z64 rom, then use tool64 and byteswap it to v64 and calc it again.. there might be a few resemblences in values but not many

just download tool64 and see if you can clean up the mess you've already made with the crc
if not, you might as well download the rom again
Gee, I've never messed with ANY of my roms.
And I know about the byte-order, and that's not the problem. I byteswap them as needed after extracting the CRC.
 

Top