Easyelectronics.ru

Электроника для всех
Текущее время: 10 апр 2021, 23:15

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/5шт. два слоя. $5/5шт. четыре слоя
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 84 ]  На страницу 1, 2, 3, 4  След.
Автор Сообщение
 Заголовок сообщения: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 28 июн 2011, 11:46 
Старожил

Зарегистрирован: 24 май 2011, 06:09
Сообщения: 257
Откуда: Солнечная Хакасия
Здрасьте уважаемые! Проблема у меня на этот раз следующая:
Есть пром.комп. называется I.P.C. PC-XT проц 80188 , 512 кб ОЗУ, CGA, PC-DOS v3.1 , 2x Сом порта, 1 FDD 3,5 - 160 кб, 1 - ERD (EPROM RAM DISC) на 320 кб.
Изготовлен макаронниками в 1984 г.На нем есть технологическая программа , была написана на бэйсике (Gwbasic) в далеком и счастливом 1987 году и откомпилирована, исходников естественно нету, по прошествию десятилетий естественно комп начал капризничать и чинить его уже мочи нету, появилась сверхзадача перейти на современную компьютерную платформу (ну или почти современную), так вот прога с него на современном компе работать не хотит, ниче не пишет просто при запуске опять вываливается в ДОС.
Что делал : Размещал программные файлы так же как и на оригинале, DOS ставил с оригинала, результат тот же , вываливается программа без объявления чего либо.
Брал эмуляторы PC-XT : SOVIET-PC и PicoXT, результат тот же.
Сижу вот чешу репу , что же еще попробовать, мог ли размер основной памяти (512)повлиять на работоспособность программы, в обычном то компе ее 640, под досом.
Может кто что подскажет ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 28 июн 2011, 12:19 
Супермодератор
Аватара пользователя

Зарегистрирован: 26 янв 2010, 22:08
Сообщения: 7549
Откуда: Алма-ата
777Евгений777 писал(а):
Может кто что подскажет ?

80188 проц - это фактически 8088, но с частично интегрированной на кристалле периферией, что упрощало системную плату. В основном вроде программно совместим с 8086 и 8088, и его программы должны без проблем идти, напрмер, на 80286.

Возможно, проблемы скорее из за видеоадаптера. В режиме CGA видеопамять располагалась в основном OЗУ, в верхней его части, отдельно - текстовый буфер, и отдельно - графический. У более поздних видеоадаптеров видеопамять своя, и старые режимы (CGA, EGA) они лишь эмулируют на уровне драйвера, и то не все.

Можно попробовать найти комплект плат или целиком системник 286 или 386, но очень трудно сейчас найти видеоадаптер с аппаратно реализованным CGA или EGA (у них даже разьем для монитора был не 15, а 9 штырьковый, и в отличие от COM - "мама").

Можно попробовать дизассемблировать программу (размер там сравнительно небольшой),
и переделать или написать заново. Если там нет критичных по времени мест, то можно и под Винды. Если же там формируются программно точные временные задержки, то только под DOS.
Есть еще вариант проработать техзадание и сделать программу для микроконтроллера (что-нибудь вроде Меги 128, при разумной оптимизации, должно хватить).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 28 июн 2011, 12:55 
Старожил

