Привет всем,
кто знает как с малейшими затратами запустить на компьютере Робик Borland TurboPascal 3.02 для СР/М v2.2?
Привет всем,
кто знает как с малейшими затратами запустить на компьютере Робик Borland TurboPascal 3.02 для СР/М v2.2?
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Если предположить, что TP работает исключительно через BDOS и не лезет в биос и системные переменные, то достаточно несложно.
Пишем эмулятор BDOS (порядка 20 функций с единой точкой входа).
Дизассемблируем TP, находим все CALL 5, меняем 5 на адрес нового входа в BDOS.
Ассемблируем обратно. Если в коде нет переходов по абсолютным адресам и переменных в верхней памяти, то все.
Если б был дисковод, то было бы еще проще. Камиль caro когда-то выкладывал CP/M 2.2, работающий в нижней памяти. Так что осталось бы только все CALL 5 поменять, и не нужно было б писать ни строчки кода.
А так придется реализовывать чтение-запись файлов на ленте. И тут будут серьезные проблемы даже с последовательным чтением: чтение идет по 128 байт, и не факт, что между соседними операциями чтения не будет 5 секунд промежутка. А как реализовывать произвольный доступ к файлу у меня даже идей нет.
Последний раз редактировалось Eltaron; 20.04.2011 в 07:55.
Граф Дракула наш кумир, патамушта он вомпир!
VKINK 9 : BORDER NOT PI
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)