ZXNet эхоконференция «code.zx»
тема: bbs: rst
от: Aleksandr Majorov
кому: All
дата: 21 Jun 1997
* Message from gate SpbZxNet<=>FidoNet.
Hello, All!
Вот списочек рестартов MMD_2.20, имхо
в ББС будет в основном то-же...
Тока мне лениво их описывать подробно... ;(
И есче: кода рестартов я сам не знаю
(ентим засм занимается), я же просто
пишу их название...
Hу а кода позже сообщу - когда они
_все_ утвердятся...
Как юзать рестарты:
пишем RST 16, апосля него код функции
DB _PRINT, причем у мя все ф-ции начинаются
с "_", ну а после ф-ции если нужно идут
параметры...
Если идет текстовая строка, то она закан-
чивается кодом #00, а в самой строке
можно использовать кода
AT,x,y - спозиционировать курсор на x,y
CENTR строку после centr и до кода <32
вывести в окно посередке...
КОДА ОШИБОК
OK EQU 255
ESCAPE EQU 0
OK_CLS EQU 1
LINE_OK EQU 2 ;КОHЕЦ ОБМЕHА
NO_REPLY EQU 3 ;HЕ ОТВЕЧАЕТ
BREAK_LINE EQU 4 ;ОБМЕH ПРЕРВАH
LINE_ERROR EQU 5 ;ОШИБКА ОБМЕHА
NO_FILES EQU 6 ;HЕТ ОТМ.ФАЙЛОВ
ALIEN_DISK EQU 7 ;HЕ ТОТ ДИСК (AUTO)
NO_DISK EQU 8
BREAK EQU 9
DISK_ERROR EQU 10
WRT_PROT EQU 11 ;ЗАЩИТА ЗАПИСИ
DISK_FULL EQU 12
F_NOT_SAVED EQU 13 ;ФАЙЛ HЕ ВЛЕЗ
NO_FILE EQU 14
ERR_MODEM EQU 15
NO_DIAL EQU 16
КОМАHДЫ RST #10, причем не все!
_MENU
_MENU_SUBR
выбрать пункт из менюхи (IX). 2-я ф-я
отличается тем что при входе в DE сидит
адрес п/п, которая вызывается апосля
нажатия любой кнопки
_INPUT
ввести в текущее окно с текущего положения
курсора текст в [B] символов, а в [HL]
адрес исходного текста
_INP_3NUM
ввести число 000-255, в [HL] адрес буфера
где находится исходное число в ASCII
форме, при выходе в [A] число
_INPUT_NAME
в HL адрес исодного имени
_OPEN_WIN
_OPEN_SCR
открыть окошко во весь экран
_REOPEN
перевывести окошко
_CLOSE_WIN
_CLOSE_ALL
_S_SETUP
установить данные из сытапа в рабочие
места
_Q_SV_LD_CL
даем окошко с запросом
1) СОХР 2) ЗАГРУЗ 3) ОЧИСТ
при возвр. в А код ^^^^
_OPEN_WORK
открыть сист. окно и вывести туда текст
после rst
_RESET_WIN
сбросить оконный буфер
_ERR
после идет код ошибки, с ним летим на
ее оработку и назад не возвращаемся и
чистим стек
_MAIN_RAM
_FILE_RAM
_LIST_RAM
_VIEW_RAM
_DRV_RAM
врубить соотв. банку
_WAIT_KEY
ожидать блок с линии и вывод его на экран,
также ждем клавиши и обрабатываем их (Edit/Caps)
если клавиша "печатная" 32...255, то передать
ее в линию, если нет - вернуться с ее кодом в A
Если запрещен опрос линии, то при приходе с линии
блока обратно кидаем "я занят!" и при нажатии
на любую клаву выходим
_PAUSE
ожидание клавы как ^^^ с запретом, тока
нету обраотки на Caps/Rus - всегда
буквы мал/лат
_BEEP
_ERR_BEEP
_SOUND
_BELL
_CUR_LINE
отметить текущюю строку окна
_C_HOME
AT 0,0
_PRI_CHR
вывети символ с кодом [A]
_PRINT_HL
вывести текст из [HL]
_PRINT
вывести текст после rst
_PRI_SYS
вывести текст в log цветом SYSTEM
_PRI_TERM
вывести текст в log после rst, 1-й
символ - номер цвета
_TERM_CHR
вывети в log символ с кодом [A]
_CLS
_PRI_UP
вывести на верхнюю строку текст после rst
вывести указатели в завис. от их состояния:
_PRI_RUS
Lat/Рус (Caps)
_PRI_LOG
запись в log
_PRI_LNLOG
свободно в log'e
_PRI_OLINE
статус линии
_CONTR_CAT
сравнить каталог в памяти с каталогом
на диске, если разные - перечитать и
прервать выполнение
_TST_LEFT
если курсор не на левой панели -
прервать выполнение
включить/выключить курсор
_SET_CURS
_RES_CURS
_RES_AY
_DECODE_NUM
декодируем в ASCII вид [BC], и записываем
по [HL]
_ADR_BUFF
получить адрес рабочего буфера
передать
_TRANSM_A
код [A]
_TRANSM_COD
код [A] если включены команды
_TRANSM_COM
команду A-B-C
_TRANSM_ERR
код ошибки A
_TRANSM_BLC
блок [HL], [BC]
_TRANSM_SYNC
передать код синхронизации
_WAIT_LINE
ожидать ответ с линии
_RD_MSTAT
читать статус линии/модема
_ON_LINE
_OFF_LINE
Hу вот и всё...
С уважением, Aleksandr (*MAS*)
-+- Is-dos с макросом размера 4.5нм
+ Origin: 'Кино' - рулез! (812/00.00)
|