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

Инструменты сайта


msx:network_basic

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
msx:network_basic [2021-02-06 23:27]
GreyWolf [Ссылки]
msx:network_basic [2023-06-05 19:36] (текущий)
GreyWolf [CALL MESSAGE]
Строка 1: Строка 1:
 ====== MSX Network BASIC ====== ====== MSX Network BASIC ======
-Используется в решении [[msx:​yamaha_local_network:​yamaha_local_network]].+ 
 +Используется в решении [[msx:​yamaha_local_network:​yamaha_local_network-3|]]. 
 + 
  
 ~~TOC wide~~ ~~TOC wide~~
Строка 8: Строка 11:
 Назначение сети. Назначение сети.
  
-Данная локальная сеть разработана для связи компьютеров в учебном классе. Она позволяет соединять преподавателя и 15 учеников,​ давая при этом возможность обмена программами,​ данными и сообщениями,​ как между преподавателем и учеником,​ так и между двумя учениками. Сеть работает не только в [[msx:​basic:​]],​ но и в [[msx:​disk_basic]],​ [[msx:dos]] и [[msx:cp_m:cp_m]].+Данная локальная сеть разработана для связи компьютеров в учебном классе. Она позволяет соединять преподавателя и 15 учеников,​ давая при этом возможность обмена программами,​ данными и сообщениями,​ как между преподавателем и учеником,​ так и между двумя учениками. Сеть работает не только в [[msx:​basic:​]],​ но и в [[msx:​disk_basic]],​ [[msx:dos:]] и [[msx:​cp_m:​]].
  
  
 Примечания:​ Примечания:​
   - Ниже, для простоты записи,​ вместо "​компьютер преподавателя"​ и "​компьютер ученика"​ будет употребляться "​преподаватель"​ и "​ученик"​.   - Ниже, для простоты записи,​ вместо "​компьютер преподавателя"​ и "​компьютер ученика"​ будет употребляться "​преподаватель"​ и "​ученик"​.
-  - Как и в предыдущих версиях сети, в Версии 3.0 при обращении ученика к дисководу,​ команды сети [[msx:​basic:​]] временно отключаются.+  - Как и в предыдущих версиях сети, в версии 3.0 при обращении ученика к дисководу,​ команды сети [[msx:​basic:​]] временно отключаются.
   - Для работы сети используется специальное ОЗУ (2 кбайт) в сетевом блоке, обычное ОЗУ при работе с сетью не используется. Для обращения к сетевому ОЗУ, используйте карту памяти.   - Для работы сети используется специальное ОЗУ (2 кбайт) в сетевом блоке, обычное ОЗУ при работе с сетью не используется. Для обращения к сетевому ОЗУ, используйте карту памяти.
