I am currently working on a personal project that involves identifying the system a rom/iso belongs to. These are the current methods I am using to identify files, but I would like to know if
- My current methods of identification are valid
- There are easier/better identification methods
- If there are methods I can use for extension-only game checks that would work to identify extensionless files
- Checks that can be done to identify games not currently listed
Only checks file extension
Check file extension, or check offset
0x104
for CE ED 66 ... B9 33 3E
and offset 0x143
IS NOT C0
Check file extension, or check offset
0x4
for 24 FF AE ... D4 F8 07
Check file extension, or check offset
0x104
for CE ED 66 ... B9 33 3E
and offset 0x143
IS C0
GMC: Check for extension or check offset
ISO: Same as GMC?
0x1C
for C2 33 9F 3D
ISO: Same as GMC?
Check file extension, or check offset
0x7FF0
for 54 4D 52 20 53 45 47 41
Check file extension, or check offset
0x0
for 4C 59 4E 58
Only checks file extension
Check file extension, or check offset
0xC0
for 24 FF AE ... D4 F8 07
Check file extension, or check offset
0x0
for 4E 45 53 1A
Check offset
0x8D6
for 9E A1 8E 61 72 E3 62 23
Goto offset
0xA97
, read the next 67 bytes, mask off top 4 bits of each byte and check for0E 09 09 0E 0E 0E 0E 0E 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0F 0E 09 05 02 00 02 02 02 02 02 02 02 06 0F 0D
0D 0D 0D 0D 0D 0D 0D 0D 0D 0D 0D 0D 04 06 06 06 06 06 06 06 06 06 06 06 06 06 06 04 05 0B 08 0E 0D
Goto offset
USA:
JPN:
0x42F
, read the next 27 bytes, mask off top 4 bits of each byte and check forUSA:
06 01 00 00 03 03 02 02 02 0D 0D 0C 0C 0E 0E 0E 09 08 08 08 08 09 0E 0D 00 06 05
JPN:
0E 09 08 08 0B 0B 0A 0A 0A 05 05 04 04 06 06 06 01 00 00 00 00 01 06 05 08 0E 0D
ISO: Check offset
Dir.: Check dir. for
0x800
for 50 6C 61 79 53 74 61 74 69 6F 6E 33
Dir.: Check dir. for
Code:
PS3_DISC.SFB
PS3_GAME/ICON0.PNG
PS3_GAME/LICDIR/LIC.DAT
PS3_GAME/PARAM.SFO
PS3_GAME/PIC1.PNG
PS3_GAME/PS3LOGO.DAT
Check offset
0x8000
for 01 43 44 30 30 31 01 00 50 53 50 20 47 41 4D 45
Only checks file extension
Only checks file extension
WBFS: Check for extension or check offset
ISO: Check offset
0x0
for 57 42 46 53
ISO: Check offset
0x18
for 5D 1C 9E A3
Check file extension, or check offset
0x0
for 00 00 00 20 49 73 00 00