summaryrefslogtreecommitdiff
path: root/programs/subasm.s
AgeCommit message (Collapse)Author
2020-06-01Did some more refactoring to the assembler.mrb0nk500
- Refactored the symbol, and fixup table to now use a linked list - Added support for local symbols to the assembler. - Rewrote SuBEditor, and SuBAsm to use local symbols.
2020-05-30Refactored the assembler a bit more, in order to removemrb0nk500
code duplication. The assembler now uses pre-tokens, which are smaller tokens, that make up the larger tokens.
2020-05-29Make JSL, JSR absolute, and remove RTL.mrb0nk500
The reason for doing this was because JSL, and RTL are redundent, as they both do the same thing as JSR, and RTS.
2020-05-28Refactored the assembler, yet again, and implementedmrb0nk500
support for comma separated values. The assembler now uses a linked list of tokenized lines, each containing a linked list of tokens for that line. I also moved all of the large tables into the higher parts of memory, in order to free up the lower part of memory for the user. Comma sepparated values only work with directives, and only with the byte", word, dword, and qword directives. I also added support for getting the upper, and lower halves of an address. The tokens for both of those are '<', and '>' respectively.
2020-01-10Added GPLv2.mrb0nk500
We're now Free Software!!!
2019-12-24Added support for Indirect addressing modes, and allowmrb0nk500
for use of the B register as an operand, for ALU based instructions. This allows for both low code size, and high performance. This means we can save upto 9 bytes, by just using the B register for ALU operations, rather than using a memory address. The indirect addressing modes, give Sux the abillity to now use pointers. Hope you guys have a Merry Christmas! From mr b0nk 500 <b0nk@b0nk.xyz>
2019-12-19Fixed some bugs in both the assembly languagemrb0nk500
monitor, and the cursor movement routines for SuBAsm.
2019-12-18Start work on SuBAsm.mrb0nk500
Also added support for moving the cursor arround.