(filelen+255)/256
Кстати, я тут слышал несколько жалоб - лень писать device zxspectrum48. А можно ли исключить эту строку, пусть будет 48й по умолчанию?
Вид для печати
Капец, а что так просто-то всё. Видать, я все же тупой дядя. :v2_dizzy_punk:
without `DEVICE` you will be in "none" device mode. You can produce raw machine code and store the output with `OUTPUT` directive or `--raw` option on command line, but you can NOT do `SAVEBIN/SAVESNA/SAVEDEV/SAVETAP/SAVETRD/...` and similar, which save memory content after it is ready, as there is no memory in "none" device, machine code is emitted and gone.
Some people work with this mode on rather large projects (super mario bros for MSX producing 2MiB cartridge ROM file), but for ZX it's more common to use the virtual device and all the extra directives capable to work with the virtual memory.
лол, те, кто жаловались, ниасилили почитать руководство. И я тоже xD
интересует такой вопрос - каковы ортодоксальные правила z80 ассемблера для меток? :)
А именно:
- можно ли добавлять пробелы перед меткой (в обоих случаях - когда метка завершается : и без)?
- можно ли использовать метку без : и без инструкции в той-же строке?
- можно ли использовать метку с : и с инструкцией в той-же строке?
- можно ли использовать метку с : или без, в строке с безметочной директивой (например ORG)?
В си пробелы перед меткой допускаются, но в ассемблерах z80 я вижу это не везде допустимо.
Особенно интересен случай с разделителем инструкций :, т.к. ассемблер поддерживающий такой разделитель по идее должен иметь более строгие правила к меткам, т.к. иначе может ошибочно воспринимать макросы как метки и тихо игнорировать ошибки
Можно, но адрес метки будет последним адресом перед исполнением директивы ORG, так как она начинает работу после своего обьявления. Поймал такой ляп как-то ))
- - - Добавлено - - -
Не а. Метки начинаются исключительно с начала строки, после разделения ':' метку поставить нельзя.
какие операторы в выражениях поддерживает SjASMPlus?
Также вопрос - есть ли ассемблеры z80, которые умеют ассемблировать код вроде такого:
Код:leng1 equ 10
leng2 equ label2-label1
rept leng2*2
jr $+2 ; 12T
endm
label1:
rept leng1*2
jr $+2 ; 12T
endm
label2:
Документация вам в помощь: http://z00m128.github.io/sjasmplus/documentation.html
Конкретнее : http://z00m128.github.io/sjasmplus/d...#s_expressions
Ну тот же SjASMplus вполне ассемблирует если правильно операторы писать, а не endm к rept прикручивать. ;)