DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦350cb2244⟧ TextFile

    Length: 5376 (0x1500)
    Types: TextFile
    Names: »fs3502env«

Derivation

└─⟦da1afb338⟧ Bits:30008156 SW2020 - RC3502 - File system - Rel. 1.0
    └─⟦bcdac339f⟧ 
        └─⟦this⟧ »fs3502env« 

TextFile


fs3502env;
const
ok=0;
fs_catconnection=35;fs_fileconnection=36;
fs_name_inexistant=6;fs_name_exists=5;
fs_name_error=12;fs_unauthorized=30;
fs_deleted=7;fs_filelimit=29;
fs_buffersize=21;fs_catalog_full=13;
fs_rejected=28;fs_mount_error=9;
fs_openlimit=17;fs_includelimit=18;
fs_indexlimit=15;fs_flt_overflow=8;
fs_volumelimit=16;
fs_parity=2;fs_harderror=3;
fs_disconnected=25;
fs_version=22;fs_not_implemented=23;
fs_software=14;
type
fs_pageheader_type=
record
?:double;
?:integer;
?:integer;
end;
const
fs_pageheader_size=typesize(fs_pageheader_type);
const
fs_pagesize=512;
type
fs_pagedata_type=array(1..fs_pagesize)of byte;
fs_page_type=
record
page_head:fs_pageheader_type;
data:fs_pagedata_type;
end;
fs_pagebuffer_type=
record
first,last,next:integer;
page_head:fs_pageheader_type;
data:fs_pagedata_type;
end;
const
fs_identifier_size=16;
type
fs_identifier=array(1..fs_identifier_size)of char;
const
fs_noname=fs_identifier(fs_identifier_size***" ");
type
fs_authorities=(fs_retrieve_authority,
fs_update_authority,
fs_adjust_authority,
fs_delete_authority,
fs_authorize_authority);
fs_authority_type=
record
authorizations,
inheritable,
protections:set of fs_authorities;
end;
const
fs_maxauthorities=(.fs_retrieve_authority,
fs_update_authority,
fs_adjust_authority,
fs_delete_authority,
fs_authorize_authority.);
fs_maxauthority=
fs_authority_type(fs_maxauthorities,
fs_maxauthorities,
fs_maxauthorities);
type
fs_accessmode=(fs_retrieve,fs_update,fs_exclusive);
type
fs_entrytype_type=(fs_datafile,fs_catalog);
type
fs_time=
record
date:coded_date;
time:coded_time;
end;
const
fs_file_tail_size=8;
type
fs_file_tail_type=array(1..fs_file_tail_size)of byte;
fs_file_info_type=
record
written:!integer;
allocated:!integer;
creation:!fs_time;
last_update:!fs_time;
tail:fs_file_tail_type;
end;
const
fs_entry_tail_size=5;
type
fs_entry_tail_type=array(1..fs_entry_tail_size)of byte;
fs_entry_info_type=
record
name:!fs_identifier;
authority:!fs_authority_type;
?,?:integer;
entrytype:!fs_entrytype_type;
tail:fs_entry_tail_type;
end;
const
fs_entry_info_size=typesize(fs_entry_info_type);
type
fs_file_connection=
record
?:reference;
?:reference;
?:pool 1;
?:semaphore
end;
fs_catalog_connection=
record
?:^semaphore;
?:reference;
?:reference;
?:pool 0;
?:semaphore
end;
procedure fs_mount
(device:byte;
volumename:fs_identifier;
mode:set of fs_accessmode;
var rootcat:fs_catalog_connection;
var result:byte);
external;
procedure fs_dismount
(var cat:fs_catalog_connection;
var result:byte);
external;
procedure fs_connect
(var cat:fs_catalog_connection;
name:fs_identifier;
mode:set of fs_accessmode;
var newcat:fs_catalog_connection;
var result:byte);
external;
procedure fs_disconnect
(var cat:fs_catalog_connection;
var result:byte);
external;
procedure fs_lookup
(var cat:fs_catalog_connection;
name:fs_identifier;
var entry:fs_entry_info_type;
var descriptor:fs_file_info_type;
var result:byte);
external;
procedure fs_open
(var cat:fs_catalog_connection;
name:fs_identifier;
mode:set of fs_accessmode;
var file:fs_file_connection;
var result:byte);
external;
procedure fs_close
(var file:fs_file_connection;
var result:byte);
external;
procedure fs_get
(var file:fs_file_connection;
pageno:integer;
amount:integer;
var buffer:reference;
var result:byte);
external;
procedure fs_put
(var file:fs_file_connection;
pageno:integer;
amount:integer;
var buffer:reference;
var result:byte);
external;
procedure fs_create
(var cat:fs_catalog_connection;
name:fs_identifier;
var amount:integer;
authority:fs_authority_type;
entrytype:fs_entrytype_type;
var result:byte);
external;
procedure fs_delete
(var cat:fs_catalog_connection;
name:fs_identifier;
var amount:integer;
var result:byte);
external;
procedure fs_link
(var cat:fs_catalog_connection;
name:fs_identifier;
var oldcatalog:fs_catalog_connection;
oldname:fs_identifier;
var result:byte);
external;
procedure fs_rename
(var cat:fs_catalog_connection;
name:fs_identifier;
oldname:fs_identifier;
var result:byte);
external;
procedure fs_extend
(var cat:fs_catalog_connection;
name:fs_identifier;
var amount:integer;
var result:byte);
external;
procedure fs_truncate
(var cat:fs_catalog_connection;
name:fs_identifier;
var amount:integer;
var result:byte);
external;
procedure fs_set_authority
(var cat:fs_catalog_connection;
name:fs_identifier;
authorization:set of fs_authorities;
var result:byte);
external;
procedure fs_set_inheritance
(var cat:fs_catalog_connection;
name:fs_identifier;
inheritable:set of fs_authorities;
var result:byte);
external;
procedure fs_set_protection
(var cat:fs_catalog_connection;
name:fs_identifier;
protections:set of fs_authorities;
var result:byte);
external;
procedure fs_set_tail
(var cat:fs_catalog_connection;
name:fs_identifier;
entry:fs_entry_info_type;
descriptor:fs_file_info_type;
var result:byte);
external;
.
▶EOF◀