https://github.com/z00m128/sjasmplus...es/tag/v1.13.3
v1.13.3 changelog:
- bugfixes, new examples (check tests/lua_examples)
- UTF BOM are now detected, UTF8 BOM is silently skipped, UTF16/32 BOMs cause fatal error
- ZXSPECTRUMNEXT device is now initialized with whole memory zeroed (no more ZX48 sysvars)
- DEFL documented, "no forward reference" rule relaxed for EQU
- some error messages reworded to make them easier to comprehend
Documentation http://z00m128.github.io/sjasmplus/documentation.html (or in the package/cloned source).
P.S.
I managed to set up "coverage" measuring in the project, and connected it with web service coveralls.io:
https://coveralls.io/github/z00m128/sjasmplus
I'm already at 81% for base sjasm sources (excluding lua/tolua++ which are external projects), which I find "not bad", but in following days I will now use the coverage data to see which parts of sjasmplus lack testing, and add tests where appropriate (my guess is the optimal coverage for this project should be somewhere in 90-95% range).
That will probably lead to few more bugfixes and release of few more v1.13.x versions of z00m's sjasmplus...
But I think there will be no v1.14, but v2.0 after that, which will have some changes in default settings, so old sources (used with v1.13.x) may not compile and will require some small changes to "fix" them. (I already managed to break few things between 1.10.4 and 1.13.3, but those compatibility issues were due to desperate situations where it was very difficult to maintain old behaviour ... in v2.x I will break few more only due to "better style/syntax" reasons)
So if you have some nice archive of sjasmplus projects, please test with v1.13.3 if they still work correctly, and report any bugs (if 1.13.3 fails and they work in v1.07 - v1.10.4 or in the mkoloberdin branch, try to read through "what's new" list in docs to see if your problem is actually announced change, like MAP removal back in v1.11 or when it was, etc).
I will certainly try to support v1.13.x even after I will start working on v2.0, but only bugfixes and similar, no major rewrites or new features.
The plans for v2.0 so far (may change easily):
- n-pass
- syntax tuned to be a bit more strict (similar to `--syntax=abf` in v1.13.3, but also with "keywords", so labels like "hl" will be not possible any more.
- DEFINE substitution even more formalized and documented, with the algorithm adjusted
- operators precedence changed to C++ precedence
- more operators and better support for "large" memory devices like 4MiB soviet machines or ZX Next
- some details here and there to make sjasmplus behave more similarly to common tools like gcc/clang (so various text editors supporting gcc/clang will probably work for sjasmplus reasonably well)
As the amount of changes is considerable, and will need probably months of effort, the v2.x may just as well never happen(because I often get distracted by other projects), so take the list and plans described above more like a "dream", not a "promise".
I still believe the sjasmplus v1.13.x is now very mature and solid tool, and can be used for Speccy SW development for another decade or two, even if we would release only few more bugfixes and nothing else.
Thank you for all the support so far, and keep the feedback coming, bugs reported, etc, it's very important part of the project, and you helped a lot already. Thank you all.




(because I often get distracted by other projects), so take the list and plans described above more like a "dream", not a "promise".
Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 

).
