mirror of
https://github.com/aaru-dps/libaaruformat.git
synced 2026-07-08 18:06:18 +00:00
Rename track type enums for consistency
This commit is contained in:
@@ -206,12 +206,12 @@ typedef enum
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
Audio = 0, ///< Audio track.
|
||||
Data = 1, ///< Generic data track (not further specified).
|
||||
CdMode1 = 2, ///< Compact Disc Mode 1 data track.
|
||||
CdMode2Formless = 3, ///< Compact Disc Mode 2 (formless) data track.
|
||||
CdMode2Form1 = 4, ///< Compact Disc Mode 2 Form 1 data track.
|
||||
CdMode2Form2 = 5 ///< Compact Disc Mode 2 Form 2 data track.
|
||||
kTrackTypeAudio = 0, ///< Audio track.
|
||||
kTrackTypeData = 1, ///< Generic data track (not further specified).
|
||||
kTrackTypeCdMode1 = 2, ///< Compact Disc Mode 1 data track.
|
||||
kTrackTypeCdMode2Formless = 3, ///< Compact Disc Mode 2 (formless) data track.
|
||||
kTrackTypeCdMode2Form1 = 4, ///< Compact Disc Mode 2 Form 1 data track.
|
||||
kTrackTypeCdMode2Form2 = 5 ///< Compact Disc Mode 2 Form 2 data track.
|
||||
} TrackType;
|
||||
|
||||
/**
|
||||
|
||||
@@ -438,15 +438,15 @@ AARU_EXPORT void AARU_CALL aaruf_ecc_cd_reconstruct_prefix(uint8_t *sector, cons
|
||||
|
||||
switch((TrackType)type)
|
||||
{
|
||||
case CdMode1:
|
||||
case kTrackTypeCdMode1:
|
||||
//
|
||||
// Mode
|
||||
//
|
||||
sector[0x00F] = 0x01;
|
||||
break;
|
||||
case CdMode2Form1:
|
||||
case CdMode2Form2:
|
||||
case CdMode2Formless:
|
||||
case kTrackTypeCdMode2Form1:
|
||||
case kTrackTypeCdMode2Form2:
|
||||
case kTrackTypeCdMode2Formless:
|
||||
//
|
||||
// Mode
|
||||
//
|
||||
@@ -499,15 +499,15 @@ AARU_EXPORT void AARU_CALL aaruf_ecc_cd_reconstruct(void *context, uint8_t *sect
|
||||
//
|
||||
// Compute EDC
|
||||
//
|
||||
case CdMode1:
|
||||
case kTrackTypeCdMode1:
|
||||
computed_edc = aaruf_edc_cd_compute(context, 0, sector, 0x810, 0);
|
||||
memcpy(sector + 0x810, &computed_edc, 4);
|
||||
break;
|
||||
case CdMode2Form1:
|
||||
case kTrackTypeCdMode2Form1:
|
||||
computed_edc = aaruf_edc_cd_compute(context, 0, sector, 0x808, 0x10);
|
||||
memcpy(sector + 0x818, &computed_edc, 4);
|
||||
break;
|
||||
case CdMode2Form2:
|
||||
case kTrackTypeCdMode2Form2:
|
||||
computed_edc = aaruf_edc_cd_compute(context, 0, sector, 0x91C, 0x10);
|
||||
memcpy(sector + 0x92C, &computed_edc, 4);
|
||||
break;
|
||||
@@ -523,7 +523,7 @@ AARU_EXPORT void AARU_CALL aaruf_ecc_cd_reconstruct(void *context, uint8_t *sect
|
||||
//
|
||||
// Compute ECC
|
||||
//
|
||||
case CdMode1:
|
||||
case kTrackTypeCdMode1:
|
||||
//
|
||||
// Reserved
|
||||
//
|
||||
@@ -537,7 +537,7 @@ AARU_EXPORT void AARU_CALL aaruf_ecc_cd_reconstruct(void *context, uint8_t *sect
|
||||
sector[0x81B] = 0x00;
|
||||
aaruf_ecc_cd_write_sector(context, sector, sector, sector, 0xC, 0x10, 0x81C);
|
||||
break;
|
||||
case CdMode2Form1:
|
||||
case kTrackTypeCdMode2Form1:
|
||||
aaruf_ecc_cd_write_sector(context, zeroaddress, sector, sector, 0, 0x10, 0x81C);
|
||||
break;
|
||||
default:
|
||||
|
||||
20
src/read.c
20
src/read.c
@@ -1041,13 +1041,13 @@ AARU_EXPORT int32_t AARU_CALL aaruf_read_sector_long(void *context, const uint64
|
||||
|
||||
switch(trk.type)
|
||||
{
|
||||
case Audio:
|
||||
case Data:
|
||||
case kTrackTypeAudio:
|
||||
case kTrackTypeData:
|
||||
memcpy(data, bare_data, bare_length);
|
||||
*length = bare_length;
|
||||
free(bare_data);
|
||||
return res;
|
||||
case CdMode1:
|
||||
case kTrackTypeCdMode1:
|
||||
memcpy(data + 16, bare_data, 2048);
|
||||
|
||||
if(ctx->sector_prefix_ddt2 != NULL)
|
||||
@@ -1140,9 +1140,9 @@ AARU_EXPORT int32_t AARU_CALL aaruf_read_sector_long(void *context, const uint64
|
||||
*length = 2352;
|
||||
free(bare_data);
|
||||
return res;
|
||||
case CdMode2Formless:
|
||||
case CdMode2Form1:
|
||||
case CdMode2Form2:
|
||||
case kTrackTypeCdMode2Formless:
|
||||
case kTrackTypeCdMode2Form1:
|
||||
case kTrackTypeCdMode2Form2:
|
||||
if(ctx->sector_prefix_ddt2 != NULL)
|
||||
{
|
||||
const uint64_t prefix_ddt_entry = ctx->sector_prefix_ddt2[corrected_sector_address];
|
||||
@@ -1200,14 +1200,14 @@ AARU_EXPORT int32_t AARU_CALL aaruf_read_sector_long(void *context, const uint64
|
||||
if(suffix_status == SectorStatusMode2Form1Ok)
|
||||
{
|
||||
memcpy(data + 24, bare_data, 2048);
|
||||
aaruf_ecc_cd_reconstruct(ctx->ecc_cd_context, data, CdMode2Form1);
|
||||
aaruf_ecc_cd_reconstruct(ctx->ecc_cd_context, data, kTrackTypeCdMode2Form1);
|
||||
}
|
||||
else if(suffix_status == SectorStatusMode2Form2Ok ||
|
||||
suffix_status == SectorStatusMode2Form2NoCrc)
|
||||
{
|
||||
memcpy(data + 24, bare_data, 2324);
|
||||
if(suffix_status == SectorStatusMode2Form2Ok)
|
||||
aaruf_ecc_cd_reconstruct(ctx->ecc_cd_context, data, CdMode2Form2);
|
||||
aaruf_ecc_cd_reconstruct(ctx->ecc_cd_context, data, kTrackTypeCdMode2Form2);
|
||||
}
|
||||
else if(suffix_status == SectorStatusNotDumped)
|
||||
res = AARUF_STATUS_SECTOR_NOT_DUMPED;
|
||||
@@ -1222,14 +1222,14 @@ AARU_EXPORT int32_t AARU_CALL aaruf_read_sector_long(void *context, const uint64
|
||||
if((ctx->sector_suffix_ddt[corrected_sector_address] & CD_XFIX_MASK) == Mode2Form1Ok)
|
||||
{
|
||||
memcpy(data + 24, bare_data, 2048);
|
||||
aaruf_ecc_cd_reconstruct(ctx->ecc_cd_context, data, CdMode2Form1);
|
||||
aaruf_ecc_cd_reconstruct(ctx->ecc_cd_context, data, kTrackTypeCdMode2Form1);
|
||||
}
|
||||
else if((ctx->sector_suffix_ddt[corrected_sector_address] & CD_XFIX_MASK) == Mode2Form2Ok ||
|
||||
(ctx->sector_suffix_ddt[corrected_sector_address] & CD_XFIX_MASK) == Mode2Form2NoCrc)
|
||||
{
|
||||
memcpy(data + 24, bare_data, 2324);
|
||||
if((ctx->sector_suffix_ddt[corrected_sector_address] & CD_XFIX_MASK) == Mode2Form2Ok)
|
||||
aaruf_ecc_cd_reconstruct(ctx->ecc_cd_context, data, CdMode2Form2);
|
||||
aaruf_ecc_cd_reconstruct(ctx->ecc_cd_context, data, kTrackTypeCdMode2Form2);
|
||||
}
|
||||
else if((ctx->sector_suffix_ddt[corrected_sector_address] & CD_XFIX_MASK) == NotDumped)
|
||||
res = AARUF_STATUS_SECTOR_NOT_DUMPED;
|
||||
|
||||
26
src/write.c
26
src/write.c
@@ -288,22 +288,22 @@ AARU_EXPORT int32_t AARU_CALL aaruf_write_sector(void *context, uint64_t sector_
|
||||
{
|
||||
ctx->current_track_type = track->type;
|
||||
|
||||
if(track->sequence == 0 && track->start == 0 && track->end == 0) ctx->current_track_type = Data;
|
||||
if(track->sequence == 0 && track->start == 0 && track->end == 0) ctx->current_track_type = kTrackTypeData;
|
||||
}
|
||||
else
|
||||
ctx->current_track_type = Data;
|
||||
ctx->current_track_type = kTrackTypeData;
|
||||
|
||||
if(ctx->current_track_type == Audio &&
|
||||
if(ctx->current_track_type == kTrackTypeAudio &&
|
||||
// JaguarCD stores data in audio tracks. FLAC is too inefficient, we need to use LZMA as data.
|
||||
(ctx->image_info.MediaType == JaguarCD && track->session > 1 ||
|
||||
// VideoNow stores video in audio tracks, and LZMA works better too.
|
||||
ctx->image_info.MediaType == VideoNow || ctx->image_info.MediaType == VideoNowColor ||
|
||||
ctx->image_info.MediaType == VideoNowXp))
|
||||
ctx->current_track_type = Data;
|
||||
ctx->current_track_type = kTrackTypeData;
|
||||
|
||||
if(ctx->compression_enabled)
|
||||
{
|
||||
if(ctx->current_track_type == Audio)
|
||||
if(ctx->current_track_type == kTrackTypeAudio)
|
||||
ctx->current_block_header.compression = kCompressionFlac;
|
||||
else
|
||||
ctx->current_block_header.compression = kCompressionLzma;
|
||||
@@ -313,7 +313,7 @@ AARU_EXPORT int32_t AARU_CALL aaruf_write_sector(void *context, uint64_t sector_
|
||||
}
|
||||
else
|
||||
{
|
||||
ctx->current_track_type = Data;
|
||||
ctx->current_track_type = kTrackTypeData;
|
||||
if(ctx->compression_enabled)
|
||||
ctx->current_block_header.compression = kCompressionLzma;
|
||||
else
|
||||
@@ -616,7 +616,7 @@ AARU_EXPORT int32_t AARU_CALL aaruf_write_sector_long(void *context, uint64_t se
|
||||
break;
|
||||
}
|
||||
|
||||
if(track.sequence == 0 && track.start == 0 && track.end == 0) track.type = Data;
|
||||
if(track.sequence == 0 && track.start == 0 && track.end == 0) track.type = kTrackTypeData;
|
||||
|
||||
uint64_t corrected_sector_address = sector_address;
|
||||
|
||||
@@ -709,10 +709,10 @@ AARU_EXPORT int32_t AARU_CALL aaruf_write_sector_long(void *context, uint64_t se
|
||||
// Split raw cd sector data in prefix (sync, header), user data and suffix (edc, ecc p, ecc q)
|
||||
switch(track.type)
|
||||
{
|
||||
case Audio:
|
||||
case Data:
|
||||
case kTrackTypeAudio:
|
||||
case kTrackTypeData:
|
||||
return aaruf_write_sector(context, sector_address, negative, data, sector_status, length);
|
||||
case CdMode1:
|
||||
case kTrackTypeCdMode1:
|
||||
|
||||
// If we do not have a DDT V2 for sector prefix, create one
|
||||
if(ctx->sector_prefix_ddt2 == NULL)
|
||||
@@ -873,9 +873,9 @@ AARU_EXPORT int32_t AARU_CALL aaruf_write_sector_long(void *context, uint64_t se
|
||||
|
||||
return aaruf_write_sector(context, sector_address, negative, data + 16, SectorStatusMode1Correct,
|
||||
2048);
|
||||
case CdMode2Form1:
|
||||
case CdMode2Form2:
|
||||
case CdMode2Formless:
|
||||
case kTrackTypeCdMode2Form1:
|
||||
case kTrackTypeCdMode2Form2:
|
||||
case kTrackTypeCdMode2Formless:
|
||||
// If we do not have a DDT V2 for sector prefix, create one
|
||||
if(ctx->sector_prefix_ddt2 == NULL)
|
||||
{
|
||||
|
||||
@@ -657,7 +657,7 @@ TEST_F(CreateImageFixture, create_audio_image)
|
||||
TrackEntry track;
|
||||
memset(&track, 0, sizeof(TrackEntry));
|
||||
track.sequence = 1; // Track 1
|
||||
track.type = Audio; // Audio track type (0)
|
||||
track.type = kTrackTypeAudio; // Audio track type (0)
|
||||
track.start = 0; // Start at sector 0
|
||||
track.end = (audio_size * 3 / 2352) - 1; // End at last sector (inclusive)
|
||||
track.pregap = 0; // No pregap
|
||||
@@ -894,7 +894,7 @@ TEST_F(CreateImageFixture, create_subchannel_uncompressed_image)
|
||||
TrackEntry track;
|
||||
memset(&track, 0, sizeof(TrackEntry));
|
||||
track.sequence = 1; // Track 1
|
||||
track.type = Audio; // Audio track type (0)
|
||||
track.type = kTrackTypeAudio; // Audio track type (0)
|
||||
track.start = 0; // Start at sector 0
|
||||
track.end = (audio_size * 3 / 2352) - 1; // End at last sector (inclusive)
|
||||
track.pregap = 0; // No pregap
|
||||
@@ -1057,7 +1057,7 @@ TEST_F(CreateImageFixture, create_subchannel_compressed_image)
|
||||
TrackEntry track;
|
||||
memset(&track, 0, sizeof(TrackEntry));
|
||||
track.sequence = 1; // Track 1
|
||||
track.type = Audio; // Audio track type (0)
|
||||
track.type = kTrackTypeAudio; // Audio track type (0)
|
||||
track.start = 0; // Start at sector 0
|
||||
track.end = (audio_size * 3 / 2352) - 1; // End at last sector (inclusive)
|
||||
track.pregap = 0; // No pregap
|
||||
|
||||
Reference in New Issue
Block a user