Страница 1 из 3 123 Последняя
Показано с 1 по 20 из 50

Тема: Об исполнении древнего кода на современных машинах.

  1. #1
    Частый гость
    Автор темы
    Аватар для Wladimir_TS
    Регистрация
    25.01.2010
    Адрес
    Россия
    Сообщений
    151

    По умолчанию Об исполнении древнего кода на современных машинах.

    В общем есть некоторый программный пакет, разработанный еще во времена ЕС-1840, но очень необходимый и поныне, проблема до недавнего времени решалась парой старых 80386 машин, но и они ушли в небытиё. Надо на что-то менять. Исходников совсем нет, разработчиков уже нет, специалистов, способных повторить функционал - как несложно догадаться тоже нет. Функция ПО - программная часть программно-аппаратного отладочного комлекса для кое чего. Общение с внешним миром - COM порт с использование всех дополнительных линий для 25 контактного исполнения в качестве дополнительных управляющих сигналов (естественно прямое управление в регистры ВВ). Скорость обмена 1200/2400 бод. Вывод текстовый 80х25 через подпрограммы BIOS, чтение дисковода тоже через BIOS, про HDD не знает. Ввод с клавиатуры - есть вопросы ? (как проверить ?)

    Аппаратные головки еще есть живые в количестве, повторить нет возможности - уникальные микросхемы неизвестного содержания без каких-либо маркировок в 40(48 ?) выводных корпусах. Похоже ПЛМки с "прошивкой" слоем металлизации.

    Вот как бы решить эту задачу и желательно уйти от дискет ? Есть много разных эмуляторов ХТ, но тут нужна поддержка последовательного порта и судя по всему с таймингами.


    ЗЫ народ смотрел файлы - говорят 100% писано на ассемблере в 8086 кодах.
    ЗЫ2 при попытке запуска под PC-DOS 7.0 на относительно современной машине выдаёт деление на ноль - то есть пытается измерить скорость через таймер.

  2. #2
    Частый гость Аватар для GogaZh
    Регистрация
    02.02.2014
    Адрес
    Мы люди простые, живем в лесу, на пенёк молимся
    Возраст
    62
    Сообщений
    430

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Wladimir_TS, как вариант – смотреть в сторону виртуальной машины с нужной версией MS DOS
    Невежество — лучшая в мире наука: она дается без труда и не печалит душу.
    Дж. Бруно

  3. #3
    котег Аватар для _Сам_
    Регистрация
    04.05.2010
    Адрес
    ☂☂☂Питер☂☂☂
    Сообщений
    2,505

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Wladimir_TS
    для программ 8086 реального режима под WIN10 запускаю DosBox.
    https://www.dosbox.com/
    у него в настройках можно изменять быстродействие виртуальной машины
    «Cобрать стадо из баранов легко, трудно собрать стадо из кошек» — Сергей Капица

  4. #4
    Частый гость
    Автор темы
    Аватар для Wladimir_TS
    Регистрация
    25.01.2010
    Адрес
    Россия
    Сообщений
    151

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от _Сам_ Посмотреть сообщение
    у него в настройках можно изменять быстродействие виртуальной машины
    Это хорошо. Но тут же-ж вопрос еще за порт последовательный. Основная проблема, что там используются все вспомогательные линии управления. Эмуляторов полно, а вот с ком портом ???

    RTS, CTS, DTR, DSR, DCD и RI

    И через них что-то выбирается. То есть они активны при обмене.

    Второй момент - программа похоже обращается к UART (8250 ?) через регистры ввода вывода ибо в начале спрашивает базовый адрес и номер используемого прерывания для порта. Остальное не спрашивает, значит через подпрограммы BIOS / ОС.

    Потому как на 16550 может не работать по причине FIFO.

  5. #5
    котег Аватар для _Сам_
    Регистрация
    04.05.2010
    Адрес
    ☂☂☂Питер☂☂☂
    Сообщений
    2,505

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    Это хорошо. Но тут же-ж вопрос еще за порт последовательный.
    насколько полной там сделана поддержка COM порта не проверял. Другое дело что я очень давно не видел десктопов с 25 штыревыми RS-232, только 9 пиновые DB-9
    «Cобрать стадо из баранов легко, трудно собрать стадо из кошек» — Сергей Капица

  6. #6
    Частый гость
    Автор темы
    Аватар для Wladimir_TS
    Регистрация
    25.01.2010
    Адрес
    Россия
    Сообщений
    151

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от _Сам_ Посмотреть сообщение
    с 25 штыревыми RS-232, только 9 пиновые DB-9
    Это перепаять можно, специфические линии 25 контактного разъема, как оказалось, не используются, просто в корпусе разъема обнаружена плата гальванической развязки, а лишнии провода в кабеле - это как раз питание для той платы.

    ---------- Сообщение добавлено 13:52 ---------- Предыдущее сообщение было 13:47 ----------

    Цитата Сообщение от _Сам_ Посмотреть сообщение
    Другое дело что я очень давно не видел десктопов с 25 штыревыми RS-232
    Последние уже списывают и утилизируют. Можно платку ISA прихабарить конечно.

    ЗЫ Видывал раз в жизни плату на 32 !!! гальваноизолированных RS232 порта ISA-8 стандарта, как она отображалась в адресном пространстве я решительно не понимаю.... Сами разъемы на выносной коробке, соединенной с платой плоским шлейфом. На плате было 32х8250 и куча мелкой логики, а в коробке собственно развязка.

  7. #7
    котег Аватар для _Сам_
    Регистрация
    04.05.2010
    Адрес
    ☂☂☂Питер☂☂☂
    Сообщений
    2,505

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    Это перепаять можно, специфические линии 25 контактного разъема, как оказалось, не используются, просто в корпусе разъема обнаружена плата гальванической развязки, а лишнии провода в кабеле - это как раз питание для той платы.
    тогда скорее всего будет работать. Во всяком случае моя древняя программа работающая с мышью через регистры запустилась под досбоксом. И работа с регистрами ввода-вывода VGA адаптера корректно эмулируется, хотя понятно, что на хосте нет никакого VGA
    «Cобрать стадо из баранов легко, трудно собрать стадо из кошек» — Сергей Капица

  8. #8
    Частый гость Аватар для alex3
    Регистрация
    27.01.2014
    Адрес
    Королёв
    Сообщений
    489

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Исходников совсем нет, разработчиков уже нет, специалистов, способных повторить функционал - как несложно догадаться тоже нет.
    Найти виновных и расстрелять.
    А так - реверсинженеринг в помощь. За денюжку в современном мире сделают все.

  9. #9
    Завсегдатай Аватар для Serge_L
    Регистрация
    12.09.2008
    Адрес
    Калуга
    Возраст
    50
    Сообщений
    3,141

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    В чем проблема найти 386 машину и выделить ее под это?
    Эмуляция флопа на разной памяти тоже часто встречается в инете.
    Это просто джиттер какой-то! (с) momitko

  10. #10
    Частый гость
    Автор темы
    Аватар для Wladimir_TS
    Регистрация
    25.01.2010
    Адрес
    Россия
    Сообщений
    151

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от _Сам_ Посмотреть сообщение
    тогда скорее всего будет работать
    На следующей неделе буду испытывать.

    ---------- Сообщение добавлено 17:25 ---------- Предыдущее сообщение было 17:24 ----------

    Цитата Сообщение от alex3 Посмотреть сообщение
    Найти виновных и расстрелять.
    Расстрельной команды нет..... а подлежащие расстрелу уже давно умерли от иных причин....

    Цитата Сообщение от alex3 Посмотреть сообщение
    За денюжку в современном мире сделают все.
    И денег тоже, естественно, нет.... (...и вас нет, и меня нет... (с) анекдот)

    Цитата Сообщение от Serge_L Посмотреть сообщение
    В чем проблема найти 386 машину и выделить ее под это?
    Кончилися.... последнии остатки добиты. Одна живая плата осталась.

    Потому лучше эмулятор - он флоп эмулирует, а то интересные занятия нетрадиционным сексом с дискетами да в условиях цеха всем несколько за.... надоели.

  11. #11
    Завсегдатай Аватар для Openreel
    Регистрация
    02.09.2006
    Адрес
    Санкт-Петербург
    Возраст
    50
    Сообщений
    3,456

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    Потому лучше эмулятор - он флоп эмулирует,
    Эмуляторов флопов на свете полно продается(продавалось), аппаратных. Для обычных компов давно проблем нет, дорогие эмуляторы для редких флопов типа станочных, приборных, синтезаторных и тд.

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    И денег тоже, естественно, нет.
    Задача не имеет решений, за бесплатно вменяемые реверсить не будут.
    WBR, Michael.
    Цель расчетов - понимание, а не числа (с) Хемминг.

  12. #12
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    62
    Сообщений
    39,153

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от Serge_L Посмотреть сообщение
    В чем проблема найти 386 машину и выделить ее под это?
    Видимо в том, что "выделять" нужно не "машину", а деньги, а их нет.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Да мне-то что, меняйтесь!"(с)анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  13. #13
    Suum cuique Аватар для _Summit_
    Регистрация
    21.04.2010
    Адрес
    Россия
    Возраст
    43
    Сообщений
    3,211

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    Функция ПО - программная часть программно-аппаратного отладочного комлекса для кое чего
    Если есть описание этого "кое чего" и что оно должно получать через COM-порт, то можно попробовать самому набросать на любой платформе.
    В чем вообще проблема слать в COM порт?

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    Исходников совсем нет, разработчиков уже нет, специалистов, способных повторить функционал - как несложно догадаться тоже нет.
    Жаль, но документация на оборудование должна же быть?

    Цитата Сообщение от Openreel Посмотреть сообщение
    Задача не имеет решений, за бесплатно вменяемые реверсить не будут
    Если очень нужно и оборудование хорошее, то надо реверсить. Если старый хлам и на нем надо куда-то поехать, то возможно уже ревесить надо уже саму железку. Ибо много воды с тех пор утекло.

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    Общение с внешним миром - COM порт с использование всех дополнительных линий для 25 контактного исполнения в качестве дополнительных управляющих сигналов (естественно прямое управление в регистры ВВ). Скорость обмена 1200/2400 бод. Вывод текстовый 80х25 через подпрограммы BIOS, чтение дисковода тоже через BIOS, про HDD не знает. Ввод с клавиатуры - есть вопросы ? (как проверить ?)
    Надо добыть протокол обмена для этой железки, все остальное - дело техники.

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    И денег тоже, естественно, нет...
    А что хоть есть то, кроме сломанных 386 и дискет?

  14. #14
    Завсегдатай Аватар для Станислафф
    Регистрация
    18.10.2007
    Адрес
    Тольятти
    Возраст
    47
    Сообщений
    1,640

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    Функция ПО - программная часть программно-аппаратного отладочного комлекса для кое чего.
    на "кое-чего" у МОРФа денег нет?

    286, 386 за копейки на лохито НАВАЛОМ.
    приму в дар видеокарту ET6000 TsengLabs

  15. #15
    Завсегдатай Аватар для Openreel
    Регистрация
    02.09.2006
    Адрес
    Санкт-Петербург
    Возраст
    50
    Сообщений
    3,456

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от _Summit_ Посмотреть сообщение
    В чем вообще проблема слать в COM порт?
    Когда вменяемый обмен, то проблемы нет. Реверсил однажды протокол обмена с одной древней железкой, обошелся даже без дизассемлера.
    Но там все просто было - односторонняя передача без извращений.

    В хитрых железках обмен как правило специфический, реалтаймовый, с дрыгоногом. Под виндой (виндовым приложением) такое либо не работает, либо надо очень извращаться в программировании.

    В нынешнее время 386 надо заменять на микроконтроллер, а в комп слать результат обмеров, по стандартным протоколам, без извращений. Тогда все работает без глюков.
    WBR, Michael.
    Цель расчетов - понимание, а не числа (с) Хемминг.

  16. #16
    Старый знакомый Аватар для ass77
    Регистрация
    08.01.2015
    Сообщений
    904

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Узнается отечественная оборонка: мы у государства денех попросим много-много и рассуем их по карманам, а вы из того хлама, что остался от «великого и могучего», сделайте забесплатно «звезду смерти».
    А если серьезно, то без денег или знаний вопрос не решаемый. На барахолках полно этого хлама, включая оригинальные 1840-1841. А даром разве что кто-то сжалится и пришлет вам старое барахло, которое жалко выбросить. Я, к сожалению, несколько лет назад отправил на помойку все 286-386-486-пентиумы со всеми их исами, весами и писиаями с дисководами в придачу. Может где-то в дальних углах пооставалось что-то из старья - гляну.

  17. #17
    Новичок Аватар для Xantos
    Регистрация
    25.01.2025
    Сообщений
    51

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    Вот как бы решить эту задачу и желательно уйти от дискет ? Есть много разных эмуляторов ХТ, но тут нужна поддержка последовательного порта и судя по всему с таймингами.
    subst ?


    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    ЗЫ народ смотрел файлы - говорят 100% писано на ассемблере в 8086 кодах.
    это говорит об уровне "спецЫалистов"

    Цитата Сообщение от Wladimir_TS Посмотреть сообщение
    ЗЫ2 при попытке запуска под PC-DOS 7.0 на относительно современной машине выдаёт деление на ноль - то есть пытается измерить скорость через таймер.
    Это обычная реакция программы написанной на Borland TurboPascal запускаемой на современной машине

  18. #18
    Завсегдатай Аватар для Alexander
    Регистрация
    30.08.2008
    Адрес
    РФ Саратов
    Сообщений
    4,267

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Попадались программы для ХТ которые не работали на 386 по причине того, что брали клок с проца а не с 14.318. Для решения проблемы применялся файл tormoz.exe
    В современных РС в первую очередь нужно запустить DOS затем tormoz.exe а затем программы для ХТ.

  19. #19
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    62
    Сообщений
    39,153

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от Xantos Посмотреть сообщение
    Это обычная реакция программы написанной на Borland TurboPascal запускаемой на современной машине

    "Ошибка 200", если мне память не изменяет.
    Вышибало начиная с 200мгц пентиумов.
    Но вроде был какой-то патч на это.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Да мне-то что, меняйтесь!"(с)анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  20. #20
    Новичок Аватар для Xantos
    Регистрация
    25.01.2025
    Сообщений
    51

    По умолчанию Re: Об исполнении древнего кода на современных машинах.

    Цитата Сообщение от Alex Посмотреть сообщение
    "Ошибка 200", если мне память не изменяет.
    Вышибало начиная с 200мгц пентиумов.
    Но вроде был какой-то патч на это.
    все верно . можно почитать например здесь why-did-ms-dos-applications-built-using-turbo-pascal-fail-to-start-with-a-divisi
    Тема заезженная вдоль и поперек

Страница 1 из 3 123 Последняя

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •