Работа с ZX-Spectrum 1993 г.

Основы работы. Глава 3. - системные переменные.


ГЛАВА 3

СИСТЕМНЫЕ ПЕРЕМЕННЫЕ

Компьютер выделяет место в памяти с байта 23552 по 23733 для
размещения системных переменных, которые нужны для нормального
функционирования. Пользователь может использовать эту информацию для
повышения эффективности программирования. Начальные значения систем-
ных переменных устанавливаются после включения компьютера. Этим
занимаются процедуры, записанные в ПЗУ и стартующие после включения
автоматически. В любое время Вы можете просмотреть содержимое этих
переменных с помощью команд:

PRINT РЕЕК АДР - для однобайтной

переменной;

PRINT РЕЕК АДР + 256* РЕЕК (АДР+1) - для двухбайтной.

Вы можете и сами оператором РОКЕ заслать какие-либо значения в
адрес системной переменной, но в некоторых случаях такое изменение бу-
дет жить недолго, т.к. система сама восстановит нужное ей значение (такие
системные переменные помечены буквой N), а в некоторых случаях изме-
нение приведет к сбросу компьютера (такие переменные помечены буквой

СИСТЕМНЫЕ ПЕРЕМЕННЫЕ

СИСТЕМНЫЕ ПЕРЕМЕННЫЕ

ча-
ние

Дли-
на

Адрес

Имя

Содержание

1

2

3

4

5

N

8

235S2

KSTATE•

Используется при сканировании клавиатуры.

N

1

23560

LAST К

Запоминает последнюю нажатую клавишу.

23561

REPDEL

Количество 50-х долей секунды, в течете ко-
торых надо удерживать нажатую клавишу, что-,
бы начался ее автоповтор, исходная установка '
- 35, но можете занести свое значение.

1

2

3

4

5

1

23362

REPPER

Интервал между повторениями нажатой и
удерживаемой клавиши.

N

2

23563

DEFADD

При расчете функции, заданной пользовате-
лем, здесь хранится адрес ее аргументов.
В противном случае 0.

N

1

23565

К DATA

2-й байт кола управления цветом при вводе с
клавиатуры.

N

2

23566

TV DATA

Данные о цвете и об «АТ» и «ТАВ» телевизора.

X

38

23568

STRMS

Адреса каналов, подключенных к потокам.

2

23606

CHARS

Адрес, который лежит на 356 байтов ниже,
чем набор символов (знаков), начиная с «пробе-
ла» и кончая символом «копирайт». Обычно
этот набор находится в ПЗУ, но Вы можете соз-
дать свой набор и изменить CHARS так, чтобы
она указывала на него.

23608

RASP

Продолжительность предупредительного зву-
кового сигнала.

1

23609

PIP

Продолжительность звука-щелчка при на-
жатии клавиши.

1

23610

ERR NR

На 1 меньше, чем код сообщения об ошибке.
В исходном состоянии - 255.

1

23611

FLAGS

Различные флаги для операционной системы.

1

23612

TV
FLAGS

Флаги, связанные с работой телевизора.

X

2

23613

ERR SP

Адрес параметра на машинном стеке, кото-
рый используется как адрес возврата после
ошибки.

N

2

23615

LIST SP

Адрес возврата после автоматического
листинга.

N

1

23617

MODE

Указывает на тип курсора: К, L, С или G.

2

23618

NEWPPC

Номер строки, к которой следует переход.

'

23620

NSPPC

Номер оператора в строке, к которому следу-
ет переход, заслав нужное значение в NEWPPC.
Вы можете вызвать переход к нужному опера-
тору в нужной строке.

• 2

23621

PPC

Номер строки, в которой расположен испол-
няемый в данный момент оператор.

1

23623

SUBPPC

Номер оператора (в строке), который в дан-
ный момент выполняется.

1

23624

BORDOR

Цвет бордюра, умноженный на 8. здесь же со-
держатся атрибуты нижней части экрана.

2

23625

E PPC

Номер текущей строки (в которой - курсор).

X

2

23627

VARB

Адрес программных переменных.

1

2

3

--

4

5

N

2

23620

i)i:sr

Адрес переменной при исполнении оператора
присвоения (LET).

X

2

23631

CHANS

Адрес информации о каналах.

X

2

23633

CURCIII.

Адрес информации, которая к данный момент
вводится или выводится.

X

2

23635

PROG

Адрес, с которого начинается программа,
написанная на BASIC'e.

X

2

23637

NXTLIN

Адрес следующей строки программы.

X

2

23639

DATADD

Адрес разделителя после последнего введен-
ного параметра из блока DATA.

X

2

23641

CLINK

Адрес вводимой команды.

