Commit Graph

1075 Commits

Author SHA1 Message Date
Irmen de Jong
112a7b09f2 added codegen for expression that needs the status-flag register result as a value on the stack 2021-03-24 21:42:27 +01:00
Irmen de Jong
af4de6d2fc replacing complex array indexer expressions moved to BeforeAsmGeneration + use cx16 virtualregister instead of adding temp variables for this 2021-03-23 23:44:14 +01:00
Irmen de Jong
3626828ceb decided 2021-03-22 01:45:19 +01:00
Irmen de Jong
24b77fb5a5 comments. 2021-03-21 21:10:29 +01:00
Irmen de Jong
1505fe686a updated vtui example 2021-03-21 20:40:35 +01:00
Irmen de Jong
ca868ae19e added cx16.vload() (like the VLOAD basic instruction) 2021-03-20 02:39:53 +01:00
Irmen de Jong
3e286dd14c move test 2021-03-18 19:34:54 +01:00
Irmen de Jong
11247d52b1 fix bugs in word <= and >= comparisons 2021-03-18 19:20:48 +01:00
Irmen de Jong
7f21d89fea moved test programs to test folder in compiler module 2021-03-17 20:15:16 +01:00
Irmen de Jong
ef64881528 busy creating extensive comparison test suite 2021-03-17 19:35:22 +01:00
Irmen de Jong
9a6bd760bd fixed issues in uword '>' 2021-03-16 23:40:32 +01:00
Irmen de Jong
00b9766aea fixed issues in word '>' 2021-03-16 23:22:58 +01:00
Irmen de Jong
d2ab5f230d example TODOs 2021-03-16 01:09:25 +01:00
Irmen de Jong
b5523c7077 don't optimize with inlining too aggressively (code bloat) 2021-03-16 00:33:15 +01:00
Irmen de Jong
bf23ad78e6 improve byte '<' and '>' codegen 2021-03-15 22:26:00 +01:00
Irmen de Jong
ded1d19737 improve '==' and '!=' codegen 2021-03-15 19:29:32 +01:00
Irmen de Jong
496a3b0d2c todo 2021-03-15 18:56:25 +01:00
Irmen de Jong
6922333755 add a cmp(x,y) function that returns no value but only sets the status bits based off the comparison (can be used with a conditional jump afterwards) 2021-03-13 15:11:22 +01:00
Irmen de Jong
50a306f492 line drawing fixes 2021-03-09 22:11:30 +01:00
Irmen de Jong
6995ee2d17 fix cx16 bresenham line inaccuracy 2021-03-09 22:04:19 +01:00
Irmen de Jong
6c60ea9cac allocate even more c64 zeropage locations for floats 2021-03-09 21:47:36 +01:00
Irmen de Jong
6bd205c02a fix c64 bresenham line inaccuracy 2021-03-09 21:07:55 +01:00
Irmen de Jong
9120e1de88 fix ubyte/uword to float conversion crashes on Commander X16 2021-03-08 23:21:52 +01:00
Irmen de Jong
60e169bd87 added optimized integer square (x*x) routine 2021-03-08 23:08:47 +01:00
Irmen de Jong
a1729b65ab fix min(), max(), sum(), abs() 2021-03-06 22:57:22 +01:00
Irmen de Jong
2950d26c8e array and struct value assignments now via memcopy instead of assignment per element 2021-03-06 22:10:03 +01:00
Irmen de Jong
4f8d4a9585 use memcopy to assign arrays 2021-03-06 19:01:16 +01:00
Irmen de Jong
d787795759 simplified 2021-03-06 15:43:23 +01:00
Irmen de Jong
2770254fd9 removed inline assembly from bobs demo 2021-03-06 14:31:26 +01:00
Irmen de Jong
de04bd8cfa added more convenient number-to-string functions to conv library 2021-03-06 13:47:27 +01:00
Irmen de Jong
076a547f91 added more convenient number-to-string functions to conv library 2021-03-06 13:34:57 +01:00
Irmen de Jong
dffd0a2706 added fastrnd8() with the old rnd() generator code in it, new code for rnd() uses the much better rndw() generator now. 2021-03-05 22:49:14 +01:00
Irmen de Jong
26502c949a add unlimited bobs example 2021-03-05 19:05:13 +01:00
Irmen de Jong
96ba9f5902 spelling correction 2021-03-04 01:31:29 +01:00
Irmen de Jong
3a6ba0ab71 added 'kefrenbars' example 2021-03-03 01:09:18 +01:00
Irmen de Jong
32d894d6b6 optimized repeat loop for word counts 2021-02-28 21:22:46 +01:00
Irmen de Jong
543efa4299 attempt 2 at optimizing repeats 2021-02-28 21:02:17 +01:00
Irmen de Jong
eba0708099 Revert "optimized repeat loop for word counts"
This reverts commit 51e6bf0d
2021-02-28 20:29:28 +01:00
Irmen de Jong
51e6bf0d45 optimized repeat loop for word counts 2021-02-28 17:34:18 +01:00
Irmen de Jong
07b5c44a54 preparing to optimize 16 bit repeat loop 2021-02-28 17:13:15 +01:00
Irmen de Jong
7e3e18a5c7 deal with 'bra' better on 65c02 2021-02-28 16:20:03 +01:00
Irmen de Jong
8e3ebc84f0 readme 2021-02-28 15:40:04 +01:00
Irmen de Jong
e6079dfd71 don't always use pha/pla in pointer expression code 2021-02-27 16:21:46 +01:00
Irmen de Jong
2b435fe6a5 vtui example updated to vtui 0.6 2021-02-27 03:30:21 +01:00
Irmen de Jong
4e640b11fd added kernal bank switch trick to rasterbars 2021-02-26 01:16:06 +01:00
Irmen de Jong
cd500fee8c wording 2021-02-25 00:52:27 +01:00
Irmen de Jong
1bd32c0f19 added animal guessing game example 2021-02-24 22:58:16 +01:00
Irmen de Jong
7aefca3de0 target 2021-02-24 00:17:52 +01:00
Irmen de Jong
f275ed96ea optimized palette.set_color() 2021-02-24 00:01:27 +01:00
Irmen de Jong
b0213b0565 vtui lib 2021-02-23 23:31:32 +01:00
Irmen de Jong
c677f0a875 fixed string interning to also consider the alt-encoding 2021-02-23 23:27:44 +01:00
Irmen de Jong
6e65cb2c0a added sounds to cx16 tehtriz 2021-02-23 01:29:45 +01:00
Irmen de Jong
e65c5402d7 added cx16 rasterbars example 2021-02-22 02:11:44 +01:00
Irmen de Jong
334f86480a added irq routines for cx16 2021-02-22 00:48:41 +01:00
Irmen de Jong
edf9a500d3 kernel -> kernal 2021-02-21 22:48:06 +01:00
Irmen de Jong
a95677564e changed system irq/rasterirq setting routines 2021-02-21 22:23:50 +01:00
Irmen de Jong
5540482888 compiler error for duplicate when choice labels 2021-02-21 21:26:15 +01:00
Irmen de Jong
00d735249b fix pointer write outside zeropage 2021-02-21 16:22:44 +01:00
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
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
6319269976 underscore '_' is now also mapped to petscii, to the graphical symbol 2021-02-20 02:55:06 +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
9bb5b454e4 reduce dependencies on global compilaiontarget 2021-02-18 23:44:26 +01:00
Irmen de Jong
2412f8c531 added cx16 vtui example 2021-02-18 23:16:38 +01:00
Irmen de Jong
8701d684e6 added cx16 vtui example 2021-02-18 03:45:06 +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
92ee0aefee docs: replaced old invalid c64scr names with txt 2021-02-16 23:28:35 +01:00
Irmen de Jong
99759ae853 enhanced tehtriz blocks to have light edges 2021-02-15 17:48:10 +01:00
Irmen de Jong
81930312ff added textio.setcc2() on commanderX16 to enable setting fg+bg colors. 2021-02-15 17:47:48 +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
2b870fb9f7 get rid of compiled examples. Just compile them yourself... 2021-02-14 17:13:29 +01:00
Irmen de Jong
78af2cd4dc optimize peekw() 2021-02-13 23:52:08 +01:00
Irmen de Jong
02cb237623 added poke() and pokew() builtin functions 2021-02-13 23:16:50 +01:00
Irmen de Jong
cc0f19653e added peek() and peekw() builtin functions 2021-02-13 22:38:39 +01:00
Irmen de Jong
4fff150c7b fixed mkword() bug 2021-02-13 22:00:13 +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
bdda6f502a textelite output cleanups and alignments 2021-02-10 23:19:07 +01:00
Irmen de Jong
1bbd77fddb added txt.column() 2021-02-10 22:47:49 +01:00
Irmen de Jong
9867dfcdeb ported tehtriz to Cx16 2021-02-10 21:44:35 +01:00
Irmen de Jong
34aa6cc8a2 compiler checks for conflicting register usage in sub arguments vs target parameter registers 2021-02-07 05:25:50 +01:00
Irmen de Jong
eb2d5bb1f8 fix bank arg error in gfx2.position 2021-02-06 16:58:17 +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
40e4cfb686 amiga 2021-02-04 17:47:52 +01:00
Irmen de Jong
76f459ee95 amiga 2021-02-02 23:09:03 +01:00
Irmen de Jong
c478718019 fixed and optimized horiz_line for highres 4c 2021-02-01 22:03:10 +01:00
Irmen de Jong
c27248a58b amiga 2021-01-29 23:52:29 +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
69c459c8ac gfx2 highres 4colors 2021-01-28 22:28:14 +01:00
Irmen de Jong
a910c0fddb gfx2 highres 4colors 2021-01-27 02:31:20 +01:00
Irmen de Jong
52f6be2bb0 gfx2: changed screen mode numbering to a more intuitive sequence 2021-01-26 18:17:20 +01:00
Irmen de Jong
857f930dc2 amiga 2021-01-26 00:09:42 +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