72ae017a18
ast_printer: emit sega assembly syntax
2023-09-03 07:18:23 +00:00
ddf46ce8fd
stmt_ins: refactor
...
The overall intent is to make writing a decompiler require less code
duplication.
"bits.hpp" and "stmt_enum.hpp" are replaced with "stmt_ins.hpp" which
is generated directly from dsp-notes.csv.
2023-09-03 04:46:34 +00:00
6692374a8e
stmt: factor out op_mask to control_word_t
2023-08-25 20:21:58 -07:00
4372a4e07c
stmt: factor out bit enumerations to a new file
2023-08-25 20:08:13 -07:00
c13b1b2466
parser: DMA memory src/dst arguments update CTn
...
This means that they are more appropriately named MCn rather than Mn.
2023-08-24 08:06:28 +00:00
118942521e
test: add initial test makefile
...
This also adds support for "#" characters prior to immediates.
nop may also now appear in an op_t. The parser no longer generates nop_t--this
is instead now represented as an op_t with a zero-length ops vector.
2023-08-23 19:21:43 -07:00
0df0b66a6e
main: add file output
2023-08-23 22:56:54 +00:00
7f69f6b2e1
ast: improve error messages
2023-08-23 20:23:09 +00:00
d4e6c1c717
ast: add emitter and resolver
2023-08-21 10:30:42 +00:00
d8b8bc7850
stmt: add instruction masks and codes
...
The parser now checks for conflicts in op control words.
2023-08-21 05:15:00 +00:00
cd0c9c7c8c
parser: add assign and label
2023-08-20 08:45:16 +00:00
867ee171a5
parser: add jump
2023-08-20 06:02:18 +00:00
b97abc776c
parser: add dma and mvi parsers
2023-08-20 05:54:53 +00:00
22625c7c90
ast: add printers for all instructions
2023-08-19 19:40:20 -07:00
e520a0de19
parser: initial op parsing
2023-08-20 00:59:41 +00:00
663b1139c9
stmt: add constructor boilerplate
2023-08-18 22:20:15 -07:00
d05767d280
grammar.txt: initial
2023-08-19 04:14:21 +00:00
e2f587437d
expr: add more expression structures
2023-08-15 23:01:35 +00:00