это понятно :) но есть в басике нет строки под номером 1 так и стартовать нечему :)
Вид для печати
Логично.
Сижу, привожу код компилятора в порядок...
Думаю, что нужно выпустить две версии 1.07 Stable и 1.08 RC1. Последняя будет включать в себя код Kurles'a.
Обнаружено в версии 1.07 RC7:
- savebin с нулевой длиной записывает файл примерно 40кб размером
- если есть метка и на следующей строке equ, то не понимает.
в сорцах есть такое:
видимо, как результат:Код:if (length <= 0) {
length = 0x10000 - start;
}
savebin "file.bin", addr, 0
и
savebin "file.bin", addr
эквивалентны. Тость парсинг несущесвующего параметра - ноль.
явно нигде не написано, но это ошибка синтаксиса - должно быть в одной строке. Точно также не проканает вещь типа:
Код:ld
a,
10
а имхо вообще лучше это не трогать - это все-таки не аласм - а сорцы с аласма переделать каждому кому это надо самому. со Шторма тоже не все корректно перетаскивается - но это же не повод для изменения парсинга.
в Шторме .10 ldi:inc h компилится как dup 10 (ldi:inc h) edup
а в сиджасме ----- dup 10 (ldi) edup : inc h
нашел несовместимостей 5 когда перетаскивал свои сорцы в сиджасм - самое плохое, что в отличие от вышеуказанной "ошибки" с EQU никакого сообщения об ошибке нет - в результате получаем просто нерабочий бинарник =(