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

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


msx:x-basic:x-basic

Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
msx:x-basic:x-basic [2023-05-09 10:17]
GreyWolf [3. Новые возможности, которые были добавлены]
msx:x-basic:x-basic [2023-07-07 21:18] (текущий)
ATroubleshooter
Строка 9: Строка 9:
 ====== KUN BASIC ====== ====== KUN BASIC ======
  
-MSX-BASIC-KUN (Компилятор BASIC)+%%MSX-BASIC-KUN%% (Компилятор BASIC)
  
 автор J.Suzuki 1989 автор J.Suzuki 1989
-этот документ и примеры составлены Sho Endo +\\ этот документ и примеры составлены Sho Endo 
-перевод на английский выполнен LASP((Смотри [[#​xbasic1|Примечание 1]])) +\\ перевод на английский выполнен LASP((Смотри [[#​xbasic1|Примечание 1]])) 
-текст перепечатан из LASP без изменений Нестором Сориано +\\ текст перепечатан из LASP без изменений Нестором Сориано 
-корректура и перевод на русский ​ATroubleshooter+\\ корректура и перевод на русский ​— ATroubleshooter
  
-MSX-BASIC-KUN это потрясающий компилятор BASIC. Он компилирует программу на +%%MSX-BASIC-KUN%% это потрясающий компилятор BASIC. Он компилирует программу на [[msx:​basic:​|]] ​в ОЗУ за считанные секунды и она работает в 15-100 раз быстрее!! ​%%X-BASIC%%  ​может компилировать почти все операторы и функции ​[[msx:​basic:​|]] ​и поддерживает строки и числа с плавающей запятой. Попробовав его, вы поймете,​ что вам теперь ни к чему учить ассемблер Z-80. Игры в реальном времени,​ компьютерная графика, ​[[msx:​demo:​demo|демонстрационные программы]] ​могут быть написаны,​ сочетая простоту ​[[msx:​basic:​|]] ​и скорость машинного кода.
-Бейсике ​в ОЗУ за считанные секунды и она работает в 15-100 раз быстрее!! X-BASIC ​ +
-может компилировать почти все операторы и функции ​MSX-BASIC'​а ​и поддерживает +
-строки и числа с плавающей запятой. Попробовав его, вы поймете,​ что вам теперь ни к  +
-чему учить ассемблер Z-80. Игры в реальном времени,​ компьютерная графика,​ демки +
-могут быть написаны,​ сочетая простоту ​Бейсика ​и скорость машинного кода. ​FIXME+
  
  
Строка 29: Строка 24:
 ==== 1. Установка и Общие сведения ==== ==== 1. Установка и Общие сведения ====
  
-Данный компилятор продается в Японии в виде картриджа за 4500 йен. Для использования,​ вам нужно просто вставить его в слот. Также, вы можете найти этот компилятор в MSX2+ компьютерах Sanyo, в ПЗУ. А ещё, он может быть загружен в ОЗУ (с 4000h по 7FFFh) из [[msx:​dos|]],​ что мы сейчас и проделаем. Просто запустите ''​X.BAT''​ из [[msx:​dos|]].+Данный компилятор продается в Японии в виде картриджа за 4500 йен. Для использования,​ вам нужно просто вставить его в слот. Также, вы можете найти этот компилятор в MSX2+ компьютерах Sanyo, в ПЗУ. А ещё, он может быть загружен в ОЗУ (с 4000h по 7FFFh) из [[msx:dos:|]], что мы сейчас и проделаем. Просто запустите ''​X.BAT''​ из [[msx:dos:|]].
 <​code>​ <​code>​
 A>x A>x
Строка 38: Строка 33:
 Ok Ok
 </​code>​ </​code>​
-{{:​msx:​x-basic:​xbasic.bin1.0.zip |Скачать X-BASIC 1.0 в формате .bin}}+{{:​msx:​x-basic:​xbasic.bin1.0.zip |Скачать X-BASIC 1.0 в формате .bin и утилиту SET40.COM}}
  
  
Строка 125: Строка 120:
  
 Мало-мальски сложная строковая операция легко может вызвать ошибку "​String formula too  Мало-мальски сложная строковая операция легко может вызвать ошибку "​String formula too 
-complex"​. Потому что данный компилятор имеет только один уровень стэка для этого. Разбейте длинную строковую формулу на несколько небольших, ​если ​так.+complex"​. Потому что данный компилятор имеет только один уровень стэка для этого. Разбейте длинную строковую формулу на несколько небольших, ​в таком случае.
  
 Если запустить посредством ''​_RUN''​ бесконечную программу,​ вы не сможете её прервать. Сделайте выход по нажатой клавише. Если запустить посредством ''​_RUN''​ бесконечную программу,​ вы не сможете её прервать. Сделайте выход по нажатой клавише.
-</code>+<​code>​
 100 GOTO 100 '​Нажмите ресет или выключите питание чтобы остановить 100 GOTO 100 '​Нажмите ресет или выключите питание чтобы остановить
 </​code>​ </​code>​
Строка 136: Строка 131:
 110 END 110 END
 </​code>​ </​code>​
-\\ Лучше ​так.+будет лучше.
  
  
 ==== 2. Отличия от интерпретатора MSX-BASIC ==== ==== 2. Отличия от интерпретатора MSX-BASIC ====
  
-Список операторов,​ команд и функций,​ которые не могут быть откомпилированы. +Список операторов,​ команд и функций,​ которые не могут быть откомпилированы: 
- +<WRAP group> 
-FIXME +<WRAP fourth column> 
- +<​code>​ 
-AUTOBASEBLOADBSAVECALLCDBLCINTCLEARCLOADCLOAD?CLOSECONTCSAVECSNGCVDCVICVSDEFFNDELETEDRAWDSKFEOFERASEERLERRERROREQVFIELDFILESFPOSFREGETIMPINPUT#KEY LISTLFILESLINEINPUT#LISTLLISTLOADLOCLOFLPRINT USINGLSETMAXFILESMERGEMOTORMKD$MKI$MKS$NAMENEWON ERROR GOTOON INTERVAL GOSUB (due to a bug)OPENPLAYPRINT#PRINT USINGPUT KANJIRENUMRESUMERSET +AUTO 
-SAVESPCTABTRONTROFFWIDTH. +BASE 
- +BLOAD 
-Список тех, которые имеют ограничения. +BSAVE 
- +CALL 
-FIXME+CDBL 
 +CINT 
 +CLEAR 
 +CLOAD 
 +CLOAD? 
 +CLOSE 
 +CONT 
 +CSAVE 
 +CSNG 
 +CVD 
 +CVI 
 +CVS 
 +</​code>​ 
 +</​WRAP>​ 
 +<WRAP fourth column>​ 
 +<​code>​ 
 +DEFFN 
 +DELETE 
 +DRAW 
 +DSKF 
 +EOF 
 +ERASE 
 +ERL 
 +ERR 
 +ERROR 
 +EQV 
 +FIELD 
 +FILES 
 +FPOS 
 +FRE 
 +GET 
 +IMP 
 +INPUT# 
 +</​code>​ 
 +</​WRAP>​ 
 +<WRAP fourth column>​ 
 +<​code>​ 
 +KEY LIST 
 +LFILES 
 +LINEINPUT# 
 +LIST 
 +LLIST 
 +LOAD 
 +LOC 
 +LOF 
 +LPRINT USING 
 +LSET 
 +MAXFILES 
 +MERGE 
 +MOTOR 
 +MKD$ 
 +MKI$ 
 +MKS$ 
 +NAME 
 +</​code>​ 
 +</​WRAP>​ 
 +<WRAP fourth column>​ 
 +<​code>​ 
 +NEW 
 +ON ERROR GOTO 
 +ON INTERVAL GOSUB (из-за ошибки) 
 +OPEN 
 +PLAY 
 +PRINT# 
 +PRINT USING 
 +PUT KANJI 
 +RENUM 
 +RESUME 
 +RSET 
 +SAVE 
 +SPC 
 +TAB 
 +TRON 
 +TROFF 
 +WIDTH 
 +</​code>​ 
 +</​WRAP>​ 
 +</​WRAP>​
  
 +Список тех, которые имеют ограничения:​
 |''​CIRCLE''​|Только окружности,​ никаких дуг или эллипсов.| |''​CIRCLE''​|Только окружности,​ никаких дуг или эллипсов.|
 |''​COPY''​|Только пересылки в видеопамяти.| |''​COPY''​|Только пересылки в видеопамяти.|
Строка 176: Строка 249:
 Если вы хотите использовать ''​PRINT#''​ для вывода символов на ''​GRP:'',​ используйте его вне турбо-блока. Иначе, изучите пример PRINT.TRB. Если вы хотите использовать ''​PRINT#''​ для вывода символов на ''​GRP:'',​ используйте его вне турбо-блока. Иначе, изучите пример PRINT.TRB.
  
-Если нужно использовать ''​PLAY'',​ используйте ​компилятор BGM, и выводите звук с помощью ''​USR(n)''​.+Если нужно использовать ''​PLAY'',​ используйте ​расширение ​ CompileBGM, и выводите звук с помощью ''​USR(n)''​.
  
 ==== 3. Новые возможности,​ которые были добавлены ==== ==== 3. Новые возможности,​ которые были добавлены ====
Строка 216: Строка 289:
  
  
-Данный текст переставляет собой синтез переводов двух источников,​ датированных [[https://​www.msxcomputermagazine.nl/​mccm/​millennium/​milc/​basic/​topic_0.htm|1986]] и [[http://​www.konamiman.com/​msx/​msx2th/​kunbasic.txt|1989]] годами.+Данный текст представляет собой синтез переводов двух источников,​ датированных [[https://​www.msxcomputermagazine.nl/​mccm/​millennium/​milc/​basic/​topic_0.htm|1986]] и [[http://​www.konamiman.com/​msx/​msx2th/​kunbasic.txt|1989]] годами.
  
 {{anchor:​xbasic1}} __//​Примечание 1//__ \\  {{anchor:​xbasic1}} __//​Примечание 1//__ \\ 
-Довольно сомнительно,​ что текст был переведен LASP (бумажный каталог-прейскурант,​ выходивший в Испании). Этот текст существовал с 1986 года, и был, с минимальными изменениями,​ напечатан в LASP в 1989 году.+Довольно сомнительно,​ что текст был переведен LASP (бумажный каталог-прейскурант,​ выходивший в Испании). Этот текст ​в английском варианте ​существовал с 1986 года, и был, с минимальными изменениями,​ напечатан в LASP в 1989 году.
  
 ====== Ссылки ====== ====== Ссылки ======
msx/x-basic/x-basic.1683616630.txt.gz · Последние изменения: 2023-05-09 10:17 — GreyWolf