Древняя история: была ли какая-либо версия Turbo Pascal способна компилироваться в защищенном режиме на 286 или выше?

#history #protected-mode #turbo-pascal

#история #защищенный режим #turbo-pascal

Вопрос:

Я помню Turbo Pascal 6.0 1990-х годов, в котором было несколько переключателей компилятора для функций, специфичных для 80286, все с примечанием, что они работают только в реальном режиме, но не в защищенном режиме. Был ли когда-нибудь у Turbo Pascal компилятор, который мог бы компилироваться в защищенном режиме 286? (Можно ли использовать эту функцию для написания собственных программ OS / 2?)

Ответ №1:

ДА. Borland Pascal 7 поддерживал 16-разрядные программы PM для dos и win 3.x. Но она больше недоступна (а коммерческие лицензии очень дороги на вторичном рынке). Чтобы заставить ее работать с OS / 2, вам, вероятно, потребуется переработать всю модель расширителя в соответствии с OS / 2. (например, EMX) Возможно, это было сделано, но результат, вероятно, будет неуклюжим, если не сказать лучшим (и основанным на EMX, а не на native)

Однако есть два клона TP / Delphi, которые поддерживают почти весь диалект TP и даже частичный Delphi:

  • Виртуальный Паскаль. Почти десять лет находилась в активной разработке, но все еще рабочая и бесплатная. То, что осталось от сообщества VP, здесь, Поддержка Delphi существует примерно до D2.
  • По-прежнему поддерживаетсяFree Pascal, а поддержка Delphi представляет собой сочетание версий с текущей точкой отсчета на D2006 / 2007. Порт OS / 2 по-прежнему поддерживается, но работает медленно

Хотя обе генерируют код 386 , и это может быть проблемой, если у вас есть большое количество 16-разрядного ассемблера, который вы хотите портировать (но они, вероятно, также нуждаются в проверке для перехода на защищенный режим 286)

В общем, я бы посоветовал Free Pascal, но поскольку порт VP на OS / 2 когда-то был очень популярен, в этом случае, возможно, стоит хотя бы взглянуть и на VP. Особенно, если проект ограничен по объему и времени. Долгосрочный Free Pascal, как все еще активный проект, является лучшим выбором.

Комментарии:

1. (Free Pascal теперь также может генерировать 16-разрядный код. Хотя afaik только для dos и win16)

Ответ №2:

К 16-разрядному семейному API Toolkit Джонатана де Бойна Полларда удалось подключить Turbo Pascal (я забыл, к какой именно версии, возможно, потребовалось исправление tpc.exe ) для создания 16-разрядных программ консольного режима OS / 2.

Я только что здесь нашел ссылку на patch toolkit — она опубликована в немецком компьютерном журнале C’T.