Irmen de Jong
|
b38fff76e9
|
hack to work around struct name prefix inconsistency
see github issue 198
|
2025-12-03 21:07:08 +01:00 |
|
Irmen de Jong
|
07b7639ff2
|
better error msg
|
2025-12-02 22:56:40 +01:00 |
|
Irmen de Jong
|
6871561c09
|
fix parent node error in sizeof()
|
2025-12-01 23:21:14 +01:00 |
|
Irmen de Jong
|
77a71138ad
|
fix typo r8r0sl -> r8r9sl
|
2025-11-30 22:05:57 +01:00 |
|
Irmen de Jong
|
165f94bc93
|
fix long expression <0 / >0 comparison
|
2025-11-30 16:57:05 +01:00 |
|
Irmen de Jong
|
b75090f928
|
fix some register clobbering with long operations
|
2025-11-30 16:44:36 +01:00 |
|
Irmen de Jong
|
62b0c82f93
|
implement long <=0 and long >=0 comparisons
make sure the adpcm benchmark doesn't use random memory contents
|
2025-11-30 16:25:58 +01:00 |
|
Irmen de Jong
|
b1ef863c7f
|
make $8000000 a valid long integer (-2147483648)
|
2025-11-26 23:10:59 +01:00 |
|
Irmen de Jong
|
e78345410f
|
fix long-- high word wrap bug
|
2025-11-26 20:13:17 +01:00 |
|
Irmen de Jong
|
8b86f97aaa
|
Implement struct field long and signed word bitshifts. Fixes #194
|
2025-11-25 22:28:28 +01:00 |
|
Irmen de Jong
|
93135774e6
|
fix IR signed bitshift right
|
2025-11-25 22:16:28 +01:00 |
|
Irmen de Jong
|
a64f27c6b0
|
add cx16.r0r1sl, cx16.r2r3sl, ... that memory-map signed longs on the virtual registers
|
2025-11-25 21:13:03 +01:00 |
|
Irmen de Jong
|
69ef63c96d
|
tweaks
|
2025-11-24 22:23:40 +01:00 |
|
Irmen de Jong
|
df1a2a1611
|
also optimize BRA+RTS into just BRA
release 12.0
v12.0
|
2025-11-23 15:18:05 +01:00 |
|
Irmen de Jong
|
d19a3af9ed
|
change some single use float global constants to their asm proc
|
2025-11-21 21:35:51 +01:00 |
|
Irmen de Jong
|
352c11ad9f
|
optimize float<>0 into sgn(float)<>0
|
2025-11-21 00:57:43 +01:00 |
|
Irmen de Jong
|
9504711fc7
|
IR/VM: SGN sets status bits
v12.0-BETA7
|
2025-11-19 21:37:04 +01:00 |
|
Irmen de Jong
|
590feda903
|
IR: fix sgn(float) register type error
|
2025-11-19 21:11:31 +01:00 |
|
Irmen de Jong
|
6e7e2922bf
|
moved the float <> long cast routines to float.asm where the other cast routines are too
|
2025-11-19 18:45:32 +01:00 |
|
Irmen de Jong
|
01df1f0083
|
way more efficient implementation of internal_cast_as_long now using QINT
|
2025-11-19 18:32:40 +01:00 |
|
Irmen de Jong
|
397299bd1d
|
implement 6502 codegen for casting float to long (super slow...)
|
2025-11-19 00:05:18 +01:00 |
|
Irmen de Jong
|
c275aacd38
|
implement 6502 codegen for casting long to float
|
2025-11-18 23:26:12 +01:00 |
|
Irmen de Jong
|
6a6e18773e
|
C64: key repeat is now enabled at program startup, to fall in line with the default key repeat behavior on the C128 and X16.
|
2025-11-18 21:09:13 +01:00 |
|
Irmen de Jong
|
99e037489b
|
IR: added float<>long casts, cx16: blink_cursor extapi tested in test.p8
|
2025-11-17 23:13:56 +01:00 |
|
Irmen de Jong
|
fb5290e17b
|
cx16: added diskio.f_fatlba()
|
2025-11-15 20:17:26 +01:00 |
|
Irmen de Jong
|
818774ab84
|
added conv.hex2long(), added more new X16 extapi calls (rom 49+)
|
2025-11-15 17:52:34 +01:00 |
|
Irmen de Jong
|
d667312acc
|
Merge branch 'refs/heads/12.1-SNAPSHOT'
# Conflicts:
# docs/source/todo.rst
# examples/test.p8
|
2025-11-15 15:15:06 +01:00 |
|
Irmen de Jong
|
64d0cd87a8
|
diskio.f_seek() and f_tell() now use longs instead of separate words
also fix bug when returning multiple long values
|
2025-11-15 15:13:26 +01:00 |
|
Irmen de Jong
|
2fffbdde89
|
todo
|
2025-11-14 20:05:46 +01:00 |
|
Irmen de Jong
|
dc8ea31c49
|
fix codegen error for a word array equality test
|
2025-11-13 21:18:04 +01:00 |
|
Irmen de Jong
|
f4ead66e91
|
fix param name breakage in PET txt.setcc for ignored charcolor parameter
|
2025-11-12 22:00:30 +01:00 |
|
Irmen de Jong
|
314e7f5691
|
doc updates
|
2025-11-10 23:42:29 +01:00 |
|
Irmen de Jong
|
da31465b7f
|
added the missing smallstack to buffers module
|
2025-11-10 00:21:13 +01:00 |
|
Irmen de Jong
|
397a907088
|
fix handling and errors of using long addresses in memread/memwrite
|
2025-11-09 18:17:57 +01:00 |
|
Irmen de Jong
|
50c6962e1f
|
fix symbol lookup crash
|
2025-11-09 15:10:10 +01:00 |
|
Irmen de Jong
|
b7d1fb1342
|
translate address-of into + expression for non-const address ptrs too,
also IR optimization to use immediate arithmetic opcodes if possible
|
2025-11-09 01:36:34 +01:00 |
|
Irmen de Jong
|
afb458a7da
|
fix crash in long address-of
|
2025-11-08 22:24:37 +01:00 |
|
Irmen de Jong
|
da3c7f267f
|
improved identifier const value handling if types differ
|
2025-11-08 20:34:51 +01:00 |
|
Irmen de Jong
|
b7ba7c50b1
|
handle &ptr[offset] for non-uword ptr
|
2025-11-08 20:31:28 +01:00 |
|
Irmen de Jong
|
bdbfe7048b
|
updated library symboldumps
|
2025-11-08 00:21:53 +01:00 |
|
Irmen de Jong
|
79039b66d4
|
beta6
v12.0-BETA6
|
2025-11-07 23:40:03 +01:00 |
|
Irmen de Jong
|
833e463525
|
String indexing bound check now includes the terminating 0 character. Also fix negative indexes on strings.
fixes #190
|
2025-11-07 23:20:44 +01:00 |
|
Irmen de Jong
|
6611e4e092
|
improve error message
|
2025-11-07 01:22:41 +01:00 |
|
Irmen de Jong
|
1f31cb18e4
|
IR: fix missing source lines in p8ir file
|
2025-11-06 00:39:31 +01:00 |
|
Irmen de Jong
|
bc8ba252a5
|
made Position line, col, endcol all 1-based
added a precise (but slow) back face culling routine to the cobra-mk3 example
|
2025-11-05 00:25:43 +01:00 |
|
Irmen de Jong
|
c353dd40bf
|
put on..call jumplist in correct scope, fixes #197
|
2025-11-03 23:46:49 +01:00 |
|
Irmen de Jong
|
928ef6bbaa
|
fix on..call parse problem, also struct name cannot be a keyword
|
2025-11-03 21:21:07 +01:00 |
|
Irmen de Jong
|
45dde856c6
|
upgrade to kotlin 2.2.21
|
2025-11-02 20:08:59 +01:00 |
|
Irmen de Jong
|
e1ccef4e89
|
sort the library routines better, updated result of crc32 benchmark
|
2025-11-02 16:58:49 +01:00 |
|
Irmen de Jong
|
4d3f0ec223
|
sizeof(string) is now defined
|
2025-11-01 21:19:30 +01:00 |
|