ulas/.git
19 months agoMoved comment check to empty line check
Lukas Krickl [Mon, 20 Nov 2023 20:41:35 +0000 (21:41 +0100)]
Moved comment check to empty line check

19 months agoAdded comment support to instruction parser
Lukas Krickl [Mon, 20 Nov 2023 20:38:58 +0000 (21:38 +0100)]
Added comment support to instruction parser

19 months agoWIP: first instructions are being parsed
Lukas Krickl [Mon, 20 Nov 2023 20:25:50 +0000 (21:25 +0100)]
WIP: first instructions are being parsed

19 months agoWIP: asm step tokenizer
Lukas Krickl [Mon, 20 Nov 2023 19:38:46 +0000 (20:38 +0100)]
WIP: asm step tokenizer

19 months agoMoved output to separate functions
Lukas Krickl [Mon, 20 Nov 2023 18:46:22 +0000 (19:46 +0100)]
Moved output to separate functions

19 months agoMade '-' a constant
Lukas Krickl [Mon, 20 Nov 2023 18:33:25 +0000 (19:33 +0100)]
Made '-' a constant

19 months agoFixed files
Lukas Krickl [Mon, 20 Nov 2023 18:17:50 +0000 (19:17 +0100)]
Fixed files

19 months agoListing output is now using the correct file
Lukas Krickl [Mon, 20 Nov 2023 17:24:52 +0000 (18:24 +0100)]
Listing output is now using the correct file

19 months agoWIP: added FILE* for symbol and listing buffer
Lukas Krickl [Mon, 20 Nov 2023 17:24:14 +0000 (18:24 +0100)]
WIP: added FILE* for symbol and listing buffer

19 months agoWIP: instructions
Lukas Krickl [Mon, 20 Nov 2023 16:17:56 +0000 (17:17 +0100)]
WIP: instructions

19 months agoWIP: instruction parsing
Lukas Krickl [Mon, 20 Nov 2023 14:58:24 +0000 (15:58 +0100)]
WIP: instruction parsing

19 months agoWIP: Added org directive
Lukas Krickl [Mon, 20 Nov 2023 13:44:40 +0000 (14:44 +0100)]
WIP: Added org directive

19 months agoAdded group expressions
Lukas Krickl [Mon, 20 Nov 2023 12:10:49 +0000 (13:10 +0100)]
Added group expressions

19 months agoImplemented unary expressions
Lukas Krickl [Mon, 20 Nov 2023 10:59:20 +0000 (11:59 +0100)]
Implemented unary expressions

19 months agoFixed some warnings
Lukas Krickl [Mon, 20 Nov 2023 07:38:43 +0000 (08:38 +0100)]
Fixed some warnings

19 months agoAdded more operators
Lukas Krickl [Mon, 20 Nov 2023 07:27:32 +0000 (08:27 +0100)]
Added more operators

19 months agoAdded symbol to list of valid primary expressions
Lukas Krickl [Mon, 20 Nov 2023 06:54:43 +0000 (07:54 +0100)]
Added symbol to list of valid primary expressions

19 months agoAdded equality expression
Lukas Krickl [Mon, 20 Nov 2023 06:52:54 +0000 (07:52 +0100)]
Added equality expression

19 months agoAdded literal expressions
Lukas Krickl [Mon, 20 Nov 2023 06:03:04 +0000 (07:03 +0100)]
Added literal expressions

19 months agoWIP: expression eval
Lukas Krickl [Sun, 19 Nov 2023 18:36:16 +0000 (19:36 +0100)]
WIP: expression eval

19 months agoWIP: parser for int expressions
Lukas Krickl [Sun, 19 Nov 2023 16:25:08 +0000 (17:25 +0100)]
WIP: parser for int expressions

19 months agoWIP: parser
Lukas Krickl [Sun, 19 Nov 2023 13:18:49 +0000 (14:18 +0100)]
WIP: parser

19 months agoAdded expression buffer
Lukas Krickl [Sun, 19 Nov 2023 11:47:17 +0000 (12:47 +0100)]
Added expression buffer

19 months agoWIP: tokenizer
Lukas Krickl [Sun, 19 Nov 2023 09:59:00 +0000 (10:59 +0100)]
WIP: tokenizer

19 months agoWIP: tokenizer adding special tokens
Lukas Krickl [Sun, 19 Nov 2023 08:06:55 +0000 (09:06 +0100)]
WIP: tokenizer adding special tokens

19 months agoWIP: int expressions
Lukas Krickl [Sun, 19 Nov 2023 07:42:22 +0000 (08:42 +0100)]
WIP: int expressions

