|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
|
Как сэмулировать PC-XT с 512 кб ОЗУ на современном PC27.06.2011, 11:59. Показов 58819. Ответов 83
Метки нет (Все метки)
Здрасьте уважаемые! Проблема у меня на этот раз следующая:
Есть пром.комп. называется I.P.C. PC-XT проц 80188 , 512 кб ОЗУ, CGA, PC-DOS v3.1 , 2x Сом порта, 1 FDD 3,5 - 160 кб, 1 - ERD (EPROM ROM DISC) на 320 кб. Изготовлен макаронниками в 1984 г.На нем есть технологическая программа , была написана на бэйсике (Gwbasic) в далеком и счастливом 1987 году и откомпилирована, исходников естественно нету, по прошествию десятилетий естественно комп начал капризничать и чинить его уже мочи нету, появилась сверхзадача перейти на современную компьютерную платформу (ну или почти современную), так вот прога с него на современном компе работать не хотит, ниче не пишет просто при запуске опять вываливается в ДОС. Что делал : Размещал программные файлы так же как и на оригинале, DOS ставил с оригинала, результат тот же , вываливается программа без объявления чего либо. Брал эмуляторы PC-XT : SOVIET-PC и PicoXT, результат тот же. Сижу вот чешу репу , что же еще попробовать, мог ли размер основной памяти (512)повлиять на работоспособность программы, в обычном то компе ее 640, под досом. Может кто что подскажет ?
0
|
|
| 27.06.2011, 11:59 | |
|
Ответы с готовыми решениями:
83
Производительность и безопасность железа, если ставить ОЗУ: 512 - 128 - 512 После добавление 1GB ОЗУ к 512+512 компьютер стал работать хуже. Athlon 64 Processor 3000+ 1,81 ГГц 512 Мб ОЗУ |
|
0 / 0 / 0
Регистрация: 24.02.2011
Сообщений: 88
|
|
| 30.06.2011, 01:07 | |
|
Чето вы уже загоняете, то как адресовалась память и скоко разрядов было у камня 100 лет назад это история. Автор неуточнил для чего софт и чем он управляет. Судя по всему это какойто lpt ногодрыг для станка или сигнализации. Зная техзадание можно тоже самое повторить на современном pentium 1pro или pentium2 mmx. Ну это если оператору нужен дисплей. Уже намикали что на m128 можно сделать тоже самое.
0
|
|
|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
|
| 30.06.2011, 05:24 | |
|
Программа стоит на прессе для изготовления подошв, вся суть программы - загрузить данные введенные пользователем в 2 пром.контроллера(аналоговых данных и дискретных данных) по 2 ком портам.посему сначала я пошел по пути наименьшего сопротивления- пытаюсь запустить родную программу, если это превзойдет определенные лимиты по трудозатратам, то будет применет план Б - будут просканированы ком порты на пока еще живой машине (одна трудность- машина должна быть установлена на прессе) и составлен протокол обмена, после этого будет написан свой интерфейс, но это как альтернативный вариант решения и прибегать к нему пока не очень хочется, его ведь можно оставить и на потом и заработать еще и на нем.
Повторять что либо на Пентиум про и иже с ними нет никакого смысла, нужно загнать современное легко доставабельное железо в нужный режим, иначе проще старым компам продлить жизнь лет еще на пяток. К то му же есть и далеко идущие планы на будущее на эти преса, если привязать заказчика к себе на уровне железа и тайны запуска программы на современном компе, то потом можно и заказ на изготовление управляющих контроллеров получить ,а это на порядок большие деньги, да и прессов не один стоит.как то так.
0
|
|
|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
||
| 30.06.2011, 05:49 | ||
Если кому интересно взглянуть на монстрика80188 так для саморазвития, шумите, постараюсь зафотать.
0
|
||
|
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 32
|
|
| 03.07.2011, 12:54 | |
|
Добрый день!
Попробовал продебагереть вашу программу вот что получилось: программа благополучно завершается с кодом 99. с видео адаптером раббота происходит корректна, вывод на дисплей обведено в красной рамке, вкрадывается подозрение что в этой программе вставлена защита кода от копирования, код должен выполнятся не сначала сегмента.
0
|
|
|
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 32
|
||||||
| 03.07.2011, 13:10 | ||||||
|
вот кусок программы который выполняется
мое мнение нужно посмотреть на всю последовательность запуска программы, наченая с запуска доса на вашем компьютере. возможна что в досе подменена функция выхода 4с для прерывания 21h, или запуск программы происходит не с начала сегмента программы на вашем копьютере.
0
|
||||||
|
0 / 0 / 0
Регистрация: 12.07.2011
Сообщений: 2
|
|
| 03.07.2011, 13:18 | |
|
poysom, трассировать нужно не brun30, а второй файл вроде dyotogo.
0
|
|
|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
|
| 03.07.2011, 13:42 | |
|
чето я не понял а при чем тут BRUN30.ixi это же модуль бэйсика, мне надо запустить прогу dyotog а она уже чтото подтягивает из brun30.ixi или я чтото не так понимаю
0
|
|
|
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 32
|
|
| 03.07.2011, 13:43 | |
|
а да да. Извиняюсь !!!
0
|
|
|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
|
| 03.07.2011, 13:45 | |
|
я ее (dyotog) пытался трассировать, первый же call(их там в самом начале стоят 2) выдал мне Prokram Terminated, думаю там и происходит проверка услови и т.п., глубже копать не хватает знаний асм86
0
|
|
|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
|
| 03.07.2011, 13:58 | |
|
навели меня на мысль узнать код завершения программы ,к сожалению ничего хорошего не узнал код =0 т.е. по его мнению все путем.
использовал батник : dyotogo echo %errorlevel% может всеже на экран чтото выводится , просто в связи с особенностями видеоадатера я этого не вижу ? Потому как на реальной машине под DOS курсор после выхода из программы находится в том же месте где и на машине 80188, но отсутствует окошко с ошибкой. Я уже и эмулятор пробовал SUN VIRTUAL MACHINE.Результат пока тот же, т.е. никакой.
0
|
|
|
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 32
|
|
| 04.07.2011, 09:47 | |
|
Доброе утро!
вчера продебаггерел dyotogo.ixi сделал свои выводы: 1.первым делам в dyotogo загрузчик загружает Brun30.ixi, инициализирует свае программное прерывание 3F из файла Brun30.ixi, затем в кодовой странице 1 происходит интерпретирование basic программы через прерывание 3F, т.е. basic программа лежит отдельна от интерпретатора и она выполняется. 2. походу в brun30.ixi заключается вся проблема, там встроен свой драйвер видео адаптера. пробовал подменить его на файл brun45 - не помогло, потому что когда загрузчик загружает brun30 он проверяет его на соответствие. 3. поиск в инете qbasic3.0 не чего не дал, можно была-бы заняться обратным инженерингом, т.е. получить исходник но на это уйдет много времени. 4. есть еще вариант выдрать из dyotogo.ixi первый сегмент и вставить его в другой файл который экспортирован с qbasica4.5 -попробую сегодня этим заняться, если работой не нагрузят :)
0
|
|
|
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 32
|
|
| 04.07.2011, 09:54 | |
|
еще просьба если есть у кого-нибудь qbasic3.0 сбросьте пожалуйста, нада всеж посматреть что за зверь
0
|
|
|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
|
| 04.07.2011, 10:39 | |
|
в манускриптах на станок упоминался gwbasic, но как то не явно и не на нормальном языке(испанском вроде может итальянском), потому сказать что там написано было не могу.
0
|
|
|
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 32
|
|
| 04.07.2011, 10:44 | |
|
не всеж там qbasic3.0
http://**************************/download/file.php?id=5680&sid=ae23d075fa0b6e0ec8b c490d30ffebb3
0
|
|
|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
|
| 04.07.2011, 11:16 | |
|
Возможно и так.
Действительно QB3.0 достать просто чрезвычайно сложно
0
|
|
|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
|
| 04.07.2011, 11:30 | |
|
Вчера разобрал этот гадский комп, оказалось что в нем не 80188 а обычный 8088, хотя на этикетке написано иное, ну не суть важно.ERD диск представляет из себя два устройства первый диск собран на ПЗУ, второй на ОЗУ+ батарейка, во как извращались.Так же есть дисковод 3.5 на 160 кб, почему он гад такой нестандартный не знаю, ниче туда ни записать путем не слить не получается , с горем пополам засунул туда нортон 1.0 , скрытых файлов нет.Вот.
0
|
|
|
0 / 0 / 0
Регистрация: 15.05.2011
Сообщений: 32
|
|
| 04.07.2011, 11:39 | |
|
я так понимаю что на ERD диске хранится MSDOS и программа управления, если это не так попробуйте отключить его и запустить программу, появится ли требуемое окно?
0
|
|
|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
|
| 04.07.2011, 11:49 | |
|
Вот значит один добрый человек увидел этот форум и поделился, раритетом.
[250 Кб]
0
|
|
|
0 / 0 / 0
Регистрация: 19.05.2011
Сообщений: 234
|
|
| 04.07.2011, 11:51 | |
|
часть 2 соответственно.
Да ERD диск я вчера отключал , окно появляется, при загрузке с дискеты DOS 3.1 На 1 диске система , драйвер второго диска, и прога. на втором диске данные [86.01 Кб]
0
|
|
|
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 2,309
|
|
| 04.07.2011, 12:01 | |
|
Ребят, вот что скажу по этому поводу. Все BASIC-и компилировали код весьма скверно. И обычно это было так: в ixi-шнике сидел непосредственно интерпретатор и сжатый листинг на BASIC-е. К примеру GWBASIC каждой команде присваивал цифру в 1 байт длиной, в итоге код оставался прежним, но команды (prymt, input, for, next и т.п.) были длиной в 1 символ, ну и переменные тоже кодировались своими символами. А остальное оставалось неизменным. Так вот этот интерпретатор (сидящий в ixi-шнике) брал из своего же ixi-шника этот сжатый код и выполнял его.
Так может попробовать из этого ixi-шника выдрать целевой код?
0
|
|
| 04.07.2011, 12:01 | |
|
Помогаю со студенческими работами здесь
40
Будут ли работать вместе разные озу,512 и 256? Вытянул одну планку ОЗУ 512 МБ, с одной компьютер не включается. тормозят игры на: атлон 6000+, 2 Гб ОЗУ, GF 9800 gt 512 Мб, Asus m3n78. Стоит ли разгонять такое железо: проц 2.53(одноядерный), 512 мб ОЗУ, GF 6600 PCI Express ? Улучшение компьютера: Intel Core 2 Duo CPU E7200, ОЗУ - 2,00 ГБ, NVIDIA GeForse 9600 GT (512 МБ) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
[golang] Двоичная куча, min-heap
alhaos 20.05.2026
Двоичная куча
Двоичная куча — структура данных, которая всегда держит самый важный элемент наготове.
Представьте очередь к хилеру в игре, и очередь из игроков в приоритете те у кого меньше. . .
|
[golang] Breadth-First Search
alhaos 19.05.2026
BFS (Breadth-First Search) — это базовый алгоритм обхода графа в ширину, который поуровнево исследует все связанные вершины. Он начинает с выбранной точки и проверяет всех соседей, прежде чем. . .
|
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера»
Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит.
Придуман Биллом Госпером в 1970-х, опубликован в. . .
|
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb">
<style>
<!]>
</ style>
<g id="bush">
</ g>
</ svg>
function fn(){
let rost;/ / высота древа
let xx=165,yy=210,w=256;
|
|
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов,
содержащихся в реализации модуля. По-умолчанию все члены модуля доступны:
module Foo
let x = 10
let boo () = printfn "boo"
. . .
|
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции.
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible". . .
|
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов.
import "math"
func angleClock(hour int, minutes int) float64 {
. . .
|
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo
https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html
и его же старой инструкции по установке Lazarus с gtk2. . .
|