Зарегистрирован: 24 май 2011, 06:09
Сообщения: 257
Откуда: Солнечная Хакасия
Спасибо за наводку про адаптер.Переделывать и дизасемблировать это отложено на самый крайний случай, как и изготовление новой программы, почему эмуляторы не поддерживают этот режим тогда ? в них явно зазается тип адаптера, вот вопрос. Про то что проблемы в видео адаптере мне уже мысли в голову начали приходить т.к. на родном оборудовании выскакивает окно с ошибкой если прогу запустить прямо с загрузочного диска без всяких подготовок, а на эмуляторах и обычном PC этого нет только темный экран с приглашением DOS, как мог бэйсик привязаться к адаптеру вот вопрос ?я всегда думал что такие языки используют просто системные функции (грубо сказать софтовые прерывания) и им пофигу какое железо и как будет производить ввод/вывод.Где же я ошибаюсь то ? Если бы определить что всему виной адаптер то я бы добил этот вопрос , но вот смущает размер основной памяти, может прога не в состоянии вообще работать при "современной" конфигурации, как все догадки то проверить, ума не приложу никак.
Искать 286 смысла не вижу (если только для проверки догадок), надо заставить работать на современных пром.компах ну или на комерческой версии для началу, Но как ?
Как вариант :
Еcли у кого есть старое рабочее железо (ну мало ли кто чем занимаеться хоть даже 486 с Vga),и не очень затруднит (прилагаю файл программы dialog и служебный файл бэйсика brun30.exe должен быть рядом), пожалуйста запустите ,скажите выдает программа какое нить окно перед тем как выскочить или нет (должно вроде по итальянски сказать что не найден файл conf.pm).


Вложения:
dial.rar [82.37 Кб]
Скачиваний: 299


Последний раз редактировалось 777Евгений777 15 июл 2011, 06:35, всего редактировалось 1 раз.
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 04:11 
Старожил

Зарегистрирован: 22 июн 2010, 21:53
Сообщения: 1183
Откуда: Brussels
dosbox - вот и вся эмуляция


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 04:59 
Старожил

Зарегистрирован: 24 май 2011, 06:09
Сообщения: 257
Откуда: Солнечная Хакасия
DosBox 0.74 пробовал, правда настройки никакие не трогал, не помогло , результат тот же.
Вчера пробовал на 386sx-20 2Mb VGA 1 Mb, тоже не помогло.
Подозрений 2 - ненормальная память 512 kb или видеоадаптер, как определить что из них пока не знаю.
В принципе готов заплатить за решение проблемы(запустить прогу под любым досом на современном компе), срок около месяца. Кому интересно пишите сюда дам свои координаты , пояснения и недостающие файлы программы , предварительно можно попробовать заставить работать то что я выложил, должно выдавать на экран окошко об отсутсвии файла config.pm.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 07:33 
Старожил
Аватара пользователя

Зарегистрирован: 05 ноя 2010, 16:03
Сообщения: 1510
Откуда: Екатеринбург
на ум ещё приходит три вещи:
- нынешние компы слишком быстры (я тоже успел застать этот переходный от 80286 к пням период и танцы с бубном и MoSlo) и программа затыкается из-за этого;
- программа обращается по какому-нибудь специфичному пути, например этот епром рам диск был на букве F, плюс там например дожен лежать файл log.txt, который нужно открыть;
- в том древнем 80188 могла быть какая-нибудь ISA-платка, которая должна была быть установлена со всеми дровами и т.п.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 07:41 
Старожил
Аватара пользователя

Зарегистрирован: 05 ноя 2010, 16:03
Сообщения: 1510
Откуда: Екатеринбург
authore: Sergio Faggiano, 6 Mag 1989 :)
может ещё занадобиться некий PMaker 3.3, установленный на подопытный комп - программка явно дергает кучу его .pm файлов.
плюс ещё какое-то упоминание BRUN30.lib


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 07:49 
Старожил

Зарегистрирован: 24 май 2011, 06:09
Сообщения: 257
Откуда: Солнечная Хакасия
0.Предлагаете найти Сергио Фагиано ? Думаю ему уже можно или цветы на могилку или слуховой аппарат покупать.
1.про скорость не проверял, не было повода так подумать.
2.все файлы по их путям я раскладывал точно так же как и на родном компе(в том числе и BRUN30.exe без него прога ругается на его отсутствие).
3.иса плат нет в компе в принципе, есть ERD диск который подключается после загрузки его дров с него же самого, т.е. он разбит на 2 диска - системный A:(который виден без дров и на котором лежит исполняемый файл Dialog) и диск с данными программы B:, дисковод встает как С: еще есть E:-копия A: и F:-копия B:.
Если дрова диска на родной машине не грузить, то будет только A: диск т.е. системный с него если запустить программу dialog то после секундной задержки выскочит окно в котором написано что программа не может найти файл config.pm , а на современной машине такой ситуации нет - окно не выскакивает, потому ПОКА думаю проблема не в обращении к специфическому РАМ диску
поэтому пока я добиваюсь ситуации чтобы выскочило окно об отсутствии файла для этого достаточно тех файлов что я выложил как я думаю, потому как других относящихся к проге на системном диске нет да и эмулировал я эту ситуацию на родном компе со своей дискеты - окно кажет, на "нормальном" PC(начиная с 386sx) с той же дискеты не кажет, потом будет видно что предпринимать дальше.Как то так
Беспокоит меня вопрос в различном размере ОЗУ , как бы его проверить, есть проге(скомпилированной в бэйсике предположим что на этой же машине) разница в том скоко ОЗУ 512 или 640 ? Пока не могу найти ответ на этот вопрос.


