[an error occurred while processing this directive]
( ПРОДОЛЖЕНИЕ )
5.2 Слова комплекта библиотек
5.2.1 Библиотека CRT
Координаты X, Y, если не указано считать относительными
т.е. отсчитываемыми от лево- верх угла рабочего окна.
Если же указано АБСОЛЮТНЫЕ, то это означает, что
эти координаты отсчитываются от лево- верх угла экрана.
Если координаты при выполнении слова НЕ являются до-
пустимыми, то слово просто игнорируется.
Название Тип Комментарии и примеры
********** * ************************************************
Border А Вычерчивает заданную рамку по заданным координа-
там( абсолютным ). Формат обращения:
LeftUpX LeftUpY RightBotX RightBotX BorderNo,
где BorderNо номер стандартной рамки
Blue C Код синего цвета
Black C Код черного цвета
CountStr A Подсчитать число строк в диапазоне адресов
Формат обращения: FromAdr ToAdr
Выход: StrQ,
где StrQ- число строк в интервале
ClrScr A Очистить экран без изменения положения курсора
Coff F Выключить курсор
DownKey C Код кнопки "ВНИЗ"
EscapeKey C Код кнопки "ESCAPE"
EnterKey C Код кнопки "ВВОД"
GetWindow A Взять координаты( абсолютные ) текущего окна.
Выход: LeftUpX LeftUpY RightDownX RightDownY
Green C Код зеленого цвета
GotoXY A Перейти в окне по координатам на стеке.
Формат обращения: X Y
GetPalette A Взять текущее значение палитры.
Выход: PaletteNo ( 0..3 )
GetColor A Взять текущее значение цвета символов.
Выход: ColorNo ( 0..7 )
GetChar A Взять символ с экрана по координатам( абсолютн.)
Формат обращения: X Y
Выход: SymbolCode
( если Mode= Text32, то на стеке кроме символа
будет еще и атрибут символа )
GetScrAdr A Взять адрес начала рабочего экрана( не окна! )
Выход: ScreenBegAdr
Home F Перейти в лево- верх угол рабочего окна
Inverse A Установить инверсный атрибут вывода символов
в режиме 32*32
LightBlue C Код светло- синего цвета
LeftKey C Код кнопки "ВЛЕВО"
Normal A Установить нормальный атрибут вывода символов
в режиме 32*32
PopWindow A Восстановить из экранного стека область экрана,
запомненную ранее словом PushWindow.
Формат обращения: X Y ( абсолютные )
PopState A Восстановить из экранного стека параметры окна,
сохраненные ранее словом PushState
PushState A Запомнить текущие параметры окна с экранном
стеке
PushWindow A Сохранить область экрана по ее абсолютным
координатам в экранном стеке.
Формат обращения:
LeftUpX LeftUpY RightDownX RightDownY
RightKey C Код кнопки "ВПРАВО"
Red C Код красного цвета
Screen F Установить, очистить и показать страницу
вывода.
Формат обращения: PageNo ModeNo
Выход: Удачно/нет
ПРИМЕЧАНИЕ: в текстовом режиме PageNo=0..1,
в графике PageNo зависит от кол-ва
памяти, взятых под графику.
ModeNo= 0.. 3( 0..1 Text, осталь-
ные графика )
ShowString A Показать на экране строку( до ВВОД или NULL ).
Формат обращения: StrAdr
SSP! A Сбросить экранный стек
ShowList C Показать во весь экран текстовый файл( до ВВОД
или NULL )
Формат обращения: StrAdr
ShowBorder A Показать свою рамку на экране.
Формат обращения:
LeftUpX LeftUpY RightDownX RightDownY BrdAdr,
где BrdAdr- адрес строки, задающей символы для
рамки( строка НЕ счетная )
Рамка: 1222223 , где цифры- номера символов
4 4 в строке рамки.
4 4 т.е. для рамки l---r
7222225 ! !
! !
L---R
строка описатель "l-r!RL"
SetColor A Установить цвет в режиме 32*32.
Формат обращения: ColorNo
SetPalette A Установить палитру.
Формат обращения: PaletteNo
SSP@ A Взять текущее значение указателя экранного стека
Выход: CurrSP
Search A Ускать нужную строку в диапазоне адресов.
Форма обращения: ToAdr FromAdr StrAdr ,
где StrAdr- адрес счетной строки
SkipStr A Пропустить нужное число строк, начиная от
адреса на стеке.
Формат обращения: TextAdr HowMuchStr,
где TextAdr- адрес обычной текстовой последо-
вательности.
HowMuchStr- число строк для пропуска,
причем, если это число <0, то пропуск идет в
обратную сторону( это слово было введено для
BFEDITOR ). Символ ENTERKEY считается разде-
лителем строк, символ NULL считается концом
текста.
Выход: TextAdr'
ToBegStr F Перейти к началу текущей строки
UpKey C Код кнопки "ВВЕРХ"
Violet C Код фиолетового цвета
Window A Установить текущее окно вывода по абсолютным
координатам.
Формат обращения:
LeftUpX LeftUpY RightDownX RightDownY
После этого весь последующий вывод будет
идти в определенное так окно( курсор после вы-
полнения этого слова будет помещен в лево-верх)
White C Код белого цвета
Yellow C Код желтого цвета
5.2.2 Библиотека STRINGS
Для всех функций данного пункта см.[ 4 ]
¤Constant ? Создать текстовую константу
Формат обращения:
¤Constant MyGreating "Hi People!!"
( при исполнении слово MyGreating выдает в стек
адрес начала строки "Hi People!!" )
¤Variable ? Создать новую текстовую переменную
Формат обращения:
10 ¤Variable My- Создает массив из 10 байт
¤Right A Выделить правую часть строки на PAD и
выдать на стек PAD
Формат обращения:
MyGreating 4 ¤Right ( выделит на PAD строку
"Hi P" и выдаст на стек адрес этой строки )
OUTS> Hi P
¤" A Выделить из потока ввода строку до " ,
перенести ее на PAD и выдать адрес PAD
Формат обращения:
¤" Hi Everebody!" OUTS> Hi Everybody!
¤! A Перенести строку по адресу
Формат обращения:
My MyGreating ¤!- Присвоит переменной My
значение константы MyGreating
¤Left A Выделить левую часть строки на PAD и выдать
на стек адрес PAD
Формат обращения:
MyGreating 4 ¤Left OUTS> le!!
¤Compare A Сравнить посимвольно две строки( 0 равны,
1 первая больше, -1 вторая больше )
Формат обращения:
MyGreating ¤" Hi People!!" ¤Compare .> 0
MyGreating ¤" Hi People!" ¤Compare .> 1
MyGreating ¤" Hi People!!!" ¤Compare .> -1
¤In A Ввести с консоли строку в PAD( 16 символов )
и выдает на стек адрес PAD
Формат обращения: ¤In
¤+ A Сложить две строки, поместить на PAD и выдать на
стек адрес PAD
Формат обращения:
MyGreating ¤" Fuck" ¤+ OUTS> Hi People!!Fuck
¤Mid A Вырезать середину из строки, поместить на PAD и
выдать адрес PAD
Формат обращения:
MyGreating 3 4 ¤Mid OUTS> Peop
<Cmove A Копировать массив со старших адресов
Val F Перевести счетную строку в число
Формат обращения: 1) ¤" 123" Val .>123
2) ¤" 12," Val .>12
3) ¤" primer" Val .>0
¤Val F Перевести ВСЮ счетную строку в число, если это
сделать нельзя, то флаг FALSE.
след. файл-> bfgloss3.doc
[an error occurred while processing this directive]