• Задержка, генерируемая Delay
    В сети Интернет популярен неполноценный патч (см. ниже). Задержки, которые задаются процедурой Delay(), с этим патчем на разных машинах разные.
    Вот другая процедура:


    procedure Stop(Wait:LongInt); assembler;
    asm
    mov ah, 86h
    mov dx, word ptr Wait
    mov cx, word ptr Wait+2
    int 15h
    end;

  • Error 200
    Программы, написанные на паскале (старые), вылетают с ошибкой "Runtime Error 200 (Division by zero)" / "Ошибка 200 (Деление на ноль)" на быстрых машинах типа PII-300.

    Если в программе используется модуль CRT, то программа виснет при запуске из-за инициализации, которая потом используется процедурой Delay().
    Инициализация происходит в любом случае - даже если эта процедура не используется в программе.
    При написании своих программ используйте пропатченый CRT. (можно скачать с сайта)
  • Исправление уже написанных программ.
    Чтобы заработала уже скомпилированная программа (чужая), возьмите hex-редактор (например, в School Pak есть HIEW) и:

    Ищем: B93700F7F1
    Меняем на: 6E (увеличение в 2 раза)
    или на: 9090 (убрать деление вообще)

    Программа _не_ должна быть запакована EXE-паковщиками.
  • Исправление CRT самостоятельно.
    Для того, чтобы самому пропатчить CRT сделайте следующее.
    В файле 'crt.asm', расположенном в каталоге 'BP\RTL\CRT', найдите строчки
    NOT DX
    MOV CX, 55
    DIV CX

    (они располагаются на строках 104-106).
    Замените во второй строке значение '55' на что-то большее - например на '110' или '550'.
    Либо можете удалить/закомментировать/заменить команду третьей строки на команду(ы) NOP. Затем, следуя инструкциям файла 'readme' из 'BP\RTL', создайте с помощью 'makefile', расположенного в том же каталоге, файлы 'TURBO.TPL' (для 'real mode') и 'TPP.TPL' (для 'protected mode').
    Замените ими соответствующие файлы в каталоге 'BP\BIN'.
    Патчить аналогичный модуль 'TPW.TPL' для Windows не обязательно, т.к. он не содержит такой ошибки.

Скачать сразу весь TURBO.TPL с патчем: TURBO.TPL (время задержки правильное)

Скачать установщик Turbo Pascal со всеми полезными патчами: Скачать Turbo Pascal School Pak

Скачать пропатченный (с неправильным временем задержки) модуль CRT (для разных версий Паскаля) с инструкцией по установке:
Нажмите для просмотра прикрепленного файла