IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> C for PDP-11, Документация и софт
SuperMax
сообщение 19.3.2024, 18:52
Сообщение #1


Администратор
*****

Группа: Root Admin
Сообщений: 6 286
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Документация


ЛЕНИНГРАДСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ФАКУЛЬТЕТ ПМ-ПУ, КАФЕДРА МЕХАНИКИ УПРАВЛЯЕМОГО ДВИЖЕНИЯ
КОВРИГИН Д.А.
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ СМ ЭВМ
ОПЕРАЦИОННАЯ СИСТЕМА С РАЗДЕЛЕНИЕМ ФУНКЦИЙ
РАФОС
ЯЗЫК СИ
РУКОВОДСТВО ОПЕРАТОРА
КНИГА 1

Прикрепленный файл  CCOPR.txt ( 59.75 килобайт ) Кол-во скачиваний: 45



СИСТЕМА ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ "С"
ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ РАФОС
ВЕРСИЯ 1.2
КНИГА 1
РУКОВОДСTВО ПРОГРАММИСТА

Прикрепленный файл  CCPROG.txt ( 69.92 килобайт ) Кол-во скачиваний: 36



СИСТЕМА ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ "С"
ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ Р А Ф О С
ВЕРСИЯ 1.2
КНИГА 2
ОСОБЕННОСТИ РЕАЛИЗАЦИИ

Прикрепленный файл  CCSPC.txt ( 34.33 килобайт ) Кол-во скачиваний: 35



СИСТЕМА ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ "С"
ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ РАФОС
ВЕРСИЯ 1.2
КНИГА 3
СТАНДАРТНАЯ БИБЛИОТЕКА

Прикрепленный файл  CXLIB.txt ( 93.9 килобайт ) Кол-во скачиваний: 34



СИСТЕМА ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ "С"
ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ Р А Ф О С
ВЕРСИЯ 1.2
КНИГА 4
БИБЛИОТЕКА СИСТЕМНЫХ ВЫЗОВОВ
И СИСТЕМНОЗАВИСИМЫХ ФУНКЦИЙ ОС РАФОС

Прикрепленный файл  CRLIB.txt ( 36.33 килобайт ) Кол-во скачиваний: 34



СИСТЕМА ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ "С"
ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ Р А Ф О С
ВЕРСИЯ 1.2
КНИГА 5
БИБЛИОТЕКА СИСТЕМНЫХ ВЫЗОВОВ
TS-МОНИТОРА ОС РАФОС

Прикрепленный файл  CTLIB.txt ( 7.32 килобайт ) Кол-во скачиваний: 32



СИСТЕМА ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ "С"
ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ РАФОС
ВЕРСИЯ 1.2
КНИГА 6
БИБЛИОТЕКА АВТОНОМНОЙ ПОДДЕРЖКИ

Прикрепленный файл  CALIB.txt ( 7.67 килобайт ) Кол-во скачиваний: 29


СИСТЕМА ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ "С"
ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ Р А Ф О С
ВЕРСИЯ 1.2
КНИГА 7
БИБЛИОТЕКА НЕПОСРЕДСТВЕННОГО ДОСТУПА К ФАЙЛАМ

Прикрепленный файл  CDIO.txt ( 8.21 килобайт ) Кол-во скачиваний: 31




СИСТЕМА ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ "С"
ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ Р А Ф О С
ВЕРСИЯ 1.2
КНИГА 8
БИБЛИОТЕКА МАТЕМАТИЧЕСКИХ ФУНКЦИ
Й
Прикрепленный файл  CMLIB.txt ( 9.46 килобайт ) Кол-во скачиваний: 32


СИСТЕМА ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ "С"
ДЛЯ ОПЕРАЦИОННОЙ СИСТЕМЫ РАФОС
ВЕРСИЯ 1.2
КНИГА 9
БИБЛИОТЕКА ЭКРАННЫХ ФУНКЦИЙ

Прикрепленный файл  CSLIB.txt ( 40.22 килобайт ) Кол-во скачиваний: 31





--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SuperMax
сообщение 19.3.2024, 19:07
Сообщение #2


Администратор
*****

Группа: Root Admin
Сообщений: 6 286
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Перевод сообщений транслятора
языка СИ / CC.SAV, 231 блок/.
24-10-88 Author: Solntsev S. 535-16-66
Прикрепленный файл  CC_ERR.TXT ( 12.32 килобайт ) Кол-во скачиваний: 32



