PC-совместимый компьютер на К1810

16-битные ПЦ-совместимые компьютеры с процессорами 8086/8088/80286 работающие под управлением ДОС

Moderator: Shaos

User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

lbodnar wrote:Возникает вопрос сколько там есть неочевидных ошибок типа mov ax, bx вместо mov ax, dx?
Придется буквально каждый байт проверять. Не зря она называется Учебная МикроЭВМ :D
Подумал я как эту проблему порешать и понял, что нам нужен точный дамп с работающей
УМПК-86 , иначе получается, что мы занимаемся нашими декомпиляторами гаданием на
кофейной гуще... :(
Я разыскал по интернету учебное заведение, где УМПК-86 реально используются:
Московский государственный университет путей сообщения,
(МИИТ) кафедра «Вычислительные системы и сети»,
учебная лаборатория «Организация ЭВМ и систем»
,
и написал им электронное письмо с просьбой "сделать копию области ПЗУ 0FE000H-0FFFFFH
через последовательный интерфейс учебной микро-ЭВМ УМПК-86 в IBM совместимый
компьютер и переслать на мой электронный адрес в виде бинарного файла
".

Ответили они мне следующее:
Учебная микроЭВМ УМПК-86 имеет один единственный встроенный интерфейс, позволяющий соединить её с каким-либо внешним устройством, и этот интерфейс - токовая петля 40 мА. В свою очередь, во встроенном программном обеспечении (Мониторе) есть директива SAVE, которая, по замыслу разработчиков системы, должна была использоваться для считывания кода программы из памяти и записи его на магнитофонную ленту.
Подключение УМПК-86 (токовая петля 40 мА) к последовательному порту компьютера (RS-232C) требует преобразователя, которого у нас нет. Объёмы студенческих программ относительно невелики, поэтому задача его приобретения никогда не ставилась. Оборудования для считывания данных из ПЗУ подобного типа (программатора) у нас также нет. Поэтому, к сожалению, выполнить задачу так, как Вы её поставили, нам представляется затруднительным. Вместе с тем, если Вам необходимо уточнить какую-либо более частную информацию по содержимому ПЗУ УМПК-86, которую можно просмотреть вручную, я могу это сделать. Например, Вы могли бы прислать мне ту часть кода программы, которая по Вашему мнению нуждается в сверке.
Я не посмотрел еще пока схему последовательного "интерфейса - токовая ли он петля 40 мА",
поскольку "УМПК-51" у меня соединяется с СОМ-портом без проблем...
Но на "нет возможности", как говорится, и суда - нет... :(

Какие будут конструктивные мысли?

У меня пока только одна слабенькая мысль брезжит: может быть слить "директивой SAVE" дамп
памяти через звуковую карту в WAV-файл?
Тем более, что 0FE000H-0FFFFFH нам вроде как целиком и не надо, по дампу коды занимают
0000-0CFFН, a дальше - сплошные нули, т.е. примерно 3,25 Кбайт всего кода.

Другое дело, что в реальной УМПК-86 это может быть и не так, и второй вопрос - сможем ли
мы обратить WAV-файл обратно в код?

Я, собственно, уже поговорил с ними по телефону - в помощи они не отказывают, но в рамках
имеющихся у них возможностей.
iLavr
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Lavr wrote:Я не посмотрел еще пока схему последовательного "интерфейса - токовая ли он петля 40 мА",
поскольку "УМПК-51" у меня соединяется с СОМ-портом без проблем...
Посмотрел, в "УМПК-86", к сожалению, действительно токовая петля... :(

Image

А в "УМПК-51" - там обычный каскад на транзисторе в размах +/-12В - нормально стыкуется с RS-232.

Проверил, сколько займет дамп памяти 0000-0CFFН в виде WAV-файла.
Через эмулятор Виктора Пыхонина в реальном масштабе времени такой дамп выгружается через
звуковую карту в формате "Специалист" за ~37 с.
WAV-файл PCM, 22 050 Гц; 8 бит; Моно занимает ~800КБайт.

В случае "УМПК-86" используется формат записи от "УМПК-80" - там фазовое кодирование,
насколько я понимаю, и запись идет блоками по 256 байт, значит с паузами длина WAV-файла
будет длиннее.
Ну пусть даже - 1.5МБайт, но объём всё же приемлемый, чтобы перекинуть по почте.

Другой вопрос, что в "УМПК-80" формат записи на магнитофон не расписан подробно в книге
Преснухина, и тут придется опять в гадалки погадать...

Вот такие предварительные прикидки...


PS. Посмотрел, в "УМПК-80" - запись на магнитную ленту: (скорость обмена 1.5 Кбод, фазовая модуляция,
сформированный файл содержит адреса начала и окончания в памяти, данные, контрольные суммы по
адресам и данным);
iLavr
Mixa64
Doomed
Posts: 481
Joined: 25 Aug 2009 07:02
Location: Москва

Post by Mixa64 »

1. Послать в МИИТ гонца с программатором, ноутом, осциллоскопом, звуковыми шнурками и набором деталек и инструметнов для изготовления в полевых условиях переходника с аттенюатором для сопряжения звуковых выходов/входов.
2. Считать ПЗУ программатором.
3. Директивой SAVE считать звуковой выход в файл формата WAV.
4. Выслать звуковой файл, образ ПЗУ попридержать.
5. После колдования со звуковым файлом и извлечения из него цифры выслать образ ПЗУ и сравнить с тем, что получилось.
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Mixa64 wrote:1. Послать в МИИТ гонца с программатором, ноутом, осциллоскопом, ...
Обдумываю несколько другой вариант, послать им по почте преобразователь
"токовая петля" - RS-232 (DB-9) и оставить его им в благодарность за помощь с дампом...

Сейчас как раз смотрю схемы - не имел ранее дела с "токовой петлей" и "Стыком С2".

WAV-файл обдумал - слишком много случайных и непредвиденных факторов, а беспокоить
людей по нескольку раз - не хотелось бы.

А если уж говорить о гонце (у меня такой возможности нет) то он нужен с ноутом и программатором,
но тут есть риск, что ПЗУ может быть впаяно.

PS. Собственно адаптер-то этот в простом приближении - ерунда практически.

Image

(c) Простой адаптер токовой петли ДВК для COM-порта
iLavr
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Lavr wrote:Обдумываю несколько другой вариант, послать им по почте преобразователь
"токовая петля" - RS-232 (DB-9) и оставить его им в благодарность за помощь с дампом...
Ну, если других действительно конструктивных мыслей нет, то мне кажется, что этот вариант оптимальный.

1. Неизвестно насколько действительно отличается дамп ПЗУ из книги, от рельно работающей программы Монитора.

2. Не будет проблем с декодировкой WAV-файла неизвестного формата.

3. Адаптер останется людям в качестве благодарности за беспокойство, поскольку коньяка я им проставить дистанционно не смогу.

В общем - предложу письмом этот вариант.
iLavr
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

2_lbodnar
Вот в этот кусок кода, который, судя по всему, есть данные, я в IDA ниоткуда не попадаю: :(

Code: Select all

seg000:0597 loc_0_597:
seg000:0597                 cbw
seg000:0598                 shl     ax, 1
seg000:059A                 mov     bx, ax
seg000:059C                 add     bx, 0EA8h
seg000:05A0                 retn
seg000:05A1 ; ----------------------------------
seg000:05A1                 push    ax
seg000:05A2                 mov     di, 0EDDh
seg000:05A5                 call    sub_0_1A0
seg000:05A8                 mov     bx, [di]
seg000:05AA                 mov     si, 0EDAh
seg000:05AD                 pop     ax
seg000:05AE                 call    loc_0_5EB
seg000:05B1                 adc     [bx+di], bl
seg000:05B3                 push    es
seg000:05B4                 adc     [di], dx
seg000:05B6                 push    es
seg000:05B7                 add     cl, 5
seg000:05BA                 inc     word ptr [bp+di+6]
seg000:05BD                 mov     ds:0EE1h, al
seg000:05C0                 retn
seg000:05C0 ; -Данные?---------------------------------------
seg000:05C1                 db 0E8h
seg000:05C2                 db 0Eh
seg000:05C3                 db 2
seg000:05C4                 db 0E8h
seg000:05C5                 db 24h
seg000:05C6                 db 0
seg000:05C7                 db 80h
seg000:05C8                 db 43h
seg000:05C9                 db 6
seg000:05CA                 db 81h
seg000:05CB                 db 50h
seg000:05CC                 db 5
seg000:05CD                 db 82h
seg000:05CE                 db 4Ch
seg000:05CF                 db 5
seg000:05D0                 db 0
seg000:05D1                 db 1Dh
seg000:05D2                 db 6
seg000:05D3                 db 1
seg000:05D4                 db 21h
seg000:05D5                 db 6
seg000:05D6                 db 2
seg000:05D7                 db 25h
seg000:05D8                 db 6
seg000:05D9                 db 3
seg000:05DA                 db 0Dh
seg000:05DB                 db 6
seg000:05DC                 db 0Eh
seg000:05DD                 db 6Eh
seg000:05DE                 db 5
seg000:05DF                 db 0Fh
seg000:05E0                 db 7Ch
seg000:05E1                 db 5
seg000:05E2                 db 10h
seg000:05E3                 db 29h
seg000:05E4                 db 6
seg000:05E5                 db 11h
seg000:05E6                 db 3
seg000:05E7                 db 6
seg000:05E8                 db 0FFh
seg000:05E9                 db 0C1h
seg000:05EA                 db 5
seg000:05EB ; ----------------------------------------------
seg000:05EB
seg000:05EB loc_0_5EB:
seg000:05EB                 pop     bp
seg000:05EC
seg000:05EC loc_0_5EC:
seg000:05EC                 cmp     al, cs:[bp+0]
seg000:05F0                 jz      loc_0_5FF
seg000:05F2                 add     bp, 3
seg000:05F5                 cmp     byte ptr cs:[bp+0], 0FFh
seg000:05FA                 jnz     loc_0_5EC
А у Вас как этот участок дизассемблировался?
iLavr
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Lavr wrote:В общем - предложу письмом этот вариант.
А вот тут у нас новости не совсем и приятные: :-?
Посылаю Вам фотографии УМПК-86 и разъёма, на который выведен интерфейс связи с магнитофоном. Этот разъём имеет 8 тонких штыревых контактов (легко гнутся) и совсем не похож на DB-9 последовательного порта. Кроме того, у нас он обозначен как X4, а не X3. Также я консультировался с лектором по дисциплине "Организация ЭВМ и систем". Возникло предположение, что в книге могло быть приведено описание не совсем того варианта УМПК-86, который пошёл в серийное производство.
Image

Ну в общем-то на наш вариант из книги довольно похоже.

------------------------------------Image
Поэтому если Вы найдете адаптер "токовая петля - последовательный порт", который можно будет подключить к УМПК-86, а для PC найдется софт, который прочитает те данные, которые передаст директива монитора SAVE, то имеет смысл попытаться выполнить эту работу.
Image

Image

Я что-то тип разъёма по фотке определить не могу...
iLavr
User avatar
Случайность
Doomed
Posts: 491
Joined: 05 Apr 2011 12:45
Location: Великий Новгород

Post by Случайность »

Я что-то тип разъёма по фотке определить не могу...
могу подсказать, ответная часть к нему называется

СНО53-8-2-В
танцуй пока живешь под каплями огненного дождя...
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Случайность wrote:могу подсказать, ответная часть к нему называется
СНО53-8-2-В
Спасибо! Действительно - это она - вилка СНО53-8-23-В!
Image
iLavr
User avatar
VituZz
God
Posts: 1343
Joined: 13 Nov 2010 04:06

Post by VituZz »

В комплекте с принтерами "Электроника МС-6313" шли такие разъёмы, так что где-то у меня должен лежать. Даже корпус к ним был. Из таких же, но широких 30-контактных я делал кабель, чтобы печатать с "Ориона" через параллельный порт. В своё время такие разъёмы в наших местах дефицитом не были.
User avatar
Shaos
Admin
Posts: 24083
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Shaos wrote:Проклятые америкосы ещё в 1982 описали в журнале BYTE как построить свой клон IBM PC (правда на 8088 проце)
В отличие от "Проклятых америкосов" мы тут на 8086 проце тужимся проект сделать, если ты заметил.

А на 8088 проце этих клонов IBM PC - пруд пруди, мы их и не рассматриваем в этих топиках.
iLavr
Odin P. Morgan
Senior
Posts: 151
Joined: 23 Feb 2015 15:37
Location: OMS

Re: PC-совместимый компьютер на К1810

Post by Odin P. Morgan »

Кстати а можно такого зверька использовать 1810ВМ186? - клон i80186 (по сути облегченный i80286), который успешно работает в обвязе с 1810ВМ87. Или хотябы схемы логики их работы есть? Оч хоцца на VDHL переписать, попробовать модернизировать FPGAшный Zen =)
Andy6zx
Fanat
Posts: 58
Joined: 22 Apr 2015 06:56
Location: Киров

Re:

Post by Andy6zx »

Подумал я как эту проблему порешать и понял, что нам нужен точный дамп с работающей
УМПК-86 , иначе получается, что мы занимаемся нашими декомпиляторами гаданием на
кофейной гуще... :(
...
Я разыскал по интернету учебное заведение, где УМПК-86 реально используются:
Московский государственный университет путей сообщения,
(МИИТ) кафедра «Вычислительные системы и сети»,
учебная лаборатория «Организация ЭВМ и систем»
,
и написал им электронное письмо с просьбой "сделать копию области ПЗУ 0FE000H-0FFFFFH
через последовательный интерфейс учебной микро-ЭВМ УМПК-86 в IBM совместимый
компьютер и переслать на мой электронный адрес в виде бинарного файла
".

Я, собственно, уже поговорил с ними по телефону - в помощи они не отказывают, но в рамках
имеющихся у них возможностей.
Немного запоздало, но всё таки спрошу - А чем закончилась данная история?
User avatar
Lavr
Supreme God
Posts: 16689
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Re:

Post by Lavr »

Andy6zx wrote:
Подумал я как эту проблему порешать и понял, что нам нужен точный дамп с работающей
УМПК-86 , иначе получается, что мы занимаемся нашими декомпиляторами гаданием на
кофейной гуще... :(
Немного запоздало, но всё таки спрошу - А чем закончилась данная история?
С точки зрения получения дампа - она не закончилась ничем... Отказать - как бы и не отказали,
но и дампа у меня не случилось - это сухой итог, если опустить длинные лирические подробности. :ewink:


P.S. Может быть, итог бы был иной, но меня сбили с пути на работе - сказали: да брось ты людей
мучать - давай купим эту штуку! И мы её покупаем... уже более 2-х лет... госслужба... блин.
:-?
iLavr