2

23643

К CUR

Адрес курсора.

X

2

23645

CH ADD

Адрес следующего интерпретируемого симво-
ла.

2

23647

X PTR

Адрес символа после маркера «?».

X

2

23649

WORKSP

Адрес рабочего пространства.

X

2

23651

STKBOT

Адрес основания стека калькулятора.

X

2

23653

STKEND

Адрес вершины стека калькулятора.

N

1

23655

BREG

Содержимое регистра «В» калькулятора.

N

2

23656

MEM

Адрес области памяти калькулятора, обычно,
но не всегда, совпадает с MEM ВОТ.

1

23658

FLAGS2

Флаги.

X

1

23659

DF SZ

Количество строк в нижней части экрана
(в системном окне).

2

23660

STOP

Номер верхней программной строки при авто-
матическом листинге.

2

23662

OLDPPC

Номер строки, к которой выполняется пере-
ход.

1

23664

OSPPC

Номер оператора в строке, к которому выпол-
няется переход по CONTINUE.

1

23665

FLAGX

Вспомогательные флаги.

N

2

23666

STRLEN

Длина строковой переменной (стринга) в опе-
раторе присваивания.

N

2

23668

T ADDR

Адрес следующего параметра в синтаксичес-
кой таблице.

2

23670

SEED

Здесь хранится величина для функции RND.
Исходное значение можно задать:
RANDOMIZE N.

3

23672

FRAMES

с . 3-х байтная деееменная (старший
байт — первыш^Получает приращение
на л каждую T/5D долю секунды, можно

|»«,к»иза1,ийкЬнтрол!|

1

2

3

4

5

PRINT (256*256*PEEK 23672 + 256*PEEK
23673 +PEEK 23674)/50
покажет, сколько секунд прошло с момента
включения компьютера.

2

23675

UDG

Адрес 1-го символа графики пользователя.
Вы можете его изменить.

1

23677

COORDS

Координата X последней помещенной на
экран точки.

1

23678

Координата Y -"-.

1

23679

P POZN

Номер колонки (позиции), в которой на-
ходится принтер.

1

23680

PR CC

Младший байт адреса следующей позиции
печати по LPRINT (в буфере принтера).

1

23681

Не используется.

2

23682

ECHO E

Номер колонки и номер строки конца буфера
клавиатуры.

2

23684

DF CC

Адрес позиции печати в экранной памяти.

2

23686

DFCCL

То же, но для нижней части экрана.

X

1

23688

S POSN

Номер колонки позиции печати.

X

1

23689

Номер строки позиции печати.

X

2

23690

SPOSNL !

I То же (см. S POSN) - для нижней части экра-
на.

1

23692

SCR CT

На 1 больше, чем необходимое число
передвижек строк на экране до остановки с за-
! просом «SCROLL ?». Если Вы организуете пос-
тоянна подачу (после PRINT) в эту ячейку
; любого числа > 1. то печать будет идти непре-
' рывно. без запроса «SCROLL ?».

Г

23693

ATTR P

Тек щие цветовые атрибуты для всего экрана.

1

23694

MASK P

Маска локальных атрибутов, каждый бит
этой переменной, если он равен 1, показывает,
что соответствующий цветовой атрибут надо
брать не из ATTR Р. а из того, что уже есть на
экране в позиции, для которой выполняется
печать.

N

1

23695

ATTR T

Временные атрибуты, их установка спра-
ведлива только для выполнения текущего опе-
ратора PRINT, INPUT.

N

23696

MASK T

То же что и MASK Р. но для временных
атрибутов.

1

23697

PFLAG

Флаги атриб тов.

N

30

23698

MEMBOT

Область памяти кальк>лятора, используется
для хранения чисел, которые неудобно поме-
щать в стек калькулятора.

1

2

з

4

5

2

23728

[ Не используется.

2

23730 |

RAMTOP

Адрес вершины области, доступной для раз-
| мещения программ на BASIC'e.

2

23732

PRAMT

1 Адрес физической вершины памяти компью-
| тера.




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Игры - "И наступил тьма" - новая адвентюрная игра.
Обзор - O новых программах: Narc, The Hundred, Heavy Metal Mover, Quick Draw McGraw, Iice Climber (Альпинист), Super Cars, Lode Runner 3, Down Town, Страна Мифов, Gremlin 2, Sword of Bane, Turbo Skate Fighter, Assault Course, Mercs, Darkman. Десятка лучших игр.
Почтовый ящик - доска обьявлений.
Читатель-читателю - ZX Spectrum 128 - новые возможности, новые проблемы.
От авторов - У газеты появился почтовый ящик...о статусе газеты.

В этот день...   25 апреля