You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
1.7 KiB
73 lines
1.7 KiB
#ifndef MAIN_H |
|
#define MAIN_H |
|
|
|
#define false 0 |
|
#define true 1 |
|
|
|
#define SPACE_MBR_RECORD 2048 /* Sectors*/ |
|
#define SPACE_VBR_RECORD 2048 /* Sectors*/ |
|
#define SIZE_FSCI_RECORD 1 /* Sectors*/ |
|
#define DEFAULT_ENTRY_SIZE 1 /* Sectors*/ |
|
#define SECTOR_SIZE 512 /* BYTES*/ |
|
#define NUMBER_OF_MBR_PARTITIONS 4 |
|
#define DEFAULT_FILE_SIZE 8 /* This is in sectors*/ |
|
#define DEFAULT_DATA_POINTER_SIZE 8 /* This is in sectors*/ |
|
#define DEFAULT_TABLE_SIZE 16 |
|
#define NUM_DATA_POINTERS 27 |
|
|
|
#include "std_singos/stdio.h" |
|
#include "std_singos/stdlib.h" |
|
|
|
#include "std_singos/string.h" |
|
#include "driver/disk.h" |
|
|
|
void dump_ax(input); |
|
void print_stack(argument); |
|
void print_newline(); |
|
|
|
typedef struct struct_partition_control partition_control; |
|
typedef struct File_System_Control_Information FSCI; |
|
typedef struct meta_information_format mif; |
|
typedef struct tag_record tag_record; |
|
typedef struct Parameter_Struct Parameter_Struct; |
|
|
|
|
|
typedef enum Service_Action |
|
{ |
|
SERIVCE_LOAD_DISK = 1, |
|
SERVICE_FIND_ENTRY = 2, |
|
SERIVCE_READ_DATA = 3, |
|
SERIVCE_WRITE_DATA = 4, |
|
|
|
} Service_Action; |
|
|
|
struct File_System_Control_Information |
|
{ |
|
char filesystem_information[256]; |
|
long master_table_index[2]; |
|
long this_partition_offset_on_disk[2]; |
|
long next_free_sector[2]; |
|
long next_uniqe_id[2]; /* both files and directories gets this. */ |
|
long next_sector_reuse_pointer[2]; |
|
long last_sector_index_on_partition[2]; |
|
long maximum_sectors_on_disk[2]; |
|
long sector_size_on_disk[2]; |
|
long not_used[48]; |
|
|
|
}; |
|
|
|
|
|
struct Parameter_Struct |
|
{ |
|
char* path; |
|
char* new_path; |
|
int buffer_segment; |
|
int buffer_address; |
|
int buffer_size; |
|
int data_length; |
|
int byte_offset_into_file; |
|
short entry_kind; |
|
}; |
|
|
|
#include "implementation/lsfs.h" |
|
#endif
|
|
|