|
|
DataMuseum.dkPresents historical artifacts from the history of: CR80 Hard and Floppy Disks |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CR80 Hard and Floppy Disks Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 6356 (0x18d4)
Types: TextFile
Names: »FMSPARAMS.S«
└─⟦732a9e2da⟧ Bits:30005117 8" CR80 Floppy CR80FD_0076 ( CR/D/2322 Diverse systemmoduler SWELL PREFIX F Copy af CRD2315 I K CRD2322 810225 AEK S )
└─⟦b9b5abdc9⟧
└─⟦this⟧ »SWELLPREFIX.D!FMSPARAMS.S«
"-----------------------------------------------------------------------
"
"
" MODULE NAME: FMS PARAMETERS (FMSPARAMS.S)
" MODULE ID NMB: CSS/877
" MODULE VERSION: 0106
" MODULE TYPE: PREFIX
" MERGE FILES: -
"
" SPECIFICATIONS: -
" AUTHOR/DATE: /AEK/810211
"
" DELIVERABLE: -
" SOURCE LANGUAGE: SWELL
" COMPILE COMPUTER: CR80
" TARGET COMPUTER: CR80
" OPER. SYSTEM: AMOS
"
"-----------------------------------------------------------------------
"
" CHANGE RECORD
"
" VERSION AUTHOR/DATE DESCRIPTION OF CHANGE
" ------- ----------- ---------------------
"
" 0103 MAC/801121 INITIAL RELEASE
" THIS VERSION MAKES VS0101 & VS0102 OBSOLETE
"
" 0104 AEK/801212 COMMANDS ADDED FOR THE MAGTAPE_DRIVER
" COMMANDS ADDED FOR FILE SYSTEM (#90,100,129)
"
" ERROR_CODES ADDED FOR THE FILE_SYSTEM
"
" 0105 AEK/801219 TQM_CMD CHANGED TO FIRST_TQM_CMD
" FILE_CMD_ID ALSO CHANGED
"
" 0106 AEK/810211 COMMANDS ADDED FOR RESERVE AND RELEASE
" ERROR_CODES ADDED FOR THE FILE_SYSTEM
"-----------------------------------------------------------------------
"PAGE«ff»
" NOTE: THIS PREFIX CANNOT BE USED IF THE PREFIX IOSPARAMS.S IS INCLUDED."
" ===="
"FILE MANAGER COMMAND IDENTIFICATIONS"
"------------------------------------"
CONST
USER_ON_CMD = 2;
USER_OFF_CMD = 4;
ASSIGN_CMD = 8;
ASSIGNDUAL_CMD = 9;
DEASSIGN_CMD = 10;
DISCARD_CMD = 11;
RESERVE_CMD = 12;
RELEASE_CMD = 13;
MOUNT_CMD = 14;
DISMOUNT_CMD = 16;
UPDATE_CMD = 17;
GET_ROOT_CMD = 18;
SET_VOL_THRESHOLD_CMD = 19;
GET_VOL_INF_CMD = 21;
CREATE_CMD = 22;
DISMANTLE_CMD = 24;
RESET_CMD = 26;
OFFER_CMD = 28;
ACCEPT_CMD = 30;
PROTECT_CMD = 34;
SET_FILE_THRESHOLD_CMD = 35;
GET_FILE_INF_CMD = 36;
ENTER_CMD = 38;
LOOKUP_CMD = 40;
DESCENT_CMD = 42;
RENAME_CMD = 44;
REMOVE_CMD = 46;
READ_BYTES_CMD = 50;
MODIFY_BYTES_CMD = 52;
APPEND_BYTES_CMD = 54;
READ_SECTORS_CMD = 60;
WRITE_SECTORS_CMD = 62;
WRITE_AND_PROTECT_CMD = 64;
WRITE_AND_MARK_CMD = 66;
FORMAT_CMD = 70;
MTINIT_CMD = 80;
MTMOUNT_CMD = 81;
MTDISMOUNT_CMD = 82;
MTCREATE_CMD = 83;
MTFINDFILE_CMD = 84;
REWIND_CMD = 85;
MTSKIPFILES_CMD = 86;
MTSKIPRECS_CMD = 88;
FIRST_TQM_CMD = 90;
FIRST_CRAM_CMD = 100;
LAST_CRAM_CMD = 129;
TYPE
FM_CMD_ID = USER_ON_CMD..FIRST_TQM_CMD - 1;
USER_NAME = RECORD
USER_ID : INTEGER; "IDENTITY OF THE USER"
PROC_ID : INTEGER; "IDENTITY OF USER'S PROCESS"
END "USER_NAME";
BYTE_POSN = (LOW_BYTE, HIGH_BYTE);
WORD = ARRAY [BYTE_POSN] OF BYTE;
TWO_CHARS = WORD; "TWO CHARACTERS PACKED INTO A WORD
CONST
DEV_NAME_SIZE = 4;
TYPE
DEVICE_NAME = ARRAY [0..DEV_NAME_SIZE/2-1] OF TWO_CHARS;
CONST
VOL_NAME_SIZE = 16;
TYPE
VOLUME_NAME = ARRAY [0..VOL_NAME_SIZE/2-1] OF TWO_CHARS;
FILE_CMD = RECORD
CMD_ID : FM_CMD_ID;
CALLER : USER_NAME;
FILE_1 : INTEGER;
FILE_2 : INTEGER;
FIRST_BYTE : LONG;
BYTE_COUNT : LONG;
END;
SECT_CMD = RECORD
CMD_ID : FM_CMD_ID;
CALLER : USER_NAME;
DEV_NAME : DEVICE_NAME;
FIRST_SECT : LONG;
SECT_COUNT : LONG;
END;
REPLY = RECORD
RESULT : INTEGER; "COMPLETION CODE"
RESULT_PAR : LONG; "COMMAND DEPENDANT RESULT PARAMETER"
END "REPLY";
"FMS COMPLETION CODES
CONST
NONEXISTING_DEVICE = #400; ILLEGAL_DEVICE_KIND = #401;
ILLEGAL_CR80_ADDR = #402; DEVICE_NAME_IN_USE = #403;
ILLEGAL_UNIT = #404; ILLEGAL_SUBUNIT = #405;
WRONG_VOLUME_NAME = #406; NONEXISTING_VOLUME = #407;
VOLUME_MOUNTED = #408; DIFFERENT_VOLUMES = #409;
ILLEGAL_FILE = #40A; ILLEGAL_ORGANIZATION = #40B;
ILLEGAL_ALLOC_SIZE = #40C; ILLEGAL_AREA_SIZE = #40D;
ILLEGAL_WRITE = #40E;
FILES_OPEN = #410; NO_FILE_TO_ACCEPT = #411;
NONEXISTING_USER = #412; USER_ALREADY_ACTIVE = #413;
NO_CONNECTION = #414;
ILLEGAL_CALLER = #416; OTHER_USERS = #417;
OUT_OF_RANGE = #419;
DISK_DRIVER_FAILURE = #41A; FILE_FULL = #41B;
ACL_FULL = #41C; PROTECTION_FAILURE = #41D;
ILLEGAL_DIRECTORY = #420; NAME_EXISTS = #421;
NONEXISTING_NAME = #422; NOT_ALLOCATABLE = #423;
VOL_THRESHOLD_EXCEEDED = #424; FILE_THRESHOLD_EXCEEDED = #425;
VOL_THRESHOLD_TOO_LARGE = #426;
ILLEGAL_FILE_INF_TYPE = #428; BOTH_DISKS_OK = #429;
CANNOT_DISCARD_DISK_0 = #42A; CANNOT_DISCARD_DISK_1 = #42B;
UNKNOWN_COMMAND = #42C;
BAD_SECTOR_TABLE_FULL = #42E; UNIT_IS_IN_USE = #42F;
VOLUME_NAME_IS_IN_USE = #430; DEVICE_NOT_RESERVED = #431;
DEVICE_ALREADY_RESERVED = #432;
WRITE_PROTECTED_DEVICE = #442; UNEXPEC_DISK_I_F_STATUS = #443;
DATA_OR_SYNC_ERROR = #444; ADDRESS_OR_SYNC_ERROR = #445;
BAD_SECTOR = #446; WRITE_PROTECTED_SECTOR = #447;
ILLEGAL_SECTOR = #448; TIMING_ERROR = #449;
SUBBUS_OVERRUN = #44A; PARITY_ERROR = #44B;
BAD_SECTOR_READ = #44C; BAD_HOME_BLOCK = #44D;
"END OF FMSPARAMS