- QuesadaSX Fixes defining labels when they don't have to be excluded by an if
- Implemented the first version of the macro system
- Improved error messaging
- #3 - Added new .BIOSVAR as Bios Variables were missing
- #86 - Build: Add OSX, Linux armhf and upload artifacts , thanks to @duhow!
- #79 - Add gitattributes and edit Github Actions workflow run , thanks to @duhow!
- #78 - Fix Windows build , thanks to @duhow!
- #74 - Update documentation , thanks to @oboroc!
- #73 - Add Github Actions Release Drafter , thanks to @duhow!
- Updated Readme, Changelog and Documentation (Thanks to @jamque Pull request #71 )
- When we use reserved keywords as labels, we state it as
reserved word used as identifier
. Issue #70 - MegaROM undefined page message improved.
- We dont' allow
(whatever character)REPT
anymore. OnlyREPT
or.REPT
. PSEUDO_DS
now doesn't check if there is a memory overflow in the first pass. This prevents it to crash in presence of undefined labels and report wrong error message. Issue #62- Added
.ZILOG 0
pseudo. Now we can enable and disable zilog standard parsing. Note: this needs more checking between passes. (Thanks to @duhow Pull request #72) - Improved argument handling (Thanks to @duhow Issue #60)
- Windows tester works again (Thanks to @duhow)
- Makefile improvements (Thanks to @duhow)
- Finally the NOP bug has been fixed. This is the main reason we go to version 1.0 beta.
- Multiline C-like comments now don't print "/" or "*"
- Changed strcpy to strncopy for safety and to safe_strcat. This prevents overflows in arrays.
- Debug msgs are redirected to to stderr (--vv)
- Clarified the warning message of bit overflow on values
Special thanks to @jamque for effort producing and testing NOP crashing code!
- Segmentation faults due to big strings or missing quotes are now catched with safe_strcat. Thanks @jamque for reporting :).
- Modularized error and warning reporting functions.
- Added CI to the repo (Thanks @duhow!)
- Default verbose level set to 1. New -s (silent) flag added.
- Corrected wrally test
- Source code lines now can have up to 1024 bytes of length, instead of 256. This is useful for long DBs (@LocoMJ) instead of splitting them using several DB instructions.
- Added gtest for test coverage.
- Fixed error messages: now file, line number and error always are in the same lines (Great for vim make!)
- New support for macOS.
- Completed source code translation to English.
- Replaced WAV writing code with new working version.
- Unterminated string hotfix. Find a better way to solve it. Probably a more flex-like fix.
- Fixed induced bug of February 5th when using INCLUDE. Parser 1 p1_tmpstr wasn't using malloc memory. Instead it uses
- strtok allocated memory. This is never deleted, we must check this in the future to prevent memory leaks.
- Added -z flag. This flag allows using standard Zilog syntax without setting .ZILOG on the code.
- Now local labels can be also set using .Local_Label along the previous @@Local_Label.
- Now .instruction are correctly parsed. For instance, before it was allowed to set "azilog", "bzilog" instead of only allowing ".zilog" or "zilog".
- Fixed multiple compilation warnings by specifying function parameters and return type explicitly
- Fixed a problem with cassette file name generation due to uninitialized variable 'fname_bin'
- Fixed issue with .megaflashrom and the defines.
- Fixed Crash on Linux when including additional .asm files (by theNestruo)
- Fixed Non-zero exit code on errors (by theNestruo)
- First public version
- Bugfixes. Added PRINTFIX, FIXMUL, FIXDIV
- Overall enhance. Opcodes 100% checked
- IX, IY do accept negative or null offsets
- Added REPT/ENDR, variables/constants, RANDOM, DEBUG blueMSX,
- BREAKPOINT blueMSX, PHASE/DEPHASE, $ symbol
- Additional parameters for INCBIN "file" [SKIP num] [SIZE num]
- Second page locating macro (32KB ROMs / megaROMs)
- Added experimental support for MegaROMs:
- MEGAROM [mapper] - define mapper type
- SUBPAGE [n] AT [address] - define page
- SELECT [n] AT [address] - set page
- Several binary operators fixed
- Conditional assembly
- Nested conditional assembly and other conditions
- PHASE/DEPHASE bug fixed
- Initial CAS format support
- WAV output added
- Enhanced conditional assembly: IFDEF
- First working Linux version
- Somewhat improved stability
- ADD IX,HL and ADD IY,HL operations removed
- Label vs Macro collisions solved
- Overall improvement in pointer stability
- INCBIN now can SKIP and SIZE upto 32-bit
- First version fully developed in Linux
- Fixed bug affecting filename extensions
- Removed the weird IM 0/1 - apparently it is just a plain undocumented IM 0 opcode
- FILENAME directive to set assembler output filenames
- ZILOG directive for using Zilog style indirections and official syntax
- ROM/MEGAROM now have a standard 16 byte header
- Fixed a really annoying bug regarding $DB data read as pseudo DB
- SINCLAIR directive included to support TAP file generation (ouch!) --> STILL TO BE TESTED
- Pending:
- Adjust BIOS for SINCLAIR model?
- DISK support
- R800/Z80/8080/Gameboy support
- Sinclair ZX Spectrum TAP/TZX file format supported