Последний раз редактировалось 777Евгений777 15 июл 2011, 06:36, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 10:33 
Старожил
Аватара пользователя

Зарегистрирован: 05 ноя 2010, 16:03
Сообщения: 1510
Откуда: Екатеринбург
всё зависит от программы. по идее, разница может и быть. если проге не хватит оперативки, она не запустится. помню, скока гимора было с каким-нибудь первым варкрафтом на первых 386sx - чтобы и дрова звука влезли, и мыши, и ещё и сама игра. спец.конфиги в autoexec.bat и config.sys приходилось ваять.

но как там на 80188 происходило управление памятью и была ли вообще доп.память (EMS, XMS) - понятия не имею


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 11:57 
Супермодератор
Аватара пользователя

Зарегистрирован: 26 янв 2010, 22:08
Сообщения: 7549
Откуда: Алма-ата
777Евгений777 писал(а):
Беспокоит меня вопрос в различном размере ОЗУ , как бы его проверить, есть проге(скомпилированной в бэйсике предположим что на этой же машине) разница в том скоко ОЗУ 512 или 640 ? Пока не могу найти ответ на этот вопрос.

Разницы никакой. Программы в IBM PC грузятся в нижнюю часть памяти, начиная с адреса 100H (0-100 - вектора прерываний). Например, у меня с 91г был Киевский вариант XT - "Поиск". У него было 128к памяти на плате, (графика CGA), 8088 процессор, и 4 разьема расширения, на которые ставились дополнительные модули. В том числе ОЗУ по 256 и 512кб, порты COM+LPT, контроллеры гибких и жестких дисков. Даже при 128к можно было загрузить MSDOS 3.30 (занимала около 62к), и небольшие, не более 50-60к, программки, в том числе и всякие игрушки типа Диггера. При добавлении памяти ничего настраивать не требовалось, просто можно было запускать более сложные программы. Например, у меня были 5" дисковод, винчестер ST251A на 40Мб, порты, и сначала 2 по 256кб модуля ОЗУ, потом заменил одним на 512к, - всего вместе с 128кб внутренней = 640кб. И у меня работали почти все имевшиеся в то время программы (если только они могли работать с CGA). В том числе ORCAD 2.13 и PCAD 4.50, и куча всяких игрушек.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 12:17 
Старожил

Зарегистрирован: 24 май 2011, 06:09
Сообщения: 257
Откуда: Солнечная Хакасия
Блин , накатал полстраницы с размышлениями и они пошли прахом (по запарке все закрыл), но зато пока писал вопрос, Вы мне на него ответили, значит круг сужается к видеоадаптеру и излишнему быстродействию, хотя последнее я замедлял ниче не вышло, попробую более основательноподойти к этому, но чтото мне подсказывает что не оно это, потому как раньше тоже такие проблемы решал, хотя кто его знает.
Пробовал дизасемблировать Afdpro, к сожалению темный лес пока, удалось выяснить что терминация программы происходит при первом же вызове подпрограммы (первый call) что наводит на мысль, что гдето не совпадает условия запуска (несоотвествие версий ДОСа отпадает) или не проходит инициализация чегото, если процедуру забить NOPом прога все равно не пашет,значит там еще и настройки какието идут,буду думать дальше.
Про СГА адаптер тоже не ясно, как оно все может влиять на текстовый режим, вроде он на всех адаптерах в одном и том же месте памяти, никаких извращенных форм вывода думаю не используется, тем более что прога не на асме а на бэйсике,в общем вопросов больше прибавляется чем убавляется.
Попутно на территории Хакасии ищется PC-XT/AT с CGA адаптером для проверки домыслов,если кто что знает подскажите где искать.
Коммерческое предложение все еще в силе, буду рад поделится деньгами с разумными и грамотными людьми.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 13:36 
Старожил
Аватара пользователя

