Воскресенье, 19.05.2024, 23:42
Главная
Регистрация
Вход
Мир софта!
Приветствую Вас Гость | RSS
Меню сайта
Категории каталога
Мои статьи [0]
WWW [42]
все про WWW технологии
Delphi и Pascal [23]
Delphi и Pascal
Программирование баз данных [0]
Программирование баз данных
JavaScript и DHTML [0]
JavaScript и DHTML
Perl [0]
Perl
Python [0]
Python
Active Server Pages [0]
Active Server Pages
Наш опрос
Оцените мой сайт
Всего ответов: 21
Главная » Статьи » Delphi и Pascal

Как заставить программы Turbo Pascal 7.0 работать на быстрых компьютерах

Как показали отклики по поводу первой статьи из серии о Turbo Pascal, данная тема действительно ничуть себя не изжила.

Первая благодарность - тем, кто написал мне лично и в редакцию, тем более, что письма были написаны действительно со знанием темы. О присланных программах на Паскале я скоро расскажу в отдельной статье, а сегодня обсудим программу CrtDebug, которая позволяет программам, откомпилированным на TP 7.0, работать на быстрых компьютерах.

Программу CrtDebug прислал мне читатель СофтТерры Василий Ханефт, скачать ее можно здесь, а e-mail ее автора Валерьяна Ивашенко из Минска - iVA99@xoommail.com.

CRTDebug предназначена для корректировки exe-файлов, созданных с помощью Borland Pascal 7.0. При исполнении на быстрых процессорах из-за некорректного кода CRT модуля происходит ошибка: 200 Division by zero.

Модуль CRT содержит такие подчас необходимые функции, как управление выводом на дисплей, позиционирование курсора, работа с цветом текста, подача звуковых сигналов, использование таймера. Многие программы при переносе на быстрые ПК выдают ошибку 200 Division by zero и оставляют пользователя в недоумении.

Ранее я советовал использовать Turbo Pascal 6.0, эта версия не дает подобной ошибки. Но с ней неудобно работать из-под Windows: под Windows 98 Turbo Pascal 6.0 не может работать совместно с другими программами, компьютер целиком переводится в режим эмуляции MS-DOS.

После появления у меня программы CrtDebug, Turbo (Borland) Pascal 7.0 действительно заработал. Плюсом этого компилятора является не только возможность не мешать многозадачности Windows, но и более продуманный интерфейс с большим количеством установок, "раскраской" операторов и возможностью компилировать программы для работы в защищенном режиме. Также Borland Pascal 7.0 способен компилировать программы под Windows и имеет ряд функций, не включенных в шестую версию. Но в настоящее время для программирования под Windows используются, как правило, другие программы, поэтому для нас основные положительные стороны Borland Pascal 7.0 - "раскраска" операторов и работа в многозадачных ОС.

Пользоваться программой CrtDebug очень просто. Чтобы восстановить работоспособность программ, откомпилированных в Borland Pascal 7.0, необходимо запустить CRTDebug:

CRTDebug filename.ext <число>

Здесь filename.ext - имя файла, который вы хотите исправить, а <число> - параметр, значением которого может быть любое целое число в диапазоне от 55 до 65535.

Желательно, чтобы исправляемый файл не был упакован упаковщиками exe-файлов - в противном случае файл скорее всего не будет исправлен.

Главное же - исправить файлы turbo.tpl и tpp.tpl. Для этого выполните:

CRTDebug turbo.tpl <число>
CRTDebug tpp.tpl <число>

После этого вы сможете использовать ваш BP 7.0 при компиляции программ на машине с быстрым процессором.

Параметр <число> является необязательным, лично я его не указывал и получил вполне удовлетворительный результат. Если вы не находите файла tpp.tpl, не переживайте:я его тоже не нашел, однако все работает нормально:).

В качестве примечания автор CrtDebug предостерегает: если в ваших файлах используется паскалевская процедура CRT.Delay, то нет гарантии, что программа будет работать корректно. В этом случае попробуйте поизменять значение параметра <число>. Если это не поможет, то файл можно вернуть в исходное состояние таким образом:

CRTDebug filename.ext 55

Если же вы скорректировали BP-библиотеки turbo.tpl и tpp.tpl и не использовали при этом числовой параметр, то в процедуру Delay необходимо подставлять значение в десятитысячных долях секунды. От себя добавлю, что значение Delay изначально указывалось в миллисекундах, то есть тысячных долях секунды.

Напоследок для интересующихся объясню, почему, собственно, в модуле crt возникает такая загадочная ошибка. Как известно, процедура delay является частью модуля и используется как простейший ничего не делающий цикл, позволяющий задержать выполнение программы. Процедура delay инициализируется, даже если она и не применяется в программе.

При инициализации модуля crt программа выясняет, сколько итераций пустого цикла необходимо осуществить, чтобы остановить программу на 55 миллисекунд. Полученный результат записывается в 16-битную переменную. На быстрых ПК это число оказывается более 65535, и ячейка переполняется, вызывая ошибку, которую Borland Pascal определяет как 200 Division by zero ("Деление на ноль").

Более подробную информацию на английском и другой вариант патча вы найдете на сайте немецкого товарища Клауса Хартнегга. Кстати, там предлагается несколько различных вариантов решения данной проблемы. Также рекомендую FAQ по Паскалю (на русском).

