1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-11-03 08:05:40 +00:00

Merge pull request #189 from TomHarte/CPCSystemDisks

Corrects analysis of CPC system disks
This commit is contained in:
Thomas Harte 2017-08-11 15:56:35 -04:00 committed by GitHub
commit 09716d4716

View File

@ -50,6 +50,8 @@ static void InspectDataCatalogue(
static void InspectSystemCatalogue( static void InspectSystemCatalogue(
const std::unique_ptr<Storage::Disk::CPM::Catalogue> &data_catalogue, const std::unique_ptr<Storage::Disk::CPM::Catalogue> &data_catalogue,
StaticAnalyser::Target &target) { StaticAnalyser::Target &target) {
// If this is a system disk, then launch it as though it were CP/M.
target.loadingCommand = "|cpm\n";
} }
void StaticAnalyser::AmstradCPC::AddTargets( void StaticAnalyser::AmstradCPC::AddTargets(
@ -87,12 +89,12 @@ void StaticAnalyser::AmstradCPC::AddTargets(
InspectDataCatalogue(data_catalogue, target); InspectDataCatalogue(data_catalogue, target);
} else { } else {
Storage::Disk::CPM::ParameterBlock system_format; Storage::Disk::CPM::ParameterBlock system_format;
data_format.sectors_per_track = 9; system_format.sectors_per_track = 9;
data_format.tracks = 40; system_format.tracks = 40;
data_format.block_size = 1024; system_format.block_size = 1024;
data_format.first_sector = 0x41; system_format.first_sector = 0x41;
data_format.catalogue_allocation_bitmap = 0xc000; system_format.catalogue_allocation_bitmap = 0xc000;
data_format.reserved_tracks = 2; system_format.reserved_tracks = 2;
std::unique_ptr<Storage::Disk::CPM::Catalogue> system_catalogue = Storage::Disk::CPM::GetCatalogue(target.disks.front(), system_format); std::unique_ptr<Storage::Disk::CPM::Catalogue> system_catalogue = Storage::Disk::CPM::GetCatalogue(target.disks.front(), system_format);
if(system_catalogue) { if(system_catalogue) {