Irmen de Jong
26d0a174db
optimize codegen for while loops with empty body
2024-12-09 03:21:20 +01:00
Irmen de Jong
b2e821755c
optimized palette module
...
removed palette.set_monochrome(), added start color index to several color set functions
removed mcf example
update gradle wrapper
2024-12-08 15:30:42 +01:00
Irmen de Jong
ba8c3d14f7
diskio docs, remove super harmless warning message
2024-12-05 20:51:44 +01:00
Irmen de Jong
565973c520
diskio read & write routines now always reset the io channels back to the defaults before returning
...
This means you don't have to call CLRCHN yourself anymore inbetween if you want to do screen output or keyboard input while a file is open
2024-12-03 23:46:07 +01:00
Irmen de Jong
1ebfff7c7b
add -plaintext and -ignorefootguns options
2024-12-03 19:12:30 +01:00
Irmen de Jong
28cac291de
diskio.f_open_w() now also resets io channels back to defaults, like f_open() already did
2024-12-02 22:25:32 +01:00
Irmen de Jong
8fa14a10e2
Optimize diskio.f_read for size=1, also improve ST check
2024-12-02 21:25:38 +01:00
Irmen de Jong
55dbd095ed
fix IR codegen missing a CMPI after if not condition
...
fix IR codegen for containmentcheck
2024-12-02 03:06:06 +01:00
Irmen de Jong
31ad8bdd8d
remove bankof(), documented msw() and lsw()
2024-12-01 21:24:26 +01:00
Irmen de Jong
181f3e9eb1
remove the unary/prefix operators ^ and << again
2024-12-01 20:50:33 +01:00
Irmen de Jong
50c3d809dc
fix type casting issues and unary ^ operator
...
signed numbers are no longer implicitly converted to unsigned
proper range check on bankof()
2024-12-01 17:43:53 +01:00
Irmen de Jong
58f696d00a
document the @R0 - @R15 register support for normal subroutine parameters
2024-11-30 20:46:31 +01:00
Irmen de Jong
f603c543d3
restructure documentation to get rid of redundant syntax chapter
2024-11-30 20:26:06 +01:00
Irmen de Jong
6aaa0f928e
IR: fix invalid asm name matching that resulted in not removing subs with a name matching an IR asm instruction
2024-11-30 00:10:57 +01:00
Irmen de Jong
feb8aa435e
monogfx, gfx_lores, gfx_hires now all uses 8kb stack from buffers module; no more broken flood fills. fill() has an extra byte parameter now where you need to pass in the ram bank to use for the stack. (not on virtual target)
2024-11-29 21:28:34 +01:00
Irmen de Jong
53558f5c1d
add zmskit example for zsmkit v2
2024-11-29 00:04:57 +01:00
Irmen de Jong
5406a992f5
improved buffers library, added to docs
2024-11-28 03:30:32 +01:00
Irmen de Jong
bc9683cc54
add compression.decode_rle_vram() to decompress RLE data directly to X16's VRAM.
...
Document the compression library.
2024-11-26 02:06:35 +01:00
Irmen de Jong
2eed75f602
call convention for @Rx parameters, also use cpu registers if possible, like normal parameters
2024-11-25 22:22:24 +01:00
Irmen de Jong
d58f9f56c4
tests for register args for normal subs
...
some warnings demoted into infos
2024-11-24 19:21:45 +01:00
Irmen de Jong
5c6bd9c091
register params support for normal subroutines
2024-11-24 15:56:54 +01:00
Irmen de Jong
857d2eefca
added floats.interpolate(), math.interpolate(), and LERP example
2024-11-24 10:00:21 +01:00
Irmen de Jong
cc53d698bf
added msw() and lsw() builtin functions (experimental)
2024-11-24 03:53:37 +01:00
Irmen de Jong
cb86206698
added unary ^ and << operators (experimental) (gets bank and address of a long integer)
2024-11-24 03:07:18 +01:00
Irmen de Jong
d77b1944fb
rename bnk()
to bankof()
2024-11-24 00:53:09 +01:00
Irmen de Jong
a58cb43c4a
fixed weird error messages when attempting to create variable with type long
2024-11-23 21:35:57 +01:00
Irmen de Jong
88574c87c4
convert vtui and zsmkit to new extsub address expression capability
2024-11-23 21:21:52 +01:00
Irmen de Jong
3a7a7091c0
update some docs
2024-11-23 21:01:18 +01:00
Irmen de Jong
906b137a7c
renamed 'string' module to 'strings' for consistency
2024-11-23 15:51:38 +01:00
Irmen de Jong
42e2c5f605
fix some deprecated code in tests
...
silence redundant error about unused txt block
2024-11-23 15:48:18 +01:00
Irmen de Jong
cc13a51493
fix import order problem related to %option merge
2024-11-23 12:15:15 +01:00
Irmen de Jong
f569ce6141
setting a byte >=128 or word >=32768 now results in an out-of-range error, instead of an invalid casted value
2024-11-22 21:24:04 +01:00
Irmen de Jong
4958463e75
moved floats.MIN/MAX to sys.MIN_FLOAT/MAX_FLOAT
...
added txt.print_f as alias to floats.print
2024-11-22 00:46:23 +01:00
Irmen de Jong
2360625927
added min/max values for the various integer types as sys.MAX_XXX and sys.MIN_XXX
...
renamed sys.sizeof_xxx into sys.SIZEOF_XXX to be consistent with the uppercasing of the other constants
2024-11-21 23:25:02 +01:00
Irmen de Jong
9fd9e9ab5f
change block sort order so that blocks with address are now sorted last
2024-11-20 23:23:26 +01:00
Irmen de Jong
35c477b5a6
Make extsub address a (constant) expression instead of a numeric literal
...
this makes it easier to define API jump tables
2024-11-20 23:23:26 +01:00
Irmen de Jong
ae0cadb383
added bnk() builtin function
2024-11-20 23:23:21 +01:00
Irmen de Jong
ea1daa97d3
remove the 'addmissingrts' compiler option
2024-11-20 23:22:56 +01:00
Irmen de Jong
1f5706bbeb
version 10.5.1
2024-11-20 22:54:26 +01:00
Irmen de Jong
d78ce77536
improve vm error message when referencing a block name
2024-11-19 20:57:58 +01:00
Irmen de Jong
08865dbb4e
todo
2024-11-16 02:10:57 +01:00
Irmen de Jong
b9ad7e0e55
forgot to mention floats
2024-11-15 23:37:08 +01:00
Irmen de Jong
07158a6f1a
improve manual about subroutine call convention
2024-11-15 22:59:47 +01:00
Irmen de Jong
957c42bc1d
tweak
2024-11-15 02:52:21 +01:00
Irmen de Jong
f784da2da6
fix asm optimization regression caused by wrong label prefix comparison
2024-11-14 21:24:46 +01:00
Irmen de Jong
c080fbe59a
target machine config tweak and fix possible compiler crash on wrong type name
2024-11-13 21:04:46 +01:00
Irmen de Jong
d70b8303b1
added sprites.reset() to remove sprites from the screen
2024-11-13 20:26:04 +01:00
Irmen de Jong
1d38c3582a
progstart() added to complement progend()
2024-11-13 19:29:50 +01:00
Irmen de Jong
9438e996d7
Fixed math.mul16_last_upper().
...
Added math.lerpw() a LERP routine for words (to complement the existing math.lerp() for bytes)
Described the LERP routines in the library chapter in the docs.
2024-11-12 18:31:24 +01:00
Irmen de Jong
3b4a5e27f7
renamed gfx_hires4 module to just gfx_hires
...
to be consistent with gfx_lores
2024-11-12 17:48:35 +01:00