Зарегистрирован: 05 ноя 2010, 16:03
Сообщения: 1510
Откуда: Екатеринбург
у меня всё ещё открыт вопрос: зачем этой программке установленный PageMaker 3.3?
в коде экзешника кроме config.pm упоминаются ещё штуки три файла с расширением .pm, плюс само вот это название "PMaker 3.3"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 13:42 
Старожил
Аватара пользователя

Зарегистрирован: 26 янв 2010, 21:48
Сообщения: 3965
Откуда: Звенигород
В dosbox можно включить cga дисплей. Но это не помогает:) Отключение внешней памяти, кроме 640кБ базовой тоже не помогает.
Вполне может быть, что проблема в излишнем быстродействии. Древние бейсики и паскали время своего "тика" определяли количеством выполненных циклов за определенное время и в результате при расчетах получали деление на 0, с чем аварийно и завершались. Еще стоило бы попробовать в эмуляторе изменить тип проца на 8086, вдруг программа смотрит на тип и пытается использовать различные библиотеки.

_________________
От Парижа до Находки с водкой лучше, чем без водки!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 13:48 
Старожил
Аватара пользователя

Зарегистрирован: 05 ноя 2010, 16:03
Сообщения: 1510
Откуда: Екатеринбург
> вдруг программа смотрит на тип и пытается использовать различные библиотеки.
ну да. во времена 80188 много ли было тех типов? плюс: это ж бейсик. я удивлён, что у топикстартера вообще экзешник, а не .bas :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 13:57 
Старожил

Зарегистрирован: 24 май 2011, 06:09
Сообщения: 257
Откуда: Солнечная Хакасия
Pmaker - там не зачем, возможно на нем когдато ваяли странички ,их там много, НО до них дело не доходит пока еще.
В эмуляторе ставил CGA не помогает.Откомпилированная прога не может меняться от проца к процу это не логично, особенно для тех лет.
Скажу проще, если взять дискету с DOS например 3.1 на нее записать эти 2 файла (что я выложил) и запустить дискету на той машине которая 80188, то прога выведет окно что не найден файл config.pm и будет права потому как его нет он на рам диске лежит, а вот если эту дискету запустить уже неа 386SX-20 VGA то вот она первая проблема , сообщения нет, прога просто выходит в ДОС тихо и мирно,с этим эффектом я сейчас и борюсь,потому как решать дальше нет смысла.Как то так.
А бэйсики тех лет тоже могли компилировать,потому и EXE, хотя лучше бы это было иначе.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 14:06 
Супермодератор
Аватара пользователя

Зарегистрирован: 26 янв 2010, 22:08
Сообщения: 7549
Откуда: Алма-ата
Ant писал(а):
ну да. во времена 80188 много ли было тех типов? плюс: это ж бейсик. я удивлён, что у топикстартера вообще экзешник, а не .bas :)

Некоторые варианты Бэйсика (Turbo Basic, QBasic) имели не только интерпретаторы, (упрощавшие написание и отладку), но и компиляторы, дававшие компактный и более быстрый код, и работавший в отсутствии самого Бэйсика.

А вот системных, совместно используемых разными программами библиотек (как dll в Виндах), действительно не было. Были лишь библиотечные модули у отдельных компиляторов (например, у Паскаля RTM.EXE), которые должны были находиться в каталоге запуска программы, или в путях поиска, прописанных в autoexec.bat.

