Irmen de Jong
|
b5289511ba
|
don't remove empty when choice from the list of choices!
|
2021-02-21 15:11:19 +01:00 |
|
Irmen de Jong
|
b6ded8501f
|
added 'align_word' and 'align_page' block options to control block start address alignment in the assembler
|
2021-02-21 01:24:44 +01:00 |
|
Irmen de Jong
|
781915d2cf
|
reducing dependencies
|
2021-02-20 17:54:33 +01:00 |
|
Irmen de Jong
|
d23c2eed86
|
test
|
2021-02-20 16:58:24 +01:00 |
|
Irmen de Jong
|
15695a304e
|
start address of blocks without explicit memory address, is now word-aligned in memory
|
2021-02-20 03:06:00 +01:00 |
|
Irmen de Jong
|
0ed3d951a7
|
don't require carry parameter Pc to asmsubs to be last
|
2021-02-20 02:27:57 +01:00 |
|
Irmen de Jong
|
b543cc34cd
|
no longer warn about removing unused asmsubs
|
2021-02-18 01:52:56 +01:00 |
|
Irmen de Jong
|
791dbbab9b
|
fixed block label itself not getting the correct memory address in the assembly
fixed %asmbinary relative path issues
|
2021-02-18 01:28:33 +01:00 |
|
Irmen de Jong
|
2f97aedc3c
|
fixed invalid removal of string tag from memory()
|
2021-02-16 23:58:31 +01:00 |
|
Irmen de Jong
|
ab544ee965
|
improved string constant interning; no longer output duplicate strings in the Ast
|
2021-02-16 23:43:38 +01:00 |
|
Irmen de Jong
|
194fbcdd91
|
todos
|
2021-02-15 04:41:33 +01:00 |
|
Irmen de Jong
|
1e3930aae2
|
fix bug in evaluating logical expressions if one of the operands was not boolean 1 or 0
|
2021-02-14 18:29:05 +01:00 |
|
Irmen de Jong
|
53f0318187
|
version 6.1
|
2021-02-14 00:07:45 +01:00 |
|
Irmen de Jong
|
f6136891cc
|
optimized for loop over const bytes, fixed downto 1
|
2021-02-13 13:46:02 +01:00 |
|
Irmen de Jong
|
1e22170302
|
added graphical starmaps to textelite
|
2021-02-11 00:23:36 +01:00 |
|
Irmen de Jong
|
321fdd10d1
|
ported tehtriz to Cx16
|
2021-02-10 21:55:14 +01:00 |
|
Irmen de Jong
|
7c09ac632c
|
got rid of the --longOptionNames in the cli argparser
|
2021-02-10 21:26:46 +01:00 |
|
Irmen de Jong
|
bcd0db984d
|
reducing ast dependencies - moved ErrorReporter back to compiler module
|
2021-02-09 01:15:31 +01:00 |
|
Irmen de Jong
|
1070dedd7c
|
todo
|
2021-02-07 19:08:47 +01:00 |
|
Irmen de Jong
|
d7a6b20028
|
todo
|
2021-02-07 01:14:10 +01:00 |
|
Irmen de Jong
|
cefef3d1be
|
todo
|
2021-02-06 15:22:31 +01:00 |
|
Irmen de Jong
|
cc96ab7a9b
|
assignment source now also treats cx16.r[0-15] as registers
no longer create useless assignment code for r0=r0
|
2021-02-06 13:01:45 +01:00 |
|
Irmen de Jong
|
49ea31c0a4
|
fix shift signed word right
|
2021-02-06 01:23:31 +01:00 |
|
Irmen de Jong
|
2395863e7e
|
asmsubs: fix clobbering and optimize register usage for loading the arguments
|
2021-01-29 01:52:49 +01:00 |
|
Irmen de Jong
|
dd2c436dc6
|
tweaked repeat
|
2021-01-25 23:39:54 +01:00 |
|
Irmen de Jong
|
9f047ba752
|
palette.set_monochrome() now has 2 arguments: screen and draw color RGB values
|
2021-01-24 04:15:15 +01:00 |
|
Irmen de Jong
|
cdc6d9aa65
|
moved cx16 imageviewer into its own git repo. Version 6.0.
|
2021-01-23 23:49:17 +01:00 |
|
Irmen de Jong
|
997bc21feb
|
added offsetof() to get the byte offset of struct members.
|
2021-01-23 23:11:57 +01:00 |
|
Irmen de Jong
|
bf69219f98
|
allow uwordpointer[index] syntax as equivalent to @(uwordpointer+index) index can be >255 here!
|
2021-01-23 22:39:30 +01:00 |
|
Irmen de Jong
|
f34f9329f1
|
fixed bug in memcopy
|
2021-01-23 19:49:53 +01:00 |
|
Irmen de Jong
|
90271d0dcd
|
textelite was okay
|
2021-01-23 19:01:02 +01:00 |
|
Irmen de Jong
|
f9fd426843
|
Merge branch 'pointer-index-optimize'
# Conflicts:
# docs/source/todo.rst
|
2021-01-23 15:57:23 +01:00 |
|
Irmen de Jong
|
6f0103398b
|
fix Y register clobbering in pointer access code
|
2021-01-23 15:24:41 +01:00 |
|
Irmen de Jong
|
afb60db382
|
todo
|
2021-01-20 18:43:08 +01:00 |
|
Irmen de Jong
|
5731b876ff
|
textelite save bug found
|
2021-01-20 01:36:46 +01:00 |
|
Irmen de Jong
|
055f917a2e
|
fixed missing code for certain memread expressions when casted to uword
|
2021-01-20 01:30:11 +01:00 |
|
Irmen de Jong
|
4ed7fb771c
|
started pointer access optimization
|
2021-01-20 00:17:33 +01:00 |
|
Irmen de Jong
|
40cc216557
|
optimize pointer var access if var is already on zeropage
|
2021-01-16 18:31:37 +01:00 |
|
Irmen de Jong
|
1481f92cb0
|
optimize memory read expression of ptr + constant index
|
2021-01-16 17:41:15 +01:00 |
|
Irmen de Jong
|
3dcef89a74
|
optimize (zp),y instructions for 65c02 to use (zp)
|
2021-01-15 19:14:35 +01:00 |
|
Irmen de Jong
|
b128b79132
|
clearer description of memory()
|
2021-01-13 22:32:17 +01:00 |
|
Irmen de Jong
|
b9ddde0f12
|
assem
|
2021-01-12 03:45:18 +01:00 |
|
Irmen de Jong
|
f61682cdc7
|
moved various miscellaneous builtin functions such as exit() and progend() to sys.*
|
2021-01-08 16:44:34 +01:00 |
|
Irmen de Jong
|
3d09d605e1
|
moved memcopy, memset, memsetw builtin functions to sys.*
|
2021-01-08 01:09:37 +01:00 |
|
Irmen de Jong
|
025dde264a
|
move target() builtin to sys.target constant
|
2021-01-07 23:36:28 +01:00 |
|
Irmen de Jong
|
58f37513e7
|
removed all string related builtin functions and moved them to separate routines in new 'string' library module
|
2021-01-07 20:01:11 +01:00 |
|
Irmen de Jong
|
bec2224c3d
|
clearer naming
|
2021-01-07 01:25:50 +01:00 |
|
Irmen de Jong
|
76101d7f8d
|
assem
|
2021-01-05 22:56:52 +01:00 |
|
Irmen de Jong
|
6fa7debee5
|
todo
|
2021-01-05 02:17:51 +01:00 |
|
Irmen de Jong
|
e6a1442296
|
sys.wait() no longer resets the jiffyclock to zero
|
2021-01-03 02:45:25 +01:00 |
|
Irmen de Jong
|
cb65480c6c
|
moved wait() and reset_system() to sys block so they are now unified across c64 and cx16
|
2021-01-03 02:36:45 +01:00 |
|
Irmen de Jong
|
f0930d8a18
|
added c64.RDTIM16() utility routine to just get the lower 16 bits of the jiffy clock
|
2021-01-02 20:59:48 +01:00 |
|
Irmen de Jong
|
baf9dfb46c
|
assem
|
2021-01-02 20:33:07 +01:00 |
|
Irmen de Jong
|
b4931c9a1f
|
optimize horzontal_line drawing
|
2020-12-30 18:58:47 +01:00 |
|
Irmen de Jong
|
6777d952c1
|
fixed crash when loopvar in for loop wasn't defined
|
2020-12-28 00:30:08 +01:00 |
|
Irmen de Jong
|
9e2c52e1ec
|
added Cx16 highresbitmap example. added stippled drawing to gfx2 monochrome mode
|
2020-12-27 23:57:13 +01:00 |
|
Irmen de Jong
|
dd82e550d5
|
adding rect and fillrect to gfx2
|
2020-12-27 17:34:25 +01:00 |
|
Irmen de Jong
|
b40e1eabb9
|
added memory() function for memory slab allocations
|
2020-12-27 02:28:30 +01:00 |
|
Irmen de Jong
|
3b8e18004c
|
fixed callgraph issue that allocated ALL variables in a (library) module even though some clearly weren't used at all. Variables declared in block level scope in a library are still all allocated / defined due to the nature of a library module with lists of definitions
|
2020-12-27 01:02:36 +01:00 |
|
Irmen de Jong
|
4c03950c28
|
changed 'c64colors' module to 'palette' and added more general Cx16 palette manipulation routines in there.
|
2020-12-27 00:35:25 +01:00 |
|
Irmen de Jong
|
170a0183f8
|
added 'inline' keyword to force inlining of trivial subroutines
|
2020-12-26 05:34:14 +01:00 |
|
Irmen de Jong
|
b3b3cf3807
|
todo
|
2020-12-23 02:53:30 +01:00 |
|
Irmen de Jong
|
f0f6150e18
|
fix problem with reuse of auto-indexer-variables that could result in wrong code for routines using multiple array indexings
|
2020-12-23 02:30:46 +01:00 |
|
Irmen de Jong
|
d65cfbf093
|
fixed math.mul_word_40 that was actually doing *80...
|
2020-12-23 00:54:11 +01:00 |
|
Irmen de Jong
|
5a2f8fdfe1
|
asm-subroutines that ONLY return a value in the Carry or Overflow status register can now be used in an assignment to store that value.
|
2020-12-22 12:44:03 +01:00 |
|
Irmen de Jong
|
bba4f84503
|
added target() function
|
2020-12-22 06:13:14 +01:00 |
|
Irmen de Jong
|
d22df22f7d
|
fix examples for cx16 register syntax
|
2020-12-21 23:45:26 +01:00 |
|
Irmen de Jong
|
50213f146a
|
undefined symbol errors are no longer reported one at a time but all at once
|
2020-12-21 13:03:56 +01:00 |
|
Irmen de Jong
|
8b630798d8
|
documented the subroutine calling convention
|
2020-12-19 03:18:40 +01:00 |
|
Irmen de Jong
|
e0315bffdc
|
decided not to change mkword() again, added note to docs about argument order
|
2020-12-15 22:25:06 +01:00 |
|
Irmen de Jong
|
4977d1fbd5
|
bit shift expressions are "expanded" to the target value's datatype, now also for subroutine arguments.
implemented word bit shifts by variable number of bits.
|
2020-12-14 20:44:48 +01:00 |
|
Irmen de Jong
|
3b7a92f1b4
|
adding strcopy()
|
2020-12-14 17:26:17 +01:00 |
|
Irmen de Jong
|
41e1e1cbb0
|
adding pcxviewer
|
2020-12-12 02:40:54 +01:00 |
|
Irmen de Jong
|
34babfb5de
|
added diskio.list_files(). ci-viewer now loads all *.ci files it finds.
|
2020-12-11 22:36:14 +01:00 |
|
Irmen de Jong
|
8dcd49934a
|
added progend() builtin function
|
2020-12-10 23:33:45 +01:00 |
|
Irmen de Jong
|
83ceb0fde9
|
optimize various simple cases for '**' (pow) like 2**x => bitshift
|
2020-12-10 22:37:12 +01:00 |
|
Irmen de Jong
|
4094f89d4a
|
not a bug
|
2020-12-10 03:22:43 +01:00 |
|
Irmen de Jong
|
74e5644f55
|
working on CI viewer
|
2020-12-10 03:00:37 +01:00 |
|
Irmen de Jong
|
2265ae9600
|
optimized setting word values into array if index is fixed number
|
2020-12-08 22:54:20 +01:00 |
|
Irmen de Jong
|
a92ec14989
|
use 'stz' more often on 65c02 cpu (cx16)
|
2020-12-06 08:30:13 +01:00 |
|
Irmen de Jong
|
bec5a261e5
|
optimizing koalaviewer
|
2020-12-06 07:47:54 +01:00 |
|
Irmen de Jong
|
f7953e4ef3
|
fix float comparison error that creeped in with no longer using the stack for that
|
2020-12-01 22:19:03 +01:00 |
|
Irmen de Jong
|
63483d1f0e
|
warnings, errors and todos
|
2020-12-01 03:24:06 +01:00 |
|
Irmen de Jong
|
05d3a2450c
|
optimized reg_less_w (word < word)
|
2020-11-30 01:53:44 +01:00 |
|
Irmen de Jong
|
88b80fed90
|
returning float values now via fac1 instead of stack
|
2020-11-23 22:14:45 +01:00 |
|
Irmen de Jong
|
acdbd0c391
|
todos for next version
|
2020-11-22 19:18:57 +01:00 |
|
Irmen de Jong
|
510ca042c9
|
stack tested for most example programs
|
2020-11-22 18:35:43 +01:00 |
|
Irmen de Jong
|
125f6205f2
|
optimizing assigning an array value to a var
|
2020-11-22 17:44:55 +01:00 |
|
Irmen de Jong
|
d1febc0208
|
all in-place byte assignments now without translateExpression()
|
2020-11-22 01:38:53 +01:00 |
|
Irmen de Jong
|
340b1c2e42
|
added balls demo/benchmark
|
2020-11-21 18:03:57 +01:00 |
|
Irmen de Jong
|
7e0f7ba438
|
todos
|
2020-11-20 23:46:14 +01:00 |
|
Irmen de Jong
|
2f1f20ea11
|
rename
|
2020-11-19 00:28:49 +01:00 |
|
Irmen de Jong
|
d212f69d89
|
++/-- and @Pc without translateExpression()
|
2020-11-17 23:40:42 +01:00 |
|
Irmen de Jong
|
edf5e69d39
|
optimized swap()
|
2020-11-15 18:04:54 +01:00 |
|
Irmen de Jong
|
5c9e0c9f51
|
emit extra nop for breakpoints so vice label list works again (requires 64tass 1.55.2257 or newer!)
|
2020-11-15 14:31:06 +01:00 |
|
Irmen de Jong
|
d29ce78c86
|
todos and version
|
2020-11-10 22:44:48 +01:00 |
|
Irmen de Jong
|
cd99fe46fd
|
finished call convention change for builtin functions now no longer via stack
|
2020-11-10 00:43:45 +01:00 |
|
Irmen de Jong
|
e0c5ccc16b
|
begun with converting builtin functions to new call convention
|
2020-11-02 23:00:20 +01:00 |
|
Irmen de Jong
|
8af2380a47
|
pair
|
2020-11-01 18:00:20 +01:00 |
|
Irmen de Jong
|
431f2a2088
|
optimized memset and memcopy on CX16, memcopy can deal with any size now
|
2020-11-01 08:00:32 +01:00 |
|