ИСПРАВЛЕННЫЕ ОШИБКИ ПЗУ.
В последних двух номерах прошлого года мы опубликовали обзор зарубежной прессы, обобщив те сведения, которые имеются по ошибкам в стандартном системном ПЗУ "Спектрума".
Работа получила благожелательные отзывы от наших читателей. По-видимому, им важно всё, что связано с ПЗУ, а тем более с его ошибками.
Вместе с тем встал интересный вопрос: "А как обстоит дело в ПЗУ ТУРБО-90?". Результатами своих исследований по этому поводу делятся наши корреспонденты Роман Купцов и Мальтов Денис из г. Новгорода. Тема не закрыта, мы опубликуем и другие взгляды, освещающие этот вопрос, тем более, что интересно бы рассмотреть и свои "собственные" ошибки Турбо-ПЗУ.
КОРР: Мы являемся постоянными читателями "ZX-РЕВЮ" с 1992 года. Ваш журнал выше всяких похвал! Сами мы занимаемся программированием три года и Вы нам в этом очень помогли, особенно в том, что связано с программированием в машинных кодах. У Вас постоянно свежий и хорошо поданный материал, а Ваши статьи по секретам ПЗУ в 1991 г. -просто класс! Неоценимая помощь любому программисту.
ИФК: Спасибо, конечно, друзья на добром слове, но позвольте нам остаться при своём мнении. Статьи эти о ПЗУ в 1991 году были, возможно, полезны, но мы их рассматриваем как СОВЕРШЕННО НЕУДАЧНЫЙ опыт и РЕШИТЕЛЬНО ими НЕДОВОЛЬНЫ. Знаете ведь: "Первый блин... и т.д.". В общем, случился с нами приступ внутренней аллергии. Так бывает, когда хочешь сделать что-то хорошее, а чувствуешь, что получается не то.
Потому мы и прекратили их давать. Мы тогда только начинали и опыта общения с читателями было маловато. Сейчас мы всё сделали бы по-другому. И будьте уверены, сделаем! В наших планах на 2-ой квартал 1994 года стоит книга о системном ПЗУ, которая действительно класс! Мы готовим удобный и понятный способ подачи материала и уверены, что книга будет отличной. Так что позвольте Ваши комплименты принять авансом, а мы постараемся этот аванс отработать по-честному.
КОРР: Мы хотим поделиться с Вами и со всеми читателями некоторыми находками из ПЗУ ТУРБО-90. Немного покопавшись в нём, мы обнаружили (не без помощи "ZX-РЕВЮ"), что некоторые из ошибок системного ПЗУ там исправлены.
Исправлено:
1. Процедура обработки немаскированного прерывания INT, начиная с адреса 0066H,
т. е.
PUSH AF PUSH HL LD HL,(5CB0) LD A,H OR L
JR Z,0070H; ошибка исправлена, в фирменном ПЗУ здесь стоит JR NZ,0070H
2. Ошибка деления, т. е.:
IF 1/2 <> 0.5 THEN PRINT "Ku-Ku".
В Турбо-ПЗУ здесь "Ku-Ku" не печатается.
3. Ошибка "-65536"; т.е. PRINT IN "-65536" даёт - 65536.
4. CHR$ 9 работает.
5. CHR$ 8 работает правильно.
6. STR$ работает правильно, т. е.
PRINT "Ku-Ku" + STR$ 0.5 даёт:
Ku-Ku0.5
7. Ошибка SCREEN$ исправлена, т.е.
IF "X"=SCREEN$(0,0) THEN PRINT "Ku-Ku"
Ku-Ku не печатается, когда в текущем знакоместе (0, 0) нет "X"
8. Исправлена ошибка курсора текущей строки: т.е.
9000 PRINT9001EDIT,
где значок "" означает ENTER, выдаёт на редактирование строку 9000, а значок ">" в нижней части экрана не появляется.
9. Исправлена ошибка ведущего пробела.
Неисправленные ошибки:
1. Особенность регистровой пары H'L' (альтернативной).
2. Ошибка оператора PLOT.
3. Ошибка CLOSE$.
4. Ошибка Scroll?
5. Ошибка K-режима.
6. Ошибка проверки синтаксиса.
Непроверенные ошибки.
1. Ограничение по использованию регистровой пары IY.
2. Особенности пользовательской функции FN.
3. Ошибки кодов управления цветом.
4. Ошибка MOD_DIV (кальк-р).
5. Ошибка E_TO_FP (кальк-р).
6. Ошибка INKEY$ #0.