Верхняя память начала использоваться частично с MSDOS 4.0 и процессоров 286 (драйвер himem.sys), довольно примитивно. Для крупных игр была создана надстройка над DOS (не помню название, вроде DOS4GV или что-то аналогичное), использовавшая расширенную адресацию памяти до 4 Мб, и автоматически загружавшаяся при запуске игры.

Более - менее нормальное использование большой памяти появилось только в MSDOS 5.0 через драйвер EMM386, работавший только на 32 битных процессорах - 386, 486... А 286 был еще 16 битным. И мог адресовать только 21 бит адреса (A0-A20).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 14:25 
Старожил
Аватара пользователя

Зарегистрирован: 26 янв 2010, 21:55
Сообщения: 5625
Откуда: Уругвайская АССР
Большая память использовалась очень просто. Таблицу дескрипторов подготовил, загрузил, одна команда и дело сделано - вся память твоя.

_________________
Без гнева и жестокости, сегодня Смерть взмахнёт косой, и ангел тайными дорогами мой милый Кубик унесёт с собой.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 14:26 
Старожил
Аватара пользователя

Зарегистрирован: 26 янв 2010, 21:48
Сообщения: 3965
Откуда: Звенигород
Горнист писал(а):
Большая память использовалась очень просто. Таблицу дескрипторов подготовил, загрузил, одна команда и дело сделано - вся память твоя.

В 80188 не было таблиц дескрипторов, ни локальных ни глобальных. Пичалька однако.

_________________
От Парижа до Находки с водкой лучше, чем без водки!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 14:28 
Старожил
Аватара пользователя

Зарегистрирован: 14 июн 2011, 14:22
Сообщения: 335
... может в программе идет привязка к аппаратным особенностям или есть примитивная защита.... В любом случае для начальных исследований может хватить старенького td.exe от Borland. А если все "серьезно", то связка IDA & SoftICE, в умелых руках, вылечят что угодно ...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 30 июн 2011, 22:48 
Старожил
Аватара пользователя

Зарегистрирован: 26 янв 2010, 21:55
Сообщения: 5625
Откуда: Уругвайская АССР
PRC писал(а):
В 80188 не было таблиц дескрипторов, ни локальных ни глобальных. Пичалька однако.
А там и адресных линий всего 20 было. Память и так вся, совсем, доступна, безо всяких протектед и анрил модов.

_________________
Без гнева и жестокости, сегодня Смерть взмахнёт косой, и ангел тайными дорогами мой милый Кубик унесёт с собой.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 01 июл 2011, 00:54 
Заглядывает иногда

Зарегистрирован: 07 мар 2011, 11:46
Сообщения: 100
Чето вы уже загоняете, то как адресовалась память и скоко разрядов было у камня 100 лет назад это история. Автор неуточнил для чего софт и чем он управляет. Судя по всему это какойто lpt ногодрыг для станка или сигнализации. Зная техзадание можно тоже самое повторить на современном pentium 1pro или pentium2 mmx. Ну это если оператору нужен дисплей. Уже намикали что на m128 можно сделать тоже самое.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 01 июл 2011, 05:11 
Старожил

Зарегистрирован: 24 май 2011, 06:09
Сообщения: 257
Откуда: Солнечная Хакасия
Программа стоит на прессе для изготовления подошв, вся суть программы - загрузить данные введенные пользователем в 2 пром.контроллера(аналоговых данных и дискретных данных) по 2 ком портам.посему сначала я пошел по пути наименьшего сопротивления- пытаюсь запустить родную программу, если это превзойдет определенные лимиты по трудозатратам, то будет применет план Б - будут просканированы ком порты на пока еще живой машине (одна трудность- машина должна быть установлена на прессе) и составлен протокол обмена, после этого будет написан свой интерфейс, но это как альтернативный вариант решения и прибегать к нему пока не очень хочется, его ведь можно оставить и на потом и заработать еще и на нем.
Повторять что либо на Пентиум про и иже с ними нет никакого смысла, нужно загнать современное легко доставабельное железо в нужный режим, иначе проще старым компам продлить жизнь лет еще на пяток.
К то му же есть и далеко идущие планы на будущее на эти преса, если привязать заказчика к себе на уровне железа и тайны запуска программы на современном компе, то потом можно и заказ на изготовление управляющих контроллеров получить ,а это на порядок большие деньги, да и прессов не один стоит.как то так.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 01 июл 2011, 05:36 
Старожил