Категория: Delphi и Pascal | Добавил: mirsoft (03.02.2008) | Автор: максим
Просмотров: 1441 | Комментарии: 4 | Рейтинг: 0.0/0 |
Всего комментариев: 4
4 ppu-pro_Ol  
0
Наша группа опытных специалистов подготовлена предъявить вам актуальные системы, которые не только снабдят надежную защиту от мороза, но и дарят вашему зданию современный вид.
Мы функционируем с самыми современными средствами, ассигнуруя долгий срок эксплуатации и выдающиеся решения. Утепление фасада – это не только сокращение расходов на отоплении, но и внимание о экологической обстановке. Экологичные подходы, какие мы используем, способствуют не только дому, но и поддержанию экосистемы.
Самое главное: <a href=https://ppu-prof.ru/>Стоимость утепления стен снаружи</a> у нас стартует всего от 1250 рублей за кв. м.! Это доступное решение, которое изменит ваш домик в реальный тепличный угол с минимальными затратами.
Наши работы – это не лишь теплоизоляция, это образование площади, в где каждый член отражает ваш личный образ действия. Мы берем во внимание все твои пожелания, чтобы осуществить ваш дом еще еще больше приятным и привлекательным.
Подробнее на <a href=https://ppu-prof.ru/>ppu-prof.ru/</a>
Не откладывайте заботу о своем ларце на потом! Обращайтесь к профессионалам, и мы сделаем ваш домик не только более теплым, но и изысканнее. Заинтересовались? Подробнее о наших услугах вы можете узнать на портале. Добро пожаловать в пределы спокойствия и уровня.

3 ppu-prof_Ol  
0
Наша команда опытных мастеров приготовлена предоставить вам перспективные приемы, которые не только обеспечат долговечную защиту от холодных воздействий, но и подарят вашему собственности современный вид.
Мы эксплуатируем с новейшими средствами, утверждая долгосрочный время работы и выдающиеся решения. Изоляция внешней обшивки – это не только экономия ресурсов на огреве, но и трепет о природной среде. Экологичные технологические решения, какие мы внедряем, способствуют не только дому, но и сохранению природной среды.
Самое первоочередное: <a href=https://ppu-prof.ru/>Строительные расценки на утепление фасадов</a> у нас начинается всего от 1250 рублей за м²! Это бюджетное решение, которое сделает ваш домашний уголок в действительный приятный уголок с минимальными расходами.
Наши достижения – это не только изоляция, это постройка пространства, в котором всякий аспект отражает ваш персональный модель. Мы берем во внимание все твои пожелания, чтобы осуществить ваш дом еще дополнительно комфортным и привлекательным.
Подробнее на <a href=https://ppu-prof.ru/>ppu-prof.ru</a>
Не откладывайте труды о своем квартире на потом! Обращайтесь к мастерам, и мы сделаем ваш домик не только уютнее, но и по последней моде. Заинтересовались? Подробнее о наших услугах вы можете узнать на портале. Добро пожаловать в сферу удобства и качества.

2 Teplo_Dom_Jak  
0
Переутомились застывать зимой и переплачивать за отопление?
Обтепление фасада – решение проблемы!
Компания "Тепло и уют" с 2010 года предлагает компетентные услуги по теплоизоляции фасадов зданий любой сложности. За это время мы зарекомендовали себя как прочный и надежный партнер, о чем свидетельствуют многочисленные отзывы наших клиентов.
Почему стоит выбрать нас?
доступные цены. <a href=https://stroystandart-kirov.ru/>Утепление фасадов частных домов цена</a> от 1350 руб/м2.
практика и мастерство. Наши бригады имеют огромный опыт работы в сфере теплообеспечения фасадов. Мы используем только аттестованные материалы и современные технологии, что гарантирует повышенное качество работ.
Личный подход. Мы подберем для вас лучшее решение с заметанием ваших потребностей и бюджета.
Бесплатная консультация и выезд замерщика. Наши специалисты бесплатно проконсультируют вас по всем вопросам теплообеспечения фасада и произведут точные замеры.
Наш сайт: <a href=https://stroystandart-kirov.ru/>https://www.stroystandart-kirov.ru</a>
Обеспечение качества. Мы предоставляем гарантию на все виды работ.
Звоните нам сегодня и получите бесплатную консультацию!
Мы сделаем ваш дом теплым, уютным и экономичным!

1 ppu-prof_Jak  
0
Забота о домашнем пространстве - это забота о радости. Теплоизоляция стен - это не только изысканный облик, но и обеспечение теплового комфорта в вашем уголке спокойствия. Наша команда, наша команда профессионалов, предлагаем вам переделать ваш дом в идеальный уголок для проживания.
Выполненные нами проекты - это не просто тепловая обработка, это творческий процесс с каждым элементом. Мы разрабатываем совершенному сочетанию между эстетикой и функциональностью, чтобы ваш дом стал не только теплым, но и шикарным.
И самое существенное - доступные расценки! Мы верим, что профессиональные услуги не должны быть дорогим удовольствием. <a href=https://ppu-prof.ru/>Стоимость утепления фасада дома под ключ</a> начинается всего от 1250 руб/м².
Современные технологии и высококачественные материалы позволяют нам создавать теплоизоляцию, которая долго служит и надежна. Позабудьте о проблемах с холодом стен и избежите дополнительных расходов на отопление - наше утепление станет вашим надежной преградой перед холодом.
Подробнее на <a href=https://ppu-prof.ru/>веб-сайте</a>
Не откладывайте на потом заботу о благополучии в вашем доме. Обращайтесь к опытным мастерам, и ваше жилье станет настоящим художественным произведением, которое согреет вас не только теплом. Вместе мы создадим дом, в котором вам будет по-настоящему удобно!

Имя *:
Email *:
Код *:
Форма входа
Поиск
Друзья сайта
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

| Copyright MyCorp © 2024 | Используются технологии uCoz |