ДАННЫЙ ДОКУМЕНТ ОПИСЫВАЕТ ПАКЕТ БИБЛИОТЕЧНЫХ ФУНКЦИЙ, ПОЗВОЛЯЮЩИХ
ПОЛЬЗОВАТЕЛЮ ДЛЯ РАЗЛ)ЧНЫХ ТИПОВ ТЕРМИНАЛОВ
- ОПТИМАЛЬНО ОБНОВЛЯТЬ ЭКРАН
- ОСУЩЕСТВЛЯТЬ ВВОД С ТЕРМИНАЛА С ОРИЕНТАЦИЕЙ НА ЭКРАН
ОПТИМАЛЬНО ПЕРЕМЕЩАТЬ УКАЗАТЕЛЬ ОТ ОДНОЙ ТОЧКИ ЭКРАНА К ДРУГОЙ.
ВСЯ ИНФОРМАЦИЯ О ВОЗМОЖНОСТЯХ И КОМАНДАХ КОНКРЕТНОГО Т)ПА ТЕРМИНАЛА
СОСРЕДОТОЧЕНА В ОДНОМ ФАЙЛЕ И ЛЕГКО МОДИФИЦИРУЕМА.
Прикрепленный файл  CC_LIB.TXT ( 37.53 килобайт ) Кол-во скачиваний: 32

Прикрепленный файл  CCSBIB.doc ( 39.7 килобайт ) Кол-во скачиваний: 43



Приложение А: справочное руководство по языку "C"
Прикрепленный файл  CC2916.doc ( 59.74 килобайт ) Кол-во скачиваний: 43

Прикрепленный файл  CC2917.doc ( 42.68 килобайт ) Кол-во скачиваний: 40





III.C БИБЛИОТЕКА ИНТЕРФЕЙСА С СИСТЕМОЙ RT-11
/RT-11 System interface library/

СОДЕРЖАНИЕ

Интерфейс с системой RT-11
Соглашения по связи со стандартными функциями
С - драйвер компиляторов для ПАСКАЛЯ и СИ
Компоновщик СИ-программ
Функция _main
Имя программы _pname
close - закрытие файла
create - резервирование входа для файла
emt - вызов системы (программный запрос)
emt375 - программный запрос 375
exit - завершение выполнения программы
fcall - вызов программы на ФОРТРАНе
lseek - установка указателя файла для чтения/записи
mkexec - преобразование имени файла к виду, обеспечивающему
возможность его запуска на выполнение
onexit - вызов функции при завершении программы
onintr - захват прерывания
open - открытие файла
rad50 - преобразование ASCII в RAD50
read - чтение из файла
remove - удаление файла
sbreak - установка системного брека
uname - создание уникального имени файла
write - запись в файл
Прикрепленный файл  BIB3C.txt ( 31.68 килобайт ) Кол-во скачиваний: 14




II. СИ - переносимая библиотека времени выполнения

СОДЕРЖАНИЕ

