Logo
~Apps~
~Projects~
~Contact~

dos33.h

Go to the documentation of this file.
00001 #define u32 unsigned int
00002 #define u8 unsigned char
00003 #define u16 unsigned short
00004 
00005 
00006 /* inode information specific to ProDOS "inodes." Note that this structure is
00007  never actually instantiated. It is simply overlaid upon inode.u.minix_i to
00008  avoid the need to modify fs.h in the standard Linux source. Obviously, this
00009  limits the prodos_inode_info structure to a size <= the size of
00010  struct minix_inode_info. */
00011 struct dos33_inode_info {
00012         u8 i_flags;
00013         u8 i_filetype;
00014         u8 i_stype;
00015         u16 i_key;
00016         u16 i_auxtype;
00017         u8 i_access;
00018 };
00019 
00020 struct dos33_track_sector{
00021    u8 track;
00022    u8 sector;
00023 } __attribute__((packed));
00024 
00025 struct dos33_vtol {
00026    u8 four;
00027    u8 catalog_track;
00028    u8 catalog_sector;
00029    u8 dos_version;
00030    u8 unused1[2];
00031    u8 volume;
00032    u8 unused2[0x20];
00033    u8 ts_pairs;
00034    u8 unused3[8];
00035    u8 last_track;
00036    u8 allocation_direction;
00037    u8 unused4[2];
00038    u8 tracks_per_disk;
00039    u8 sectors_per_track;
00040    u16 bytes_per_sector;
00041    u32 bitmaps[0x23];
00042    u8 unused5[0x3b];
00043 } __attribute__((packed));
00044 
00045 struct dos33_file_t {
00046    u8 first_tsl_track;
00047    u8 first_tsl_sector;
00048    u8 file_type;
00049    u8 file_name[0x1e];  /* high bit set, padded with spaces */
00050    u16 num_sectors;
00051 } __attribute__((packed));
00052 
00053 struct dos33_catalog_sector {
00054    u8 unused1;
00055    u8 next_track;
00056    u8 next_sector;
00057    u8 unused[8];
00058    struct dos33_file_t files[7]; 
00059 } __attribute__((packed));
00060 
00061 struct dos33_ts_list {
00062    u8 unused1;
00063    struct dos33_track_sector next;
00064    u8 unused2[2];
00065    u16 current_sectors_deep;
00066    u8 unused3[5];
00067    struct dos33_track_sector data_location[122];
00068 } __attribute__((packed));
Page, code, and content Copyright (C) 2005 by Anders Hedström
Generated on Mon Aug 29 20:21:47 2005 for C++ Sockets by  doxygen 1.4.4