|
Classes |
| struct | dir_entry |
Defines |
| #define | MAX_CLUSTER_SIZE 4096 |
| #define | MAX_ROOT_ENTRIES 512 |
| #define | FAT_START 512L |
| #define | ROOTADDR (FAT_START + 2L * fat_size) |
| #define | clus_add(cl_no) |
| #define | NOT_USED 0x00 |
| #define | ERASED 0xE5 |
| #define | DIR 0x2E |
| #define | DIR_SIZE (sizeof (struct dir_entry)) |
| #define | SUB_DIR 0x10 |
| #define | NIL_DIR ((DIRECTORY *) 0) |
| #define | LAST_CLUSTER12 0xFFF |
| #define | LAST_CLUSTER 0xFFFF |
| #define | FREE 0x000 |
| #define | BAD 0xFF0 |
| #define | BAD16 0xFFF0 |
| #define | TRUE 1 |
| #define | FALSE 0 |
| #define | NIL_PTR ((char *) 0) |
| #define | DOS_TIME 315532800L |
| #define | READ 0 |
| #define | WRITE 1 |
| #define | FIND 3 |
| #define | LABEL 4 |
| #define | ENTRY 5 |
| #define | find_entry(d, e, p) directory(d, e, FIND, p) |
| #define | list_dir(d, e, f) (void) directory(d, e, f, NIL_PTR) |
| #define | label() directory(root, root_entries, LABEL, NIL_PTR) |
| #define | new_entry(d, e) directory(d, e, ENTRY, NIL_PTR) |
| #define | is_dir(d) ((d)->d_attribute & SUB_DIR) |
| #define | STD_OUT 1 |
| #define | DRIVE_NR (sizeof (drive) - 2) |
| #define | COOKED_SIZE 8192 |
| #define | SEC_MIN 60L |
| #define | SEC_HOUR (60L * SEC_MIN) |
| #define | SEC_DAY (24L * SEC_HOUR) |
| #define | SEC_YEAR (365L * SEC_DAY) |
| #define | SEC_LYEAR (366L * SEC_DAY) |
| #define | HOUR 0xF800 |
| #define | MIN 0x07E0 |
| #define | YEAR 0xFE00 |
| #define | MONTH 0x01E0 |
| #define | DAY 0x01F |
Typedefs |
| typedef struct dir_entry | DIRECTORY |
| typedef int | BOOL |
Functions |
| | _PROTOTYPE (void usage,(char *prog_name)) |
| | _PROTOTYPE (unsigned c2u2,(unsigned char *ucarray)) |
| | _PROTOTYPE (unsigned long c4u4,(unsigned char *ucarray)) |
| | _PROTOTYPE (void determine,(void)) |
| | _PROTOTYPE (int main,(int argc, char *argv[])) |
| | _PROTOTYPE (DIRECTORY *directory,(DIRECTORY *dir, int entries, BOOL function, char *pathname)) |
| | _PROTOTYPE (void extract,(DIRECTORY *entry)) |
| | _PROTOTYPE (void make_file,(DIRECTORY *dir_ptr, int entries, char *name)) |
| | _PROTOTYPE (char *make_name,(DIRECTORY *dir_ptr, int dir_fl)) |
| | _PROTOTYPE (int fill,(char *buffer, size_t size)) |
| | _PROTOTYPE (void xmodes,(int mode)) |
| | _PROTOTYPE (void show,(DIRECTORY *dir_ptr, char *name)) |
| | _PROTOTYPE (DIRECTORY *read_cluster,(unsigned int cluster)) |
| | _PROTOTYPE (unsigned short free_cluster,(BOOL leave_fl)) |
| | _PROTOTYPE (void link_fat,(unsigned int cl_1, unsigned int cl_2)) |
| | _PROTOTYPE (unsigned short next_cluster,(unsigned int cl_no)) |
| | _PROTOTYPE (char *slash,(char *str)) |
| | _PROTOTYPE (void add_path,(char *file, BOOL slash_fl)) |
| | _PROTOTYPE (void disk_io,(BOOL op, unsigned long seek, void *address, unsigned bytes)) |
| | _PROTOTYPE (void read_fat,(unsigned int cl_no)) |
| | _PROTOTYPE (BOOL free_range,(unsigned short *first, unsigned short *last)) |
| | _PROTOTYPE (long lmin,(long a, long b)) |
| void | usage (char *prog_name) |
| unsigned | c2u2 (unsigned char *ucarray) |
| unsigned long | c4u4 (unsigned char *ucarray) |
| void | determine () |
| int | main (int argc, argv) |
| DIRECTORY * | directory (DIRECTORY *dir, int entries, int function, char *pathname) |
| void | extract (DIRECTORY *entry) |
| long | lmin (long a, long b) |
| void | make_file (DIRECTORY *dir_ptr, int entries, char *name) |
| void | fill_date (DIRECTORY *entry) |
| char * | make_name (DIRECTORY *dir_ptr, short dir_fl) |
| int | fill (char *buffer, size_t size) |
| void | xmodes (int mode) |
| void | show (DIRECTORY *dir_ptr, char *name) |
| void | free_blocks () |
| DIRECTORY * | read_cluster (unsigned int cluster) |
| BOOL | free_range (unsigned short *first, unsigned short *last) |
| unsigned short | free_cluster (BOOL leave_fl) |
| void | read_fat (unsigned int cl_no) |
| void | flush_fat () |
| void | link_fat (unsigned int cl_1, unsigned int cl_2) |
| unsigned short | next_cluster (unsigned int cl_no) |
| char * | slash (char *str) |
| void | add_path (char *file, BOOL slash_fl) |
| void | disk_io (BOOL op, unsigned long seek, void *address, unsigned bytes) |
Variables |
| char * | cmnd |
| unsigned short | mon_len [] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31} |
| char * | month [] |
| char | dosread_c_rcs_id [] |