Данному образовательному сайту пришлось несколько раз менять свое имя. С 2022 года доступ к нему обеспечивается по URL
emc.km.ru (2001-2007) ==> educomp.org.ru (2007-2011) ==> educomp.runnet.ru (2011-2021) ==> emc.orgfree.com (2022-...)
Более подробно об истории сайта можно прочитать здесь.
|
Основная программа
PROGRAM EPOSS; {Автор Е.А.Еремин. Пермь, 2004}
USES common, level4, crt;
VAR myLine:STRING;
BEGIN textColor(10); {ностальгический зеленый цвет}
doCommand('load '+virtualDisk); {подключить диск}
REPEAT WRITE('EPOSS>');READLN(myLine);
IF myLine<>'' THEN doCommand(myLine);
WRITELN;
UNTIL myLine='';
END.
Модуль Common с общими описаниями
UNIT common; {Автор Е.А.Еремин. Пермь, 2004}
INTERFACE
CONST (* DISK *)
dsk_bps=16; {байтов в секторе - bytes per sector}
(* FILE SYSTEM *)
fs_spc=2; {секторов в кластере - sectors per cluster}
fs_mnf=16; {максимальное число файлов - max number of files}
fs_ml=3; {максимальная длина (кластеров) - max length}
fs_bi=fs_mnf;{сектор начала информации - beginning of info}
dsk_ns=fs_mnf*fs_ml*fs_spc+fs_bi;
{общее число секторов - number of sectors}
(* CATALOG *)
cat_nam=8; {символов в имени файла}
cat_len=9; {позиция длины файла}
cat_cl0=11; {позиция первого кластера}
pusto='@'; {символ заполнения пустого сектора}
(* COMMANDS *)
N_com=13; comm:ARRAY [1..N_com] OF STRING
=('DIR','XDIR','TYPE','DEL','ERA','REN','COPY',
'CHANGE','CREATE','UNERASE','SAVE','LOAD','VER');
{стандартное имя файла с виртуальным диском}
virtualDisk='disk.txt';
TYPE mySector=STRING[dsk_bps];
myCluster=STRING[fs_spc*dsk_bps];
myFile=STRING[fs_ml*fs_spc*dsk_bps];
VAR sectors: ARRAY [0..dsk_ns-1] OF mySector;
clusterMap: ARRAY [0..dsk_ns div fs_spc - 1] OF BYTE;
IMPLEMENTATION
END.
|