mirror of
https://github.com/davidgiven/fluxengine.git
synced 2025-10-31 11:17:01 -07:00
112 lines
2.6 KiB
Protocol Buffer
112 lines
2.6 KiB
Protocol Buffer
syntax = "proto2";
|
|
|
|
import "lib/common.proto";
|
|
import "lib/layout.proto";
|
|
|
|
message AcornDfsProto
|
|
{
|
|
enum Flavour
|
|
{
|
|
UNDEFINED = 0;
|
|
ACORN_DFS = 1;
|
|
}
|
|
|
|
optional Flavour flavour = 1
|
|
[ default = ACORN_DFS, (help) = "which flavour of DFS to implement" ];
|
|
}
|
|
|
|
message Brother120FsProto {}
|
|
|
|
message FatFsProto {}
|
|
|
|
message CpmFsProto
|
|
{
|
|
message Location
|
|
{
|
|
optional uint32 track = 1 [ (help) = "track number" ];
|
|
optional uint32 side = 2 [ (help) = "side number" ];
|
|
optional uint32 sector = 3 [ (help) = "sector ID" ];
|
|
}
|
|
|
|
message Padding
|
|
{
|
|
optional uint32 amount = 1
|
|
[ (help) = "number of sectors of padding to insert" ];
|
|
optional uint32 every = 2
|
|
[ (help) = "insert padding after this many sectors" ];
|
|
}
|
|
|
|
optional Location filesystem_start = 1
|
|
[ (help) = "position of the start of the filesystem" ];
|
|
optional int32 block_size = 2 [ (help) = "allocation block size" ];
|
|
optional int32 dir_entries = 3
|
|
[ (help) = "number of entries in the directory" ];
|
|
optional Padding padding = 4
|
|
[ (help) = "wasted sectors not considered part of the filesystem" ];
|
|
}
|
|
|
|
message AmigaFfsProto {}
|
|
|
|
message MacHfsProto {}
|
|
|
|
message CbmfsProto
|
|
{
|
|
optional uint32 directory_track = 1 [
|
|
default = 17,
|
|
(help) = "which track the directory is on (zero-based numbering)"
|
|
];
|
|
}
|
|
|
|
message ProdosProto {}
|
|
|
|
message AppledosProto {
|
|
optional uint32 filesystem_offset_sectors = 1 [
|
|
default = 0,
|
|
(help) = "offset the entire offset up the disk this many sectors"
|
|
];
|
|
}
|
|
|
|
message Smaky6FsProto {}
|
|
|
|
message PhileProto {
|
|
optional uint32 block_size = 1 [
|
|
default = 1024,
|
|
(help) = "Phile filesystem block size"
|
|
];
|
|
}
|
|
|
|
// NEXT_TAG: 14
|
|
message FilesystemProto
|
|
{
|
|
enum FilesystemType {
|
|
NOT_SET = 0;
|
|
ACORNDFS = 1;
|
|
BROTHER120 = 2;
|
|
FATFS = 3;
|
|
CPMFS = 4;
|
|
AMIGAFFS = 5;
|
|
MACHFS = 6;
|
|
CBMFS = 7;
|
|
PRODOS = 8;
|
|
SMAKY6 = 9;
|
|
APPLEDOS = 10;
|
|
PHILE = 11;
|
|
}
|
|
|
|
optional FilesystemType type = 10 [default = NOT_SET, (help) = "filesystem type"];
|
|
|
|
optional AcornDfsProto acorndfs = 1;
|
|
optional Brother120FsProto brother120 = 2;
|
|
optional FatFsProto fatfs = 3;
|
|
optional CpmFsProto cpmfs = 4;
|
|
optional AmigaFfsProto amigaffs = 5;
|
|
optional MacHfsProto machfs = 6;
|
|
optional CbmfsProto cbmfs = 7;
|
|
optional ProdosProto prodos = 8;
|
|
optional AppledosProto appledos = 12;
|
|
optional Smaky6FsProto smaky6 = 11;
|
|
optional PhileProto phile = 13;
|
|
|
|
optional SectorListProto sector_order = 9 [(help) = "specify the filesystem order of sectors"];
|
|
}
|