Irmen de Jong
|
def06dbc0b
|
allow address-of to be used as a value for a memory pointer variable
|
2020-09-18 22:10:20 +02:00 |
|
Irmen de Jong
|
9b66a597bb
|
array literal const check added
|
2020-09-18 21:30:59 +02:00 |
|
Irmen de Jong
|
f1ee3b4e60
|
version 4.2
|
2020-09-16 23:04:18 +02:00 |
|
Irmen de Jong
|
6395e39d63
|
avoid generating superfluous '0' variable initializations, and fix erroneous vardecl order shifting
|
2020-09-16 22:15:06 +02:00 |
|
Irmen de Jong
|
2a6d9d7e31
|
more optimal codegen for some typecasts
|
2020-09-15 03:26:57 +02:00 |
|
Irmen de Jong
|
32a7cd31da
|
more optimal codegen for if statements
|
2020-09-15 00:31:44 +02:00 |
|
Irmen de Jong
|
dd4a56cb5f
|
cx16 safe clobbers for now
|
2020-09-15 00:14:36 +02:00 |
|
Irmen de Jong
|
d110d1cb5f
|
c64 system reset now banks kernel rom back in
|
2020-09-15 00:10:20 +02:00 |
|
Irmen de Jong
|
48858019b7
|
added the last of the optimized mul_word asm routines
|
2020-09-14 23:54:01 +02:00 |
|
Irmen de Jong
|
aff6b1fca5
|
added some more optimized mul_word asm routines
|
2020-09-14 23:03:18 +02:00 |
|
Irmen de Jong
|
d260182ef3
|
added some more optimized mul_byte asm routines
|
2020-09-14 22:06:40 +02:00 |
|
Irmen de Jong
|
e39a38b0d9
|
things
|
2020-09-13 21:04:51 +02:00 |
|
Irmen de Jong
|
82d7179c92
|
printf now uses proper zp addressing
|
2020-09-13 21:01:19 +02:00 |
|
Irmen de Jong
|
f42746ba06
|
reg_x removal: c64textio and c64lib. last one.
|
2020-09-13 20:52:29 +02:00 |
|
Irmen de Jong
|
1f69deaccd
|
reg_x removal: c64floats
|
2020-09-13 20:44:55 +02:00 |
|
Irmen de Jong
|
ea8b7ab193
|
reg_x removal: math.asm and some others
|
2020-09-13 20:38:50 +02:00 |
|
Irmen de Jong
|
9938959026
|
reg_x removal: prog8lib
|
2020-09-13 20:25:30 +02:00 |
|
Irmen de Jong
|
d5e5485d2e
|
fixed estack X corruption in float augmented assignments
|
2020-09-13 19:44:03 +02:00 |
|
Irmen de Jong
|
97b9c8f320
|
don't clobber A when trying to save X at functioncall
|
2020-09-12 19:04:44 +02:00 |
|
Irmen de Jong
|
35aebbc209
|
optimize unneeded type casts for register args
|
2020-09-12 02:48:16 +02:00 |
|
Irmen de Jong
|
81f7419f70
|
fix X register clobbering in asmfunc call, fixed graphics.plot()
|
2020-09-12 01:23:56 +02:00 |
|
Irmen de Jong
|
2f951bd54d
|
tweaking cobra mk3
|
2020-09-11 19:46:11 +02:00 |
|
Irmen de Jong
|
836509c1d1
|
mult todos.
|
2020-09-10 00:53:35 +02:00 |
|
Irmen de Jong
|
949d536e42
|
mult todo's. Fixed wrong compilation target when compiling multiple files at once.
|
2020-09-10 00:26:35 +02:00 |
|
Irmen de Jong
|
f69b17e165
|
mult todo's
|
2020-09-10 00:07:06 +02:00 |
|
Irmen de Jong
|
49a0584c54
|
added a %target directive
|
2020-09-09 22:53:34 +02:00 |
|
Irmen de Jong
|
e21aa2c8f0
|
better naming of the optimized math mult routines
|
2020-09-09 22:16:37 +02:00 |
|
Irmen de Jong
|
40071b1431
|
fix compiler crash with adding too many typecasts to args. useless lsb() and msb() are optimized away.
|
2020-09-09 21:37:56 +02:00 |
|
Irmen de Jong
|
02e29e6990
|
added some preliminary clobber specs to some cx16 graphics calls, This fixes the 3d cube gfx
|
2020-09-07 04:06:46 +02:00 |
|
Irmen de Jong
|
e19de0901e
|
Fix cx16 system reset. Added cx16 VIA registers. Fix cx16 VERA register widths.
|
2020-09-07 03:09:09 +02:00 |
|
Irmen de Jong
|
137d506e42
|
improve register arg passing again
|
2020-09-07 02:29:03 +02:00 |
|
Irmen de Jong
|
90c4a26d52
|
we don't implement asmsub params via @stack yet
|
2020-09-07 01:24:10 +02:00 |
|
Irmen de Jong
|
f378a8997b
|
improved ability to use register X in asm subroutine fuction arguments
|
2020-09-07 00:25:51 +02:00 |
|
Irmen de Jong
|
1377bed988
|
fix assembly for cx16 when zp is not basicsafe
|
2020-09-06 17:58:05 +02:00 |
|
Irmen de Jong
|
8f9f947c42
|
fix some issues with float const 0.0 and 1.0
|
2020-09-05 02:07:41 +02:00 |
|
Irmen de Jong
|
37f6c2858f
|
warning about attempt to put floats in zp
|
2020-09-05 01:45:58 +02:00 |
|
Irmen de Jong
|
13d7f239ab
|
floating point 1.0 no longer referenced from ROM because cx16 doesn't have it. Added some more cx16 examples.
|
2020-09-05 00:17:58 +02:00 |
|
Irmen de Jong
|
a6f3c84e28
|
fix cx16 word sign extend in bitshift
|
2020-09-04 22:38:03 +02:00 |
|
Irmen de Jong
|
809917f13b
|
version 4.1
|
2020-08-31 21:44:38 +02:00 |
|
Irmen de Jong
|
2b35498370
|
added CX16 txt.setcc and swirl examples that use it
|
2020-08-31 21:01:18 +02:00 |
|
Irmen de Jong
|
f45eabdd9e
|
added CX16 VERA registers, made txt.fill_screen work on CX16
|
2020-08-31 18:23:52 +02:00 |
|
Irmen de Jong
|
438f3ee8d2
|
make GIVUAYFAY work (unsigned word to float)
|
2020-08-31 17:16:51 +02:00 |
|
Irmen de Jong
|
4bea31f051
|
fl_zero fix
|
2020-08-31 01:04:04 +02:00 |
|
Irmen de Jong
|
5eae7a2b93
|
tweak mandelbrots and c64 graphics plot() doesnt work with XY parameter
|
2020-08-31 00:36:40 +02:00 |
|
Irmen de Jong
|
364ef3e55c
|
tweak cx16 mandelbrots
|
2020-08-31 00:03:05 +02:00 |
|
Irmen de Jong
|
e61818f194
|
tweak cx16 mandelbrots
|
2020-08-30 19:31:20 +02:00 |
|
Irmen de Jong
|
5d90871789
|
got floating points working in commanderx16, added txt.color() to set text color
|
2020-08-30 00:15:18 +02:00 |
|
Irmen de Jong
|
88a9e09918
|
got floating points working in commanderx16
|
2020-08-29 23:55:26 +02:00 |
|
Irmen de Jong
|
c50ecf6055
|
fix for loop asm creation with word loopvar
|
2020-08-29 02:05:24 +02:00 |
|
Irmen de Jong
|
a18de75da9
|
fix compiler loop and missing type checks on for loop range values
|
2020-08-29 01:48:41 +02:00 |
|
Irmen de Jong
|
e112dfd910
|
implemented signed byte and word division
|
2020-08-29 00:00:53 +02:00 |
|
Irmen de Jong
|
9154d8bd37
|
optimizing X register saving for 65c02 using phx/plx instead of zp location
|
2020-08-28 22:11:33 +02:00 |
|
Irmen de Jong
|
0b55372b3b
|
cleanup cx16 things and added call signatures. c64graphics moved into built-in libraries.
|
2020-08-28 21:42:53 +02:00 |
|
Irmen de Jong
|
3ad7fb010f
|
clearer about emulator
|
2020-08-27 21:09:59 +02:00 |
|
Irmen de Jong
|
a6f564ad88
|
version 4.0
|
2020-08-27 20:54:08 +02:00 |
|
Irmen de Jong
|
d97da3bb7b
|
implemented almost all math operations
|
2020-08-27 20:47:22 +02:00 |
|
Irmen de Jong
|
a77d3c92ad
|
implemented remaining float operations
|
2020-08-27 19:47:50 +02:00 |
|
Irmen de Jong
|
6d17e5307c
|
fixed typecasting of const arguments once again
|
2020-08-27 19:06:27 +02:00 |
|
Irmen de Jong
|
4ffb194847
|
readme and version
|
2020-08-27 18:18:29 +02:00 |
|
Irmen de Jong
|
f08fc18ab5
|
renamed c64scr. to txt.
|
2020-08-27 18:10:22 +02:00 |
|
Irmen de Jong
|
9cec554f7c
|
moved the type conversion routines to their own library file to avoid duplication
|
2020-08-26 20:52:38 +02:00 |
|
Irmen de Jong
|
08b25e610d
|
commander x16 improvements
|
2020-08-26 19:34:12 +02:00 |
|
Irmen de Jong
|
e896d5a1a6
|
ver
|
2020-08-26 02:03:18 +02:00 |
|
Irmen de Jong
|
b939562062
|
added preliminary CommanderX16 machine target support. Fixed nullpointer when importing a missing file.
|
2020-08-26 01:56:26 +02:00 |
|
Irmen de Jong
|
256781bba5
|
added missing in-place bitwise operator code
|
2020-08-25 22:26:05 +02:00 |
|
Irmen de Jong
|
19705196d6
|
separate varnames and other symbol names
|
2020-08-25 22:08:52 +02:00 |
|
Irmen de Jong
|
3ce692bb10
|
even better machinetarget independence
|
2020-08-25 19:56:53 +02:00 |
|
Irmen de Jong
|
78bdbde3ae
|
refer to ZP scratch constants from asm code via the global P8ZP constants as well
|
2020-08-25 19:44:08 +02:00 |
|
Irmen de Jong
|
8d8c066447
|
made the ZP and compilation target more generic
|
2020-08-25 19:32:31 +02:00 |
|
Irmen de Jong
|
5da9379c37
|
making zeropage more configurable for future different machine targets
|
2020-08-25 18:10:06 +02:00 |
|
Irmen de Jong
|
032d20ff37
|
added the missing stack assignments
|
2020-08-25 17:43:35 +02:00 |
|
Irmen de Jong
|
d19b17cbfe
|
optimize strlen()
|
2020-08-25 17:31:47 +02:00 |
|
Irmen de Jong
|
4a4f8ff5db
|
subroutine parameters can be allocated on the zp now as well
|
2020-08-25 16:47:21 +02:00 |
|
Irmen de Jong
|
0f9e167df3
|
proper name
|
2020-08-25 00:59:02 +02:00 |
|
Irmen de Jong
|
144199730f
|
refactored and optimized load/store byte from pointervar
|
2020-08-25 00:18:33 +02:00 |
|
Irmen de Jong
|
4bb4eab3b2
|
cleanup
|
2020-08-24 23:18:46 +02:00 |
|
Irmen de Jong
|
cf9151f669
|
use AsmAssignment preferrably over creating new ast node for codegen
|
2020-08-24 22:45:43 +02:00 |
|
Irmen de Jong
|
aef4598cec
|
comments
|
2020-08-24 02:56:22 +02:00 |
|
Irmen de Jong
|
3ada0fdf84
|
function call register args code consolidation, fix asm for loading word value from variable into register
|
2020-08-24 01:42:44 +02:00 |
|
Irmen de Jong
|
a5d97b326e
|
bugfix byte array assignment
|
2020-08-24 00:48:19 +02:00 |
|
Irmen de Jong
|
2640015fb1
|
move
|
2020-08-24 00:26:26 +02:00 |
|
Irmen de Jong
|
6cd42ddafe
|
cleanup
|
2020-08-23 23:28:25 +02:00 |
|
Irmen de Jong
|
1f17c22132
|
more array access optimizations
|
2020-08-23 22:36:49 +02:00 |
|
Irmen de Jong
|
5c62f612cc
|
cleanup
|
2020-08-23 20:34:27 +02:00 |
|
Irmen de Jong
|
b9ca1c2e2c
|
more uniform code for array indexing (all using scaled offset now)
|
2020-08-23 20:25:00 +02:00 |
|
Irmen de Jong
|
93b2ff2e52
|
fix postincrdecr on array value
|
2020-08-23 18:52:19 +02:00 |
|
Irmen de Jong
|
3991d23a69
|
refactoring
|
2020-08-23 18:20:57 +02:00 |
|
Irmen de Jong
|
1be139759c
|
better names
|
2020-08-23 16:08:31 +02:00 |
|
Irmen de Jong
|
d0674ad688
|
better names, reorder
|
2020-08-23 14:36:24 +02:00 |
|
Irmen de Jong
|
ffb47458ff
|
better names
|
2020-08-23 13:56:21 +02:00 |
|
Irmen de Jong
|
84ec1be8a4
|
assign type relax
|
2020-08-23 13:31:14 +02:00 |
|
Irmen de Jong
|
f4dafec645
|
assign type assert
|
2020-08-23 12:52:27 +02:00 |
|
Irmen de Jong
|
97ce72521d
|
for arrays, use the element's datatype more instead of the array decl type
|
2020-08-23 12:03:52 +02:00 |
|
Irmen de Jong
|
d2f0e74879
|
use sourcetype
|
2020-08-23 11:31:33 +02:00 |
|
Irmen de Jong
|
d9e3895c45
|
start with yet another codegen restructure, this time to make the assignment of values even more explicit for the codegen
|
2020-08-23 02:05:01 +02:00 |
|
Irmen de Jong
|
5075901830
|
work
|
2020-08-22 23:39:27 +02:00 |
|
Irmen de Jong
|
f1193bb5a0
|
Better error message
|
2020-08-22 23:13:53 +02:00 |
|
Irmen de Jong
|
acc942f690
|
added some more asm code optimizations by splitting certain assignments
|
2020-08-22 22:53:21 +02:00 |
|
Irmen de Jong
|
e947067dcf
|
fixed source code output issue
|
2020-08-22 22:23:00 +02:00 |
|
Irmen de Jong
|
bd9ebf4603
|
flipped the order of the parameters of mkword() so it's now mkword(msb, lsb) for easier readability
|
2020-08-22 21:13:38 +02:00 |
|