perestoronin, что нового то?
стоит переходить?
perestoronin, что нового то?
стоит переходить?
С уважением,
Jerri / Red Triangle.
Изменения понятны без перевода, субъективно по исходникам стал в два раза больше, думаю нужно опробывать, но и я старой версией не пользовался, и давно уже ничего не делал для Z80 (с 90х):
Sjasm 0.42 is not 100% compatible with version 0.3x. You can use old SjASM 0.39g6, if that is a problem.
Features:
- local labels
- modules
- macros
- file include (source and binary)
- conditional assembly
- 32 bit expression evaluation
- storage maps
- structures
- undocumented Z80 opcodes
OK, that is just the old feature list, but you get the idea. Sjasm is a Z80 assembler.
Known bugs:
Nothing special. Maybe you know some spectacular Sjasm failures?
Последний раз редактировалось perestoronin; 29.09.2013 в 01:51.
Ретрокладовая продажи
Все эти фичи были уже в третьей версии. Вот список изменений из документации 4-й версии:
Differences with SjASM version 0.3
Sjasm version 0.4 is largely rewritten, and in some places the syntax and meaning of commands and operators has changed compared to previous versions of Sjasm. Some differences:
New name: Sjasm instead of SjASM.
DC, DZ, ABYTEC and so on only accept strings.
Character constants are 8 bit. No LD HL,'ab' anymore.
Structures cannot be nested.
The "16 bit fake instructions" like LD HL,DE or LDI A,(HL) have been replaced or removed.
PUSH and POP can have only one operand.
The way to update files has changed.
Commands cannot start with a dot.
Command line options have changed.
"introspec" читается как "интроспек". некоторые читают как "интроспец", но я никакой не спец. я спек.
я бы не рискнул переходить...
рисковать и не нужно, старая версия бажнее чем новая, по крайней мере пока я собирал 0.42 ошибок компиляции было меньше, и код чище, а вот 0.39g6 более бажный оказался (11 файлов против 5 потребовалось поправить).
Выложите пожалуйста примеры для тестов обеих версий кроссассембрера sjasm (0.39g6 и 0.42с), как отлажу и выловлю на ваших примерах ошибки этих кроссассемблеров, можно будет замахнуться и на выпуск свой версии (обозначу её как 1.0.8) SjASMPlus. А когда пойму что за наработки легли в основу этих компиляторов, то смогу выпустить и новый компилятор для Z80, созданный на современных технологиях (flex, bison), а не полностью на тупиковом c++.
Последний раз редактировалось perestoronin; 29.09.2013 в 13:35.
Ретрокладовая продажи
Как будто кто-то вообще пользуется чистый Sjasm для работы, чтобы еще и тесты иметь... Все пишут на адаптированной версии.
Свирепый агрессивно-депрессивный мордовец!
Не уверен - не напрягай!
Не сдавайся. Дыши?
Virtual TR-DOS
наверняка. но в ней скорее всего нет специфичных для спека фич (для работы с памятью, образами, снапшотами). +поменяли синтаксис, зарезав какие-то команды... чем больше таких мелочей, тем сомнительнее затея... старый sjasmplus хоть и бажный, но не очень критично, а в новом никаких киллерфич не замечено.
SjASMPlus бывает сильно плющит при определении места ошибки, при отсутствии конца макроса или модуля, метки в макросах - вообще минное поле, поэтому предпочитаю в макрах использовать метки относительные. Но всё это сделать лучше при сохранении функциональности и гибкости врядли возможно, да и как psb сказал, оно не так сильно мешает.
Да, современных, лет по пятнадцать всего гнутым реализациям, а оригиналы вообще в 75м и 70м годах сделали =)
То, что лексер с парсером C(могут и ++) код генерят не смущает? Запили уж на хаскеле.
Со временем, не всё так быстро, думаю всё смогу, с Вашей же помощью. Точнее МЫ СМОЖЕМ, а я один вряд ли
Вот уже готова сборка по мотивам этой темы 1.0.7 под Gentoo http://portage.perestoroniny.ru/dev-embedded/sjasmplus/
PS. Windows я не использую уже несколько лет, только на работе приходится что-то там под ней "тыкать".
Для меня эта тема новая и перспективная. Но одному вряд ли под силу
Сначала сделаем на всяких flex и bison, потом и до ФП доберёмся. Мысль верная, конечная цель намечена правильно.
Ретрокладовая продажи
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)