Я вообще не вижу проблемы, кроме большого труда и большого объема кода. Если нет черных ящиков и про железо Intel и DEC все известно и про надстройки над этим железом в виде драйверов, операционок, e.t.c. И теоретически нет неразрешимости, потому как и одно полностью алгоритмизовано и другое. А если есть один алгоритм и другой алгоритм, то существует и третий алгоритм, который приводит их между собой в соответствие.
Что мы видим сейчас? Есть некий код исполняемый для DEC, для конкретного железа с надстройками. Можно его разобрать по частям( что просто процессор и память, где к железу обращение),словом как конкретно он исполняется? Можно. Все это описать в промежуточном языке можно?
А как получить код, аналогичный для конкретного железа Intel? Если знать шаблоны по трансформации, зависящие колнечно и от того, для какого железа трансформируем, то шаг за шагом этот код получаем.
Хотите в ассемблере для контроля с комментариями, хотите просто код.
Про оптимизацию пока не говорим. Возможно, это отдельный блок как в алгоритмах по игре в шахматы.
Пока его нет - программа играет тем сильнее, чем больше тупо перебирает вариантов.
Естественно в идеале любой код PDP программе-конвертеру "скармливается", а она выдает код для Intel.
Может выдавать разные варианты кода ( под SDL или прочее). Почему Vilnus Basic? Потому что это простейший вариант конвертации. Просто Vilnus Basic на Intel никто не портировал. Хотите - портировать его вручную, портируйте. А заодно составляйте алгоритм, как вы это делайте и записывайте его в виде программы![]()
Я не говорю, что обратное преобразование не нужно и оно менее интересно. Но здесь не все просто скорее всего сконвертируется, если сконвертируется вообще. Так как у PDP ресурсов меньше, чем у последних навороченных интелов. Это как в математике символьной. Дифференцируется почти любая гладкая функция, а интегрируется не любая! И куча в природе таких вещей: что в одну сторону легко, а обратно тяжело или никак.
"Вшивать эмуль"? Ну это как-то монструозно. Это как интерпретатор Бейсика вместо компилятора хотя бы в пи-код.




Ответить с цитированием