Кстати раз уж тут пошел всякий флейм - может кто-то поделится знаниями что находится в первом блоке в .sav?
Там есть какие-то цифры размера всего файла или там просто банально то что загрузится по адресу 0?
Вид для печати
Кстати раз уж тут пошел всякий флейм - может кто-то поделится знаниями что находится в первом блоке в .sav?
Там есть какие-то цифры размера всего файла или там просто банально то что загрузится по адресу 0?
www.bitsavers.org содержит много чего интересного :)
http://www.bitsavers.org/pdf/dec/pdp...nual_Aug91.pdf
Давайте с игрушкой от S_V_B перейдем лучше во флеймовую тему (где можно разное писать, но без всякой жути). Там-то автор поправит немного и заработает.
А вот меня беспокоит вопрос - как из рандома (LFSR) 0-0xFFFF получить число 1..5? Конечно знаю что на УКНЦ есть div только кажется он немного "жрущий" процессорное время.
А у вас есть исходники? Задержка там в другом месте, могу даже адрес сообщить ячейки, где задержка лежит. А o почти полной бесполезности обращения к портам мне сообщал @form, он патчил Тетрис для RTEM.
- - - Добавлено - - -
Именно для УКНЦ и действительно примерно с 1994, но именно с тех времен про УКНЦ стали писать-вспоминать как про нормальный компик, с которым можно работать.
Помню в конце 80-х и начале 90-х все вокруг использовали именно ДЕМОС на ДВК и даже в нулевые люди вспоминали как тупили си под Юникс, не зная, что работают в самой перспективной системе и с самым перспективным языком. Там только был фокус, не было форматера дискет и форматировали вроде через RT-11, делая запросы в смежные организации. Но тут почему-то Юникс явно не в фаворе.
- - - Добавлено - - -
Интересно, что в Википедии написано, что советские клоны PDP-11 были бинарно несовместимы с настоящими PDP-11! О чем это могло быть? Цитата "As happened with ES EVM mainframes based on the System/360 architecture, the Russians and their allies sometimes significantly modified Western designs, and therefore many SM EVM machines were binary-incompatible with DEC offerings at the time".
По адресам 3046-3056 ожидается сброс бита разрешения прерывания в регистре 177564. При начале вывода RT-11 его устанавливает, как только вывод окончился - сбрасывает. Это значит, что RT-11 закончила вывод на терминал. А вот в адресах 3060-3076 уже сделаны два цикла задержки. В качестве команды исполнения используется TST (R1), при R1=177564, и BPL 003074. Т.е. также тестируется регистр терминала. Смысла в этом особого нет, только команда вносит задержку. Осуществлять можно тест и ячейки памяти, разное может быть только время исполнения команды.Код:003044 024646 CMP -(SP), -(SP)
003046 012701 177564 MOV #177564, R1
003052 032711 000100 BIT #000100, (R1)
003056 001375 BNE 003052
003060 017603 000006 MOV @000006(SP), R3
003064 017600 000010 MOV @000010(SP), R0
003070 005711 TST (R1)
003072 100000 BPL 003074
003074 077003 SOB R0, 003070
003076 077306 SOB R3, 003064
003100 016666 000004 000010 MOV 000004(SP), 000010(SP)
003106 062706 000010 ADD #000010, SP
003112 000207 RETURN
Интересно, почему не смогли достать ВМ2 для Немиги даже в 1989? Похоже связи в ИТ отрасли были совсем плохими в позднем СССР. В Москве ставили фактически лишний процессор в сверхмассовую тяп-ляповую УКНЦ, а в Минске не могли найти небольшой партии ВМ2 для добротно спроектированной Немиги. :( Или ВМ2 почему-то не подходил?
- - - Добавлено - - -
Большая просьба прогнать пи-затвор на реальной Немиге для 100, 1000 и 3000 знаков и опубликовать тайминги. Прикрепляю архив с двуми программами для прогона.
Вложение 79143
В конце 80-х и начале 90-х ДЕМОС на ДВК видел только на заводе "КВАНТ"...
Ещё ДЕМОС на СМ-1420 был в МИРА... Да и всё.
Все остальные либо RT-11, либо RSX-11, TSX-11 или их клоны...
DOS-11 при мне ровно один раз грузили на СМ-4(АРМ), так как там была необходимая тогда программа.
RSTS/E - не видел ни разу и даже не слышал, чтобы у кого-то была.
"бинарно несовместимы " - скорее всего имелось ввиду серия 1801, так как там были добавлены свои команды для реализации пульта...
у DEC - пульт был сделан микропрограммно
Ещё говорили про Электронику-100/25, в которой что-то не допилили до оригинала... Но вот что именно не ведаю :(
Хотя операционки везде работали.
Воронежские - это полные клоны DEC.
СМ - тоже клоны.
И ещё, СМ были не только совместимыми с PDP-11. , были СМ и с другими системами команд.(СМ-2, СМ-1700, СМ-1800, СМ-1810 м прочая возможно)
Вот собственно и команда по этому адресу:
Задержка может быть разной, в зависимости от быстродействия. В оригинале она была поменьше.Код:016640 012765 000160 001256 MOV #000160, 001256(R5)
А вот и вызов п/п задержки:
Этой п/п передаются два параметра по ссылке. Т.е. п/п задежки при описании на Паскале будет как procedure L03044(var DEL1,DEL2:integer);.Код:016722 010500 MOV R5, R0
016724 062700 001256 ADD #001256, R0
016730 010046 MOV R0, -(SP)
016732 010500 MOV R5, R0
016734 062700 001240 ADD #001240, R0
016740 010046 MOV R0, -(SP)
016742 004767 164076 CALL 003044
А по поводу смысла. В первых командах ожидается, что RT-11 освободила свои внутренние буферы при выводе на экран. Ввод идёт по прерываниям, скорость 9600 бод. И чтобы узнать, что вывод закончился, пользовались вот таким методом.