Lukas Krickl [Sat, 19 Oct 2024 04:24:53 +0000 (06:24 +0200)]
Fixed sla instructions generating the wrong opcode
Lukas Krickl [Wed, 9 Oct 2024 09:29:17 +0000 (11:29 +0200)]
Changed timing label
Lukas Krickl [Fri, 4 Oct 2024 17:27:26 +0000 (19:27 +0200)]
Added -D flag to allow defining preproc symbols using the command line
Lukas Krickl [Wed, 2 Oct 2024 17:48:54 +0000 (19:48 +0200)]
Added a fixme
Lukas Krickl [Mon, 30 Sep 2024 15:17:15 +0000 (17:17 +0200)]
ulas: minor refactor of project structure
Lukas Krickl [Wed, 13 Mar 2024 05:50:14 +0000 (06:50 +0100)]
Fixed comment format error
Lukas Krickl [Wed, 13 Mar 2024 05:46:07 +0000 (06:46 +0100)]
Added basic mlb support.
TODO: Allow user-defined sections for better label support
Lukas Krickl [Mon, 4 Mar 2024 16:47:55 +0000 (17:47 +0100)]
Updated license date
Lukas Krickl [Fri, 1 Mar 2024 05:54:33 +0000 (06:54 +0100)]
Renamed wrongly named const
Lukas Krickl [Wed, 28 Feb 2024 09:45:23 +0000 (10:45 +0100)]
Added unnamed labels
Unnamed labels can be declared using just a :.
Unnamed labels ignore redefinition rules and
just get added to the symbol list regardless.
They currently only serve as markers, however in the future they can be
reached using + and - symbols to jump to the next or previous label
respectively.
Lukas Krickl [Tue, 27 Feb 2024 16:11:19 +0000 (17:11 +0100)]
Added unary + operator
Lukas Krickl [Mon, 26 Feb 2024 16:46:09 +0000 (17:46 +0100)]
Added test for disas
Lukas Krickl [Mon, 26 Feb 2024 16:10:13 +0000 (17:10 +0100)]
Disas now produces code that will compile back to unit test binary.
TODO: add this to tests
Lukas Krickl [Mon, 26 Feb 2024 14:04:33 +0000 (15:04 +0100)]
WIP: disas improvements
Lukas Krickl [Mon, 26 Feb 2024 12:49:41 +0000 (13:49 +0100)]
Added header for disas files
Lukas Krickl [Mon, 26 Feb 2024 05:56:24 +0000 (06:56 +0100)]
Fixed 16 bit values
Lukas Krickl [Sun, 25 Feb 2024 18:36:56 +0000 (19:36 +0100)]
Replaced occurances of printf with the proper fprintf call in disas
Lukas Krickl [Sun, 25 Feb 2024 18:34:02 +0000 (19:34 +0100)]
WIP: fixed more disas instructions. WIP: 16 bit values in disas
Lukas Krickl [Sun, 25 Feb 2024 17:31:26 +0000 (18:31 +0100)]
Fixed a few more instructions
Lukas Krickl [Sun, 25 Feb 2024 07:40:10 +0000 (08:40 +0100)]
Fixed some instruction parsers for disas
Lukas Krickl [Sun, 25 Feb 2024 07:10:25 +0000 (08:10 +0100)]
WIP: disasm output
Lukas Krickl [Sat, 24 Feb 2024 11:44:37 +0000 (12:44 +0100)]
WIP: added basic db fallback outupt to disasm
Lukas Krickl [Sat, 24 Feb 2024 11:31:21 +0000 (12:31 +0100)]
WIP: disas output
Lukas Krickl [Sat, 24 Feb 2024 07:06:35 +0000 (08:06 +0100)]
Changed unsigned short to int for disas data
Lukas Krickl [Sat, 24 Feb 2024 06:50:29 +0000 (07:50 +0100)]
WIP: disas functionality
Lukas Krickl [Thu, 22 Feb 2024 18:38:19 +0000 (19:38 +0100)]
WIP: disasm
Lukas Krickl [Thu, 22 Feb 2024 13:15:45 +0000 (14:15 +0100)]
WIP: disas read loop
Lukas Krickl [Thu, 22 Feb 2024 06:04:29 +0000 (07:04 +0100)]
WIP: added -a option. Fixed missing break when adding incpath
Lukas Krickl [Thu, 22 Feb 2024 05:43:46 +0000 (06:43 +0100)]
WIP: pass-system for disas calls
Lukas Krickl [Wed, 21 Feb 2024 16:34:38 +0000 (17:34 +0100)]
Replaced relevant e16 with a16
Lukas Krickl [Wed, 21 Feb 2024 16:18:54 +0000 (17:18 +0100)]
WIP: Adding addr16 type
Lukas Krickl [Tue, 20 Feb 2024 16:36:19 +0000 (17:36 +0100)]
Added fixme to instruction table
Lukas Krickl [Tue, 20 Feb 2024 16:31:25 +0000 (17:31 +0100)]
Fixed initializer for arch
Lukas Krickl [Tue, 20 Feb 2024 12:39:21 +0000 (13:39 +0100)]
Added basic be/le flag to arch
Lukas Krickl [Tue, 20 Feb 2024 12:34:06 +0000 (13:34 +0100)]
Added more wip items
Lukas Krickl [Mon, 19 Feb 2024 17:54:36 +0000 (18:54 +0100)]
WIP: added starting point for disassembly step
Lukas Krickl [Mon, 19 Feb 2024 16:49:24 +0000 (17:49 +0100)]
Moved asmspetok enum to arch
Lukas Krickl [Mon, 19 Feb 2024 16:40:42 +0000 (17:40 +0100)]
Fixed formatting for sm83 macros
Lukas Krickl [Mon, 19 Feb 2024 16:39:40 +0000 (17:39 +0100)]
Fixed naming for sm83
Lukas Krickl [Mon, 19 Feb 2024 14:33:57 +0000 (15:33 +0100)]
Removed todo comment that was resolved
Lukas Krickl [Mon, 19 Feb 2024 12:25:14 +0000 (13:25 +0100)]
Moved register lookup to arch.c
Lukas Krickl [Mon, 19 Feb 2024 10:25:20 +0000 (11:25 +0100)]
WIP: refactoring arch system
Lukas Krickl [Mon, 19 Feb 2024 06:24:30 +0000 (07:24 +0100)]
Added additional ok message when all tests pass
Lukas Krickl [Mon, 19 Feb 2024 06:05:29 +0000 (07:05 +0100)]
Fixed all remaining linter warnings
Lukas Krickl [Mon, 19 Feb 2024 05:49:41 +0000 (06:49 +0100)]
Fixed most linter warnings
Lukas Krickl [Sun, 18 Feb 2024 17:38:44 +0000 (18:38 +0100)]
Fixed some linter warnings
Lukas Krickl [Sun, 18 Feb 2024 03:58:23 +0000 (04:58 +0100)]
Removed a magick number
Lukas Krickl [Sat, 17 Feb 2024 17:50:18 +0000 (18:50 +0100)]
Moved registers to own arch file
Lukas Krickl [Sat, 17 Feb 2024 05:20:38 +0000 (06:20 +0100)]
Added more todos
Lukas Krickl [Sat, 17 Feb 2024 05:18:52 +0000 (06:18 +0100)]
Added todo for register lookup
Lukas Krickl [Thu, 15 Feb 2024 13:43:59 +0000 (14:43 +0100)]
Fixed linter warning
Lukas Krickl [Thu, 15 Feb 2024 13:39:36 +0000 (14:39 +0100)]
Project cleanup
Lukas Krickl [Thu, 4 Jan 2024 17:30:51 +0000 (18:30 +0100)]
Improved test for nested macros
Lukas Krickl [Thu, 4 Jan 2024 17:29:39 +0000 (18:29 +0100)]
Added test for recursive macro calls
Lukas Krickl [Wed, 3 Jan 2024 22:18:40 +0000 (23:18 +0100)]
Fixed $10 - $15 macro args
Lukas Krickl [Wed, 3 Jan 2024 20:41:47 +0000 (21:41 +0100)]
Fixed segfault. TODO: macros do not expand strings properly
Lukas Krickl [Wed, 3 Jan 2024 20:16:35 +0000 (21:16 +0100)]
Increased max macro parameters to 15
Lukas Krickl [Fri, 29 Dec 2023 06:36:19 +0000 (07:36 +0100)]
Ensuring that comments still appear in listing
Lukas Krickl [Fri, 29 Dec 2023 06:33:40 +0000 (07:33 +0100)]
Added comment bail when expanding preproc lines
Lukas Krickl [Wed, 27 Dec 2023 17:10:10 +0000 (18:10 +0100)]
Removed trailing semicolon
Lukas Krickl [Wed, 27 Dec 2023 17:09:23 +0000 (18:09 +0100)]
Removed puts from tests
Lukas Krickl [Wed, 27 Dec 2023 17:08:28 +0000 (18:08 +0100)]
Fixed preproc recursive replacement in a better way
Lukas Krickl [Wed, 27 Dec 2023 16:40:26 +0000 (17:40 +0100)]
define preproc directive allows macro replacement for nexted defines
Lukas Krickl [Sun, 24 Dec 2023 17:33:24 +0000 (18:33 +0100)]
Added counter symbol naming to .rep
Lukas Krickl [Sun, 24 Dec 2023 15:44:45 +0000 (16:44 +0100)]
Added basic .rep directive
Lukas Krickl [Sun, 24 Dec 2023 15:22:16 +0000 (16:22 +0100)]
WIP: rep directive
Lukas Krickl [Fri, 22 Dec 2023 06:38:46 +0000 (07:38 +0100)]
Added .chr directive to allow defining chr data
Lukas Krickl [Thu, 21 Dec 2023 19:17:38 +0000 (20:17 +0100)]
Added new .scc (set char code) directive to map ascii to a custom format
Lukas Krickl [Thu, 21 Dec 2023 03:56:24 +0000 (04:56 +0100)]
Fixed comments not working after .db
Lukas Krickl [Wed, 20 Dec 2023 18:12:26 +0000 (19:12 +0100)]
Fixed buffer overflow in macro expansion
Lukas Krickl [Wed, 20 Dec 2023 18:07:51 +0000 (19:07 +0100)]
Added test case for crashing macro in prod
Lukas Krickl [Tue, 19 Dec 2023 14:34:30 +0000 (15:34 +0100)]
Fixed buffer underflow in trimend
Lukas Krickl [Tue, 19 Dec 2023 14:32:51 +0000 (15:32 +0100)]
Added divison to test cases
Lukas Krickl [Tue, 19 Dec 2023 14:24:10 +0000 (15:24 +0100)]
Fixed division in first pass
Lukas Krickl [Sat, 16 Dec 2023 11:23:05 +0000 (12:23 +0100)]
Added doc as to why a8 will not emit overflow warnings
Lukas Krickl [Sat, 16 Dec 2023 11:21:52 +0000 (12:21 +0100)]
Fixed warning for ldh instructions
Lukas Krickl [Sat, 16 Dec 2023 08:06:08 +0000 (09:06 +0100)]
Added very basic -w flags
Lukas Krickl [Sat, 16 Dec 2023 07:40:54 +0000 (08:40 +0100)]
.de now are evaluated during the first pass
Lukas Krickl [Fri, 15 Dec 2023 17:54:42 +0000 (18:54 +0100)]
Added jp hl
Lukas Krickl [Fri, 15 Dec 2023 17:52:38 +0000 (18:52 +0100)]
Added jp hl instruction
Lukas Krickl [Fri, 15 Dec 2023 08:58:53 +0000 (09:58 +0100)]
Fixed di instruction opcode
Lukas Krickl [Fri, 15 Dec 2023 08:14:18 +0000 (09:14 +0100)]
Added .de and .se for simple enum-like definitions
Lukas Krickl [Thu, 14 Dec 2023 13:15:07 +0000 (14:15 +0100)]
Added more TODOS
Lukas Krickl [Thu, 14 Dec 2023 12:09:45 +0000 (13:09 +0100)]
Added more todos
Lukas Krickl [Thu, 14 Dec 2023 07:16:58 +0000 (08:16 +0100)]
Fixed missing memset in release build
Lukas Krickl [Thu, 14 Dec 2023 04:54:29 +0000 (05:54 +0100)]
Adjusted symbols output format
Lukas Krickl [Thu, 14 Dec 2023 04:54:03 +0000 (05:54 +0100)]
Addedmore tabs for now
Lukas Krickl [Thu, 14 Dec 2023 04:52:08 +0000 (05:52 +0100)]
Added 0x as a prefix for symbols
Lukas Krickl [Thu, 14 Dec 2023 04:51:46 +0000 (05:51 +0100)]
Made symbol ints hex
Lukas Krickl [Thu, 14 Dec 2023 04:50:07 +0000 (05:50 +0100)]
Added basic symbol output
Lukas Krickl [Wed, 13 Dec 2023 18:26:57 +0000 (19:26 +0100)]
Fixed ret z instruction
Lukas Krickl [Wed, 13 Dec 2023 13:37:22 +0000 (14:37 +0100)]
Added tests for db
Lukas Krickl [Tue, 12 Dec 2023 13:10:40 +0000 (14:10 +0100)]
Fixed swap instructions
Lukas Krickl [Tue, 12 Dec 2023 08:27:38 +0000 (09:27 +0100)]
Fixed symbol scoping rules
Lukas Krickl [Mon, 11 Dec 2023 20:21:19 +0000 (21:21 +0100)]
Added test to cover .adv
Lukas Krickl [Mon, 11 Dec 2023 20:20:11 +0000 (21:20 +0100)]
Added .adv directive
Lukas Krickl [Mon, 11 Dec 2023 20:06:18 +0000 (21:06 +0100)]
Labels can now appear before asm directives
Lukas Krickl [Mon, 11 Dec 2023 17:00:17 +0000 (18:00 +0100)]
Added missing ld [hl], a instruction
Lukas Krickl [Mon, 11 Dec 2023 15:43:35 +0000 (16:43 +0100)]
Added todo
Lukas Krickl [Mon, 11 Dec 2023 08:49:46 +0000 (09:49 +0100)]
Fixed readme