diff --git a/Analyser/Static/Acorn/StaticAnalyser.cpp b/Analyser/Static/Acorn/StaticAnalyser.cpp index b3cc7f52c..ac4407ad4 100644 --- a/Analyser/Static/Acorn/StaticAnalyser.cpp +++ b/Analyser/Static/Acorn/StaticAnalyser.cpp @@ -108,15 +108,20 @@ Analyser::Static::TargetList Analyser::Static::Acorn::GetTargets(const Media &me dfs_catalogue = GetDFSCatalogue(disk); if(dfs_catalogue == nullptr) adfs_catalogue = GetADFSCatalogue(disk); if(dfs_catalogue || adfs_catalogue) { + // Accept the disk and determine whether DFS or ADFS ROMs are implied. target->media.disks = media.disks; - target->has_dfs = !!dfs_catalogue; - target->has_adfs = !!adfs_catalogue; + target->has_dfs = bool(dfs_catalogue); + target->has_adfs = bool(adfs_catalogue); + // Check whether a simple shift+break will do for loading this disk. Catalogue::BootOption bootOption = (dfs_catalogue ?: adfs_catalogue)->bootOption; - if(bootOption != Catalogue::BootOption::None) + if(bootOption != Catalogue::BootOption::None) { target->should_shift_restart = true; - else + } else { target->loading_command = "*CAT\n"; + } + + // TODO: check whether adding the AP6 ROM is justified. } } diff --git a/ROMImages/Electron/readme.txt b/ROMImages/Electron/readme.txt index accfc031e..995145ee9 100644 --- a/ROMImages/Electron/readme.txt +++ b/ROMImages/Electron/readme.txt @@ -4,13 +4,41 @@ Expected files: basic.rom os.rom -plus1.rom -DFS-1770-2.20.rom -ADFS-E00_1.rom +DFS-1770-2.20.rom — used only if the user opens a DFS disk image +ADFS-E00_1.rom — used only if the user opens an ADFS disk image ADFS-E00_2.rom +AP6v133.rom — used only if the user opens a disk image that makes use of any of the commands given below. -Likely to be desired in the future: +Possibly to be desired in the future: +* adfs.rom +* ElectronExpansionRomPresAP2-v1.23.rom +* os300.rom -adfs.rom -ElectronExpansionRomPresAP2-v1.23.rom -os300.rom +Commands that trigger a request for the AP6v133 ROM: +* *AQRPAGE +* *BUILD +* *DUMP +* *FORMAT +* *INSERT +* *LANG +* *LIST +* *LOADROM +* *LOCK +* *LROMS +* *RLOAD +* *ROMS +* *RSAVE +* *SAVEROM +* *SRLOAD +* *SRLOCK +* *SRPAGE +* *SRSAVE +* *SRUNLOCK +* *SRWIPE +* *TUBE +* *TYPE +* *UNLOCK +* *UNPLUG +* *UROMS +* *VERIFY +* *ZERO \ No newline at end of file