21struct RomSignature { RomType type; isize size; isize offset; u8 magic[3]; };
23class RomFile :
public AnyFile {
28 static const RomSignature signatures[];
31 FileType romFileType = FILETYPE_UNKNOWN;
39 static bool isCompatible(
const fs::path &name);
40 static bool isCompatible(std::istream &stream);
42 static bool isRomStream(RomType type, std::istream &stream);
43 static bool isBasicRomStream(std::istream &stream);
44 static bool isCharRomStream(std::istream &stream);
45 static bool isKernalRomStream(std::istream &stream);
46 static bool isVC1541RomStream(std::istream &stream);
48 static bool isRomFile(RomType type,
const fs::path &path);
49 static bool isBasicRomFile(
const fs::path &path);
50 static bool isCharRomFile(
const fs::path &path);
51 static bool isKernalRomFile(
const fs::path &path);
52 static bool isVC1541RomFile(
const fs::path &path);
54 static bool isRomBuffer(RomType type,
const u8 *buf, isize len);
55 static bool isBasicRomBuffer(
const u8 *buf, isize len);
56 static bool isCharRomBuffer(
const u8 *buf, isize len);
57 static bool isKernalRomBuffer(
const u8 *buf, isize len);
58 static bool isVC1541RomBuffer(
const u8 *buf, isize len);
65 RomFile(
const fs::path &path)
throws { init(path); }
66 RomFile(
const fs::path &path, std::istream &stream)
throws { init(path, stream); }
67 RomFile(
const u8 *buf, isize len)
throws { init(buf, len); }
74 const char *objectName()
const override {
return "RomFile"; }
81 bool isCompatiblePath(
const fs::path &path)
override {
return isCompatible(path); }
82 bool isCompatibleStream(std::istream &stream)
override {
return isCompatible(stream); }
83 FileType type()
const override {
return romFileType; }
84 void finalizeRead()
override;
VirtualC64 project namespace.
Definition CmdQueue.cpp:16