1
0
mirror of https://github.com/RevCurtisP/C02.git synced 2024-11-22 01:31:33 +00:00
C02/include/run6502/dirent.h02
2020-10-14 10:59:25 -04:00

54 lines
1.5 KiB
Plaintext

/**********************************************************
* dirent - Directory Entries Module for run6502 emulator *
**********************************************************/
/* File Attributes */
struct attrs {char arch, hidden, rdonly, subdir, system;};
const char attrd[]; //Single Character Descriptions
/* Timestamp - Matches module time.h02 structure tm */
struct ts {char year, month, day, hour, minute, second;};
/* Directory Entry */
struct dirent {
struct attrs attr; //File Attributes
struct ts time; //Timestamp
int size; //Size in Bytes
char name[128]; //Entry Filename
};
/* Directory Header */
struct dirhdr {
char name[128]; //Header Name
};
/* Open Directory for Reading *
* Args: char d - Drive | Disk *
* int &n - Directory Name *
* Returns: char f - Channel *
* 0 = Not Opened *
* char e - Error, 0=None */
char opndir();
/* Read Disk/Directory Header *
* Args: char f - Directory Channel *
* int &s - dirhdr Struct *
* Returns: char n - Length of Header *
* 0 = N/A or Error *
* char e - Error, 0=None */
char rdhdr();
/* Read Directory Entry *
* Args: char f - Directory Channel *
* int &s - dirent Struct *
* Returns: char n - Length of Entry *
* 0 = EOF or Error *
* char e - Error, 0=None */
char rddir();
/* Close Directory Channel *
* Args: char f - Directory Channel *
* Returns: char e - Error, 0=None */
char clsdir();