Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The problem of pulling a version of Saturn header #192

Open
fuzz6001 opened this issue Oct 13, 2024 · 2 comments
Open

The problem of pulling a version of Saturn header #192

fuzz6001 opened this issue Oct 13, 2024 · 2 comments

Comments

@fuzz6001
Copy link
Contributor

fuzz6001 commented Oct 13, 2024

Sometimes illegal version formats exist.
In this case, the wrong serial number is reported and no version is reported.

e.g.
http://redump.org/disc/3238/

SS [dump (Track 1).bin]:
  build date: 1996-02-20
  serial: GS-9055V1
  regions: Asia NTSC, Japan
  header:
0000 : 53 45 47 41 20 53 45 47  41 53 41 54 55 52 4E 20   SEGA SEGASATURN 
0010 : 53 45 47 41 20 45 4E 54  45 52 50 52 49 53 45 53   SEGA ENTERPRISES
0020 : 47 53 2D 39 30 35 35 20  56 31 2E 30 35 20 20 20   GS-9055 V1.05   
0030 : 31 39 39 36 30 32 32 30  43 44 2D 31 2F 31 20 20   19960220CD-1/1  

another illegal format
http://redump.org/disc/17418/

0020 : 54 2D 34 33 30 35 47 20  56 31 2E 20 20 30 30 32   T-4305G V1.  002
@Deterous
Copy link
Contributor

I'm not sure what the ideal output from Redumper should be here.
These weird discs allocate 8 bytes to the serial and 8 bytes to the version, rather than 10 and 6.
If there are a few discs that use 8/8 instead of 10/6 then redumper could check 8/8 if an invalid version is returned initially.

At least these are rare and when adding to redump we would notice this in the logs.

@superg
Copy link
Owner

superg commented Oct 14, 2024

This can be handled correctly. You probably saw my MCD code. How it was implemented - I extracted those headers from all available roms to see all the corner cases and defined a permissive struct for all combinations.
Sega is known to not be very compliant in their headers. I think internally they treat it just as a long string.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants