Irmen de Jong
|
17334a1c58
|
fix 6502 codegen error for mixed case register params and normal params
|
2025-02-10 22:06:11 +01:00 |
|
Irmen de Jong
|
c7f0ff11ac
|
fix crash when initializing string variable with a non-string value
|
2025-02-10 02:54:53 +01:00 |
|
Irmen de Jong
|
efd41260f2
|
added %jmptable
|
2025-02-09 15:02:59 +01:00 |
|
Irmen de Jong
|
60554389b3
|
for fileselector library save/restore the prog8 temporary ZP locations
|
2025-02-04 00:17:55 +01:00 |
|
Irmen de Jong
|
a940dc7d43
|
improve dumpvars output for zeropage variables
|
2025-02-03 22:36:58 +01:00 |
|
Irmen de Jong
|
06ca68a625
|
add drivenumber to fileselector config
|
2025-02-02 23:09:27 +01:00 |
|
Irmen de Jong
|
74dd8fe80b
|
%output library header generation depends on compiler target
fileselector example tweaks
|
2025-02-02 20:51:45 +01:00 |
|
Irmen de Jong
|
216825b98a
|
cx16: made fileselector example into a loadable library
|
2025-02-02 04:13:03 +01:00 |
|
Irmen de Jong
|
a96defab86
|
diskio: added several diskio routines to list only the files or dir entries on the disk
uses CBM DOS filtering $:*=c and $:*=p
|
2025-02-02 02:44:23 +01:00 |
|
Irmen de Jong
|
0864b0a1b7
|
cx16: added several diskio routines to list only the files or dir entries on the disk
uses CBM DOS filtering $:*=d and $:*=p
|
2025-02-01 22:41:34 +01:00 |
|
Irmen de Jong
|
f335251c2b
|
added ability to specify additional assembler options in custom target configurations
|
2025-02-01 16:09:43 +01:00 |
|
Irmen de Jong
|
2b7947f9b0
|
fix address check issue when using custom launcher
|
2025-01-31 23:34:12 +01:00 |
|
Irmen de Jong
|
9cdf53019c
|
some tweaks to the configurable targets
|
2025-01-30 23:52:44 +01:00 |
|
Irmen de Jong
|
1a04a3eb3a
|
added ability to configure custom ASM launcher code in target configuration file
|
2025-01-30 22:10:42 +01:00 |
|
Irmen de Jong
|
a106c88054
|
unit test for %output library, and docs.
|
2025-01-27 23:26:21 +01:00 |
|
Irmen de Jong
|
bb75be0b44
|
library now includes the 2 byte PRG header
fixed some assorted things
|
2025-01-26 19:48:44 +01:00 |
|
Irmen de Jong
|
2478aea316
|
add %output library
|
2025-01-24 23:25:57 +01:00 |
|
Irmen de Jong
|
1e17df5296
|
optimize word+byte*2 expression to word+byte+byte (more efficient in 6502 codegen)
|
2025-01-24 21:30:02 +01:00 |
|
Irmen de Jong
|
d0c184c7de
|
remove needless 0 initializations of multi decl's
fix outdated text
|
2025-01-23 22:42:58 +01:00 |
|
Irmen de Jong
|
0191acb2b3
|
fix IR codegen for the RETURN 4,5,6,7
added cx16.EXTAPI_memory_decompress_from_func for cx16
|
2025-01-22 23:31:51 +01:00 |
|
Irmen de Jong
|
277a1a32b2
|
fix crash when declaring a string array with wrong variable type str vs str[]
|
2025-01-21 03:12:12 +01:00 |
|
Irmen de Jong
|
7a13f57ab0
|
enforce variable init values are only strings or arrays
|
2025-01-20 01:25:17 +01:00 |
|
Irmen de Jong
|
0c882836d9
|
support multi-value variable initialization: ubyte a,b,c = multi()
|
2025-01-18 22:08:31 +01:00 |
|
Irmen de Jong
|
08cd2fd6e8
|
fix check for assigning to a constant, for multi-value assigns.
|
2025-01-18 20:38:02 +01:00 |
|
Irmen de Jong
|
bc7b086f0f
|
fix a configurable compilation target, add working example
|
2025-01-17 22:58:51 +01:00 |
|
Irmen de Jong
|
e8f3af6981
|
adding a configurable compilation target
|
2025-01-17 00:56:44 +01:00 |
|
Irmen de Jong
|
f9c7c7dab7
|
fix subroutine calling convention for @Rx parameters: don't pass them via cpu registers
|
2025-01-14 23:02:17 +01:00 |
|
Irmen de Jong
|
09a17743ad
|
merge IMachineDefinition into ICompilationTarget
|
2025-01-13 21:45:38 +01:00 |
|
Irmen de Jong
|
4f096a7511
|
added sprites.getxy()
fix compiler crash on return xxx,yyy when symbol is not defined
|
2025-01-10 22:26:38 +01:00 |
|
Irmen de Jong
|
a6f9ed07e7
|
6502 codegen for multi-assigns
|
2025-01-09 00:38:47 +01:00 |
|
Irmen de Jong
|
8f6b5676d7
|
working on codegen for multi-value returns
|
2025-01-07 20:35:49 +01:00 |
|
Irmen de Jong
|
ca9422bbe9
|
be able to parse multiple return values (sub + return)
|
2025-01-07 01:51:54 +01:00 |
|
Irmen de Jong
|
35d9412559
|
better error message
|
2025-01-07 00:53:48 +01:00 |
|
Irmen de Jong
|
f071c07dd9
|
IR: only put align on lsb array of split word array. tag split word arrays with split. (but this isn't actually used yet)
|
2025-01-06 02:50:54 +01:00 |
|
Irmen de Jong
|
e5ff3c1ff3
|
fix compiler crash when using strings in if-expression. Remove harmless info message.
|
2025-01-06 01:34:42 +01:00 |
|
Irmen de Jong
|
f0e8ff0326
|
get rid of some empty lines in the generated asm
|
2025-01-05 19:34:05 +01:00 |
|
Irmen de Jong
|
cf1dbaf0d8
|
no longer clear msb on asmsub argument byte @R0
avoid unneeded push/pop for 2 byte arguments to a functioncall
|
2025-01-05 13:06:39 +01:00 |
|
Irmen de Jong
|
d187cef6b7
|
optimize x=min(x,100) and some other simple min() and max() cases
|
2025-01-05 11:59:00 +01:00 |
|
Irmen de Jong
|
3b3616afda
|
optimized pointer access @(pointer - constantoffset)
|
2025-01-05 06:31:34 +01:00 |
|
Irmen de Jong
|
0ffebc25d0
|
tweak pointer access, fix and optimize reading memory from a label as pointer
|
2025-01-05 05:44:51 +01:00 |
|
Irmen de Jong
|
478e2b4ebd
|
abs() return type changed to ubyte/uword
|
2025-01-04 23:16:51 +01:00 |
|
Irmen de Jong
|
a56ae7539a
|
optimized codegen for word*128 (word << 7): no longer do 7 shifts
|
2025-01-04 23:08:21 +01:00 |
|
Irmen de Jong
|
823eaa8918
|
when using @requirezp in a subroutine that is unused (and is pruned), don't give an error there when using %zeropage dontuse
give warning when a pointer var is declared as @nozp (very inefficient)
|
2025-01-04 16:39:09 +01:00 |
|
Irmen de Jong
|
a2be42c5ca
|
txt.get_cursor() now returns the column and row as 2 values, no longer requires 2 pointer arguments
|
2025-01-04 04:06:27 +01:00 |
|
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
|
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 |
|