syntax = "proto2"; import "lib/common.proto"; message IbmDecoderProto { // Next: 11 message TrackdataProto { optional int32 track = 7 [(help) = "if set, the format applies only to this track"]; optional int32 head = 8 [(help) = "if set, the format applies only to this head"]; optional bool ignore_side_byte = 2 [default = false, (help) = "ignore side byte in sector header"]; optional bool ignore_track_byte = 6 [default = false, (help) = "ignore track byte in sector header"]; optional bool invert_side_byte = 4 [default = false, (help) = "invert the side byte in the sector header"]; repeated int32 ignore_sector = 10 [(help) = "sectors with these IDs will not be read"]; } repeated TrackdataProto trackdata = 1; } message IbmEncoderProto { // Next: 20 message TrackdataProto { optional int32 track = 15 [(help) = "if set, the format applies only to this track"]; optional int32 head = 16 [(help) = "if set, the format applies only to this head"]; optional bool emit_iam = 3 [default=true, (help) = "whether to emit an IAM record"]; optional double target_clock_period_us = 5 [default=4, (help) = "data clock rate on target disk"]; optional bool use_fm = 6 [default=false, (help) = "whether to use FM encoding rather than MFM"]; optional int32 idam_byte = 7 [default=0x5554, (help) = "16-bit raw bit pattern of IDAM byte"]; optional int32 dam_byte = 8 [default=0x5545, (help) = "16-bit raw bit pattern of DAM byte"]; optional int32 gap0 = 9 [default=80, (help) = "size of gap 1 (the post-index gap)"]; optional int32 gap1 = 10 [default=50, (help) = "size of gap 2 (the post-ID gap)"]; optional int32 gap2 = 11 [default=22, (help) = "size of gap 3 (the pre-data gap)"]; optional int32 gap3 = 12 [default=80, (help) = "size of gap 4 (the post-data or format gap)"]; optional bool invert_side_byte = 19 [default=false, (help) = "invert the side byte before writing"]; optional int32 gap_fill_byte = 18 [default=0x9254, (help) = "16-bit raw bit pattern of gap fill byte"]; optional double target_rotational_period_ms = 1 [default=200, (help) = "rotational period of target disk"]; } repeated TrackdataProto trackdata = 1; }