меня в этом бейсике скорость компиляции радует,
вы бы скриншотик сделали из турбо картинку? конечно - честно надо турбо на реале запускать )
Вид для печати
В строке 51 ошибка. Должно быть 60
Картинка не отличается от этой, только без текста программы на фоне.
Это не ошибка, это повлияло только на положение картинки на экране (смещение по Y)
- - - Добавлено - - -
Для PC нашел вариант получше. POWER BASIC 3.5 с опцией Floating point: Procedure отрабатывает в emu в конфиге Poisk за 2:12. Размер стэндэлон EXE - 32.7 Кб. Для полноты картины другие опции:
Floating point: Emulation - 3:24, EXE - 25.0 Кб
Floating point: NPX ('87) - не работает на поиске, т.к. нет 8087, EXE - 16.3 Кб
совершенно не понимаю, отчего DECовский системный бейсик не кушает такую строку
11 FA=3.333
ПИШЕТ СИНТАКСИЧЕСКУЮ ОШИБКУ
ставил ему LET - та же история...пытаюсь под граф. КГД бас адаптировать данный листинг и в эмуляторе прогнать, но эта BASG - системный,
скотина ругается вообще на всё вполне легальное !!! Как его победить?
текущий листинг такой
Код:1 INIT(0%,0%) \ STYLE(-1%)
11 LET FA=3.333
20 FOR X=-20 TO 130 STEP 5
30 FOR Y=0 TO 200
40 GOSUB 120
50 NY=Y-X*.5+80
51 NZ=Z+X*0.6+80
60 LINE(NY,NZ)-(NY,199)
61 INIT(1%,0%)
70 IF Y=0 THEN PSET(NY,NZ) ELSE LINE(PY,PZ)-(NY,NZ)
80 PY=NY
81 PZ=NZ
90 NEXT Y
100 NEXT X
110 GOTO 110
120 REM FUNCTION
130 Z=Y*.1
131 XT=X*.1
132 YT=(Y+120)*.06
140 IF XT<0 OR XT>10 THEN RETURN
150 IF XT<-FA*(YT-10)+10 OR XT<FA*(YT-10)-16.66666 THEN RETURN
160 IF XT<-FA*(YT-10)+16.66666 OR XT<FA*(YT-10)-10 OR (XT>6 AND XT<8) THEN Z=-20
170 RETURN
1 INIT(0%,0%) \ STYLE(-1%)
11 LET FA=3.333
20 FOR X=-20 TO 130 STEP 5
30 FOR Y=0 TO 200
40 GOSUB 120
50 NY=Y-X*.5+80
51 NZ=Z+X*0.6+80
60 LINE(NY,NZ)-(NY,199)
61 INIT(1%,0%)
70 IF Y=0 THEN PSET(NY,NZ) ELSE LINE(PY,PZ)-(NY,NZ)
80 PY=NY
81 PZ=NZ
90 NEXT Y
100 NEXT X
110 GOTO 110
120 REM FUNCTION
130 Z=Y*.1
131 XT=X*.1
132 YT=(Y+120)*.06
140 IF XT<0 OR XT>10 THEN RETURN
150 IF XT<-FA*(YT-10)+10 OR XT<FA*(YT-10)-16.66666 THEN RETURN
160 IF XT<-FA*(YT-10)+16.66666 OR XT<FA*(YT-10)-10 OR (XT>6 AND XT<8) THEN Z=-20
170 RETURN
Из описания этого Бейсика (документ 2/Б/4.072.207-35 (РАФОС))
Двлее идет про целые переменные - то же, что и с вещественными, но с последующим знаком "%" и про строковые (с "$" в конце). Ну, и в обозначении переменной FA A не является цифрой. :) Так, что неудивительно, что Бейсик такого не понимает.Цитата:
3.2.1 Вещественные переменные.
Вещественная переменная обозначается одной буквой или буквой, за которой следует одна цифра
И ещё, в стандартном бейсике от DEC нет графических операторов. В принципе при генерации можно было либо доставить дополнительные подпрограммы(это штатный метод), но тогда обращение было бы что-то вроде:
55 CALL LLINE(X1,Y1,X2,Y2,D)
Видел такое на для новосибирской графической платы и для КГД.
Или переработать уж очень сильно дистрибутив :) Такого я не видел, но в теории можно. Максимум что видел, подмена команды SUB на строчный редактор.
Для УКНЦ - можно и без графических операторов обойтись.
Собирать в строковые переменные ESC последовательности и отправлять оператором PRINT :)
Хотя интересно, команды выполняемые ПП переданные такими последовательностями,они на УКНЦ свои или передраны с какого-нибудь графического терминала??? Если передраны, то можно поискать какое-нибудь забугорное п/о :)
Есть ещё в природе бейсик плюс от DEC, но версию под RT11 не видел. Видел под RSX-11 и ПРОС. Отличался в основном матричными операторами. По поводу под ПРОС, я его только со стороны видел, руками не щупал.
Перенести для вызовов CALL в бэйсик DEC - не сложно :)
Но выгоды однозначной не будет. С одной стороны первый жирный минус - не будет экранного редактора :(
И вроде как я слышал, что байсик вильнюсский быстрее работает...
Из плюсов - появятся возможности типа: нескольких операторов в одной строке, файлы с прямым доступом, передача управления другой бейсиковской программе и прочие плюсы.
Конечно можно текст программы править в редакторе, а на отладку/выполнение в интерпретатор. Часть народа так и делали.
https://zx-pk.ru/threads/17417-basic-dvk.html
Код:1 INIT(1%,0%) \ STYLE(-1%)
2 R%=RND*44+2
3 X%=RND*300+50
4 Y%=RND*200+50
6 I=I+1
7 IF INT(I/2)*2=I THEN 17
9 FOR J%=R% TO 2% STEP -2%
11 CIRCLE(J%,X%,Y%)
15 NEXT J%
16 GO TO 20
17 FOR J%=2% TO R% STEP 2% \ CIRCLE(J%,X%,Y%) \ NEXT J%
20 IF I=77 THEN I=1 \ GO TO 55
22 GO TO 2
55 INIT(0%,0%)
66 GO TO 1
https://zx-pk.ru/threads/17417-basic...l=1#post759123
и есть похоже для КГД и такое
https://zx-pk.ru/threads/17417-basic...l=1#post756106
предлагаю эти ссылки и любые другие по теме добавить в шапку?
https://zx-pk.ru/threads/17417-basic-dvk.html
https://zx-pk.ru/threads/20251-grafi...-na-uknts.html
https://zx-pk.ru/threads/29650-tekst...lya-uknts.html
https://zx-pk.ru/threads/13568-diske...lya-uknts.html
https://zx-pk.ru/threads/20437-nastr...(grafika).html
http://hobot.pdp-11.ru/ukdwk_archive...E_system_UKNC/
:redface: