redumper
redumper copied to clipboard
Refactor sector data/size access based on mode
make this a function that returns Sector data pointer and size and reuse it everywhere:
uint8_t *user_data = nullptr;
bool user_form2 = false;
if(sector.header.mode == 1)
{
user_data = sector.mode1.user_data;
}
else if(sector.header.mode == 2)
{
if(sector.mode2.xa.sub_header.submode & (uint8_t)CDXAMode::FORM2)
{
user_data = sector.mode2.xa.form2.user_data;
user_form2 = true;
}
else
{
user_data = sector.mode2.xa.form1.user_data;
}
}
if(user_data != nullptr)
{
if(user_form2 == form2)
{
uint32_t size = sectorSize(user_form2);
memcpy(sectors + sectors_read * size, user_data, size);
++sectors_read;
}
else if(form_hint != nullptr)
*form_hint = true;
}