19 months agoFixed tag generator
Lukas Krickl [Sun, 19 Nov 2023 06:19:04 +0000 (07:19 +0100)]
Fixed tag generator

19 months agoAdded sessions to gitignore
Lukas Krickl [Sun, 19 Nov 2023 05:32:44 +0000 (06:32 +0100)]
Added sessions to gitignore

19 months agoSimplified token struct
Lukas Krickl [Sat, 18 Nov 2023 17:25:48 +0000 (18:25 +0100)]
Simplified token struct

19 months agoWIP: Expression parsing
Lukas Krickl [Sat, 18 Nov 2023 13:37:17 +0000 (14:37 +0100)]
WIP: Expression parsing

19 months agoWIP: expression parser
Lukas Krickl [Sat, 18 Nov 2023 07:42:17 +0000 (08:42 +0100)]
WIP: expression parser

19 months agoAdded tests for symbol resolver
Lukas Krickl [Sat, 18 Nov 2023 06:27:38 +0000 (07:27 +0100)]
Added tests for symbol resolver

19 months agoAdded tests for unterminated strings
Lukas Krickl [Sat, 18 Nov 2023 05:37:11 +0000 (06:37 +0100)]
Added tests for unterminated strings

19 months agoFixed formatting
Lukas Krickl [Fri, 17 Nov 2023 20:38:29 +0000 (21:38 +0100)]
Fixed formatting

19 months agoChanged back to clang-tidy
Lukas Krickl [Fri, 17 Nov 2023 20:34:32 +0000 (21:34 +0100)]
Changed back to clang-tidy

19 months agoFixed switch indentation
Lukas Krickl [Fri, 17 Nov 2023 17:35:54 +0000 (18:35 +0100)]
Fixed switch indentation

19 months agoAdded par to formatter
Lukas Krickl [Fri, 17 Nov 2023 17:26:30 +0000 (18:26 +0100)]
Added par to formatter

19 months agoMoved to indent as formatter
Lukas Krickl [Fri, 17 Nov 2023 17:17:29 +0000 (18:17 +0100)]
Moved to indent as formatter

19 months agoAdded tests for string tokens and escaping
Lukas Krickl [Fri, 17 Nov 2023 16:07:54 +0000 (17:07 +0100)]
Added tests for string tokens and escaping

19 months agoImplemented tests for int token and char token
Lukas Krickl [Fri, 17 Nov 2023 15:42:18 +0000 (16:42 +0100)]
Implemented tests for int token and char token

19 months agoRemoved remaining linter warnings
Lukas Krickl [Fri, 17 Nov 2023 08:03:25 +0000 (09:03 +0100)]
Removed remaining linter warnings

19 months agoMoved all scripts to makefile
Lukas Krickl [Fri, 17 Nov 2023 07:45:18 +0000 (08:45 +0100)]
Moved all scripts to makefile

19 months agoWIP: added some scripts
Lukas Krickl [Fri, 17 Nov 2023 07:24:10 +0000 (08:24 +0100)]
WIP: added some scripts

19 months agoWIP: tokenizer
Lukas Krickl [Fri, 17 Nov 2023 06:38:01 +0000 (07:38 +0100)]
WIP: tokenizer

19 months agoWIP: tokenizer
Lukas Krickl [Wed, 15 Nov 2023 18:36:46 +0000 (19:36 +0100)]
WIP: tokenizer

19 months agoWIP: tokenizer
Lukas Krickl [Wed, 15 Nov 2023 16:48:56 +0000 (17:48 +0100)]
WIP: tokenizer

19 months agoReplaced size_t with regular unsigned long
Lukas Krickl [Wed, 15 Nov 2023 16:31:14 +0000 (17:31 +0100)]
Replaced size_t with regular unsigned long

19 months agoWIP: tokenizer
Lukas Krickl [Wed, 15 Nov 2023 16:29:41 +0000 (17:29 +0100)]
WIP: tokenizer

19 months agoWIP: token buffer
Lukas Krickl [Wed, 15 Nov 2023 14:29:36 +0000 (15:29 +0100)]
WIP: token buffer

19 months agoWIP: expressions and values
Lukas Krickl [Wed, 15 Nov 2023 13:21:41 +0000 (14:21 +0100)]
WIP: expressions and values

19 months agoWIP: int expressions
Lukas Krickl [Tue, 14 Nov 2023 17:33:08 +0000 (18:33 +0100)]
WIP: int expressions

