Vovoi, ну, в принципе можно написать некий "компилятор" асма для работы из-под бейсика в стиле:
10 RANDOMIZE USR address_of_compiler: REM "LD IX,16384: LD DE,6912: LD A,255: SCF: CALL 1366"
ЗЫ: Кстати, было бы прикольно!
Vovoi, ну, в принципе можно написать некий "компилятор" асма для работы из-под бейсика в стиле:
10 RANDOMIZE USR address_of_compiler: REM "LD IX,16384: LD DE,6912: LD A,255: SCF: CALL 1366"
ЗЫ: Кстати, было бы прикольно!
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
А если так:
<...>
310 REM asmstart
320 REM LD A,2; kommenty rulyat
340 REM CALL 5633
350 REM ;nu i tak dalee
310 REM asmend
<...>
... для удобочитаемости.
хотя, наверное ерунда это все... проще на асме написать
Добавлено через 1 час 1 минуту
А,.. я понял в чем была фишка строки "10 RANDOMIZE USR address_of_compiler:". В том, чтобы в "Basic RealTime", т.е. в процессе интерпретации уже выполнялась только что скомпиленная часть программы (бэйсик-строка), которая впоследствии будет просто размещена в теле будущей программы. Но эти сладости увеличат объем компилятора
Кстати, о расширителе бэйсика "Laser Basic" говорилось, что кроме интерпретации, сей продукт может компилировать также листинги зашитого бэйсика. Таким образом, программа управлялась со смесью SpectrumBasic и LaserBasic.
Н.Родионов, А.Ларченко "Диалекты Бэйсика для ZX Spectrum". Компилятор. Стр186.
ЗЫ:
В моем bas-примере не было одной фишки: POKE 23606,64256. Помню, как-то надоело делить на 256 (в оперативке было 4 разных шрифта), да потом еще что-то прибавлять. Так что взял, да влючил в компилер новый оператор.![]()
Последний раз редактировалось Vovoi; 12.05.2008 в 15:34.
Spectrum Basic
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)