CONVENTIONS - использование Си со стандартными библиотеками
STD.H стандартный файл заголовка
CIO подпрограммы ввода-вывода Си
FIO структура (элемент Си) файла ввода/вывода
ABS находит абсолютное значение
ALLOC распределяет пространство в "куче"
(динамическая память)
AMATCH ищет базовый шаблон регулярного выражения
ARCTAN арктангенс
BLDKS строит каталог ключей по ключам
BTOD преобразует буфер в DOUBLE
BTOI преобразует буфер в INTEGER
BTOL преобразует буфер в LONG
BTOS преобразует буфер в SHORT INTEGER
BUYBUF назначает память ячейке и копирует ее в текстовой
буфер
CMPBUF сравнивает два буфера на равенство
CMPSTR сравнивает две строки на равенство
COS косинус в радианах
CPYBUF копирует один буфер на другой
CPYST копирует копирует несколько строк
DECODE преобразует аргументы в текст по формату
DECRYPT декодирует зашифрованный блок текста
DOESC обрабатывает знаковые ESC-последовательности
DTENTO умножает DOUBLE на степень десяти
DTOE преобразует DOUBLE в буфер в Е-формате
DTOF преобразует DOUBLE в буфер в F-формате
ENCODE преобразует текст в аргументы по формату
ENCRYPT кодирует блок текста
ENTER открывает управляющую область
ERRFMT форматирует выход в файл ошибок
ERROR печатает сообщение об ошибке и осуществляет выход
EXP экспонента
FCLOSE закрывает файл, управляемый FIO-буфером
FCREATE создает файл и инициализирует управляющий буфер
FILL распространяет на весь буфер заполняющий знак
FINIT инициализирует управляющий FIO-буфер
FOPEN открывает файл и инициализирует управляющий буфер
FREAD читает, пока не заполнится счетчик
FREE освобождает пространство в куче
FRELST освобождает список назначенных ячеек
GETBFILES собирает файлы из командной строки
GETC берет знак из входного буфера
GETCH берет знак из входного буфера STDIN
GETF читает вход по формату
GETFILES собирает текстовые файлы из командной строки
GETFLAGS собирает флаги из командной строки
GETFMT вводит по формату из STDIN
GETL берет текстовую строку во входной буфер
GETLIN берет текстовую строку из STDIN
INBUF находит первое появление в буфере знака из набора
INSTR находит первое появление в строке знака из набора
ISALPHA проверка на знак алфавита
ISDIGIT проверка на цифру
ISLOWER проверка на знак нижнего регистра
ISUPPER проверка на знак верхнего регистра
ISWHITE проверка на знак пробела
ITOB преобразует целое в текст в буфере
ITOLS преобразует целое в строку с ведущим младшим байтом
LEAVE освобождает управляющую область
LENSTR находит длину строки
LN натуральный логарифм
LOWER преобразует знак в буфере в знак нижнего регистра
LSTOI преобразует строку с ведущим младшим байтом в целое
LSTOL преобразует системную дату в LONG
LTOB преобразует LONG в текст в буфере
LTOLS преобразует LONG в системную дату
MAPCHAR преобразует одиночный знак в печатное представление
MATCH ищет по шаблону регулярное выражение
MAX проверка на максимум
MIN проверка на минимум
MKORD строит упорядочивающую функцию
NALLOC назначает пространство для кучи
NOTBUF находит первое появление в буфере знака не в наборе
NOTSTR находит первое появление в буфере знака из набора
ORDBUF сравнивает в лексикографическом порядке два буфера,
дополненные нулевыми байтами(NUL)
PATHNM завершает формирование имени пути
PATTERN строит шаблон регулярного выражения
PREFIX проверяет является ли данная строка началом другой
PUTC помещает знак в выходной буфер
PUTCH помещает знак в буфер STDOUT
PUTF выводит аргументы по формату
PUTFMT форматирует аргументы для STDOUT
PUTL выводит текстовую строку из буфера
PUTLIN помещает текстовую строку в STDOUT
PUTSTR копирует несколько строк в файл
REMARK печатает сообщение о нефатальной ошибке
SCNBUF просматривает буфер на наличие знака
SCNSTR просматривает строку на наличие знака
SIN синус в радианах
SORT сортирует что-либо в памяти
SQRT вещественный квадратный корень
SQUEEZE стирает заданные знаки из буфера
STDIN управляющий буфер стандартного входа
STDOUT управляющий буфер стандартного выхода
STOB преобразует SHORT в текст в буфере
SUBBUF находит появление подстроки в буфере
TOLOWER преобразует знак к нижнему регистру, если надо
TOUPPER преобразует знак к верхнему регистру, если надо
USAGE выводит стандартную информацию об использовании
CONVENTIONS - использование Си со стандартными библиотеками

Прикрепленный файл  CIILIB.txt ( 156.65 килобайт ) Кол-во скачиваний: 13




III. Библиотека системного интерфейса С.


Содержание:

Cint Интерфейс С с операционной системой.
main Вводит С - программу.
_pname Имя программы.
close Закрывает файл.
create Создает пустое требование для файла.
exit Заканчивает выполнение программы.
lseek Устанавливает указатель чтения/записи в файле.
mkexec Делает файл выполняемым.
onexit Вызывает функцию при выходе из программы.
onintr Захватывает прерывания.
open Открывает файл.
read Читает символ из файла.
remove Удаляет файл.
sbreak Устанавливает системный брек.
uname Создает уникальное имя файла.
write Записывает символ в файл.
Cint - интерфейс С с операционной системой.

Прикрепленный файл  LIBIII.txt ( 8.16 килобайт ) Кол-во скачиваний: 13





IV. Библиотека аппаратной поддержки для RT-11
/ Machine Support Library for PDP-11 /

Содержание:

Соглашения по библиотеке времени выполнения на PDP-11.
c~count - фиктивный счетчик для программы профилирования.
c~dadd - прибавление double к double.
c~dcmp - сравнение двух величин типа double.
c~ddiv - деление double на double.
c~dmul - умножение double на double.
c~dneg - изменение знака переменной типа double.
c~done - литерал "1" типа double.
c~dsub - вычитание double из double.
c~dtf - преобразование double в float.
c~exch - перестановка указателей на стек.
c~fac - аккумуляторы для величин типа float.
c~ilsh - левый сдвиг числа со знаком.
c~irsh - правый сдвиг числа со знаком.
c~ldiv - деление long на long.
c~lils - левый сдвиг числа типа long.
c~lirs - правый сдвиг числа типа long.
c~lmod - деление long на long с возвратом остатка.
c~mul - умножение long на long.
c~lret - возврат из функции времени выполнения типа long.
c~ltd - преобразование long в double.
c~lxor - исключенное "или" двух аргументов типа long.
c~repk - упаковка числа типа double.
c~ret - возврат из С-функции.
c~rets - возврат из С-функции.
c~sav - сохранение регистров при входе в С-функцию.
c~switch - выполнение оператора switch языка С.
c~uldiv - деление unsigned long.
c~ulirs - правый сдвиг для unsigned long.
c~ulmod - деление unsigned long на unsigned long с остатком того
же типа / unsigned long /.
c~ultd - преобразование unsigned long в double.
c~unpk - распаковка числа типа double.

