Просмотр полной версии : Эмуляторы PDP-11
Просьба кидать сюда ссылки (или сами файлы если ссылок нет) на различные эмуляторы PDP-11 (и его производные). Если можно, дать краткую характеристику. Буду перелопачивать страничку, посвященную эмуляции :)
PS. SimH, E11, CHARON, P11/Begemot, Xhomer, UKNCBTL не в счет - тут все понятно :)
PPS. Аппаратные решения тоже интересны.
CR11 - CROSS-IDE for PDP-11 V3.0 (http://zx.pk.ru/attachment.php?attachmentid=32789) ( для MS-DOS ).
'CROSS-IDE for PDP-11' - пакет программных средств генерации кода
системы команд PDP-11 (DEC) на платформе IBM PC, выполненный в традициях
интегрированных сред.
В пакете полностью сохранены спецификации таких ОС, как RT-11,
FODOS и т.д., использовавшихся на PDP-11-подобных машинах. Этот пакет может
оказать неоценимую услугу специалистам, работающим с процессорами, система
команд которых совместима c системой команд PDP-11 ( например, K1801BM2 и
1806BM2 ).
'CROSS-IDE for PDP-11' содержит замкнутый инструментарий разработки ПО, сос-
тоящий из : компилятора макро-ассемблера, редактора связей, библиотекаря и
имитатора выполнения.
▄ Инструменты:
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
■ 2-проходной КОМПИЛЯТОР макро-ассемблера,
позволяющий использовать все разнообразие системы команд, всю мощь и
гибкость стандартных макро-команд ( содержащихся в системной библиотеке )
и макро-команд пользователя, которые можно строить в виде обычных библиотек.
■ универсальный РЕДАКТОР СВЯЗЕЙ,
обладающий большим количеством параметров, ключей и переключателей,
дающих возможность решать любые задачи.
■ развитый БИБЛИОТЕКАРЬ,
с помощью которого реализуются библиотеки макро-команд для этапа компиляции,
библиотеки функций и процедур для этапа редактирования связей.
■ многофункциональный ИМИТАТОР,
используемый для выполнения любой последовательности PDP-11-команд, имеющий
полнодоступную имитацию памяти ( 64K ) и регистров, дизассемблер выполнения
и точки останова.
■ текстовый РЕДАКТОР,
гармонично интегрированный в общую систему.
■ гибкий ФОРМИРОВАТЕЛЬ 'прошивок' ЗУ,
позволяющий распределять код по любому определяемому пользователем правилу
для массивов 2Kx8, 8Kx8, 32Kx8, 64Kx8.
■ удобный RS-232 ИНТЕРФЕЙС,
посредством которого можно осуществлять связь прием-передача с любым внешним
устройством.
■ полезный КОРРЕКТОР КОДОВ,
дающий возможность просматривать и корректировать любые файлы в кодах в 8сс.
■ виртуальная псевдо-МАШИНА,
на которой можно выполнять программы, созданные в рамках PDP-11.
■ развитая система ПОМОЩИ и контекстной помощи,
действительно помогающая пользователю быстро познакомиться с пакетом.
■ трансляторы "C" и "PASCAL" с соответствующими библиотеками функций и
процедур, позволяющие разрабатывать ПО для PDP-11 на "C" или "PASCAL".
▄ Рекомендации:
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Компьютер: >= IBM PC 486DX4,8M
ОС: >= MSDOS 5.0
Диспетчер памяти: >= QEMM 8.0
▄ Установка:
▀▀▀▀▀▀▀▀▀▀▀▀▀▀
Внимание! Обязательное требование - для работы пакета необходима нефраг-
ментированная память в размере не менее 64К (наибольший свободный блок
верхней памяти >= 64К). Такое распределение памяти на вашем PC может
обеспечить QEMM.
▄ Адрес:
▀▀▀▀▀▀▀▀▀
Россия 180004 Псков Яна Фабрициуса 10
тел: (81122)93105
факс: (8112)720892
E-mail:suu@mail.krom.psc.ru
ОАО НИИ "Кром"
Дмитриев Вадим Олегович, программист
Модульный эмулятор процессора PDP-11/03 (http://zx.pk.ru/attachment.php?attachmentid=32791) для MS-DOS с исходниками (автор неизвестен).
Эмулятор процессора PDP-11/03
1. НАЗНАЧЕНИЕ
Эмулятор представляет собой программную реализацию аппаратуры
процессора PDP-11/03 и предназначен для выполнения программ в кодах
системы команд PDP-11. С точки зрения выполняемой в нем программы практически
полностью аналогичен процессору ДВК-1.
Эмулятор написан на языке Borland C++ 3.1 и предназначен для работы
на IBM PC/AT 286/287 в среде DOS 5.0 (не ниже). Рекомендуется использовать
ЭВМ с индексом быстродействия не ниже 40 (SysInfo).
Эмулятор имеет встроенный системный терминал, совместимый по системе
команд с дисплеем 15ИЭ-00-013 (VT52).
Эмулятор имеет встроенную оперативную память обьемом 56 Кбайт
(адреса 0..0160000).
Эмулятор поддерживает любые дополнительные внешние устройства,
расположенные в адресном пространстве выше 0160000. Правила программирования
внешних устройств описаны в приложении.
2. СИСТЕМА КОМАНД
Реализован базовый набор из 56 команд. Поддерживается команда "SOB".
Команды групп EIS, FIS, FPU в этой версии не поддерживаются.
Введена команда "DOS" (код 010).
Таймер - <F12>, Пульт - <F11>, Выход - <F11>,Q
PDPe - эмулятор pdp11 для MS-DOS (автор неизвестен).
Для запуска эмулятоpа опеpационной системы RT-11
запустите на выполнение :
- для IBM PC AT 286 -> pdpe286.exe rt.cnf;
- для IBM PC AT 386 и выше -> pdpe386.exe rt.cnf.
Не забудте скоpектиpовать файл rt.cnf на пpедмет установки путей
доступа к системной диpектоpии и диpектоpии пользователя.
Computer Emulation Framework PDP-11
http://cef.sourceforge.net/cef32.html
Переделанный и исправленый Полетаевский эмулятор. DOS. (Ошибка в архиве arj восстановлена не полностью. Зацепило только имидж диска с RT, исполняемый модуль - рабочий).
DEC PDP11 (R) Software emulator v2.1
SOS (C) 1989-1992
P.S. Нет, не так: Это за основу Полетавского был взят "DEC PDP-11 (R) Software emulator V2.1 SOS (C) 1989-1992". (из readme.ibm). Т.е. - это праобраз ставший "em.com".
Модульный эмулятор процессора PDP-11/03 (http://zx.pk.ru/attachment.php?attachmentid=32791) для MS-DOS с исходниками (автор неизвестен).
Здесь его демоверсия:
Эмулятор процессора PDP-11/03
Эмулятор представляет собой программную реализацию
аппаратуры процессора PDP-11/03.
Эмулятор предназначен для работы на IBM PC/AT DOS 5.0 и выше.
Эмулятор имеет встроенный системный терминл, совместимый
по системе команд с дисплеем VT52.
Реализован базовый набор из 56 команд. Поддерживаются
команды "SOB", "XOR". Команды групп EIS, FIS, FPU в этой
версии эмулятора не поддерживаются.
Введена команда "DOS", вызывающая command.com.
Данная версия программы является демонстрационной. В
рабочей версии поддерживается работа с дискетками формата MY:
и DZ:, а также имеется возможность подключения програмных
эмуляторов аппаратуры любых внешних устройств (MT:, XL: и
т.д.).
Для запуска эмулятора и загрузки RT11SJ предназначен командный
файл PDPDEMO.BAT.
<F12> - таймер (вкл./выкл.);
<F11> - прграмма/пульт;
<Q> - выход из эмулятора (в режиме "пульт").
[OWA] Hard & Soft
Ульяновск, НИО "Голография", (0842) 31-44-71
По всем вопросам обращаться asd@holo.simbirsk.su
Переделанный и исправленый Полетаевский эмулятор. DOS. (Ошибка в архиве arj восстановлена не полностью. Зацепило только имидж диска с RT, исполняемый модуль - рабочий).
DEC PDP11 (R) Software emulator v2.1
SOS (C) 1989-1992
P.S. Нет, не так: Это за основу Полетавского был взят "DEC PDP-11 (R) Software emulator V2.1 SOS (C) 1989-1992". (из readme.ibm). Т.е. - это праобраз ставший "em.com".Вот исходники этого эмулятора (http://zx.pk.ru/attachment.php?attachmentid=32831).
Правда похоже, что я в них успел покопаться (в архиве - работоспособный проект компиляции эмулятора в Borland C++ 5.0) и добавил индикацию "RUS/LAT".
Клавиши <F1>..<F4> выдают коды клавиш <PF1>..<PF4> (поэтому, чтобы закончить работу в редакторе Edik - нужно перейти на латинский регистр и нажать <F1><E>).
Файлы:
EM.C - Дешифрация команд PDP-11, организация дискового
ввода-вывода и технологический отладчик.
EMSUBR.ASM - Интерпретация выполнения команд PDP-11.
EM.MAC - исходный текст драйвера для RT-11.
EMBOOT.SAV - образ 0-го блока загружаемого диска. Содержит начальный
загрузчик RT-11.
Для ввода-вывода в файлы-устройства, заданные в командной строке, служат
псевдокоманды с кодами 010 и 011. Подробнее см. их интерпретацию функциями
msread и mswrite в em.c.
Я все это безобразие компилил BC3.1, compact model.
Прошу о всех полезных нововведениях сообщать автору - Sergey Okhapkin,
FIDO 2:5020/47.
Удачи!
PC приходят и уходят,
а PDP-11 вечна...
Вашему вниманию предлагается расширение программного
эмулятора PDP-11 для возможности работы с гибкими дисками в
формате MY-80 (от ДВК).
За основу его был взят "DEC PDP-11 (R) Software
emulator V2.1 SOS (C) 1989-1992". Разработчики его сделали
почти все необходимое для того, чтобы он мог работать с гиб-
кими дисками. В нем не хватало всего двух подпрограмм:
_diskread() и _diskwrite(). (В файле осталась даже таблица
символов). Вместо этих подпрограмм стояли просто заглушки.
Для расширения мною было сделано следующее:
1. В функциях _diskread() и _diskwrite() вместо команды
XOR AX,AX было подставлено INT 61h и INT 62h.
2. В подпрограммах _msread() и _mswrite() изменен адрес
перехода при отсутствии ошибки - теперь если чтение или за-
пись с дискеты прошли без ошибок, то бит C эмулируемого про-
цессора сбрасывается (раньше он оставался без изменений).
3. Файл EM.EXE был переименован в EM_EXE.OVL и из него
была вырезана таблица символов (программой TDSTRIP).
4. И, наконец, была написана небольшая программка, ко-
торая устанавливает вектора INT 61h и INT 62h на свои подп-
рограммы чтения/записи с дискеты и запускает собственно эму-
лятор.
5. Кроме этого, я еще исправил драйвер ЕМ. Начальный
загрузчик в этом драйвере работал только с 0 устройством,
поэтому в качестве системного всегда должно было использо-
ваться устройство EM0:. Теперь начальная загрузка при запус-
ке эмулятора также происходит с 0 привода, но затем можно
загрузиться с любого возможного привода по команде BOOT.
Кроме этого, в драйвер введены два SET-параметра. Это SET-
параметр SIZE, задающий размер устройства в блоках, и SET-
параметр LIST, выводящий текущие установки на экран.
Размер устройства задается отдельно для каждого приво-
да EM0 ... EM7. Для того, чтобы, например, задать размер EM5
в 2000 блоков, следует подать команду: SET EM5 SIZE=2000.
Указываемый в драйвере размер устройства используется при
инициализации (командой INIT) и при сжатии (командой
SQUEEZE). Вывести значения размеров устройств для каждого
привода можно командой SET EM LIST.
Внимание! Программа предполагает, что уже загружен
драйвер PU_1700 или аналогичный, позволяющий работать с 10
секторами на дорожке.
В программе я использую прерывание INT 13h для работы с
гибкими дисками, не отслеживая переход через границу 64К. У
меня это работает (использую PU_1700 V3.1, IBM DOS 5.0).
И еще немного замечаний. Разработчики взятого за основу
эмулятора проделали немалую работу, но ее можно было сделать
немного лучше. Так, по моим оценкам (с которыми необязатель-
но соглашаться) быстродействие эмулятора можно было бы повы-
сить приблизительно на порядок. Я мог бы взяться за эту ра-
боту - был бы заказчик...
Полетаев В.М.
Тел. (095)536-8503, 536-5642 (рабочие).
PS. Организация, в которой я работаю (НПП "Кристалл"),
разрабатывает и продает различное программное и аппаратное
обеспечения для ДВК. Кому надо - звоните...
...
P.S.
Похоже, что SOS == Sergey Okhapkin Soft ..
...
Позже были обнаружены оригинальные исходники эмулятора PDP-11 Сергея Охапкина (http://zx.pk.ru/attachment.php?attachmentid=38942).
...
Сергей Охапкин
http://s1.hostingkartinok.com/uploads/images/2012/02/f9b2dd779e13c33adfbaec90d510c17f.jpg
Glad to see you on my page. My name is Serguei S. Okhapkine. I'm 37 years old software developer, living in Moscow, Russia - (it's realy strange place, isn't it?-)
Here comes some brief information about me:
Education:
1978-1984 Moscow Institute of Radiotechnic, Electronic and Automatic. Speciality - design of electronic hardware.
Software projects:
Port of unix software toolset to Windows NT for Bellcore Inc. (about 800000 lines of C++ sourses)
Port of some unix tools to win32 environment (native, no gnu-win32 based). Tar, awk, sed etc.
Native telnet server for Windows NT and supporting tools (with rs-232 terminals support on NT box).
Port of X11R6.1 X Window system to Windows NT using gnu-win32 tools.
Endless contributions to gnu-win32 project.
Tcl script for "grabbing" Web site to local disk.
1984-1988:
Port of Unix V6 C compiler/libraries to DEC RT-11 OS, full rewrite of code optimizer.
Design, coding and debugging of LSI-11-based embeded control system for defence projects. All software were written using ported C compiler.
CAD for design of wire-tied PCB written on Fortran (PDP-11).
Teco-based full screen text editor for PDP-11 (RT-11 and RSX-11).
1989-1993:
DEC PDP-11 emulator for IBM PC.
DEC MT-11 tape support for IBM PC (OS/360, Rollin and tar tape formats).
Font designer for Canon LBP-II printer.
Norton Commander-like clone for RT-11 (written as system driver).
Image processing software, non-standard hardware drivers for PC based research control systems.
NC-like shell for DesqView.
STM editor/player for MS-DOS.
Software for full text mode remote access to MS-DOS/DesqView box via serial lines.
Programming languages:
C, Tcl, asm.
Skills:
Programming using Win32 and Unix low level API, Unix-to-NT porting, modem communications, networks, TCP/IP tools, Unix and NT system administration. Preffered operating system - MS Windows NT.
Hobbies:
Programming, music, communications.
If you have some questions, business proposal or job offering - write me: sos@prospect.com.ru
Во вложении:
- PDPC (Clodics) V01.01 вроде обычно везде версии V01.02
- Виндовый PDP11 Emulator v0.20 (C)2001-2006 J.G.Harston
ну и
Одноплатный микроконтроллер "Кварц-60.1" http://oao-kvartz.ru/catalog/dpmd/
Эффективный вариант модернизации систем ЧПУ 2С42-61, 2С42-65 и 2Р22, выполненных на базе микроЭВМ "Электроника-60"; заменяет в УЧПУ всю корзину ЭВМ с блоком питания и рядом субблоков - всего 11 плат.
Микроконтроллер выполнен на базе микропроцессора 1801ВМ2 (одноплатная микроЭВМ МС 1201.2 или М2 (1 плата)) и программируемой логической интегральной схеме (ПЛИС) фирмы Altera в габарите одной платы стойки ЧПУ.
http://oao-kvartz.ru/catalog/dpmd/dpmd_601.jpg
Микроконтроллер выполнен на базе микропроцессора 1801ВМ2 (одноплатная микроЭВМ МС 1201.2 или М2 (1 плата)) и программируемой логической интегральной схеме (ПЛИС) фирмы Altera в габарите одной платы стойки ЧПУ.
Вот эта фотка заставляет задуматься ))) Это же почти комп готовый, разве нет???
Возможно скажем будет доработать эту "не до ДВКашку" до VGA-выхода, IDE-разъёма и конечно PS2-для клавиатуры ??? Вот было бы замечательно !!!
А можно с такой платы ДВК-собрать начать? Кто понимает - раскройте эти тайны???
hobot, подобные платы вроде еще выпускает завод во ПСКОВЕ да еще и кучу адаптеров под этот конструктив - могу поискать ссылку да еще и кое каккое ПО - я пытался созвониться и писал по почте, но ответа нет
если рассматривать подобные веши - то есть еще как минимум три разработки - разница небольшая - по замене ЧПУ на базе процессорных плат мс1201 и Элек 60- вместо них просто ставиться ПЛИС АЛЬТЕРА и усе ,,,- подобные веши делают у НАС в ПИтере , в Белорусии и вроде на Украине , но подобные веши более заточены под задачи ЧПУ, чем под обычный комп
hobot, подобные платы вроде еще выпускает завод во ПСКОВЕ да еще и кучу адаптеров под этот конструктив - могу поискать ссылку да еще и кое каккое ПО - я пытался созвониться и писал по почте, но ответа нет
если рассматривать подобные веши - то есть еще как минимум три разработки - разница небольшая - по замене ЧПУ на базе процессорных плат мс1201 и Элек 60- вместо них просто ставиться ПЛИС АЛЬТЕРА и усе ,,,- подобные веши делают у НАС в ПИтере , в Белорусии и вроде на Украине , но подобные веши более заточены под задачи ЧПУ, чем под обычный комп
Ссылка не помешает. Хотя по личному опыту, очень часто те, кто "выпускает" у нас вообще не знает ничего про то, что у них где-то какой-то сайт есть, а про предмет вообще не слышали :)
form, попробую вечером накидать ссылок
а в Питере - делает мой знакомый по интституту - своя фирма, своя разработка , но очень похожа на Белорусский вариант
form, попробую вечером накидать ссылок
а в Питере - делает мой знакомый по интституту - своя фирма, своя разработка , но очень похожа на Белорусский вариант
Будет здорово.
А то ссылки на сайте надо давно перелопатить.
http://promstankoservis.ru/
Ну раз тут и о железе можно то вот тогда еще один от компании Клодикс
только дорого - 30тыс руб
http://zx.pk.ru/showthread.php?t=11619
xailar,
form,
Murzik, спасибо за ссылки и информацию, но я немного не в курсе всей этой
кухни с ДВК и её модификациями(это просто что-бы мои вопросы не казались совсем дурацкими).
Вот что нужно к этим платам что-бы начать ДВК живую собирать? Корзина (основа),
судя по фотке платы (пост anasana (http://zx.pk.ru/showpost.php?p=467631&postcount=10)) это процессор, то есть самая главная часть и
разъёмы у нее (я имею в виду интерфейс подключения - куда она вставляется)
выглядят стандартными? Или я ошибаюсь? Вот может кто-нибудь, как form в статье про pdp-11 (http://pdp-11.org.ru/~form/pdp11-83/) так-же ДВКашку разложить:
карзина(основа) <--- втыкаем плату из поста anasana(к примеру) получаем проц.
<----- заказываем в питере плату памяти и контроллера получаем память и кнтроллер.
Составляем смету ))) Описываем способ подключения других внешних устройств(монитор то нужен и клавиши то же)
Вот если бы кто-то из профи такую статью наваял - ведь современного вменяемого материала на эту тему нет, а производство как видим есть !!! ))) Странное положение вещей (на мой взгляд).
Если вот по советам-инструкция из статьи form'a уже примерно понятно как честный pdp-11 собрать, было бы неплохо похожий материал
для отечественного ДВК (свежий с учётом вот выше указанных производств например). Авторы? )))
hobot, вот еще пару ссылок
http://skbvt.nm.ru/skbvt35ch1.html
http://elmic.ru/?q=mod
---------- Post added at 21:31 ---------- Previous post was at 21:16 ----------
hobot,
form, может и не сюда - соори но может кому и пригодится, если еще найду - буду выкладывать
http://files.mail.ru/OB7HD6
Обнаружил оригинальные исходники эмулятора PDP-11 Сергея Охапкина (http://zx.pk.ru/attachment.php?attachmentid=38942).
...
Обнаружил оригинальные исходники эмулятора PDP-11 Сергея Охапкина (http://zx.pk.ru/attachment.php?attachmentid=38942).
...
Один из тех которые считают, что ESC/J на VT52 стирает экран? :)
[b]hobot[/b...разработки - разница небольшая - по замене ЧПУ на базе процессорных плат мс1201 и Элек 60- вместо них просто ставиться ПЛИС АЛЬТЕРА и усе ,,,- подобные веши делают у НАС в ПИтере , в Белорусии и вроде на Украине , но подобные веши более заточены под задачи ЧПУ, чем под обычный комп
-
В этой теме пару раз упоминается про Беларусь (чего-то тут делают) - кто знает более конкретную информацию?
В этой теме пару раз упоминается про Беларусь
Что конкретно происходит на местах на предприятии(ях) я конечно не могу говорить,
поскольку в Белорусии не бываю ) Но вот рекламные ссылки по сборке процессорных модулей аналогичных ЭВМ ДВК точно проходили, если найду продублирую тут. Просто не помню в какой теме это было.
Очень нужна помощь по CR11 - CROSS-IDE for PDP-11 V3.0 с первой страницы. Прога работает, но не понимаю как сделать прошивку для пары ПЗУ. Выходные файлы ни на что не похожи. Есть у кого нибудь опыт или подсказки как и что делать?
P.S. испытательный срок на работе кончается а с места не могу сдвинуться.
Очень нужна помощь по CR11 - CROSS-IDE for PDP-11 V3.0 с первой страницы. Прога работает, но не понимаю как сделать прошивку для пары ПЗУ.Принципиально использование именно этой программы или не важно, каким способом сделать прошивку ?
Принципиальной разницы нет, важен результат. Хотел чего-то попроще, наподобие AVR studio для Atmel, набрал текст, компилятор и прошивка готова. )) Понимаю что это невозможно, но все же... В общем буду рад любому предложению, тем более если с подсказками))
Принципиальной разницы нет, важен результат. Хотел чего-то попроще, наподобие AVR studio для Atmel, набрал текст, компилятор и прошивка готова.Если текст на MACRO-11 ( т.е. на ассемблере фирмы DEC для PDP-11 ), то алгоритм получения файла прошивки такой:
1. Разархивировать эмулятор ДВК (http://zx.pk.ru/showthread.php?t=18351).
2. Установить DSK-плагин для TotalCommander (http://zx.pk.ru/showthread.php?t=11015).
3. Скопировать исходник прошивки ( далее ROM.MAC ) в образ HDSYS.DSK в каталоге эмулятора.
4. Выполнить команды:
MACRO ROM
LINK ROM
В результате будет получен файл образа памяти ROM.SAV, содержащий все коды от адреса 000000 до последнего адреса, использованного в прошивке.
Файл ROM.SAV можно скопировать из образа в каталог Windows.
Если прошивка располагается в старших адресах и имеет установку начального адреса, вроде:
.ASect
.=160000
ROM.START:
то в этом случае первые байты ( от адреса 00000 до первого адреса прошивки ) в начале файла ROM.SAV будут нулями и для получения итогового файла прошивки ROM.BIN - их надо будет как-то отрезать.
то в этом случае первые байты ( от адреса 00000 до первого адреса прошивки ) в начале файла ROM.SAV будут нулями и для получения итогового файла прошивки ROM.BIN - их надо будет как-то отрезать.
Этого мало. В этом случае в принципе не получится собрать SAV файл. Можно только собрать LDA, а уже его потом сконвертить в бинарный. Конвертер впрочем легко написать - формат совсем простой.
Этого мало. В этом случае в принципе не получится собрать SAV файл.А какие проблемы ?
Именно так я компилил исходник прошивки СМК-64 (http://zx.pk.ru/showthread.php?postid=556352).
А какие проблемы ?
Именно так я компилил исходник прошивки СМК-64 (http://zx.pk.ru/showthread.php?postid=556352).
И там был .ASECT в область I/O page?
И там был .ASECT в область I/O page?
; File Name : DISK_SMK64_v2.05.rom
; Format : Binary file
; Processor : PDP11
; Комментарии к модулю FDD взяты из листинга текста прошивка 326
; из ПК-БК #5'1994
; Комментарии к модулю HDD взяты из исходников прошивки v1.41
; Комментарии к ROM-BIOSу взяты из исходников ROM-BIOSа
; ================================================== =========================
;непонятные точки входа
;160062 - PARTRD
;160064 - SETPRM
;160100 - ZAGHDD загрузка с раздела винта по букве
;160154 - CRC
.ASect
.=160000 ;компилируем с адреса 160000
А-а, проверил.
Десйтвительно если bitmap не выключать получается.
---------- Post added at 04:17 ---------- Previous post was at 04:16 ----------
.LIN TEST
.LIN TEST/NOBI
?LINK-F-Storing text beyond high limit
.
Вобщем обычный SAV генерится.
Во вложении:
- PDPC (Clodics) V01.01 вроде обычно везде версии V01.02
- Виндовый PDP11 Emulator v0.20 (C)2001-2006 J.G.Harston
ну и
Одноплатный микроконтроллер "Кварц-60.1" http://oao-kvartz.ru/catalog/dpmd/
Эффективный вариант модернизации систем ЧПУ 2С42-61, 2С42-65 и 2Р22, выполненных на базе микроЭВМ "Электроника-60"; заменяет в УЧПУ всю корзину ЭВМ с блоком питания и рядом субблоков - всего 11 плат.
Микроконтроллер выполнен на базе микропроцессора 1801ВМ2 (одноплатная микроЭВМ МС 1201.2 или М2 (1 плата)) и программируемой логической интегральной схеме (ПЛИС) фирмы Altera в габарите одной платы стойки ЧПУ.
http://oao-kvartz.ru/catalog/dpmd/dpmd_601.jpg
Вроде от него схема нашлась.
На фотке - плата с 1801ВМ2.
Судя по описанию - суп из топора.
Там надо ручками ПЗУ перепрошивать для работы на станке, и порядочно писать в машкодах. О генераторе тактов для процессора - вообще школота разрабатывала, его строго надо после делителя на 2 подавать на процессор, а не так, как в указанном устройстве. С таким гемором не стоит удалять старую МС1201.02 - а то станок на металл придется отправить...
RT-IBM disk emulator 4.1
http://paf.design.ru/pafrt.html
Если повторился то извиняйте.
Автору темы предлагаю в шапке дописать те эмуляторы которые уже перечислены.
---------- Post added at 10:24 ---------- Previous post was at 10:05 ----------
Возможно скажем будет доработать эту "не до ДВКашку" до VGA-выхода, IDE-разъёма и конечно PS2-для клавиатуры ??? Вот было бы замечательно !!!
Есть готовое решение http://pdp2011.sytse.net/wordpress/
А может стоит эту тему перенести в раздел безалкогольного пива и резиновых баб?
Вот в эту http://zx-pk.ru/forumdisplay.php?f=61 , например?
Есть готовое решение http://pdp2011.sytse.net/wordpress/
Там (ранее) в процессе рассуждений/обсуждений (в различных темах) никакого чёткого ТЗ на такую разработку (единогласного ПКМ) не получилось к сожалению.
Я до сей пары за объединение видяшек и других необходимых контроллеров от ДВК с УК-НЦ - типа EmuStudio УК-НЦ только в железе! ) Но вот я смотрю на свою обычную УК-НЦешку (почему жен.рода - сам не знаю, вроде по расшифровке муж. род получается?) и вполне доволен, благо
не без активного содействия форумчан, она у меня достаточно осовремененная. Я много раз фотками хвастался в различных
темах на форуме, так что дублировать ссылки не буду.
Эмулятор с Юниксом.
sariolla.ru/soft/unix5.zip
После значка "@" ввести "unix"
Логин- root
Далее можно ввести команду LS.
Симулятор для ассемблера PDP11
Смотреть- здесь (https://programmer209.wordpress.com/2011/08/03/the-pdp-11-assembly-language/) и здесь (https://programmer209.wordpress.com/2011/08/14/pdp-11-assembly-language-simulator/)
https://programmer209.files.wordpress.com/2011/08/pdp11-image.png
Модульный эмулятор процессора PDP-11/03 для MS-DOS с исходниками (автор неизвестен).
Автор известен.
Настоящая программа представляет собой эмулятор процессора
PDP-11/03 (Электорника 60м, ДВК-2) с его системой команд и адресным
пространством.
------------------------------------------------------------------
! Программа разработана и написана сотрудником НИО "Голография" !
! ОВСИЕНКО В.А. !
------------------------------------------------------------------
Программа написана на BC++.
Исходные тексты на 2:5051/11.11
asd@holo.simbirsk.su
Эмулируемый процессор имеет следующие внешние устройства:
Виртуальные диски HD (Файлы *.dsk до 8)
Гибкие диски FY (флоп 5.25")
Системный терминал
Контроллер графического дисплея
Таймер
Эмулятор пультового режима
Так как эмулируется процессор, то может быть на нем запущена
любая операционная система (RT11,Рафос,Фодос,Осрв,Тмос).
В прилагаемом Rt11.dsk поставлена система rt11.
Переносимость.
Для переносимости диски эмулятора FY имеют формат совместимый
с дисками ДВК MY. Необходимо только, чтобы РС компютер поддерживал
формат 800 для дисков 5.25". Диски FY можно делать загружаемыми
стандартными средствами rt11. (cop/boot).
Пример стартового командного файла в MSDOS
@echo OFF
cls
pdp_done
hd_sys
vt52_sys
KGD_sys
HD_mount rt11.dsk rt12.dsk rt13.dsk и т.д. если они есть в рабочем каталоге.
FY_sys
pdp_make hd0:
pdp_done
@echo ON
Коротенко все.
P.S. Авторы не несут ответственности за возможные нарушения работы
вашего компьютера в результате использования данного программного
обеспечения
Это одна из тех реализаций где автор искренне считает, что <ESC>J на VT52 стирает экран? :)
Эмулятор PDP11/70
http://s018.radikal.ru/i513/1603/9a/a9a0d5e6cb5f.png (http://radikal.ru/big/e7cdf97525184916a3b30eb6efef9793)
Можно загрузить такие ОС:
1. RL0 BSD 2.9 Boot using: rl(0,0)rlunix
2. RL1 RSX 11M v3.2 Login as 1,2 with password "SYSTEM"
3. RL2 RSTS/E v7.0 Option: LF Suboption: LF ... Login as 1,2 with password "system"
4. RL3 XXDP
5. RK0 Unix V5 Boot using: unix then login as root
6. RK1 RT11 v4.0
Эмулятор (http://skn.noip.me/pdp11/pdp11.html)
shattered
29.05.2016, 18:06
Вытащил из архива Google Code работу Вакуленко и form (?) по эмуляции ДВК в SIMH -> https://github.com/shattered/simh/tree/simh-dvk
Демос 3.0 (https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/vak-opensource/dvk-demos.zip) загружается, работает, hello world компилируется ;-)
set lpt disable
set dz disable
set cpu 11/23 256k cis idle
attach kgd0 harddisk.img
boot kgd0
работу Вакуленко и form (?) по эмуляции ДВК в SIMH
Я там только мелочи подправил и сборку под OpenVMS сделал. Только мне там ничего кроме демоса запустить не удалось. Впрочем не сильно и ковырял :)
shattered
03.06.2016, 22:33
Попробовал поставить оный демос с дискет и все с треском упало. Без полноценной эмуляции ВМ2 и прочей обвязки не обойтись. Пока тренируюсь на кошках (КЦГД), и то не в simh.
shattered
04.06.2016, 13:18
да, ошибочка вышла. ВМ3 конечно. но остальные процессоры тоже не помешают :)
Я вот пытался вспомнить - не точно, но почему-то помнится всеже, что демос я не только готовый пользовал, но и ставил в этом эмуляторе. Но давно это было - могу ошибаться. Я тогда пробовал по инструкции поставить RT-11 + демос. Но процесс остановился на том, что RT-11 запустить не удалось.
Если же я ошибаюсь (и демос я таки не ставил с дискет), то ВМ3 по идее тут не причем ибо в нем нет никаких особенностей которые требовали бы принимать к ним меры (несовместимые с другими PDP-11), а ошибки (которые никак не мешают правильному софту для PDP-11 работать на ВМ3) вряд-ли требуются для правильной работы демоса (да и опять-таки - демос-то как не крути работает хотя бы уже установленный). На эту же мысль наводит тот факт, что кроме собственно демоса ничего и не удалось запустить (впрочем тут я мог и драйвер не той системы выбрать) :)
shattered
09.06.2016, 01:36
первый шаг к эмуляции ДВК в MAME/MESS :-)
https://img-fotki.yandex.ru/get/52325/264743.4/0_b445f_c9aa73ff_orig.png (https://fotki.yandex.ru/next/users/shattered/album/137130/view/738399)
MESS: МС1201.02 WIP - ODT prompt
EDIT: остальные шаги -- здесь (http://zx-pk.ru/threads/26624-emulyatsiya-vychtekhniki-na-mpk-k1801-v-mame-mess.html), здесь (http://zx-pk.ru/threads/24202-emulyatsiya-ksm-dvk.html) (КСМ), здесь (http://zx-pk.ru/threads/20744-emulyatsiya-fryazinskogo-displeya-15ie-00-013.html) (15ИЭ) и еще где-то рядом
Эмулятор PDP11/70 (http://skn.noip.me/pdp11/pdp11.html)
Добавлены новые диски.
Disk OS Comment
RK0 Unix V5 Boot using: unix then login as root
RK1 RT11 v4.0 The lightest/fastest OS here
RK2 XXDP Diagnostic OS and utilities
RK3 RT-11 3B Distribution for RT-11 Version 3B
RK4 RT-11 V5.4F Distribution for RT-11 Version 5.4F
RL0 BSD 2.9 Boot using: rl(0,0)rlunix CTRL/D to get to multiuser
RL1 RSX 11M v3.2 Login as 1,2 with password SYSTEM
RL2 RSTS/E v7.0 Option: <LF> Suboption: <LF> ... Login as 1,2 with password system
RL3 XXDP Larger version of diagnostics - including PDP 11/70 utilities
RP0 ULTRIX-11 V3.1 CTRL/D to enter multiuser mode. Login as root with no password
RP1 BSD 2.11 Will autoboot and enter multiuser mode. Login as root with no password
RP2 RSX 11M v4.6 Starts logged in as 1,2 - accounts 1,2 and 200,1 have no password
RP3 RSTS/E v9.6 Answer boot questions and login as 1,2 with password SYSTEM
Также можно использовать эмулятор в режиме off-line скачав архив.
Скачать - здесь. (http://skn.noip.me/pdp11/pdp11.zip)
RK2 XXDP Diagnostic OS and utilities
RK3 RT-11 3B Distribution for RT-11 Version 3B
RK4 RT-11 V5.4F Distribution for RT-11 Version 5.4F
вот эти без проблем цепляются и бутятся в эмуляторе ДВК,
на конфиге с VM3, RK0 - как загрузить? Отчего цикл HALT?
У RK1 - проблема с размером, а UNIX попытка загрузки просто
выпадает (HALT) )))
Начало загрузки RK2 из списка выше на "виртуальной" ДВК:
--------------------------------------------------------------------
KMON>BOOT RK:/FO
CHMDKB1 XXDP+ DK MONITOR
BOOTED VIA UNIT 0
28K UNIBUS SYSTEM
ENTER DATE (DD-MMM-YY):
RESTART ADDR: 152010
THIS IS XXDP+. TYPE "H" OR "H/L" FOR HELP.
.H
? NOT FOUND: HELP .TXT
.H/L
.
RK0 - как загрузить?
C ВМ2 набрать В появится $ набрать RK появится @ набрать unix и получить вылет по 000042.
На ВМ3 c прошивкой 134 что-то с загрузчиком (DK). Можно через RT11 командой BO/FO RK0: появится @ набрать unix и получить зависон.
На ВМ3 c прошивкой 377 набрать В появится Boot: если образ подключен к RK0 набрать DK0 появится @ набрать unix и получить вылет по 000470.
Отчего цикл HALT?
Промпт Unix'a совпадает с промптом пульта, поэтому и кажется что вылет.
У RK1 - проблема с размером
Скорее всего эмулятор PDP11/70 рассчитан на образ меньшего размера, т.к. в реальной ситуации если диск имеет плохие блоки то и размер уменьшается.
Начало загрузки RK2
В этом образе нет файла HELP .TXT.
PDPe - эмулятор pdp11 для MS-DOS (автор неизвестен).
Автор известен.
http://s017.radikal.ru/i438/1612/6f/a7016889ba07.jpg
Эмулятор- здесь. (http://michurinsk.org/modules.php?name=Downloads&d_op=viewdownload&cid=16&orderby=dateA)
Автор известен.
Этот эмулятор примечателен тем, что там рабочая среда рассчитана на работу с Модулой-2 )
- - - Добавлено - - -
и похоже читалка \ писалка MY в образ и обратно присутствует ;-)
Ещё один эмулятор PDP11/70.
http://s008.radikal.ru/i306/1701/23/16965042cc62.jpg (http://radikal.ru)
Здесь. (http://www.pcjs.org/blog/2016/10/06/)
А теперь хардвовый эмулятор.
MTI MICRO TECHNOLOGY MLV11
Эмулирует контроллер дисков типа RL01/02.
Видится на шине 174400 с вектором 160.
http://s009.radikal.ru/i308/1701/96/d651d34f1866t.jpg (http://radikal.ru/big/g4abb9r234a0w)
А теперь хардвовый эмулятор.MTI MICRO TECHNOLOGY MLV11
эх запилить бы реплику!
эх запилить бы реплику!
А смысл?
А смысл?
Смысл есть, только не в точном повторении, а в эмуляторе RLV12 контроллера. Он удобен тем, что достаточно стар, чтобы пониматься старыми системами, и при том поддерживает 22-bit на Q-Bus :)
Нашёл скудное описание контроллера, и выяснилось что он для 8 дюймовых винчестеров.
Описание. (http://www.channelpartner.de/a/controller-fuer-speicher-und-floppies,1178515)
Нашёл скудное описание контроллера, и выяснилось что он для 8 дюймовых винчестеров.
Слово "винчестер" тут не совсем в тему будет, но по сути - да, это здоровенные картриджи. Но нам не нужен контроллер для подключения оригинала - и родной вполне реально еще достать. Нам нужен эмулятор который бы позволял запускать старые системы (у меня например RT-11 V4 полноценно даже не запустишь), да и дистрибутивные киты многие именно в RL01/RL02 виде поставлялись.
у меня например RT-11 V4 полноценно даже не запустишь
Ты будешь смеяться, Олег, но для этой версии системы у тебя есть УК-НЦ (http://zx-pk.ru/threads/6257-emulyator-uknts.html?p=831068&viewfull=1#post831068) )
Ты будешь смеяться, Олег, но для этой версии системы у тебя есть УК-НЦ )
Ты будешь смеяться, но и там полноценно он работать не будет ;)
Попробуй к примеру с WD в нем поработать (или с MZ не того размера который указан в драйвере по умолчанию) :)
А так-то я и у себя могу использовать драйвер DU от первых RT-11 V5 - он подойдет. Но без переделки DUP можно будет работать только с размеченными заранее дисками (ну и SQUEEZE сделать не получится).
Ты будешь смеяться, но и там полноценно он работать не будет
Я там написал, что только с образовательной целью образ этот сделал.
Но вот до практических вещей покопаться я так и не созрел.
Обязательно пощупаю просто ради эксперимента, а так я проверил загрузку
и запуск парочки программ - всё работает, ну и отложил в сторонку.
Неужели где ещё что то вертится на ней и есть потребность замены?
То есть я к тому - зачем тебе возможность полноценного запуска устаревшей RT-шки?
На УК-НЦ точно были дискеты с отечественным вариантом 4 версии монитора,
но (! важная особенность) они были 40 дорожек для НГМД-6022 , там после ввода даты и времени
(что утомляло каждый раз) почти сразу системное приглашение и всё. По спартански так.
- - - Добавлено - - -
зачем тебе возможность полноценного запуска устаревшей RT-шки?
То есть сама система то сохранена, если обладатели раритетных DEC-PDP хотят они знают где взять )
- - - Добавлено - - -
Но без переделки DUP можно будет работать только с размеченными заранее дисками (ну и SQUEEZE сделать не получится).
Ты имеешь в виду нельзя WD с нуля из под неё сделать. Я не пробовал, в штатном режиме всё между разделами
и дисководом копирует - запускает без проблем. Слегка раздражает что ей R для запуска с SYS обязательно надо )
Уже почти отвык, только когда "двусмысленность".
- - - Добавлено - - -
Кстати я же не их воздуха 4 вдруг стал под УК-НЦ гонять - (это всё он! продавец булочек!)
Всё началось с RK образа который кто то (возможно Patron) в теме соотв. выложил.
- - - Добавлено - - -
Если честно летает шустренько! SL не нужен )
Ты имеешь в виду нельзя WD с нуля из под неё сделать.
Там нельзя сделать INI или SQUE на WD (да и на MZ если взять не тот размер который в драйвере по умолчанию) поскольку DUP не будет знать размера диска.
Если честно летает шустренько! SL не нужен )
Был у нас переделанный v4, в нем был и SL (свой и помощнее - к примеру, у него была полезная фича отсечь остаток команды, а так же несколько команд в одной строке через !), в нем же была поддержка CCL как в V5 (то, что тебе не нравится в обычном V4 - обязательность команды R), был LD (тоже свой) и набор программ для сети через DLV11 (ну и поддержка VARSZ, соответственно). Но к сожалению все это счастье не сохранилось. Был еще вариант с красивым системным отладчиком в виде RSXного XDT (и назывался отладчик в нем так же)...
Слово "винчестер" тут не совсем в тему будет, но по сути - да, это здоровенные картриджи.
В описании речь шла именно о винчестерах 8"
MLV 11 durch den Einsatz der 8-Zoll-Winchester-Laufwerke eine vollständige
RL01/RL02-Emulation bei Speicherkapazitäten bis zu 41,6 MByte.
перевод (яндексом)
MLV 11 за счет использования 8-дюймовые винчестеры полный
RL01/RL02-при эмуляции объемы памяти до 41,6 Мб.
Вот, например- такой. (http://www.recycledgoods.com/quantum-20mb-8-inch-hard-disk-drive-sa1000-interface-220-volt-q2020.html) Интерфейс там - SA 1000. (http://maben.homeip.net/static/S100/shugart/disk/shugart%20SA1000%2010MB%20Winchester%20drive.pdf)
А RL01/RL02 это привод с картриджами где 14" диски.
да и дистрибутивные киты многие именно в RL01/RL02 виде поставлялись.
А какой из наших приводов был RL01/RL02?
В описании речь шла именно о винчестерах 8"
Так это наверное в описании той платы которая выше была, а не RLxxx?
А какой из наших приводов был RL01/RL02?
Я даже не знаю был ли такой. Кажется в РАФОСе и драйвера не было такого.
shattered
14.01.2017, 17:02
А какой из наших приводов был RL01/RL02?
пусть старшие товарищи подскажут, но мне кажется, что никакой.
источники:
без пометки -- "комплексирование" '1986
(*) -- http://pdp-11.org.ru/files/docs/rt-11/r23110.txt
(**) -- "справочник по ЭВМ" '1989
(***) -- "ОС РАФОС СМ ЭВМ" '1984
(1979) -- "СМ ЭВМ. Каталог разработанных и испытанных технических и программных средств" '1979
шифр I4 I5 I6 I7 ID vecs #reg reglo reghi
---- -- -- -- -- -- ---- ---- ----- -----
СМ-5400
(**) диск со сменными кассетами (Болгария, IZOT-1370) .00/.01 -- с несъемным диском, .02/.03 -- без него. 204 дорожки, 12 или 24 сектора.
СМ-5401
(**) диск со сменными кассетами (Польша, MERA-9425). Кассета MERA-847.
СМ-5402 x x x x x 220 7 777400 777416 RK11, RK [RK05 drive]
УВПМД, устройство внешней памяти на магнитных дисках; (**) комплект из нескольких СМ-5400
СМ-5403
(**) диск со сменными кассетами (ЧССР, KDR-721 или KDP-721)
СМ-5404 254 176700 ?????? RH11, RHA
??? (прошивка 377 от МС0507 умеет грузиться с DB: на CSR 176700)
СМ-5405
??? то же, что СМ-5407 (прошивка 377 от МС0507 умеет грузиться с DP: на CSR 176714)
СМ-5407 x x x x x 254 12 776710 776736 RP11, -- [not in SIMH]
УВПМД, устройство внешней памяти на сменных магнитных дисках (**) комплект из нескольких ЕС-5061
СМ-5408 DM11, -- [not in SIMH]
(*) пакет сменных дисков для СМ-1600 (**) накопитель на сменной двухдисковой кассете (СССР), 16 MB unformatted, 14 MB formatted
СМ-5410
(**) Накопитель на магнитных дисках (СССР). 5M 16b слов
СМ-5415
(**) УВПМД -- комплект из контроллера и до 8 СМ-5408
СМ-54xx 204 172040 ?????? RH11, RHC
клон RS03/RS04 ?? (прошивка 377 от МС0507 умеет грузиться с DS:, CSR 172040)
СМ-5500 RF11, RF
(*) диск с фиксированными головками или доменное ЗУ "Домен-3".
(**) Венгрия, MD-0800B (860 KB); 5500.01 = MD-1600B (1720 KB); 5500.02 = MD-0500C (512 KB); 5500.03 = MD-1000C (1024 KB)
СМ-5501
(1979) Внешнее запоминающее устройство на магнитных дисках
СМ-5504
(http://oldpc.su/pc/sm/sm5504/index.html)
СМ-5508
(ruwiki) клон Seagate ST-412
СМ-5601
(**) Накопитель на гибких магнитных дисках (Венгрия, MF-3200). диаметр 200 мм, объем 390KB.
СМ-5602
(**) Накопитель на гибких магнитных дисках (Польша, PLx-45D).
СМ-5603 x x x x - 264 2 777170 777172 RX11, RX [RX01 drive]
УВПГМД, устройство внешней памяти на гибких магнитных дисках
СМ-5605
(**) УВПГМД (ЧССР) -- контроллер и 2 накопителя
СМ-5640
???
СМ-5404 254 176700 ?????? RH11, RHA
??? (прошивка 377 от МС0507 умеет грузиться с DB: на CSR 176700)
Интересно. Значит в теории есть родное RSXовское устройтво :)
Так это наверное в описании той платы которая выше была, а не RLxxx?
Да.
А чего пропущены 5409, 5411-5414 ?
И можно ли увидеть r23110.txt ?
СМ-5407 x x x x x 254 12 776710 776736 RP11, -- [not in SIMH] УВПМД, устройство внешней памяти на сменных магнитных дисках (**) комплект из нескольких ЕС-5061 Кстати, в реале это кто-нибудь видел? Должно быть весьма забавное устройство в 48 тыс. блоков на каждом механизме...
Кстати, в реале это кто-нибудь видел? Должно быть весьма забавное устройство в 48 тыс. блоков на каждом механизме...
У нас были DP на Э100/25. Этакие стиральные машинки с верхней загрузкой :)
shattered
16.01.2017, 00:13
А чего пропущены 5409, 5411-5414 ?
И можно ли увидеть r23110.txt ?
Пропущенных не было в тех источниках, которые я использовал. Сам список появился после размышлений, о том, чего бы такого сэмулировать популярного :) результат -- DX и начало DW.
http://pdp-11.org.ru/files/docs/rt-11/r23110.txt -- сейчас чего-то недоступен
Пропущенных не было в тех источниках, которые я использовал
У Вас по СМ5504 есть ссылка на источник (http://oldpc.su/pc/sm/sm.html). Там есть по пропущенным.
СМ-5408 DM11, -- [not in SIMH]
(*) пакет сменных дисков для СМ-1600 (**) накопитель на сменной двухдисковой кассете (СССР), 16 MB unformatted, 14 MB formatted
DM11? Все контроллеры, начинающиеся на DM - это модемы вроде :)
Если же речь идет об RK06 (устройство DM: - судя по размеру), то непонятно что означает "not in SIMH" ибо там поддержка RK06/RK07 есть (и в v4 даже мой патч, исправляющий запись, добавили).
Счастье постепенно подкрадывается: в E11 добавили часть предложенного функционала по отработке power failure. Пока правда нет способа втоматом стартануть после этого или вызвать нормальную загрузку если нечего восстанавливать. Новую порцию предложений заслал, ждем :)
kapitan-u
28.04.2017, 19:32
Hi All!
Вопрос: существует ли эмулятор корректно эмулирующий RQDX3 HDD ? Так что бы запустить форматирование из XXDP и он прописал служебную информацию в образ диска?
К примеру SIMH этого неделает, запуск ZRQCH0 приводит к ошибке.
kapitan-u
29.04.2017, 01:50
Нет. в этом и суть вопроса: можно последовательно все перепробовать :-) но может кто то знает точно
существует ли эмулятор корректно эмулирующий RQDX3 HDD ? Так что бы запустить форматирование из XXDP и он прописал служебную информацию в образ диска?
Таковой неизвестен. Даже настоящий RQDX1/RQDX2 не подойдет :)
А в чем проблема запустить XXDP на живой машине? Теперь даже одной консольнотерминальной линии для этого достаточно.
А образ диска информации этой содержать не будет просто по той причине, что ей там нечего делать :)
Эмулятор дисковода RX01/RX02
https://www.torok.info/computing/pdp11/rx02/Emulator-LCD-Status.jpg
Здесь. (https://www.torok.info/computing/pdp11/rx02/index.htm)
Обнаружен небольшой косячок в SimH (v4?). При выборе процессора, соответствующего KDJ11-B/KDJ11-E, создается набор привычных регистров 177520-177524 (+177526 для E), однако в регистрах просто нули из-за чего RSTS/E будет всегда определять частоту таймера как 60Hz. В этом плане E11 поступает правильнее - выставляет биты в 177520 в соответствии с частотой таймера. В идеале надо бы еще отрабатывать изменение этих битов (правда тогда еще надо поддерживать 800Hz).
Не совсем относится к PDP, но может быть интересен.
AMD 2900 Processor Simulator.
PDF- здесь. (http://www.csit-sun.pub.ro/research/sp/p20040606001/AMD%202900%20Processor%20Simulator.pdf)
Скачать- здесь. (http://www.csit-sun.pub.ro/research/sp/p20040606001/simulator_2.0.zip)
shattered
29.12.2017, 23:18
Обнаружен небольшой косячок в SimH (v4?). При выборе процессора, соответствующего KDJ11-B/KDJ11-E, создается набор привычных регистров 177520-177524 (+177526 для E), однако в регистрах просто нули из-за чего RSTS/E будет всегда определять частоту таймера как 60Hz. В этом плане E11 поступает правильнее - выставляет биты в 177520 в соответствии с частотой таймера. В идеале надо бы еще отрабатывать изменение этих битов (правда тогда еще надо поддерживать 800Hz).
SET SYSTEM JCLK_DFLT=60
?
Вот этот австрийский чувак https://twitter.com/_stderr
сделал клон PDP-11 с живым К1801ВМ2.
https://twitter.com/_stderr/status/928215461552119811
https://pbs.twimg.com/media/DOGvBiiWAAAqW8s.jpg
https://twitter.com/_stderr/status/933263129902854145
https://twitter.com/_stderr/status/939685943845548032
https://twitter.com/_stderr/status/947892349098778625
https://twitter.com/_stderr/status/972587793443672070
https://pbs.twimg.com/media/DX9Spu_XkAE1A3L.png
PDP-11 совместимая машинка на К1801ВМ2 в mini-ITX форм-факторе by Shaos (Colorado, US):
https://hackaday.io/project/67369-pdpii
https://pbs.twimg.com/media/Da-QR4iVwAAsJn-.jpg
macro-11 под винды нашел без труда, вроде даже в составе simh есть.
А вот где взять link... Ткните в ссылочку, пожалуйста.
macro-11 под винды нашел без труда, вроде даже в составе simh есть.
А вот где взять link... Ткните в ссылочку, пожалуйста.
Тоже пробовал этот подход. macro11 отдельный тот что есть страшно глючный. link вообще нету.
Пользую RT-11 console emulator, это намного-намного надёжнее.
А консоле эмулятор видит виндовую файловую систему? Я-то искал способ избавится от перекладывания .mac файлов в образы дисков, чтобы сразу можно было компилировать.
MacBuster
25.07.2018, 22:02
Удаление в знак протеста против действий MM
Тогда уж доведите дело до конца ;-)
Дайте, пожалуйста, ссылочку на эту славную вещь. А то самому искать лень :-(
MacBuster
02.08.2018, 10:11
Удаление в знак протеста против действий MM
PDP-11 совместимая машинка на К1801ВМ2 в mini-ITX форм-факторе by Shaos (Colorado, US):
https://hackaday.io/project/67369-pdpii
https://pbs.twimg.com/media/Da-QR4iVwAAsJn-.jpg
Уже даже "Hello, World!" имеется :)
https://zx-pk.ru/attachment.php?attachmentid=68499&d=1552943674
Справедливости ради надо сказать, что машинка пока не сильно совместимая с PDP-11 и пока не совсем в mini-ITX, скорее оно сейчас MK-85 совместимая - т.к. ПЗУ в нижней половие, а ОЗУ - предполагалось в верхней (на фотке пока никакого ОЗУ нет - только ПЗУ) :v2_dizzy_punk:
68499
У меня кстати один КР1801ВМ2 разогнался аж до 20 МГц :v2_dizzy_army:
https://www.youtube.com/watch?v=K4fiBa9CdU4
Правда ненадолго - через несколько минут начинает страшно глючить :)
P.S. Он же на 16 МГц работает намного стабильнее...
P.P.S. Все сырцы тут: https://gitlab.com/shaos/pdpii
Этот (https://webcourse.cs.technion.ac.il/234118/Spring2013/ho/WCFiles/SIM_v5_5.zip) был уже ?
Ссылка ведет на закрытый ресурс. Недоступно.
Кидай все что есть оттуда :) и этот Сим 5.5 тоже.
... и этот Сим 5.5 тоже
https://www.dropbox.com/s/3ydgeg7z1ainrks/SIM_v5_5.zip
https://www.dropbox.com/s/3ydgeg7z1ainrks/SIM_v5_5.zip
https://web.archive.org/web/20190908155614/https://webcourse.cs.technion.ac.il/234118/Spring2013/ho/WCFiles/SIM_v5_5.zip
shattered
26.02.2025, 21:29
Итого 9 эмуляторов под DOS. Последние два найдены в теме про Helios -- https://zx-pk.ru/threads/31439-sapr-pechatnykh-plat-quot-gelios-quot-(hellios-cad-calay).html
SOS
DEC PDP-11 (R) Software emulator V2.1 (1989-1992)
автор: Охапкин, есть исходники
OWA
Эмулятор процессора PDP-11/03 (1995-1997)
автор: Овсиенко (НИО "Голография", Ульяновск), есть исходники
EM
развитие SOS, автор: Полетаев
PDPC
PDP-11 on PC (1995-1996)
автор: Полетаев
PDPE
безымянный эмулятор (1998?)
авторы: Шерстюк, Буяновский, Боровиков (Москва)
CR11
cross-ide 3.0 (2000)
автор: Дмитриев (НИИ "Кром", Псков)
MIG
DEC PDP11 emulator v1.9 (2003?)
автор: "MIG" (Московская Инициативная Группа?)
PDPEMU
PDP-11/34 emulator on 80386+ CPU V1.00 (1993)
автор: Лихачев (HT-Systems, Питер)
PDP-11B
DEC/PC PDP-11 interpreter v 2.30 (1991-1995)
автор: Венгеров (Питер)
OWA
Эмулятор процессора PDP-11/03 (1995-1997)
автор: Овсиенко (НИО "Голография", Ульяновск), есть исходники
О, это там где Сталер/Зону/Пикник сделали
shattered
27.02.2025, 21:29
PDPC 1.02 проваливает основной тест команд 791401 и тест EIS 791402
MIG, SOS/EM, OWA проходят 791401, но проваливают тест прерываний 791404 (OWA продвигается дальше всех, HALT PC=12346, тест 71 -- WAIT)
SOS/EM умеют EIS и FIS, но проваливают тесты 791402, 791403
Остальные проверить не удалось.
Итого 9 эмуляторов
логично и удобно было бы, что все найденные эмуляторы, лежали в шапке темы (как и ссылки на "всем известные")
MIG
DEC PDP11 emulator v1.9 (2003?)
У меня для этого эмулятора нашлись такие исходники:
PDP-EM_v1.0 (https://emulator.pdp-11.org.ru/misc/PDP-EM_v1.0.zip) (1999?) - для запуска в Windows использовать: PDP-EM_v1.0\DOSBox-0.72\PDP-EM.bat
PDP-EM_v1.9 (https://emulator.pdp-11.org.ru/misc/PDP-EM_v1.9.zip) (2006?) - для запуска в Windows использовать: PDP-EM_v1.9\DOSBox-0.72\PDP-EM.bat
EM.exe v1.9 при запуске монтирует каталоги DOS: \RT_FILES , \RT11.DSK и \RT11_SRC в приводы HD0:, HD1: и HD2: как образы дисков RT-11.
shattered
23.08.2025, 19:54
Удивительно, но SIMH тоже проваливает тесты команд (проверял "set cpu 11/03 eis fis" и Open-SIMH c20b391eea8ea3ae7f264837aa9c8dd1476b1ea1)
VKAAC0 OK
VKABB0 FAIL (зацикливается в тесте 310)
VKACC1 FAIL (много ошибок)
VKADC1 OK
Ничего удивительного, там достаточно много ошибок и другого плана, а тесты (не только процессора), я так понимаю, особо и не гоняли.
У меня есть мой вариант simh, в котором некоторые ошибки я поправил
shattered
24.08.2025, 16:01
Мнение simh maintainer -- "Главное, чтобы софт работал" (2014 год, может быть, теперь иначе)
https://simh.trailing-edge.narkive.com/5Lt7P2UQ/unit-functional-testing-simulators
The goal of most simulators is, often not to completely run every detail of the original vendor provided diagnostics, but to run the operating systems and other software which ran on that hardware. Getting every bit of the hardware 'right' is often not necessary and sometimes too much overhead in the simulator implementation. The things which software running in the simulator needs to see are what most simulators target to implement.
Этот тот maintener, который разос..лся с Супником. Надо будет на досуге сравнить open-simh и simh
- - - Добавлено - - -
Вдогонку. Сравнивать буду конечно PDP11, а не всё подряд
kibertorm
07.11.2025, 17:35
Посоветуйте пожалуйста эмулятор PDP-11 для MS-DOS с поддержкой VT52 и KOI-7 и открытым исходным кодом с/с++ и лицензией GPL/MIT/CC или другой открытой
я попробовал несколько, в Dosbox запустплся "PDP11-03 Modular Emulator" но он коммерческий, и смог запуститься только один раз
shattered
07.11.2025, 19:57
Лицензии у них (скорее всего) неопределенные, лучше взять что-то современное (SIMH) и попытаться собрать его OpenWatcom, например.
Опять же см. выше про качество эмуляции -- зачем чинить столь античный код?
kibertorm
07.11.2025, 23:09
я собирал его и он завелся в досбокс , только не понимает он VT52
я хочу запустить первый тетрис https://github.com/corkscrewey/soviet-tetris/tree/master на своей консольке для ретро игр, а там нет полноценного линукса, только досбокс
simh в досбокс запускается но в терминале показывает кракозябры
я написал на питоне эмулятор VT52 KOI-7R терминала и в теории его можно пререписать на c++ и приделать к simh но что то не очень хочется изобретать велосипед
- - - Добавлено - - -
можно конечно форкнуть SIMH и научить его на лету перекодировать VT52:KOI7R в VT100 UTF8 :v2_dizzy_facepalm:
https://github.com/simh/simh/blob/master/sim_console.c#L92
Посоветуйте пожалуйста эмулятор PDP-11 для MS-DOS с поддержкой VT52 и KOI-7 и открытым исходным кодом с/с++Этот вариант может устроить:
PDP-EM_v1.9 (https://emulator.pdp-11.org.ru/misc/PDP-EM_v1.9.zip)
Там есть и VT52, и KOI-7.
kibertorm
08.11.2025, 15:13
спасибо! заработало
а это можно из исходников собрать как то? я хочу попробовать заменить русские символы на транслит
shattered
08.11.2025, 15:30
(в сторону -- любопытно, какие из миллиона клонов тетриса хотя бы приближаются к https://tetris.wiki/Tetris_Guideline)
а это можно из исходников собрать как то? я хочу попробовать заменить русские символы на транслитТам проект Borland C++ Builder 4 (https://emulator.pdp-11.org.ru/misc/Borland_C++_Builder_4.rar) ( Serial и Key в файле info.txt ).
kibertorm
08.11.2025, 22:53
Там проект Borland C++ Builder 4 (https://emulator.pdp-11.org.ru/misc/Borland_C++_Builder_4.rar) ( Serial и Key в файле info.txt ).
спасибо но это не он похоже
в проекте нет #include <bios.h>
при сборке 33 ошибки по синтаксису (где то переменная называется byte и ему не равится, где то функция не так как нужно вызвана)
это не он похоже
Верно. Как оказалось - по ссылке из проекта на каталог с компилятором у меня расположен "Borland C++ Release 5.02 ". Его установочного пакета я у себя не нашёл.
В сети есть такой вариант: Borland C++ Release 5.02
(http://old-dos.ru/dl.php?id=3795)
kibertorm
09.11.2025, 10:05
Все получилось
Сетап для сборки такой:
Windows NT workstation 4.0
Dosbox 0.63
Borland CPP 5.02 https://winworldpc.com/product/borland-c/5x
Turbo Assembler 5: Borland https://github.com/qb40/tasm/releases/tag/1.0.0
https://www.temp-image.com/ib/NuztyiIWkyDhgCS_1762672028.png
Если подменить переменную
int koi7toalt[] = {
'ю','а','б','ц','д','е','ф','г','х','и', 'й','к','л','м','н','о',
'п','я','р','с','т','у','ж','в','ь','ы', 'з','ш','э','щ','ч','ъ',
'Ю','А','Б','Ц','Д','Е','Ф','Г','Х','И', 'Й','К','Л','М','Н','О',
'П','Я','Р','С','Т','У','Ж','В','Ь','Ы', 'З','Ш','Э','Щ','Ч','█' //'Ъ'
};
int koi7toalt[] = {
'u','a','b','ç','d','e','f','g','x','i','ï','k', 'l','m','n','o',
'p','a','r','s','t','y','j','v','`','y','z','s','e ','s','4','`',
'U','A','B','Ç','D','E','F','G','X','I','Ï','K', 'L','M','N','O',
'P','A','R','S','T','Y','J','V','`','Y','Z','S','E ','S','4','█'
};
игры начинают работать в досбокс на любых устройствах
kibertorm
10.11.2025, 07:31
а вы побовали SIMH? я решил его поизучать и дописать эмулятор терминала VT52 + KOI8-R, но после компиляции оригинального SIMH PDP11 и запуска он ест 5-10% процессора простое, что больше всех других эмуляторов. это норма или там есть какие то нюансы настройки?
а вы побовали SIMH? я решил его поизучать и дописать эмулятор терминала VT52 + KOI8-R, но после компиляции оригинального SIMH PDP11 и запуска он ест 5-10% процессора простое, что больше всех других эмуляторов. это норма или там есть какие то нюансы настройки?Любой эмулятор, работающий без ограничения быстродействия, будет на 100% нагружать одно ядро хост-процессора. Чтобы при настройке эмулятора на работу со сниженным быстродействием он нагружал используемое ядро хост-процессора меньше чем на 100% - в исходном коде эмулятора должен осуществляться специальный системный вызов той операционной системы, для которой скомпилирован эмулятор.
Я так понимаю, что SIMH вообще не использует специальные системные вызовы, чтобы иметь возможность компилироваться для любых операционных систем - поэтому нагружать "своё ядро" меньше, чем на 100%, он в принципе никогда не должен.
shattered
10.11.2025, 20:31
Можно попробовать затормозить симуляцию (SET THROTTLE).
Я так понимаю, что SIMH вообще не использует специальные системные вызовы,
Если речь о nanosleep() и подобным -- использует, см. sim_idle_ms_sleep() в sim_timer.c
Кроме того, симулятор VAX умеет отлавливать исполнение idle loop в разных ОС, запущенных в симуляторе (симулятор PDP11 такого не умеет). Например
case TSTL:
CC_IIZZ_L (op0); /* set cc's */
if ((cc == CC_Z) && /* zero result and */
((PC - fault_PC) == 6) && /* 6 byte instruction? */
(fault_PC & 0x80000000) && /* in system space? */
(((cpu_idle_mask & VAX_IDLE_VMS) && /* VMS 5.0 and 5.1 */
(PSL_GETIPL (PSL) == 0x3) && /* at IPL 3 */
(PSL_IS & PSL)) || /* on the interrupt stack */
((((cpu_idle_mask & VAX_IDLE_ULTOLD) && /* running Old Ultrix or friends? */
(PSL_GETIPL (PSL) == 0x1)) || /* at IPL 1? */
((cpu_idle_mask & VAX_IDLE_QUAD) && /* running Quasijarus or friends? */
(PSL_GETIPL (PSL) == 0x0))) && /* at IPL 0? */
((fault_PC & 0x7fffffff) < 0x4000)))) /* in low system space? */
cpu_idle(); /* idle loop */
break;
симулятор VAX умеет отлавливать исполнение idle loop в разных ОС, запущенных в симуляторе
В эмуляторе RT-11 (https://zx-pk.ru/threads/24755-emulyator-rt-11.html) в исходник резидентного монитора добавлено снижение скорости эмуляции при ожидании ввода с клавиатуры:
.SBTTL TTYIN
T$TIN::
.IF EQ MTT$Y
Mov #12., @#177720 ; Set Slow CPU speed ; <-- Patron
BIT #TTSPC$,@#JSW
BEQ 1$
TST TTIBUF+4
BR 2$
1$: TSTB @R5
2$: BEQ NOINPT
MOV (PC)+,R1
PTIBF6:: .WORD TTIBUF+6
kibertorm
21.11.2025, 15:02
я собрал SIMH и попробовал его с эмулятором терминала mame ie15 - 15ИЭ-00-013 + полностью написал такой эмулятор на питоне
в mame и в моем эмуляторе 15ИЭ-00-013 в игре XONIX c диска http://astio.ciotoni.net/tetris/games.dsk нет белой рамки,
игра выводит надпись xonix, потом черный экран, потом сразу пояляется интерфейс игры
83156
полное изображение (https://i.postimg.cc/FsCN5Xbf/image.png)
а PDP-EM_v1.9 такая рамка есть
поведение такое: игра выводит надпись xonix, потом идет как бы анимация - построчно сверху вниз появляется белая рамка, потом пояляется интерфейс игры
83155
полное изображение (https://i.postimg.cc/9MbY8p6g/image.png)
в логах видно что SIMH присылает байт 32 (пробел) и ими заполняется экран, но в PDP-EM_v1.9 цвет пробела как бы инвертируется по краям экрана
83157
полное изображение (https://i.postimg.cc/rwcVNN9g/image.png)
существуют Escape sequences инверсий для VT52, но я их не обнаружиаю в трафике терминала
https://gunkies.org/wiki/VT52?
Reverse Video ESC p
Normal Video ESC q
Set Foreground Color ESC b <color>
Set Background Color ESC c <color>
что можно попробовать поправить в конфигурациях, логике, чтобы поймать инверсию?
что можно попробовать поправить в конфигурациях, логике, чтобы поймать инверсию?
Белая рамка - это символ с кодом 127 (десятичное). У нас это закрашенный прямоугольник.
kibertorm
21.11.2025, 15:54
спасибо! по коду поправил
поведение не изменилось к сожалению
для vt52 он как DEL помечен обычно
для 15ИЭ - забой/ кракозябра/ квадратик
в логах он 32, не 127
83158
а можно что то придумать в ОС - RL11 или конфигах чтобы этот символ передавался корректно, или заменить ему код на 126 например, на эту сессию?
в логах он 32
bytes_log.csv.zip
Там команда MOVB #177,@#177566. Т.е. там в цикле этот код передаётся через регистр терминала. Значит эмулятор подменяет этот код на другой.
kibertorm
21.11.2025, 16:18
я починил))
в конфиг надо прописать set tti 8b
чтобы разрешить 8bit пердачу
8 должно быть по дефолту согласно доку, но там вероятно 7
https://retrocmp.com/how-tos/installing-211bsd-unix-on-pdp-1144/122-installing-211bsd-kermit
https://simh.trailing-edge.com/pdf/pdp11_doc.pdf?
2.3.3 DL11 Terminal Input (TTI)
The terminal interfaces (TTI, TTO) can be set to one of three modes, 7P, 7B or 8B:
7P high-order bit cleared high-order bit cleared,
7B high-order bit cleared high-order bit cleared
The default mode is 8B.
в логах 32/127 теперь
https://i.postimg.cc/L4WpJGvJ/image.png
SlashNet
21.11.2025, 17:07
в игре XONIX c диска http://astio.ciotoni.net/tetris/games.dsk нет белой рамки,
чем можно извлечь файлы с диска?
kibertorm
21.11.2025, 17:46
я смог к PDP-EM_v1.9 смонтировать этот диск с играми, диск с ОС, и еще одну папку как диск, и через ОС RT11 скопировать файлы с диска смонтированную папку, а папка эта через досбокс смонтирована в основную систему
еще нашел работающий дизассемблер к файлам игр
SlashNet
21.11.2025, 17:56
Спасибо. Но думал, что можно будет какой-нибудь утилитой типа cpmtools.
kibertorm
21.11.2025, 18:25
я думаю сделать питон скрипт для сборки/разборки образов, но пока доделываю эмулятор
чем можно извлечь файлы с диска?
http://www.KpXX.Ru/Web/Soft/Games/Games
чем можно извлечь файлы с диска?
Проще всего использовать 32-разрядный TotalCommander, в котором установлен DSK-плагин (https://zx-pk.ru/threads/11015-rt-11-dsk-total-commander-wcx-plugin.html).
kibertorm
23.11.2025, 15:14
Хочу понять логику работы клавиатуры терминала 15ИЭ-00-013. Не нашёл этого в документации.
Клавиши РУС и ЛАТ должны просто отправлять специальные коды для переключения раскладки, и ОС/программа это сама обрабатывает? Или же сама клавиатура должна менять таблицу символов и дальше уже выдавать какой-то маркер set0/set1?
Клавиши ВР и НР (верхний и нижний регистр). Это режим внутри клавиатуры (как Shift), или же они только посылают код, а терминал уже сам переключает режим набора?
Клавиши: ЗБ, АР1, С1, АР2, ПРД, ПРМ, ПРС, РЕД, СДВ, ОЧС — возможно, они связаны с режимами редактирования текста, но точных соответствий я не нашёл.
Вот инструкция к терминалу и инструкция к эмулятору, которые я использую:
https://forum.maxiol.com/index.php?act=Attach&type=post&id=7945
https://d3-28.ru/wp-content/uploads/2018/11/imitator_D3-28_rukovodstvo_11-11-2018.pdf
[
["СБР", "СТР", "СТС", "", "", "АР1", "С1", "АР2", "", "", "", "ПРД", "ПРМ", "ПРС", "", "РЕД", "СДВ", "ОЧС"],
["; +", "1 !", "2 “", "3 #", "4 ¤", "5 %", "6 &", "7 `", "8 (", "9 )", "0", "- =", "ТАБ", "ГТ", "", "", "", "" ],
["Й J", "Ц C", "У U", "К K", "Е E", "Н N", "Г G", "Ш [", "Щ ]", "З Z", "Х H", ": *", "ПС", "ВК", "", "⬐", "↑", "↩"],
["СУ", "Ф F", "Ы Y", "В W", "А A", "П P", "Р R", "О O", "Л L", "Д D", "Ж V", "Э \\", ".>", "ЗБ", "", "←", "↖", "→"],
["ВР", "Я Q", "Ч ¬", "С S", "М M", "И I", "Т T", "Ь X", "Б B", "Ю @", ", <", "/ ?", "_", "НР", "", "⟻", "↓", "⟼"],
["РУС", "", "", "", "", "", "space", "", "", "", "", "", "", "ЛАТ", "", "⭽", "⤓", "⭻"],
]
Клавиши РУС и ЛАТ должны просто отправлять специальные коды для переключения раскладки, и ОС/программа это сама обрабатывает?
Да, клавиша <РУС> при каждом нажатии отправляет код <Ctrl/N> ( 016 = 14. = x0E ), а клавиша <ЛАТ> при каждом нажатии отправляет код <Ctrl/O> ( 017 = 15. = x0F ).
Клавиши ВР и НР (верхний и нижний регистр). Это режим внутри клавиатуры (как Shift), или же они только посылают код, а терминал уже сам переключает режим набора?
Это режим внутри клавиатуры (как Shift).
Клавиши: ЗБ, АР1, С1, АР2, ПРД, ПРМ, ПРС, РЕД, СДВ, ОЧС
ПРД, ПРМ, ПРС, РЕД, СДВ, ОЧС - управляют работой устройства.
<ЗБ> = 0177 = 127. = x7F
<АР1> = <Ctrl/P> = 020 = 16. = x10
<С1> = <Ctrl/A> = 01 = 1. = x01
<АР2> = <Ctrl/[> = 033 = 27. = x1B
<ТАБ> = <Ctrl/X> = 030 = 24. = x18
<ГТ> = <Ctrl/I> = 011 = 9. = x09
<ПС> = <Ctrl/J> = 012 = 10. = x0A
<ВК> = <Ctrl/M> = 015 = 13. = x0D
kibertorm
24.11.2025, 09:08
спасибо!, добавил в эмулятор
а можете еще по поведению эмулятора подсказать?
некоторые программы присылают много b'00' один за одним, зачем это делается?
https://forum.maxiol.com/index.php?a...e=post&id=7945
https://i.postimg.cc/XYjSSPyV/image.png
Зачем нужны команды Аннулирование, Замена?
Может ли быть так, что PDP11 забывает посылать команды переключения система команд1 / система команд2 ?
вот так согласно таблице нужно орабатывать байты
{'code': b'1A', 'cs1': 'КЛВ', 'cs2': 'ЗАМЕНА', 'cs_desc': 'курсор на шаг влево / (ЗАМЕНА)'},
{'code': b'1B', 'cs1': '', 'cs2': 'АР2', 'cs_desc': 'управляющая метка АР2'},
{'code': b'1C', 'cs1': 'КВВ', 'cs2': '', 'cs_desc': 'курсор вверх на одну строку'},
{'code': b'17', 'cs1': 'СИС2', 'cs2': '', 'cs_desc': 'переключение на систему команд 2'},
{'code': b'1B45', 'cs2': 'АР2 E', 'cs_desc': 'переключение на систему команд 1'},
фактически - пришлось сделать так
{'code': b'1A', 'cs1': 'КЛВ', 'cs2': 'КЛВ', 'cs_desc': 'курсор на шаг влево/ (ЗАМЕНА)'},
{'code': b'1B', 'cs1': 'АР2', 'cs2': 'АР2', 'cs_desc': 'управляющая метка АР2'},
{'code': b'1C', 'cs1': 'КВВ', 'cs2': 'КВВ', 'cs_desc': 'курсор вверх на одну строку'},
АР2 E - по какой-то причине не приходит никогда
некоторые программы присылают много b'00' один за одним, зачем это делается?
Чтобы максимально просто осуществить задержку выполнения программы, не зависящую от быстродействия процессора.
Зачем нужны команды Аннулирование, Замена?
Эти команды ни зачем особо не нужны и нигде по сути не используются.
Может ли быть так, что PDP11 забывает посылать команды переключения система команд1 / система команд2 ?
Типа, программа отправляет в эмулируемый регистр последовательного порта PDP11 байт, но до эмулятора терминала этот байт не доходит? Такого быть не должно.
АР2 E - по какой-то причине не приходит никогда Из одной части программы эмулятора в другую или из эмулятора PDP11 через эмулятор COM-порта в эмулятор терминала?
некоторые программы присылают много b'00' один за одним, зачем это делается?
Это называется символ-заполнитель (обычно 0). Некоторым (особенно старым) терминал он требуется, когда выполняется долгая команда (типа перевода строки, стирание экрана) - он игнорируется терминалом, но позволяет создать некую задержку, пока команда гарантированно не отработает. Обычно - для каких команд и в каком количестве требуется - есть в доках.
kibertorm
24.11.2025, 15:42
команду АР2 E - simh pdp11 не передает в линукс (хост ОС), а другие АР2 команды - передает (если запускать игру xonix)
из за этого код эмуляции 15ИЭ-00-013 изредка путается и использует не правильную систему команд (2 вместо 1)
упрощенно коммуникация выглядит так
import pty
import os
import subprocess
import time
master_fd, slave_fd = pty.openpty()
proc = subprocess.Popen(
[ "simh_pdp11.so", "pdp11.ini"],
stdin=slave_fd,
stdout=slave_fd,
stderr=slave_fd
)
time.sleep(1)
os.write(master_fd, b"dir") # тут клавиатура
time.sleep(1)
data = os.read(master_fd, 4096)
print(data.decode(errors="ignore")) # тут буфер экрана и дешифровка
каким образом можно проверить пытается ли xonix передать "АР2 E" - не знаю. может можно написать небольшой скрипт который запустится на simh pdp11 и будет передавать команды, а я буду их ловить?
(сеть не использую из за ограничений питон дистрибутива железки на которой все это будет запускаться)
SuperMax
24.11.2025, 18:59
про эмуляцию и ChatGPT
вот что получилось сделать используя ChatGPT 5.1
https://pic.maxiol.com/thumbs2/1763998058.3232235615.emulbk.png (https://pic.maxiol.com/?v=1763998058.3232235615.emulbk.png&dp=2)
основной промт
напиши эмулятор компьютера БК-0010.01 на базе процессора КР1801ВМ1 на JavaScript, оформи его в виде странички HTML. описание компьютера возьми в сети Интернет.
————————
все адреса сделай восьмеричными. добавь загрузку ROM-образов БК-0010.01, реализуй точные I/O-регистры клавиатуры/таймера/магнитофона,расширить набор команд до полного подмножества К1801ВМ1.
далее - добавь отладчик и потом исправления косяков эмуляции процессора
до ума я не доводил, как Proof of concept катит. вполне возможно, через год "напиши эмулятор" будет сходу выдавать полностью рабочий проект
детальнее с видео тут https://t.me/pdp11_az/14762/27668
каким образом можно проверить пытается ли xonix передать "АР2 E" - не знаю. может можно написать небольшой скрипт который запустится на simh pdp11 и будет передавать команды, а я буду их ловить?
Можно запустить в эмуляторе BASIC.SAV и выполнить в нём команду PRINT:
.BASIC
BASIC-11/RT-11 V02-03Y
OPTIONAL FUNCTIONS (ALL, NONE, OR INDIVIDUAL)?
READY
PRINT CHR$(27),"E"
Когда я проделал это в эмуляторе ДВК, подключив параллельно терминалу консоль в режиме дампа №1, то в консоль пришло так:
BASIC-11/RT-11 V02-03Y
OPTIONAL FUNCTIONS (ALL, NONE, OR INDIVIDUAL)? «033»K
READY
PRINT CHR$(27),"E"
«033»E
а в режиме дампа №3 консоль показала то же самое так:
BASIC-11/RT-11«040»V02-03Y«015»«012»
OPTIONAL«040»FUNCTIONS«040»(ALL,«040»NONE,« 040»OR«040»INDIVIDUAL)?«040»«033»K«015»« 012»
«015»«012»
READY«015»«012»
PRINT«040»CHR$(27),"E"«015»«012»
«033»E«015»«012»
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot