Skip to main content

VolumeTableOfContents

Struct VolumeTableOfContents 

Source
pub struct VolumeTableOfContents<'a> {
Show 16 fields pub reserved: u8, pub track_number_of_first_catalog_sector: u8, pub sector_number_of_first_catalog_sector: u8, pub release_number_of_dos: u8, pub reserved2: &'a [u8], pub diskette_volume_number: u8, pub reserved3: &'a [u8], pub maximum_number_of_track_sector_pairs: u8, pub reserved4: &'a [u8], pub last_track_where_sectors_were_allocated: u8, pub direction_of_track_allocation: i8, pub reserved5: &'a [u8], pub number_of_tracks_per_diskette: u8, pub number_of_sectors_per_track: u8, pub number_of_bytes_per_sector: u16, pub bit_map_of_free_sectors: Vec<&'a [u8]>,
}
Expand description

The Volume Table of Contents (VTOC) The VTOC contains

Fields§

§reserved: u8

Reserved

§track_number_of_first_catalog_sector: u8

Track number of first catalog sector

§sector_number_of_first_catalog_sector: u8

Sector number of first catalog sector

§release_number_of_dos: u8

Release number of DOS used to initialize disk

§reserved2: &'a [u8]

Reserved 2 bytes

§diskette_volume_number: u8

Diskette volume number (1-254)

§reserved3: &'a [u8]

Reserved 0x20 bytes

§maximum_number_of_track_sector_pairs: u8

Maximum number of track/sector pairs which will fit in one file track/sector list sector (122 for 256 byte sectors)

§reserved4: &'a [u8]

Reserved 8 bytes

§last_track_where_sectors_were_allocated: u8

Last track where sectors were allocated

§direction_of_track_allocation: i8

Direction of track allocation, +1 or -1

§reserved5: &'a [u8]

Reserved 2 bytes

§number_of_tracks_per_diskette: u8

Number of tracks per diskette (normally 35)

§number_of_sectors_per_track: u8

Number of sectors per track (13 or 16)

§number_of_bytes_per_sector: u16

Number of bytes per sector (little endian format)

§bit_map_of_free_sectors: Vec<&'a [u8]>

bytes 0x38 - 0xFF Each bit map of free sectors for a track is four bytes long There is one for each track, usually 35 in DOS 3.3 disks

Trait Implementations§

Source§

impl Display for VolumeTableOfContents<'_>

Format a Format for display

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl SanityCheck for VolumeTableOfContents<'_>

Source§

fn check(&self) -> bool

Perform a set of data-dependent sanity checks on a structure Returns true if the object passes the checks Return false if the object fails the tests

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,