Irmen de Jong
a76b8d66ff
cx16: added syslib.get_charset()
...
updated fileselector
2025-01-04 01:02:43 +01:00
Irmen de Jong
b7f47d354f
IR: implemented << and >> for split word arrays
2025-01-03 22:18:02 +01:00
Irmen de Jong
5d33c93af9
IR: implemented rol(), rol2(), ror(), ror2() for split word arrays
2025-01-03 20:01:50 +01:00
Irmen de Jong
4db6859f3f
IR: strict register pool type assignment, 1 unique type per register + verification during IR writing
2025-01-03 04:18:16 +01:00
Irmen de Jong
45fe1bb16e
reduce error clutter for undefined symbols
2025-01-03 01:55:44 +01:00
Irmen de Jong
b014facbd3
cx16 fileselector improvements
2025-01-03 01:35:20 +01:00
Irmen de Jong
3b4b37f16b
optimize codegen for x += array[index] (and others)
2025-01-02 01:11:25 +01:00
Irmen de Jong
68d5983a14
optimize monogfx.plot() to use a *40 lookup table in lores mode. Speeds up a lot of other routines too (line etc)
2025-01-01 20:25:58 +01:00
Irmen de Jong
f2cfcfdf31
cx16: monogfx can fill with stipple mode again.
...
cx16: charset switching enabled again on program exit.
cx16: fileselector example: can now also show directories
2025-01-01 18:27:25 +01:00
Irmen de Jong
10b9162dc5
improving fileselector
2024-12-30 21:34:03 +01:00
Irmen de Jong
c84cc8f8c9
word arrays for sorting should be @nosplit
2024-12-30 00:00:31 +01:00
Irmen de Jong
37c2c1bf0b
support &, &< and &> on array elements from split word arrays, not just on the array as a whole
2024-12-30 00:00:31 +01:00
Irmen de Jong
76b29aa629
fixed register reuse and types on syscall interface
2024-12-30 00:00:31 +01:00
Irmen de Jong
ee521793f8
ir: enforce single reg type
2024-12-30 00:00:31 +01:00
Irmen de Jong
f42e12bc13
ir: fix more register typing errors
2024-12-30 00:00:31 +01:00
Irmen de Jong
427451a23f
ir: remove remaining SL* opcodes
2024-12-30 00:00:31 +01:00
Irmen de Jong
e2882d37bf
ir: remove a bunch of strange in-place assignment operators, and problematic opcodes
2024-12-30 00:00:31 +01:00
Irmen de Jong
942d3ee640
ir: improve register type detection
2024-12-30 00:00:31 +01:00
Irmen de Jong
7b4a82b91a
IR: report register usage and types in code blocks
2024-12-30 00:00:31 +01:00
Irmen de Jong
056c0a24d9
better way of doing BIT instructions
2024-12-30 00:00:31 +01:00
Irmen de Jong
827df04b32
IR: BIT instruction added
2024-12-30 00:00:31 +01:00
Irmen de Jong
e174b31344
IR: fix up missing indirect goto codegen
2024-12-30 00:00:31 +01:00
Irmen de Jong
49959af752
IR: support %align in code chunks, and load/store FAC0/FAC1
2024-12-30 00:00:31 +01:00
Irmen de Jong
c86c0912f8
latest symboldumps
2024-12-29 20:07:45 +01:00
Irmen de Jong
099fe280ba
improved diskio.diskname() error detection
2024-12-29 10:29:31 +01:00
Irmen de Jong
f786f60e9c
cmb.PLOT: fixed order of return registers (Y then X, column then row) - same as argument order
2024-12-29 07:42:13 +01:00
Irmen de Jong
f40e1eb1f2
fixed clipping sample
2024-12-29 00:56:12 +01:00
Irmen de Jong
8b9da65357
Added supervisor to coroutines.run(). update symboldumps for 11.0.1.
2024-12-28 04:44:45 +01:00
Irmen de Jong
2cbbe0d48a
remove syscall from docs, it doesn't exist anymore
2024-12-27 22:35:56 +01:00
Irmen de Jong
b6e1fb3ba8
emphasize that str[] is also split by default
2024-12-27 17:00:39 +01:00
Irmen de Jong
f50899c6fa
coroutines: make yield() return a configured uword so that a task subroutine can get reused for multiple different things
2024-12-26 18:55:32 +01:00
Irmen de Jong
529ea5bf58
added coroutines library and multitasking example. Added sys.push_returnaddress().
2024-12-26 00:57:39 +01:00
Irmen de Jong
fe011de934
fix the missing cases in certain expressions that need the address of a split word array
2024-12-25 16:55:07 +01:00
Irmen de Jong
3850e1dbb5
Merge branch 'better-ir'
2024-12-24 21:23:57 +01:00
Irmen de Jong
2ca4aed566
IR: prefix immediate values with '#' for human readability reasons (no technical reason)
2024-12-24 09:35:10 +01:00
Irmen de Jong
5071da6784
retain constants in IR
...
some IR related cleanups
2024-12-24 00:30:08 +01:00
Irmen de Jong
2727a4dcb3
tweak DataType class and memsizer related to subtypes/elementtypes
2024-12-23 17:28:25 +01:00
Irmen de Jong
7657edcb7d
latest symboldumps
2024-12-22 09:24:45 +01:00
Irmen de Jong
580e786952
change math.crc32 to the same algorithm as pkzip/zlib uses (ISO-HDLC). Add math.crc32_end_result(). Fix a parse error in profiler.py script.
2024-12-22 09:19:54 +01:00
Irmen de Jong
c0ae35b3a3
tweaks, bump version 11.0
2024-12-22 06:34:17 +01:00
Irmen de Jong
c3dc74788a
added diskio.get_loadaddress()
...
added compression.decode_tscrunch_inplace()
2024-12-22 03:17:16 +01:00
Irmen de Jong
379d241a0d
various library modules now also use regular asm symbol prefixing rules: buffers, compression, cx16logo, test_stack.
2024-12-21 06:34:55 +01:00
Irmen de Jong
1f49e8fe75
in diskio.f_readline make sure AY result isn't clobbered
2024-12-21 06:25:56 +01:00
Irmen de Jong
d70cfbb661
added sorting module and sortingbench example
2024-12-21 06:18:35 +01:00
Irmen de Jong
5482ac0302
simplify grammar of @tags, also improving their error message
2024-12-21 01:44:58 +01:00
Irmen de Jong
512ddd1694
cleanups
2024-12-20 22:59:20 +01:00
Irmen de Jong
14a213bff9
compression module: added decode_zx0 and decode_tscrunch
...
two very fast decompressors while still having pretty good compression ratio
2024-12-20 20:44:57 +01:00
Irmen de Jong
ef4efcb112
cleanup
2024-12-19 21:06:51 +01:00
Irmen de Jong
b01555d75e
cx16.set_screen_mode() no longer returns anything.
...
tweak when codegen slightly.
allow trailing comma in array literals.
set_screen_mode failure status is really uncommon and still returned by the real kernal routine screen_mode().
2024-12-19 20:56:07 +01:00
Irmen de Jong
f93b7e3303
changed IR JUMPI instruction to support more indirect jump cases
2024-12-19 04:29:16 +01:00