Pasprf.obj - наткнулся на такой .OBJ файл на дискете с доками и "не полной" поставкой ПАСКАЛЯ
Что это и нужно ли? LIBR - отказался выдавать /LIST:TT: - ругнулся ...
Вид для печати
Pasprf.obj - наткнулся на такой .OBJ файл на дискете с доками и "не полной" поставкой ПАСКАЛЯ
Что это и нужно ли? LIBR - отказался выдавать /LIST:TT: - ругнулся ...
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;
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-ях она есть, возможно... надо проверять и, если подтвердиться, я конечно и обязательно отпишусь об этом...
Прочёл в книге, данной Хоботычем, такую инфу:
У меня, в общем, слюнки потекли от одного упоминания уровня оптимизации аж на 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
запрос отменён, всем спасибо !!! текст под катом ;-)
Просьба помочь с КНИГАМИ по ДВК в частности с этой позицией
-----------------------------------------
Книга 3: Языки программирования: Ассемблер, Паскаль, Бейсик (формат Tiff, 29 MB - 383 стр);
по ссылке в большом архиве то самое как строка выше >
а в папке КНИГА3 >
в формате DWK_ASM_PAS_BAS.djvu, но только первая часть "АССЕМБЛЕР".
Если есть опытные по форматам и готовые проявить инициативу (потратить время), хотелось бы
и раздел ПАСКАЛЬ и БЕЙСИК иметь в более удобном для пользователей формате (тот .djvu или .pdf) ?
Про создание "распознанной" текстовой версии с кликабельным меню я не буду даже задавать вопрос.
Достаточно было бы уже по примеру первого раздела иметь ВТОРОЙ и ТРЕТИЙ разделы.
[свернуть]
Спасибо.
:redface: