Pasprf.obj - наткнулся на такой .OBJ файл на дискете с доками и "не полной" поставкой ПАСКАЛЯ
Что это и нужно ли? LIBR - отказался выдавать /LIST:TT: - ругнулся ...
Pasprf.obj - наткнулся на такой .OBJ файл на дискете с доками и "не полной" поставкой ПАСКАЛЯ
Что это и нужно ли? LIBR - отказался выдавать /LIST:TT: - ругнулся ...
Последний раз редактировалось hobot; 17.04.2021 в 01:53.
hobot(08.04.2021)
nzeemin,
вечный цикл, а выход из него по условию где THEN EXIT или вызов процедуры, где .EXIT - или что то похожее (Никита, ты я чую не оступно и не отрывно! Жаль таких авторов для УК-НЦ только ты,Код:REPEAT UNTIL 0>0
точнее спасибо что ты у нас есть - вот!)
попался ещё вот такой РАНДОМ в виде глобальных :: - то есть можно слинковать с паскалем как внешний
ещё (просто как вариант) позиционирование курсора можно не процедурой,Код:.TITLE RND ;--------------------------------------- ; dat~ik sl~ajnyh ~isel ;--------------------------------------- ;wHOD: 1 SLOWO W STEKE - PREDEL ^ISLA ;wYHOD 1 SLOWO W STEKE - REZULXTAT OT 0 DO PREDELA RND:: MOV R3,-(SP) MOV R2,-(SP) MOV R1,-(SP) MOV R0,-(SP) CLR R3 1$: SEC ROL R3 CMP R3,12(SP) BCS 1$ COM R3 2$: MOV #19.,R0 3$: MOV RAND+2,R1 BIC #^C22,R1 BNE 4$ CLC BR 6$ 4$: CMP #22,R1 BNE 5$ CLC BR 6$ 5$: SEC 6$: ROR RAND ROR RAND+2 SOB R0,3$ MOV RAND,R0 BIC R3,R0 CMP R0,12(SP) BCC 2$ MOV R0,12(SP) MOV (SP)+,R0 MOV (SP)+,R1 MOV (SP)+,R2 MOV (SP)+,R3 Return RAND:: 1,1 ;-------------------------------------- .END
а функцией символьной оформить (по аналогу как в ВИЛЬНЮС-БЕЙСИКЕ есть оператор
LOCATE, а есть функция для оператора PRINT AT(X,Y) *** )
и ещё РАНДОМ из исходников Петра ВысотинаКод:PROGRAM LOCATE; FUNCTION AT(XX,YY : INTEGER) : CHAR; BEGIN AT:=''; WRITE(CHR(27),'Y',CHR(32+YY),CHR(32+XX)); END; BEGIN WRITE(AT(5,9),'УХА-ХА-ХА-ХА-ХА!'); END.
==============================
Код:FUNCTION RND: REAL; VAR IRND: INTEGER; BEGIN /*$C BR M1 RN: .WORD 435 M1: MOV RN, R1 MUL #12869, R1 ADD #6925, R1 MOV R1, RN BIC #^O100000, R1 MOV R1, IRND(SP) */ RND:=IRND/32767; END;
Последний раз редактировалось hobot; 10.04.2021 в 09:24.
Oleg N. Cher(10.04.2021)
PTIME.PAS из поставки PASCAL / PTMSK.PAS - адаптация ;-)
про различные сочетания транслятор + библиотека,Код:LD7>TY PTIME.PAS PROGRAM PTIME; PROCEDURE WRITETIME; VAR R:REAL; HOURS,MINUTES:INTEGER; AMPM: ARRAY [1..2] OF CHAR; BEGIN R:=TIME; HOURS:=TRUNC(TIME); MINUTES:=TRUNC((R-HOURS)*60.0); IF HOURS > 12 THEN AMPM:='PM' ELSE IF (HOURS = 12) AND (MINUTES = 0) THEN AMPM:='M ' ELSE AMPM:='AM'; WRITE('AT THE TONE THE TIME WILL BE:'); WRITE((HOURS+11) MOD 12 + 1 :2); WRITE(':', MINUTES DIV 10:1, MINUTES MOD 10:1, AMPM:3); WRITE(CHR(7)); END; /* НАЧАЛО ОСНОВНОГО ТЕЛА ПРОГРАММЫ */ BEGIN WRITETIME; END. LD7>RU PTIME AT THE TONE THE TIME WILL BE: 8:59 AM LD7>TY PTMSK.PAS PROGRAM PTIME; CONST MSK = 3; PROCEDURE WRITETIME; VAR R:REAL; HOURS,MINUTES:INTEGER; AMPM: ARRAY [1..2] OF CHAR; BEGIN R:=TIME; HOURS:=TRUNC(TIME); MINUTES:=TRUNC((R-HOURS)*60.0); IF HOURS > 12 THEN AMPM:='PM' ELSE IF (HOURS = 12) AND (MINUTES = 0) THEN AMPM:='M ' ELSE AMPM:='AM'; WRITE('МОСКОВСКОЕ ВРЕМЯ :'); WRITE((HOURS+11) MOD 12 + MSK :2); WRITE(':', MINUTES DIV 10:1, MINUTES MOD 10:1, AMPM:3); WRITE(CHR(7)); END; /* НАЧАЛО ОСНОВНОГО ТЕЛА ПРОГРАММЫ */ BEGIN WRITETIME; END. LD7>RU PTMSK МОСКОВСКОЕ ВРЕМЯ :10:59 AM LD7>
я выбрал для себя PASDWK (так он "обозван" для возможности на одной дискете иметь сразу несколько вариантов, понятное дело, что библиотека имеет такое имя как и программа транслятор), поскольку он
абсолютный победитель по размеру .SAV файла после линковки. Других параметров я не учитывал - это было решающим. Поскольку я пишу свои программы ради удовольствия и практически всегда с "нуля" - никаких проблем с этим транслятором и его библиотекой пока не испытывал, но * не проверено* ошибка в обработке массивов там похоже всё таки есть...
И возможно во всех PASCAL-ях она есть, возможно... надо проверять и, если подтвердиться, я конечно и обязательно отпишусь об этом...
Oleg N. Cher(11.04.2021)
Прочёл в книге, данной Хоботычем, такую инфу:
У меня, в общем, слюнки потекли от одного упоминания уровня оптимизации аж на 40%. Захотелось пощупать этот Pascal-2. В связи с чем такие вопросы:What is Pascal-2?
Now that you know more about us, you may want to know more about our newest product-in-progress, Pascal-2. Pascal-2 is our new optimizing compiler, written in Pascal. It's designed to be portable, and it's already been moved to a Honeywell computer. The Pascal-2 compiler is bigger and slower than Pascal-1, but not the generated code. Typical programs are 40% smaller and almost twice as fast. You can expect Pascal-2 compilers to be available on a wide range of 16-bit and 32-bit processors in the next several years. Supported users of Pascal-1 will receive substantial discounts on their purchase of Pascal-2 licenses for the PDP-11.
1. Вышел ли таки Pascal-2 для RT-11?
2. Если нет, то может ли Pascal-2 для других ОС на PDP-11 давать целевой код, работающий на RT-11?
3. Для каких ещё платформ и процессоров есть Pascal-2 (и Pascal-1)?
4. Кто-нить проверял качество машкода Pascal-2 и сравнивал ли с кодом от Pascal-1?
Ответьте, кто сможет.
ДАННЫЙ ОБРАЗ СОЗДАН СПЕЦИАЛЬНО ДЛЯ
ЭМУЛЯТОРА "ДВК" ОТ [Patron] И
ЛЮБИТЕЛЕЙ ЯЗЫКА ПРОГРАММИРОВАНИЯ
ПАСКАЛЬ В ЕГО ВАРИАНТЕ ДЛЯ ОС RT-11.
ОБРАЗ БУДЕТ НОРМАЛЬНО ЗАГРУЖАТЬСЯ
(ПРИ НЕОБХОДИМОСТИ) И НА РЕАЛЬНЫХ ДВК
С УСТАНОВЛЕННЫМ MY - КОНТРОЛЛЕРОМ.
ТАК ЖЕ МОЖЕТ БЫТЬ ПЕРЕДЕЛАН В ЗАГРУЖАЕМЫЙ
ДЛЯ ЭМУЛЯТОРА ИЛИ РЕАЛЬНОЙ УК-НЦ, ДЛЯ
ЭТОГО НЕОБХОДИМО ДОБАВИТЬ ДРАЙВЕР MZ.SYS
И СРЕДСТВАМИ СИСТЕМЫ ПЕРЕНАСТРОИТЬ ЗАГРУЗКУ.
ВСЕ ПОДРОБНОСТИ ПО СОДЕРЖАНИЮ АРХИВОВ СМОТРИТЕ
В ОДНОИМЕННЫХ ТЕКСТОВЫХ ФАЙЛАХ. ПОЛЬЗУЙТЕСЬ
ПРОГРАММОЙ TTY - ДЛЯ ПРОСМОТРА ФАЙЛОВ С
ДОКУМЕНТАЦИЕЙ И ОПИСАНИЯМИ, FCU - УПАКОВЩИК /
РАСПАКОВЩИК АРХИВОВ ПРИЛАГАЕТСЯ.
archive.pdp-11.org.ru
hobot(14.04.2021), Oleg N. Cher(14.04.2021)
запрос отменён, всем спасибо !!! текст под катом ;-)
Просьба помочь с КНИГАМИ по ДВК в частности с этой позицией
-----------------------------------------
Книга 3: Языки программирования: Ассемблер, Паскаль, Бейсик (формат Tiff, 29 MB - 383 стр);
по ссылке в большом архиве то самое как строка выше >
а в папке КНИГА3 >
в формате DWK_ASM_PAS_BAS.djvu, но только первая часть "АССЕМБЛЕР".
Если есть опытные по форматам и готовые проявить инициативу (потратить время), хотелось бы
и раздел ПАСКАЛЬ и БЕЙСИК иметь в более удобном для пользователей формате (тот .djvu или .pdf) ?
Про создание "распознанной" текстовой версии с кликабельным меню я не буду даже задавать вопрос.
Достаточно было бы уже по примеру первого раздела иметь ВТОРОЙ и ТРЕТИЙ разделы.
[свернуть]
Спасибо.
![]()
Последний раз редактировалось hobot; 14.04.2021 в 13:43. Причина: https://zx-pk.ru/threads/20444-pascal-macro11-(uknts-dvk).html?p=1113328&viewfull=1#post1113328
hobot(14.04.2021)
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)