19 months agoMoved asm step.
Lukas Krickl [Tue, 14 Nov 2023 10:41:36 +0000 (11:41 +0100)]
Moved asm step.
The asm step is now executed directly after each line is processed.
This makes it easier to track file locations for error reporting.

19 months agoWIP: assembly directives
Lukas Krickl [Mon, 13 Nov 2023 19:15:35 +0000 (20:15 +0100)]
WIP: assembly directives

19 months agoWIP: Assembly
Lukas Krickl [Mon, 13 Nov 2023 18:44:49 +0000 (19:44 +0100)]
WIP: Assembly

19 months agoAdded helper for makign str larger by an offset rather than an absolute
Lukas Krickl [Mon, 13 Nov 2023 18:41:18 +0000 (19:41 +0100)]
Added helper for makign str larger by an offset rather than an absolute

19 months agoWIP: assembly
Lukas Krickl [Mon, 13 Nov 2023 18:39:45 +0000 (19:39 +0100)]
WIP: assembly

19 months agoRemoved dead return
Lukas Krickl [Mon, 13 Nov 2023 17:59:43 +0000 (18:59 +0100)]
Removed dead return

19 months agoWIP: asm line
Lukas Krickl [Mon, 13 Nov 2023 13:53:50 +0000 (14:53 +0100)]
WIP: asm line

19 months agoWIP: asm step
Lukas Krickl [Mon, 13 Nov 2023 13:14:02 +0000 (14:14 +0100)]
WIP: asm step

19 months agoWIP: assembly step
Lukas Krickl [Mon, 13 Nov 2023 13:03:02 +0000 (14:03 +0100)]
WIP: assembly step

19 months agoPulled preproc init and free into their own function so that
Lukas Krickl [Mon, 13 Nov 2023 04:37:33 +0000 (05:37 +0100)]
Pulled preproc init and free into their own function so that
recrusive preproc parses may initialize their own buffers if needed

19 months agoFixed tests
Lukas Krickl [Sun, 12 Nov 2023 17:36:52 +0000 (18:36 +0100)]
Fixed tests

19 months agoAdded \n trim to macro params
Lukas Krickl [Sun, 12 Nov 2023 17:34:21 +0000 (18:34 +0100)]
Added \n trim to macro params

19 months agoRemoved stray token check in preproc
Lukas Krickl [Sun, 12 Nov 2023 17:20:18 +0000 (18:20 +0100)]
Removed stray token check in preproc

19 months agoAdded basic preprocessor to cli
Lukas Krickl [Sun, 12 Nov 2023 17:16:49 +0000 (18:16 +0100)]
Added basic preprocessor to cli

19 months agoFixed comment
Lukas Krickl [Sun, 12 Nov 2023 16:16:29 +0000 (17:16 +0100)]
Fixed comment

19 months agoAdded tests for ifdef and ifndef
Lukas Krickl [Sun, 12 Nov 2023 16:15:10 +0000 (17:15 +0100)]
Added tests for ifdef and ifndef

19 months agoWIP: ifdef
Lukas Krickl [Sun, 12 Nov 2023 15:53:05 +0000 (16:53 +0100)]
WIP: ifdef

19 months agoMaking sure that macro params will fit into the buffer
Lukas Krickl [Sat, 11 Nov 2023 18:45:37 +0000 (19:45 +0100)]
Making sure that macro params will fit into the buffer

19 months agoAdded some useful comments for macro expansion
Lukas Krickl [Sat, 11 Nov 2023 18:41:20 +0000 (19:41 +0100)]
Added some useful comments for macro expansion

19 months agoFixed test case for define without a value so that it does not consume
Lukas Krickl [Sat, 11 Nov 2023 18:39:32 +0000 (19:39 +0100)]
Fixed test case for define without a value so that it does not consume
the nearest white space anymore

19 months agoAdded additional test case for define with no value
Lukas Krickl [Sat, 11 Nov 2023 18:38:58 +0000 (19:38 +0100)]
Added additional test case for define with no value

19 months agodefines and parameters now correctly expand white spaces before the
Lukas Krickl [Sat, 11 Nov 2023 18:37:19 +0000 (19:37 +0100)]
defines and parameters now correctly expand white spaces before the
inserted text

19 months agoUpdated macro expansion test
Lukas Krickl [Sat, 11 Nov 2023 17:39:05 +0000 (18:39 +0100)]
Updated macro expansion test

19 months agoAdded special $$ macro variable
Lukas Krickl [Sat, 11 Nov 2023 17:31:41 +0000 (18:31 +0100)]
Added special $$ macro variable