Зарегистрирован: 24 май 2011, 06:09
Сообщения: 257
Откуда: Солнечная Хакасия
ChipKiller писал(а):
... может в программе идет привязка к аппаратным особенностям или есть примитивная защита.... В любом случае для начальных исследований может хватить старенького td.exe от Borland. А если все "серьезно", то связка IDA & SoftICE, в умелых руках, вылечят что угодно ...

Вот я постепенно и прихожу к выводу ,что проще арендовать "умелые руки" и заработать хоть чтото ,чем остаться у разбитого корыта и не заработать ничего. Мое место нахождение - Хакасия, если что, хотя думаю это не главное.Если кто заинтересуется подробности кину в личку. А пока буду пытаться сам , разумеется с общим разумом ,если позволите.
Если кому интересно взглянуть на монстрика80188 так для саморазвития, шумите, постараюсь зафотать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 04 июл 2011, 12:41 
Заглядывает иногда

Зарегистрирован: 07 апр 2011, 18:01
Сообщения: 35
Добрый день!
Попробовал продебагереть вашу программу вот что получилось:
программа благополучно завершается с кодом 99.
с видео адаптером раббота происходит корректна,
вывод на дисплей обведено в красной рамке,
вкрадывается подозрение что в этой программе вставлена защита кода от копирования, код должен выполнятся не сначала сегмента.


Последний раз редактировалось poison 04 июл 2011, 13:27, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC
СообщениеДобавлено: 04 июл 2011, 12:57 
Заглядывает иногда

Зарегистрирован: 07 апр 2011, 18:01
Сообщения: 35
вот кусок программы который выполняется
Код:
seg000:013C loc_13C:                                ; CODE XREF: startj
seg000:013C                 mov     ax, cs
seg000:013E                 mov     ds, ax
seg000:0140                 assume ds:seg000
seg000:0140                 call    sub_81AD
seg000:0143
seg000:0143 loc_143:                                ; CODE XREF: start+14Ej
seg000:0143                 mov     dl, [bx]
seg000:0145                 or      dl, dl
seg000:0147                 jz      short loc_150
seg000:0149                 mov     ah, 2
seg000:014B                 int     21h             ; DOS - DISPLAY OUTPUT
seg000:014B                                         ; DL = character to send to standard output
seg000:014D                 inc     bx
seg000:014E                 jmp     short loc_143
seg000:0150 ; ---------------------------------------------------------------------------
seg000:0150
seg000:0150 loc_150:                                ; CODE XREF: start+147j
seg000:0150                 mov     dl, 0Dh
seg000:0152                 mov     ah, 2
seg000:0154                 int     21h             ; DOS - DISPLAY OUTPUT
seg000:0154                                         ; DL = character to send to standard output
seg000:0156                 mov     dl, 0Ah
seg000:0158                 mov     ah, 2
seg000:015A                 int     21h             ; DOS - DISPLAY OUTPUT
seg000:015A                                         ; DL = character to send to standard output
seg000:015C                 mov     dx, 191Dh
seg000:015F                 mov     ah, 9
seg000:0161                 int     21h             ; DOS - PRINT STRING
seg000:0161                                         ; DS:DX -> string terminated by "$"
seg000:0163                 mov     ax, 4C99h
seg000:0166                 int     21h             ; DOS - 2+ - QUIT WITH EXIT CODE (EXIT)
seg000:0166 start           endp                    ; AL = exit code

по адресу 0166 происходит корректное завершение программы.
мое мнение нужно посмотреть на всю последовательность запуска программы, наченая с запуска доса на вашем компьютере. возможна что в досе подменена функция выхода 4с для прерывания 21h, или запуск программы происходит не с начала сегмента программы на вашем копьютере.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 84 ]  На страницу 1, 2, 3, 4  След.


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB