![]() |
переменная BASIC 23681
Ниже приведен текст программы, после выполнения которой в середине экрана очень крупным шрифтом появляется надпись: GOOD LUCK TO YOU
10 REM CRACKED BY MIHAILENKO VADIM MINSK 1991 20 FOR I=72 TO 79 25 POKE 23681, I 30 LPRINT "GOOD LUCK TO YOU" 40 NEXT I В данном случае авторы используют команду вывода на печатающее устройство LPRINT для поэтапного высвечивания на экране вышеуказанной надписи. Самым любопытным является то, что системная переменная, используемая в этой программе, в фирменном описании компьютера (автор - Виккерс) охарактеризована, как неиспользующаяся. Вопрос, как оно работает ? :) |
В этой переменной находится старший адрес буфера принтера. В этом цикле этот адрес подменяется на 0x48..0x4F, что соответствует средней трети экрана.
|
Titus, ты гигамозг! :)
|
ну и стоит сказать, что не на всех компах это работает (может зависнуть).
плюс, если будет ZX-Printer, то и на него напечатается это 8 раз... |
Quote:
|
на скорпах просто виснет насмерть
почему? |
другая организация памяти.
23681, 64 до 88 (64*256=16384 начало экранной области) вероятнее всего системные переменные иначе рассположены (у меня где-то брошура была с описанием всех переменных, но то для 48к) |
на кае виснет потому, что там есть драйвер принтера.
он ждёт ответа от принтера, но так как принтера нет, то и висит. вроде если понажимать на пробел, то большие буквы всё-таки допечатаются. думаю на скорпе тоже самое. |
Quote:
|
Quote:
Это младший байт используемого в данный момент адреса буфера принтера. Идентична "DF СС: адреса 23684/5 IY + 48 (5С84/5Ю" и для буфера принтера может быть смещена изменением так называе- мого неиспользованного байта, описанного ниже, который на самом деле является старшим байтом системной переменной "PR СС". К сожалению он сбрасывается по окончании печати каждой строки, чтобы указать начальный адрес. Поэтому необходима осторожность, если он перемещался. NOT USED: адрес 23681 IY + 71 (5C81h) Обычно не используется, если буфер принтера на обычном месте (см. "PR СС"). Может быть использована, но только как указано выше. В одном из номеров ZX-Review был этот пример под названием " Чтобы это значило". Походу так никто и не смог ответить :) кроме тебя. |
| All times are GMT +4. The time now is 21:01. |
Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.