Прикрепленный файл  MSLIB.txt ( 30.86 килобайт ) Кол-во скачиваний: 14







--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SuperMax
сообщение 19.3.2024, 19:12
Сообщение #3


Администратор
*****

Группа: Root Admin
Сообщений: 6 286
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Образа дисков с софтом
Прикрепленный файл  C_SYSTEM.dsk ( 840 килобайт ) Кол-во скачиваний: 31

Прикрепленный файл  CC.DSK ( 830 килобайт ) Кол-во скачиваний: 30

Прикрепленный файл  CC1.DSK ( 820 килобайт ) Кол-во скачиваний: 33

Прикрепленный файл  CC2.DSK ( 830 килобайт ) Кол-во скачиваний: 32

Прикрепленный файл  CC3.DSK ( 830 килобайт ) Кол-во скачиваний: 33

Прикрепленный файл  CC4.DSK ( 830 килобайт ) Кол-во скачиваний: 32

Прикрепленный файл  CC85.DSK ( 830 килобайт ) Кол-во скачиваний: 35

Прикрепленный файл  CCLEFT.DSK ( 830 килобайт ) Кол-во скачиваний: 30

Прикрепленный файл  MULTICC.DSK ( 830 килобайт ) Кол-во скачиваний: 33

Прикрепленный файл  pdp11c.dsk ( 2.44 мегабайт ) Кол-во скачиваний: 36

Прикрепленный файл  rt11cc.DSK ( 800 килобайт ) Кол-во скачиваний: 33

Прикрепленный файл  UK_WINDOW_LIB_NALETOV_IMG_.DSK ( 800 килобайт ) Кол-во скачиваний: 35



--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SuperMax
сообщение 16.4.2024, 22:30
Сообщение #4


Администратор
*****

Группа: Root Admin
Сообщений: 6 286
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Для сборки исходников для GCC DECUS C, к cожалению, не очень годится
но есть немного другой СИ - см образ pdp11c.dsk выше, единственная особенность - этот СИ требует XM монитор

Для облегчения вхождения приложу образа

1. Бутовый образ для AZ - c RT11XM 2k fixed + Си
Прикрепленный файл  RT11V57C.DSK ( 32 мегабайт ) Кол-во скачиваний: 15


2. Бутовый образ для HD - c RT11XM 2k fixed + Си
Прикрепленный файл  HDRT11V57KIT_CC.dsk ( 32 мегабайт ) Кол-во скачиваний: 17


Для примера собираем DEMO.C - это пример AES256ECB шифрования и дешифрования
я его конечно привел к виду который может компилировать данный компилятор, и это не сложно

Прикрепленное изображение

Код

.set sl on

.cc demo

.link /bot:3000 demo,ceisrt

.ru demo
txt: 30 31 32 33 34 35 36 37 38 39 30 31 32 33 34 35
key: 30 31 32 33 34 35 36 37 38 39 30 31 32 33 34 35 30 31 32 33 34 35 36 37 38
39 30 31 32 33 34 35
---
enc: 06 b2 d7 c9 fe f2 45 4c 76 7f 3f 1c 7c b2 a6 77
tst: 06 b2 d7 c9 fe f2 45 4c 76 7f 3f 1c 7c b2 a6 77
dec: 30 31 32 33 34 35 36 37 38 39 30 31 32 33 34 35

.link /bot:3000 demo,cfpurt

.ru demo
txt: 30 31 32 33 34 35 36 37 38 39 30 31 32 33 34 35
key: 30 31 32 33 34 35 36 37 38 39 30 31 32 33 34 35 30 31 32 33 34 35 36 37 38
39 30 31 32 33 34 35
---
enc: 06 b2 d7 c9 fe f2 45 4c 76 7f 3f 1c 7c b2 a6 77
tst: 06 b2 d7 c9 fe f2 45 4c 76 7f 3f 1c 7c b2 a6 77
dec: 30 31 32 33 34 35 36 37 38 39 30 31 32 33 34 35

это сборка на 11/73

для сборки на ВМ3 надо собирать только так (тк в ВМ3 нет FPU)
Код

.link /bot:3000 demo,ceisrt


Особенности компилятора (те что нашел я пока собирал этот пример)
1. не понимает //
2. все имена - до 6 символов включительно
3. убирайте регистровые переменные - компилятор может на них запнуться и сделать нерабочий код
4. результат работает и под обычной RT11SJ


--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 27.4.2024, 20:27