Commit Graph
95 Commits
Author SHA1 Message Date
PleegWat 40e4272cdd Int to string conversion
Initially only binary output
2026-09-08 17:00:26 +02:00
ShatteredMINT e654d451a7 Merge pull request 'Globals and start.asm' (#19) from Gelthor/symphony_stdlib:graphics into main
Reviewed-on: TCShenanigans/symphony_stdlib#19
2026-09-06 20:13:05 +02:00
Gelthor 4801520424 Split framebuffer stride into stride and depth
Stride is now U16, depth is U16, and stores the bits per pixel of the
buffer.
2026-09-06 17:37:49 +01:00
Gelthor 1ba70f10cd Merge remote-tracking branch 'origin/main' into graphics 2026-09-06 16:26:55 +01:00
Gelthor ca5cff0a79 Function premble should list error codes, if any 2026-09-06 16:25:40 +01:00
Gelthor 7368044335 Global addresses now in hex and listed in order 2026-09-06 15:49:23 +01:00
Gelthor 21deca64fd Remove graphics code from this PR 2026-09-06 15:48:37 +01:00
ShatteredMINT 590732cd48 Merge pull request 'Initial version of atoi' (#15) from PleegWat/symphony_stdlib:str_to_int into main
Reviewed-on: TCShenanigans/symphony_stdlib#15
2026-09-06 16:14:57 +02:00
PleegWat 304fe54833 Apply agreed naming conventions 2026-09-06 16:13:40 +02:00
PleegWat 6f7ad3aa4b Implement atoi
Parse strings to integer (binary, octal, decimal, or hexadecimal)
2026-09-06 16:12:50 +02:00
ShatteredMINT 9b7a8685e6 Merge pull request 'Add ISA definitions for symphony' (#18) from PleegWat/symphony_stdlib:add_isa into main
Reviewed-on: TCShenanigans/symphony_stdlib#18
2026-09-06 16:08:12 +02:00
Gelthor b63af2f15a merge upstream 2026-09-06 12:14:49 +02:00
Gelthor 46abf8d893 Add globals and error codes
Added support for global variables.

This requires including `start.asm` as the first code. This includes
a `jmp` to 0x100 for user code, and a magic number that modules
can check to verify th the user has correctly reserved the space.

The magic number is 0xb301534c:

* This has the high bit set so is not a valid instruction

* On builds that ignore the high bit this decodes to `nor zr, zr,
  0x534c` a no-op.

* The immediate is "SL" for standardl ibrary.

Due to a bug start pads with U... 0, instead of @addr.

`start.asm` also initialises `sp` so it start just below the 64KiB LUT
memory alocation.

Added some error codes for the upcoming graphics module.
2026-09-06 11:02:27 +01:00
PleegWat dd20822ee1 Use all unsigned compares 2026-09-05 16:41:52 +02:00
PleegWat 4c0cd79fdd Fix several bugs 2026-09-05 16:37:51 +02:00
PleegWat 2f09320fa5 Add optimization for arbitrary aligned values
Any value with 16 or less significant bits but larger than 64k is loaded
in one fewer cycle
2026-09-05 15:39:55 +02:00
PleegWat 8e7441fdb3 Add ISA definitions for symphony
Adds both a 'stock' ISA (copied from the game) and one modified for test
code
2026-09-05 15:36:54 +02:00
ShatteredMINT 5c145dc10b Merge pull request 'Changed mul_low algorithm to radix-16-1 algorithm with swap' (#17) from Micha_i/symphony_stdlib:fast-math into main
Reviewed-on: TCShenanigans/symphony_stdlib#17
2026-09-04 23:20:14 +02:00
Micha_i ff5e1be8fd Merge branch 'main' into fast-math 2026-09-04 23:11:37 +02:00
Michał Isalski b97e17fa84 Changed mul_low algorithm to radix-16-1 algorithm with swap 2026-09-04 23:08:06 +02:00
ShatteredMINT 50f7040f59 Merge pull request 'Add mem.compare, mem.copy, mem.fill32, unsafe_mem.compare' (#13) from Mutex/symphony_stdlib:mem_ops into main
Reviewed-on: TCShenanigans/symphony_stdlib#13
2026-09-04 21:55:22 +02:00
ShatteredMINT 57934309c2 Merge branch 'main' into mem_ops 2026-09-04 21:53:34 +02:00
Gelthor 04f3f03ad5 Moved new *.asm files into src/
v
2026-09-04 16:42:35 +01:00
Gelthor 39ff477f6e Merge remote-tracking branch 'gelthor' into graphics 2026-09-04 16:09:51 +01:00
Gelthor 4d752ef67c Added initial draft of globals and errno 2026-09-04 16:07:24 +01:00
ShatteredMINT 32a157e87d Merge pull request 'Changed mul_low algorithm to radix-4 multiplication' (#16) from Micha_i/symphony_stdlib:fast-math into main
Reviewed-on: TCShenanigans/symphony_stdlib#16
2026-09-04 08:21:49 +02:00
Michał Isalski a00c7f2a84 Changed mul_low algorithm to radix-4 multiplication 2026-09-04 00:11:33 +02:00
MutexRaceCondition ae0684f98a Merged main into mem_ops 2026-09-03 21:15:08 +02:00
MutexRaceCondition 257735d776 Remove leftover files 2026-09-03 21:01:07 +02:00
MutexRaceCondition 809f6e35d5 Merged with main 2026-09-03 20:58:17 +02:00
ShatteredMINT c83269fcf7 fix path to stdlib.asm 2026-09-03 20:35:41 +02:00
ShatteredMINT 6bf0c0a4fc add examples directory 2026-09-03 20:34:56 +02:00
ShatteredMINT 697445feec add tests folder 2026-09-03 20:34:16 +02:00
ShatteredMINT 7c49c5212e move assembly files into src directory 2026-09-03 20:32:40 +02:00
ShatteredMINT 6ff1a43c32 Merge pull request 'Added find_index array function' (#9) from Micha_i/symphony_stdlib:array-functions into main
Reviewed-on: TCShenanigans/symphony_stdlib#9
2026-09-03 20:30:09 +02:00
Michał Isalski b5249a43b9 Merge branch 'main' into array-functions 2026-09-03 20:29:24 +02:00
MutexRaceCondition 655ce0237e Fixed unsafe_mem.compare not working correctly when both input pointers are the same 2026-09-03 18:48:57 +02:00
MutexRaceCondition a1e19112c5 Specialised unsafe.asm to unsafe_mem.asm, and renamed unsafe.memcmp to unsafe.compare 2026-09-03 15:22:40 +02:00
MutexRaceCondition 3d874cebbd Merged with main 2026-09-03 15:17:00 +02:00
MutexRaceCondition 4aca17aa40 Moved memory operations into mem.asm (and renamed them) 2026-09-03 15:15:54 +02:00
ShatteredMINT 0188969dab Merge pull request 'Added read_line console function' (#10) from Micha_i/symphony_stdlib:console-functions into main
Reviewed-on: TCShenanigans/symphony_stdlib#10
2026-09-03 14:56:12 +02:00
Micha_i 5c9a33c24d Merge branch 'main' into array-functions 2026-09-03 09:04:11 +02:00
Micha_i e4edb56d08 Merge branch 'main' into console-functions 2026-09-03 09:04:03 +02:00
Michał Isalski aa8eef7b1f Fixed at-address 2026-09-02 22:56:24 +02:00
ShatteredMINT 37d0e556d2 Merge pull request 'clean up confusion about function template' (#14) from meta-documentation into main
Reviewed-on: TCShenanigans/symphony_stdlib#14
2026-09-02 20:49:38 +02:00
ShatteredMINT 26d3a4d4f4 clean up confusion about function template 2026-09-02 20:49:22 +02:00
Michał Isalski 870b6ebc39 Merge branch 'main' into console-functions 2026-09-02 20:41:38 +02:00
Michał Isalski 1e4ad8f64c Merge branch 'main' into array-functions 2026-09-02 20:40:49 +02:00
MutexRaceCondition 7b43e75a9d Added memcmp, memcpy, memset32, unsafe.memcmp 2026-09-02 19:41:56 +02:00
Michal Isalski ca1ba67fd8 Added a shift conversion LUT and finished read_line (except Writeback) 2026-09-02 13:20:55 +02:00