Commit Graph

121 Commits

Author SHA1 Message Date
zxq5 a35cfbe864 updated compiler to support multiple frontends and backends 2026-02-05 01:09:14 +00:00
zxq5 8d130a870c deleted the c compiler 2026-02-05 01:07:59 +00:00
zxq5 a1099249e9 updated roadmap 2026-02-04 01:59:50 +00:00
zxq5 cb65a928c8 fixed bug where stack inspector shows incorrect addresses 2026-02-04 01:59:43 +00:00
zxq5 fa8aa1cd29 integrated compiler in DSA editor 2026-02-04 01:58:55 +00:00
zxq5 7780f5804f deleted old files and modified some dsa source files 2026-02-04 01:58:37 +00:00
zxq5 889ee8ef71 wrote dsa/dsc code examples including an allocator 2026-02-04 01:58:03 +00:00
zxq5 dd20401ad6 added basic logging to common
TODO: improve logging
2026-02-04 01:57:40 +00:00
zxq5 f4933b55fb forgot to commit this 2026-02-04 01:57:18 +00:00
zxq5 14a04a524c added support for DSA libraries to compiler and made some optimisations.
provided an API for the editor to use.
2026-02-04 01:56:58 +00:00
zxq5 f25db6c8fd updated assembler logging 2026-02-04 01:56:15 +00:00
zxq5 48a74bfde2 updated dsc example to reflect current feature set. 2026-02-03 15:38:40 +00:00
zxq5 7973b2afca - refactored lexer
- updated lexer to allow hex and binary integer literals
- updated parser with support for writing to pointers
- updated code generation to support writing to pointers
- fixed a bug with codegen where args are loaded from incorrect offsets
  due to saving registers prior to calling.
2026-02-03 15:37:38 +00:00
zxq5 ce2eda72a0 updated roadmap with progress 2026-02-03 15:34:35 +00:00
zxq5 3afeafc9d4 - compiler works for basic maths expressions and functions
- basic pointers and reading values from pointers works
- writing to pointers not yet implemented (looks painful so a problem
  for tomorrow)
- updated print library. the compiler has this hardcoded in all programs
  for now
2026-02-03 02:11:30 +00:00
zxq5 5573c5a609 minor code changes for codegen 2026-02-02 11:15:45 +00:00
zxq5 8f7163c459 added some documentation and started on compiler for custom language (not C) based on previous prototypes. pretty broken state rn. 2026-02-01 22:16:09 +00:00
zxq5 52ef7872f0 compiler working for some mathematical expressions, function calls and
simple conditionals
2026-01-31 13:28:42 +00:00
zxq5 e31deb594f fixed a bug with the multiply function in core.dsa and added a print_num
function to print.dsa for decimal numbers
2026-01-31 13:28:11 +00:00
zxq5 63c9d858b4 added a to-do list and bacon.toml for developing the compiler 2026-01-31 13:27:31 +00:00
zxq5 782c842a42 updated gitignore 2026-01-29 19:33:30 +00:00
zxq5 259746558f codegen progress 2026-01-29 19:29:48 +00:00
zxq5 b9f98bff7b started on codegen, scaffolding basically done 2025-11-15 02:58:36 +00:00
zxq5 091dabfbf3 Merge remote-tracking branch 'refs/remotes/origin/compiler' into compiler 2025-11-14 23:37:57 +00:00
zxq5 fd5b305576 started work on c compiler 2025-11-14 23:36:51 +00:00
zxq5 b33fdbfeec rust macros make me want to unalive. 2025-07-01 01:08:37 +01:00
zxq5 2582ad10fa started work on compiler 2025-06-30 20:44:39 +01:00
zxq5 ae92510fb8 dsa lib bugfixes 2025-06-26 20:53:51 +01:00
zxq5 7c63340888 minor changes to assembler 2025-06-26 20:53:22 +01:00
zxq5 e9f04824ea updates to dsa libs 2025-06-26 00:51:20 +01:00
zxq5 620584488b fixed unit tests & misc changes to workspace config 2025-06-26 00:50:58 +01:00
zxq5 1101331f70 fixed a couple of emulator bugs, including fixing shift instructions. finished implementing lib/io/print/print_hex_byte and print_hex_word 2025-06-25 16:31:42 +01:00
zxq5 c171b0db89 worked on print.dsa and maths/core.dsa 2025-06-25 00:40:31 +01:00
zxq5 82b99c127c finished initial interrupts implementation 2025-06-25 00:13:55 +01:00
nullndvoid 92c4660a4d misc: get rid of some errors from Cargo lol 2025-06-24 21:55:11 +01:00
zxq5 2a6991fe4a idk, i refactored some stuff ig 2025-06-24 19:34:45 +01:00
zxq5 0fdd28aad1 finished the interpreter 2025-06-24 19:31:55 +01:00
zxq5 f639240b6c progress on debugging bf.dsa 2025-06-24 18:07:33 +01:00
zxq5 d2c1492dca added step(n) feature to emulator, allowing for stepping n instructions at a time 2025-06-24 18:07:11 +01:00
zxq5 4ef8bbdf46 updated dependencies 2025-06-24 18:06:29 +01:00
zxq5 76197fac8f finished refactor of emulator - started on loader (needs significant changes before functional in the way that I would like) 2025-06-23 23:45:47 +01:00
zxq5 bc5ddef311 added error handling to emulator 2025-06-23 21:28:38 +01:00
nullndvoid ed479ac146 assembler: purge unwrap and use more AssembleErrors 2025-06-23 19:39:49 +01:00
nullndvoid f432fe7665 misc: clippy lint fixes 2025-06-23 18:23:01 +01:00
nullndvoid 083628ec7e emulator: builds still don't actually work, will look into ELF stuff 2025-06-23 18:13:08 +01:00
zxq5 ddd0c27893 found a cause of a memory bug in emulator - fix is TODO (#6) - continued working on brainf interpreter. we really need better debugging tools tbh. 2025-06-23 00:31:09 +01:00
zxq5 b8091222a4 working on bf.dsa (brainf##k interpreter) cos fun 2025-06-22 16:14:51 +01:00
zxq5 6ea3a76d74 fixed some bugs with file picker & loading different file types - will start working on brainf##k interpreter tomorrow because a compiler isn't enough. 2025-06-22 05:19:55 +01:00
zxq5 2b777f55c7 Merge remote-tracking branch 'refs/remotes/origin/main' 2025-06-22 03:54:44 +01:00
zxq5 808b51ff5f updated emulator to support importing .dsb binaries 2025-06-22 03:52:11 +01:00