19 months agoAdded simple docs for #define
Lukas Krickl [Sat, 11 Nov 2023 16:14:49 +0000 (17:14 +0100)]
Added simple docs for #define

19 months agoAdded #undef directive
Lukas Krickl [Sat, 11 Nov 2023 16:13:20 +0000 (17:13 +0100)]
Added #undef directive

19 months agoAdded preproc def lookup function for defined directives
Lukas Krickl [Sat, 11 Nov 2023 13:37:05 +0000 (14:37 +0100)]
Added preproc def lookup function for defined directives

19 months agoRemoved stdbool
Lukas Krickl [Sat, 11 Nov 2023 13:26:58 +0000 (14:26 +0100)]
Removed stdbool

19 months agoAdded more tests for macros
Lukas Krickl [Sat, 11 Nov 2023 12:31:51 +0000 (13:31 +0100)]
Added more tests for macros

19 months agoAdded TODO item for macro expansion. Currently I am 99% certain we are
Lukas Krickl [Fri, 10 Nov 2023 18:27:46 +0000 (19:27 +0100)]
Added TODO item for macro expansion. Currently I am 99% certain we are
allocating too large a buffer.

19 months agoAdded basic macro expansion
Lukas Krickl [Fri, 10 Nov 2023 18:27:20 +0000 (19:27 +0100)]
Added basic macro expansion

19 months agoWIP: macro expansion
Lukas Krickl [Fri, 10 Nov 2023 17:18:38 +0000 (18:18 +0100)]
WIP: macro expansion

19 months agoScript cleanup
Lukas Krickl [Fri, 10 Nov 2023 09:45:52 +0000 (10:45 +0100)]
Script cleanup

19 months agoRefactored naming in weldtok
Lukas Krickl [Thu, 9 Nov 2023 14:25:13 +0000 (15:25 +0100)]
Refactored naming in weldtok

19 months agoRefactored tokenizer to allow for terminator tokens
Lukas Krickl [Thu, 9 Nov 2023 14:15:23 +0000 (15:15 +0100)]
Refactored tokenizer to allow for terminator tokens

19 months agoAdded $ vars
Lukas Krickl [Thu, 9 Nov 2023 10:02:06 +0000 (11:02 +0100)]
Added $ vars

19 months agoWIP: macros
Lukas Krickl [Thu, 9 Nov 2023 09:25:38 +0000 (10:25 +0100)]
WIP: macros

19 months agoWIP: macro expand
Lukas Krickl [Thu, 9 Nov 2023 06:06:18 +0000 (07:06 +0100)]
WIP: macro expand

19 months agoWIP: macros expansion
Lukas Krickl [Wed, 8 Nov 2023 19:22:37 +0000 (20:22 +0100)]
WIP: macros expansion

19 months agoWIP: macros
Lukas Krickl [Wed, 8 Nov 2023 17:49:41 +0000 (18:49 +0100)]
WIP: macros

19 months agoRefactored return code for preprocnext
Lukas Krickl [Tue, 7 Nov 2023 21:18:25 +0000 (22:18 +0100)]
Refactored return code for preprocnext

19 months agoDocumented behavior of preproc
Lukas Krickl [Tue, 7 Nov 2023 19:29:46 +0000 (20:29 +0100)]
Documented behavior of preproc

19 months agoSplit up preproc call to allow recursive calls in preprocline
Lukas Krickl [Tue, 7 Nov 2023 19:16:54 +0000 (20:16 +0100)]
Split up preproc call to allow recursive calls in preprocline

19 months agoAdded #define directive
Lukas Krickl [Tue, 7 Nov 2023 14:30:51 +0000 (15:30 +0100)]
Added #define directive

19 months agoWIP: added global assembly state
Lukas Krickl [Tue, 7 Nov 2023 11:06:00 +0000 (12:06 +0100)]
WIP: added global assembly state

19 months agoMade tokenizer better at... tokenizing
Lukas Krickl [Tue, 7 Nov 2023 09:23:49 +0000 (10:23 +0100)]
Made tokenizer better at... tokenizing

19 months agoRemoved unused constants
Lukas Krickl [Tue, 7 Nov 2023 07:14:05 +0000 (08:14 +0100)]
Removed unused constants

19 months agoRefactored tokenizer to use a dynamic string buffer
Lukas Krickl [Tue, 7 Nov 2023 07:06:10 +0000 (08:06 +0100)]
Refactored tokenizer to use  a dynamic string buffer

19 months agoAdded panic macro
Lukas Krickl [Mon, 6 Nov 2023 19:41:22 +0000 (20:41 +0100)]
Added panic macro