-  - Вызов сетевой BIOS (системы базовых функций ввода–вывода) из [[msx:dos]] или [[msx:​cp_m:​cp_m]] ссылается на рабочую область из 8 байт в основном ОЗУ.+  - Вызов сетевой BIOS (системы базовых функций ввода–вывода) из [[msx:dos:]] или [[msx:​cp_m:​cp_m]] ссылается на рабочую область из 8 байт в основном ОЗУ.
   - Если при работающей сети невозможно запустить некоторые прикладные программы (например [[msx:​yamaha_painter:​yamaha_painter|]]),​ воспользуйтесь командой ''​[[#​CALL NЕТEND]]'',​ а после неё повторите вызов Вашей программы.   - Если при работающей сети невозможно запустить некоторые прикладные программы (например [[msx:​yamaha_painter:​yamaha_painter|]]),​ воспользуйтесь командой ''​[[#​CALL NЕТEND]]'',​ а после неё повторите вызов Вашей программы.
  
Строка 48: Строка 51:
 |[[#CALL DISCOM]]|запрещение передачи учеником| ​ ✔  |  —  | |[[#CALL DISCOM]]|запрещение передачи учеником| ​ ✔  |  —  |
  
-Все команды серии ''​[[msx:​basic:​call|CALL]]''​ можно сократить до 3–4 букв, а само слово ''​CALL''​ можно заменить символом "​_"​ (подчёркивание) после которого не требуется пробелов,​ например,​ ''​CALL NETEND''​ можно заменить на ''​_NETE''​+Все команды серии ''​[[msx:​basic_dialogue_programming_language:007#call|CALL]]''​ можно сократить до 3–4 букв, а само слово ''​CALL''​ можно заменить символом "​_"​ (подчёркивание) после которого не требуется пробелов,​ например,​ ''​CALL NETEND''​ можно заменить на ''​_NETE''​
  
 ====== CALL HELP ====== ====== CALL HELP ======
Строка 107: Строка 110:
 CALL BSEND ("​DATA.BIN",​12,&​H8000) CALL BSEND ("​DATA.BIN",​12,&​H8000)
 </​code>​ </​code>​
-Эта команда переедает программу в машинных кодах или данные,​ записанные из [[msx:​basic:​|]] командой ''​[[msx:​basic_programming_guide:​09#​bsave|BSAVE]]''​ или ''​[[#​CALL BRECEIVE]]'',​ по начальному адресу в память ученика,​ определённого номером. В этом примере файл "​DATA.BIN"​ пересылается в память ученика номер 12 с начального адреса &​Н8000. Если номер ученика не указан начальный адрес, программа или данные пересылаются с того адреса,​ с которого они были записаны.+Эта команда переедает программу в машинных кодах или данные,​ записанные из [[msx:​basic:​|]] командой ''​[[msx:​basic_dialogue_programming_language:​009#​bsave|BSAVE]]''​ или ''​[[#​CALL BRECEIVE]]'',​ по начальному адресу в память ученика,​ определённого номером. В этом примере файл "​DATA.BIN"​ пересылается в память ученика номер 12 с начального адреса &​Н8000. Если номер ученика не указан начальный адрес, программа или данные пересылаются с того адреса,​ с которого они были записаны.
  
 __//​Пример 2//__ __//​Пример 2//__
Строка 125: Строка 128:
 </​code>​ </​code>​
  
-Эта команда передаёт данные с экрана (из видеопамяти),​ записанные с помощью команд [[msx:​basic:​|]] ''​[[msx:​basic_programming_guide:​09#​bsave|BSAVE]]''​ или ''​[[#​CALL BRECEIVE]]''​ с использованием <S>, в область с начального по конечный адреса в видеопамять указанного ученика. Когда данные в видеопамять пересылаются из файла, режим видеопрцессора автоматически не устанавливается,​ т.е. он должен быть установлен до использования команды ''​[[#​CALL BSEND]]''​. В этом примере данные из файла "​DATA.BIN"​ передаются по адресам с &Н0100 по &Н200 в видеопамять ученика с номером 12 . Если номер ученика не указан данные передаются всем ученикам. Если не указан начальный адрес данные будут пересылаться начиная с того адреса,​ с которого они были записаны. Если этот адрес больше чем конечный,​ то используется именно он, а конечный игнорируется. А если меньше,​ то данные будут посланы лишь до конечного адреса,​ указанного в команде ''​[[#​CALL BSEND]]''​.+Эта команда передаёт данные с экрана (из видеопамяти),​ записанные с помощью команд [[msx:​basic:​|]] ''​[[msx:​basic_dialogue_programming_language:​009#​bsave|BSAVE]]''​ или ''​[[#​CALL BRECEIVE]]''​ с использованием <S>, в область с начального по конечный адреса в видеопамять указанного ученика. Когда данные в видеопамять пересылаются из файла, режим видеопрцессора автоматически не устанавливается,​ т.е. он должен быть установлен до использования команды ''​[[#​CALL BSEND]]''​. В этом примере данные из файла "​DATA.BIN"​ передаются по адресам с &Н0100 по &Н200 в видеопамять ученика с номером 12 . Если номер ученика не указан данные передаются всем ученикам. Если не указан начальный адрес данные будут пересылаться начиная с того адреса,​ с которого они были записаны. Если этот адрес больше чем конечный,​ то используется именно он, а конечный игнорируется. А если меньше,​ то данные будут посланы лишь до конечного адреса,​ указанного в команде ''​[[#​CALL BSEND]]''​.
  
 ====== CALL BRECEIVE ====== ====== CALL BRECEIVE ======
Строка 141: Строка 144:
 CALL BREC ("​DATA.BIN",​10,&​HA000,&​HB000) CALL BREC ("​DATA.BIN",​10,&​HA000,&​HB000)
 </​code>​ </​code>​
-Эта команда записывает программу в машинных кодах данные из памяти,​ с начального адреса по конечный,​ в файл на диск. Формат для записи такой же, как и в команде [[msx:​basic:​|]] ''​[[msx:​basic_programming_guide:​09#​bsave|BSAVE]]'',​ только стартовым адресом всегда является начальный. В этом примере содержимое памяти ученика номер 10, с адреса &​НА000 по &​НВ000,​ записывается в файл "​DATA.BIN"​.+Эта команда записывает программу в машинных кодах данные из памяти,​ с начального адреса по конечный,​ в файл на диск. Формат для записи такой же, как и в команде [[msx:​basic:​|]] ''​[[msx:​basic_dialogue_programming_language:​009#​bsave|BSAVE]]'',​ только стартовым адресом всегда является начальный. В этом примере содержимое памяти ученика номер 10, с адреса &​НА000 по &​НВ000,​ записывается в файл "​DATA.BIN"​.
  
 __//​Пример 2//__ __//​Пример 2//__
Строка 153: Строка 156:
 CALL BREC ("​DATA.BIN",​12,&​H0100,&​H2000,​S) CALL BREC ("​DATA.BIN",​12,&​H0100,&​H2000,​S)
 </​code>​ </​code>​
-Содержимое экрана (видеопамяти) ученика принимается и записывается на диск. Формат для записи такой же, как и в команде [[msx:​basic:​|]] ''​[[msx:​basic_programming_guide:​09#​bsave|BSAVE]]''​ при использовании <S>. Так как записываемый файл (содержимое видеопамяти) не содержит информацию о режиме видеопоцессора,​ необходимо при использовании такого файла предварительно установить соответствующий режим. В этом примере данные с экрана (из видеопамяти) ученика номер 12 с адреса &0100 по &Н2000 записывается на диск, в файле с названием "​DATA.BIN"​. При использовании <S>, если Вы не указываете начальный адрес, используется — &​Н0000,​ а вместо конечного — &​НFFFF.+Содержимое экрана (видеопамяти) ученика принимается и записывается на диск. Формат для записи такой же, как и в команде [[msx:​basic:​|]] ''​[[msx:​basic_dialogue_programming_language:​009#​bsave|BSAVE]]''​ при использовании <S>. Так как записываемый файл (содержимое видеопамяти) не содержит информацию о режиме видеопоцессора,​ необходимо при использовании такого файла предварительно установить соответствующий режим. В этом примере данные с экрана (из видеопамяти) ученика номер 12 с адреса &0100 по &Н2000 записывается на диск, в файле с названием "​DATA.BIN"​. При использовании <S>, если Вы не указываете начальный адрес, используется — &​Н0000,​ а вместо конечного — &​НFFFF.
  
  
Строка 306: Строка 309:
 <​code>​ <​code>​
 CALL MESSAGE (<​сообщение>,​[<​номер ученика>​]) CALL MESSAGE (<​сообщение>,​[<​номер ученика>​])
-<​code>​+</code>
  
 Передача сообщения преподавателем. Передача сообщения преподавателем.
Строка 316: Строка 319:
 Эта команда передаёт сообщение преподавателя одному или нескольким ученикам. Сообщение имеет максимальную длину 56 символов,​ но, когда оно высвечивается в 24 строке на экране ученика,​ его длина зависит от того, в каком режиме сейчас ученик. Если в момент передачи ученик находится в графическом режиме,​ то сообщение будет выведено к нему на экран, как только он выйдет в текстовой режим. Если параметр <​номер ученика>​ пропущен,​ сообщение передаётся всем ученикам. Этот пример высвечивает сообщение "Hello !!" в 24 строке на экран у 10 ученика. Чтобы сообщение исчезло — нажмите пробел. Эта команда передаёт сообщение преподавателя одному или нескольким ученикам. Сообщение имеет максимальную длину 56 символов,​ но, когда оно высвечивается в 24 строке на экране ученика,​ его длина зависит от того, в каком режиме сейчас ученик. Если в момент передачи ученик находится в графическом режиме,​ то сообщение будет выведено к нему на экран, как только он выйдет в текстовой режим. Если параметр <​номер ученика>​ пропущен,​ сообщение передаётся всем ученикам. Этот пример высвечивает сообщение "Hello !!" в 24 строке на экран у 10 ученика. Чтобы сообщение исчезло — нажмите пробел.
  
-Примечание:​ \\ Если у ученика выключена индикация функциональных клавиш (по команде ​ ''​[[msx:​basic_programming_guide:​05#​keyoff|KEY OFF]]''​),​ то сообщение будет двигаться вверх по мере заполнения экрана,​ т.е. будет рассматриваться как обычной текст.+Примечание:​ \\ Если у ученика выключена индикация функциональных клавиш (по команде ​ ''​[[msx:​basic_dialogue_programming_language:​005#​keyoff|KEY OFF]]''​),​ то сообщение будет двигаться вверх по мере заполнения экрана,​ т.е. будет рассматриваться как обычной текст.
  
 ====== CALL TALK ====== ====== CALL TALK ======
Строка 398: Строка 401:
 CALL RECE ("​B:​TEST.BAS",​14) CALL RECE ("​B:​TEST.BAS",​14)
 </​code>​ </​code>​
-Эта команда принимает программу на [[msx:​basic:​|]] от указанного ученика и записывает её на диск в заданный файл. Команда не стирает содержимое памяти преподавателя и может быть использована в программном режиме. Формат,​ в котором записывается файл такой же, как и в команде ''​[[msx:​basic_programming_guide:​09#​save|SAVE]]''​ [[msx:​basic:​|]].+Эта команда принимает программу на [[msx:​basic:​|]] от указанного ученика и записывает её на диск в заданный файл. Команда не стирает содержимое памяти преподавателя и может быть использована в программном режиме. Формат,​ в котором записывается файл такой же, как и в команде ''​[[msx:​basic_dialogue_programming_language:​009#​save|SAVE]]''​ [[msx:​basic:​|]].
  
 В этом примере программа ученика номер 14 записывается в файл "​TEST.BAS"​. Если файл с таким именем уже есть на диске, старый будет стёрт и в замен него будет записана программа ученика. Если программа ученика в момент подачи команды работала,​ она будет остановлена и высветится "​Wait"​ (ждите),​ а после окончания приёма её преподавателем — "​Ok"​. В этом примере программа ученика номер 14 записывается в файл "​TEST.BAS"​. Если файл с таким именем уже есть на диске, старый будет стёрт и в замен него будет записана программа ученика. Если программа ученика в момент подачи команды работала,​ она будет остановлена и высветится "​Wait"​ (ждите),​ а после окончания приёма её преподавателем — "​Ok"​.
Строка 480: Строка 483:
 40 CALL SNDC (A$+B$+C$) 40 CALL SNDC (A$+B$+C$)
 </​code>​ </​code>​
-Можно посылать несколько команд одновременно. В этом примере у всех учеников выполняется команда ''​color 15,​4,​7'',​ a затем — команда ''​[[msx:​basic_programming_guide:​05#​cls|CLS]]''​. При этом между отдельными командами надо вставлять код перевода каретки (CR).+Можно посылать несколько команд одновременно. В этом примере у всех учеников выполняется команда ''​color 15,​4,​7'',​ a затем — команда ''​[[msx:​basic_dialogue_programming_language:​005#​cls|CLS]]''​. При этом между отдельными командами надо вставлять код перевода каретки (CR).
  
 ====== CALL RUN ====== ====== CALL RUN ======
Строка 582: Строка 585:
 CALL OFFLINE CALL OFFLINE
 </​code>​ </​code>​
-Эта команда отключает ученика от сети. Когда компьютер отключён от сети, он не может принять команду от преподавателя. Таким образом,​ эта команда используется,​ когда ученик хочет работать сам, без каких–либо прерываний от преподавателя. Чтобы снова включится в сеть, ученик должен использовать команду ''​[[#​CALL ONLINE]]''​.+Эта команда отключает ученика от сети. Когда компьютер отключён от сети, он не может принять команду от преподавателя. Таким образом,​ эта команда используется,​ когда ученик хочет работать сам, без каких–либо прерываний от преподавателя. Чтобы снова включиться в сеть, ученик должен использовать команду ''​[[#​CALL ONLINE]]''​.
  
 ====== Ссылки ====== ====== Ссылки ======
Строка 595: Строка 598:
  
  
-{{tag>​MSX BASIC}}+{{tag>​MSX BASIC Network}}
  
msx/network_basic.1612643279.txt.gz · Последние изменения: 2021-02-06 23:27 — GreyWolf