jespergravgaard
|
4ad601ce72
|
Added fragment for subtracting unsigned byte from signed word.
|
2019-03-21 22:24:39 +01:00 |
|
jespergravgaard
|
8e2de5f79b
|
Updated fragment tests
|
2019-03-20 21:45:30 +01:00 |
|
Jesper Gravgaard
|
2989f16593
|
Added synthesis for using X/Y registers as intermediates when encountering pb.c1_derefidx_vbuyy/xx.
|
2019-03-20 17:09:22 +01:00 |
|
jespergravgaard
|
e48a4538bc
|
Added updated reference manual.
|
2019-03-20 08:05:49 +01:00 |
|
jespergravgaard
|
9a50e54928
|
Fixed optimization of constant addition in double array indexing. Closes #150
|
2019-03-20 07:20:00 +01:00 |
|
jespergravgaard
|
5791875d2d
|
Added clobber directive to inline kickasm.
|
2019-03-19 07:48:16 +01:00 |
|
jespergravgaard
|
f67a5bc897
|
Added clobber handling to inline ASM. Added clobbers directive to specify what is clobbered. If inline ASM has a JSR and no clobbers directive all registers are assumed to be clobbered. Closes #5
|
2019-03-18 20:54:08 +01:00 |
|
jespergravgaard
|
5cf5d88228
|
Implemented handling of default successor PHI blocks in logical or if()'s. Closes #149
|
2019-03-18 18:25:50 +01:00 |
|
jespergravgaard
|
ff716c0343
|
Implemented handling of deafult successor PHI blocks in
|
2019-03-18 18:24:03 +01:00 |
|
jespergravgaard
|
651bd87eaa
|
Fixed test
|
2019-03-18 02:26:13 +01:00 |
|
jespergravgaard
|
ca697a4ffd
|
Improved a plus fragment to use bcc
|
2019-03-18 02:23:29 +01:00 |
|
jespergravgaard
|
9bb967b33f
|
Implemented ASM fragment synthesis variations searching - looking through different potential fragments when generating ASM containing a constant number that matches multiple potential types.
|
2019-03-18 02:08:32 +01:00 |
|
jespergravgaard
|
d459332be1
|
Updated tests with better ASM
|
2019-03-17 22:52:25 +01:00 |
|
jespergravgaard
|
93d36f25be
|
Updated tests with better ASM
|
2019-03-17 22:49:02 +01:00 |
|
Jesper Gravgaard
|
dc76b2bed0
|
Added a lot of signed word and boolean fragments from Travis Fisher.
|
2019-03-16 17:54:38 +01:00 |
|
Jesper Gravgaard
|
ba560796dd
|
Added uses directive to inline kickasm to allow declaring used constants to prevent that they are optimized away as unused. Closes #147
|
2019-03-16 00:33:16 +01:00 |
|
jespergravgaard
|
f6dd66f3cb
|
Added support for cross-scope references inside inline ASM.
|
2019-03-15 07:59:25 +01:00 |
|
jespergravgaard
|
71743540c6
|
Added support for non-multi labels within inline ASM.
|
2019-03-15 00:30:14 +01:00 |
|
jespergravgaard
|
b4ccdef0f0
|
Problem with constant if() has been fixed!
|
2019-03-15 00:13:24 +01:00 |
|
jespergravgaard
|
4eed4f7659
|
Implemented proper handling of referenced to constants inside inline ASM. Closes #146
|
2019-03-15 00:02:33 +01:00 |
|
jespergravgaard
|
d293c47141
|
Added tests for inline assembler & kickassembler.
|
2019-03-14 23:09:50 +01:00 |
|
jespergravgaard
|
fa6ed8bff6
|
Improved compiler errors - removing exception trace and using proper exit code.
|
2019-03-12 18:14:45 +01:00 |
|
jespergravgaard
|
6adb0c6d2d
|
Improved verbosity for fragment debug output.
|
2019-03-12 17:59:35 +01:00 |
|
jespergravgaard
|
ad6a1910c8
|
Added another 2 word fragments. Added compiler commandline option to show fragment -fragment <signature>. Closes #145
|
2019-03-12 17:53:33 +01:00 |
|
Jesper Gravgaard
|
ea98c9e2eb
|
Added two additional signed word fragments.
|
2019-03-11 11:09:12 +01:00 |
|
jespergravgaard
|
8a560a294b
|
Added two missing signed word fragments.
|
2019-03-11 07:49:41 +01:00 |
|
jespergravgaard
|
3090fe4849
|
Added missing line number to error when encountering symbol that has already been declared.
|
2019-03-10 09:29:02 +01:00 |
|
jespergravgaard
|
241f8bec4d
|
Added two missing fragments and a test.
|
2019-03-10 08:24:30 +01:00 |
|
jespergravgaard
|
c2fb30a776
|
Limited fragment testing to speed it up.
|
2019-03-10 07:57:11 +01:00 |
|
jespergravgaard
|
b04edfb241
|
Added needed synthesis rules.
|
2019-03-10 01:44:47 +01:00 |
|
jespergravgaard
|
c89b4bc6b0
|
Removed rules slowing down the fragment synthesizer awaiting improvements to the synthesizer.
|
2019-03-10 01:14:35 +01:00 |
|
jespergravgaard
|
6bc35f6c34
|
Restructured fragment tests to use less memory.
|
2019-03-09 23:50:50 +01:00 |
|
jespergravgaard
|
980fc0aeb5
|
Working to improve fragment synthesis.
|
2019-03-09 20:58:51 +01:00 |
|
jespergravgaard
|
5a83c1b357
|
Fixed clobber problem that can occur during PHI transitions. Closes #10
|
2019-03-09 18:37:23 +01:00 |
|
jespergravgaard
|
4d8e083a21
|
Improved fragment synthesis of p..z1_deref_vbuaa=... to use TAY when possible.
|
2019-03-09 16:39:24 +01:00 |
|
jespergravgaard
|
a65404d7b6
|
Fixed signed word comparisons. Added tests of word comparisons. Improved fragment synthesis of p..z1_deref_vbuaa=... / p..z1_deref_vbuxx=...
|
2019-03-09 16:24:44 +01:00 |
|
jespergravgaard
|
cb8018b92a
|
Added missing word fragments. Added test of unsigned word comparisons.
|
2019-03-09 14:24:51 +01:00 |
|
jespergravgaard
|
c59f18eb82
|
Added two missing word fragments.
|
2019-03-08 22:00:28 +01:00 |
|
jespergravgaard
|
183494e141
|
Fixed infinite compiler loop when complex loops contain &&. Closes #144
|
2019-03-08 21:43:37 +01:00 |
|
jespergravgaard
|
ac73bb15e3
|
Improved number formatting of inegers in log/messages.
|
2019-03-08 06:54:46 +01:00 |
|
jespergravgaard
|
39e727711a
|
Added missing error location for illegal lvalues. Closes #143
|
2019-03-08 06:33:59 +01:00 |
|
jespergravgaard
|
0aebd2a9a1
|
Fixed error in boolean fragments.
|
2019-03-07 07:29:47 +01:00 |
|
jespergravgaard
|
3e39383963
|
Fixed error in boolean fragments.
|
2019-03-07 07:23:26 +01:00 |
|
jespergravgaard
|
0ca54a97ad
|
Added two missing word fragments.
|
2019-03-07 06:48:32 +01:00 |
|
jespergravgaard
|
0362e12880
|
Implemented default zero values for variables without ant initializer. Closes #140
|
2019-03-06 23:52:14 +01:00 |
|
jespergravgaard
|
ec863e5c43
|
Added line number to type inference errors. Closes #142
|
2019-03-04 23:55:38 +01:00 |
|
jespergravgaard
|
5e7d908018
|
Better error when assigning an undeclared variable. Closes #141
|
2019-03-04 23:38:07 +01:00 |
|
jespergravgaard
|
20cce60f40
|
Only removing intermediates that contain lo/hi operator.
|
2019-03-01 08:47:12 +01:00 |
|
jespergravgaard
|
ed2d992333
|
Fixed problem, where assigning to low/high value left an unused intermediate variable. Closes #129
|
2019-03-01 00:27:26 +01:00 |
|
jespergravgaard
|
de58d9b6dd
|
Added missing ref files
|
2019-02-24 23:24:20 +01:00 |
|
jespergravgaard
|
0a955d6bec
|
Finished constant string consolidation. Closes #90
|
2019-02-24 23:23:57 +01:00 |
|
jespergravgaard
|
fe0035af82
|
Added initial constant string consolidation.
|
2019-02-24 22:18:27 +01:00 |
|
jespergravgaard
|
dfd9af4d84
|
Added ASM function signature comment. Closes #82.
|
2019-02-19 20:51:48 +01:00 |
|
jespergravgaard
|
af54695232
|
Added support for block comments.
|
2019-02-18 00:12:30 +01:00 |
|
jespergravgaard
|
f0d77acb29
|
Added comments to variables identified as constants.
|
2019-02-17 18:21:16 +01:00 |
|
jespergravgaard
|
b8ab7c6c49
|
Added comments before loops
|
2019-02-17 17:53:19 +01:00 |
|
jespergravgaard
|
41a7053b25
|
Implemented statement comments. Assignments are working OK. Some are still thrown away during optimizations.
|
2019-02-17 15:50:42 +01:00 |
|
jespergravgaard
|
27cfaf0ecf
|
Implemented file-level comments. Added a few comment tests.
|
2019-02-17 11:03:55 +01:00 |
|
jespergravgaard
|
69562b7fa9
|
Added comments to constants in ASM.
|
2019-02-17 00:49:19 +01:00 |
|
jespergravgaard
|
67e223d629
|
Added procedure comments to the compiled assembler.
|
2019-02-16 23:23:55 +01:00 |
|
jespergravgaard
|
b5c61aad5d
|
Added level colors
|
2019-02-10 22:03:55 +01:00 |
|
jespergravgaard
|
7f78991374
|
Added next piece
|
2019-02-10 21:10:40 +01:00 |
|
jespergravgaard
|
bfce6bffd1
|
Renamed tests.
|
2019-02-10 19:11:50 +01:00 |
|
Jesper Gravgaard
|
dcd4e070ba
|
Implemented new recursion check that performs much better on programs with many different branches.
|
2019-02-03 17:36:34 +01:00 |
|
jespergravgaard
|
347a5d0331
|
Refactored call graph analysis in preparation for improved recursion detection.
|
2019-02-03 08:32:38 +01:00 |
|
jespergravgaard
|
b6038ccf0a
|
Added error when condition is non-boolean. Closes #134
|
2019-01-17 23:28:39 +01:00 |
|
jespergravgaard
|
bb9a4ac461
|
Merge remote-tracking branch 'origin/master'
# Conflicts:
# src/test/java/dk/camelot64/kickc/test/TestPrograms.java
|
2019-01-12 13:59:14 +01:00 |
|
jespergravgaard
|
a6fc9c157e
|
Added missing fragments for rolling variable amounts - and a few tests.
|
2019-01-12 13:58:12 +01:00 |
|
Jesper Gravgaard
|
4d3056bc0e
|
Added another scrolling screen test and a fragment
|
2019-01-11 20:23:30 +01:00 |
|
jespergravgaard
|
7b65dfedfb
|
Fixed new testAdded missing word-fragment.
|
2019-01-11 06:42:05 +01:00 |
|
jespergravgaard
|
35ffcbf914
|
Fixed new test
|
2019-01-10 23:00:05 +01:00 |
|
jespergravgaard
|
8910ba56a2
|
Fixed issue when removing unused procedures that is discovered during static analysis.
|
2019-01-10 22:58:00 +01:00 |
|
jespergravgaard
|
f664e8183f
|
Fixed issue with constant consolidation creating literals that was not calculatable.
|
2019-01-08 00:07:24 +01:00 |
|
jespergravgaard
|
e8d00067ef
|
Fixed version number
|
2019-01-07 22:38:29 +01:00 |
|
jespergravgaard
|
854b32d5b3
|
Fixed an array index optimization that was to aggressive.
|
2019-01-07 21:58:40 +01:00 |
|
jespergravgaard
|
9a3bd627f8
|
Added 2 missing fragments,
|
2019-01-06 23:48:25 +01:00 |
|
jespergravgaard
|
d2df1dfb68
|
Added missing fragment.
|
2019-01-06 17:45:26 +01:00 |
|
jespergravgaard
|
b4b4658696
|
Added a few missing 16-bit fragments.
|
2019-01-05 17:31:59 +01:00 |
|
jespergravgaard
|
aa109d236f
|
Now treats char 160 (nbsp) like whitespace. Added sin-sprites on top of sprite-tester.
|
2019-01-03 22:52:29 +01:00 |
|
jespergravgaard
|
2866aad652
|
Fixed small issue with missing -F in kickc.bat
|
2019-01-03 21:41:00 +01:00 |
|
jespergravgaard
|
5b62308854
|
Started work on version 0.7
|
2019-01-03 20:29:48 +01:00 |
|
jespergravgaard
|
4ce4667e57
|
Moved examples around.
|
2019-01-03 19:59:31 +01:00 |
|
jespergravgaard
|
0b881a9596
|
fixed tests
|
2019-01-03 19:21:12 +01:00 |
|
jespergravgaard
|
fe29de28d5
|
fixed problem
|
2019-01-03 18:55:56 +01:00 |
|
jespergravgaard
|
8898dfb255
|
Added missing fragment for Scan/Desire.
|
2019-01-03 18:54:59 +01:00 |
|
jespergravgaard
|
db733eec53
|
Implemented new more robust sprite routine. Added game_over game state. Added GAME OVER chars to charset.
|
2019-01-03 18:15:03 +01:00 |
|
jespergravgaard
|
e35ce855b0
|
Added level-based score increase, missing fragments and support for zero-filled DWORD-arrays.
|
2018-12-31 00:05:38 +01:00 |
|
jespergravgaard
|
40a2a7b1eb
|
Added movedown speed-up based on level.
|
2018-12-30 23:36:05 +01:00 |
|
jespergravgaard
|
621c1e19e0
|
Fixed position of I
|
2018-12-30 03:58:49 +01:00 |
|
jespergravgaard
|
4432812b06
|
fixed test
|
2018-12-30 03:20:58 +01:00 |
|
jespergravgaard
|
e91ae1b60e
|
Fixed level calculation when over 9.
|
2018-12-30 03:15:59 +01:00 |
|
jespergravgaard
|
6ff6d7c2cc
|
Added level. (not correct BCD after 9)
|
2018-12-30 03:05:22 +01:00 |
|
jespergravgaard
|
27e00e5e80
|
fixed tests.
|
2018-12-30 01:54:29 +01:00 |
|
jespergravgaard
|
84db15759b
|
Fixed piece rotations to match NES tetris.
|
2018-12-30 01:35:58 +01:00 |
|
jespergravgaard
|
25d4c89445
|
Added a score renderer - and some fragments.
|
2018-12-30 01:00:45 +01:00 |
|
jespergravgaard
|
638ef22c63
|
Added score calculation (plus some missing fragments and handling of dword array initializers).
|
2018-12-30 00:12:19 +01:00 |
|
jespergravgaard
|
30ad94dda3
|
Saved memory and code by combining screen chars and extended colors in kasm-script.
|
2018-12-29 22:53:02 +01:00 |
|
jespergravgaard
|
c3e559f8c9
|
Added needed parts of font and proper colors.
|
2018-12-29 22:31:55 +01:00 |
|
jespergravgaard
|
76b13d6b55
|
Fixed sprite multiplexer when double buffering.
|
2018-12-29 18:52:23 +01:00 |
|
jespergravgaard
|
b1d358403a
|
Implemented double buffered rendering.
|
2018-12-29 17:35:46 +01:00 |
|
jespergravgaard
|
84eb93b21e
|
Fixed pixel error
|
2018-12-29 14:46:51 +01:00 |
|
jespergravgaard
|
bba1f52d56
|
Added playfield border color.
|
2018-12-29 02:40:02 +01:00 |
|
jespergravgaard
|
bd64ba36dd
|
Improved inline kickasm naming
|
2018-12-29 00:55:34 +01:00 |
|
jespergravgaard
|
006aa5b428
|
Added piece initial positions.
|
2018-12-29 00:36:24 +01:00 |
|
jespergravgaard
|
7d70b371ba
|
Closer to real tetris
|
2018-12-28 23:55:29 +01:00 |
|
jespergravgaard
|
22aa93e802
|
Added ECM mode and background gfx.
|
2018-12-27 22:57:22 +01:00 |
|
jespergravgaard
|
d956ff9fcf
|
Rearranged Tetris files.
|
2018-12-27 00:09:10 +01:00 |
|
jespergravgaard
|
53a161d52f
|
Moved sprite IRQ's to separate file.
|
2018-12-26 00:39:38 +01:00 |
|
jespergravgaard
|
d9d28f4018
|
Optimized a bit.
|
2018-12-25 23:25:42 +01:00 |
|
jespergravgaard
|
627df0bda9
|
Fixed problem where uninitialized variables resultes in compile errors. Closes #131
|
2018-12-25 22:46:58 +01:00 |
|
jespergravgaard
|
f6a566e2f8
|
Fixed tests.
|
2018-12-25 21:47:19 +01:00 |
|
jespergravgaard
|
2b25aec8ee
|
Added missing call-path to interrupts used during uplift clobber-analysis. Closes #130
|
2018-12-25 21:33:07 +01:00 |
|
jespergravgaard
|
ceb271d021
|
Fixed tests.
|
2018-12-25 17:44:43 +01:00 |
|
jespergravgaard
|
f8191e8345
|
Default runs @begin code and then optimizes to main() if no code exists outside main.
|
2018-12-25 17:04:50 +01:00 |
|
jespergravgaard
|
2be7b2ca2b
|
Fixed problem with volatiles reusing zero page addresses used by other variables. Closes #128
|
2018-12-24 15:05:46 +01:00 |
|
jespergravgaard
|
85c6f09590
|
Improved tests showcasing problems with volatiles.
|
2018-12-24 14:14:29 +01:00 |
|
jespergravgaard
|
b92ea8415b
|
Added tests showcasing problems with volatiles.
|
2018-12-24 11:12:47 +01:00 |
|
jespergravgaard
|
8ef005e64d
|
Fixed several compiler issues with volatiles.
|
2018-12-24 02:27:12 +01:00 |
|
jespergravgaard
|
fae4eb9e6c
|
Added NES bg image
|
2018-12-22 09:26:42 +01:00 |
|
jespergravgaard
|
6f4f2cdd4b
|
Added missing image
|
2018-12-19 00:34:21 +01:00 |
|
jespergravgaard
|
44d6e5fbbb
|
Fixed tests (after reincluding cmp#0)
|
2018-12-19 00:33:27 +01:00 |
|
jespergravgaard
|
45b03818e4
|
Improved remove lines implementation
|
2018-12-18 23:09:20 +01:00 |
|
jespergravgaard
|
468def2d6a
|
Minor refactoring.
|
2018-12-06 17:24:46 +01:00 |
|
jespergravgaard
|
7c74fd93d0
|
Minor refactoring.
|
2018-12-04 23:58:25 +01:00 |
|
jespergravgaard
|
33d1b90974
|
Fixed test.
|
2018-12-03 02:24:43 +01:00 |
|
jespergravgaard
|
0073fedf4f
|
Fixed test.
|
2018-12-03 01:49:28 +01:00 |
|
jespergravgaard
|
a79e318bcd
|
Working on Tetris. Implemented line removal. Fixed fragment error and added 2 missing fragments.
|
2018-12-03 01:46:48 +01:00 |
|
jespergravgaard
|
4724d7707c
|
Working on Tetris. Added colors and random piece selection (from SID voice 3 noice). Moved some code to separate files.
|
2018-12-03 00:37:54 +01:00 |
|
jespergravgaard
|
eaa8d0c3fc
|
Working on Tetris.
|
2018-12-02 23:10:02 +01:00 |
|
jespergravgaard
|
44e2075896
|
Working on Tetris. Added 3 failing tests with discovered problems.
|
2018-12-02 21:31:03 +01:00 |
|
jespergravgaard
|
04d777ec6c
|
Working on tetris
|
2018-11-28 07:27:44 +01:00 |
|
jespergravgaard
|
c20389e310
|
Added a few missing fragments and support for arrays of pointers.
|
2018-11-25 02:46:22 +01:00 |
|
jespergravgaard
|
264f854133
|
Working on 16-bit rotation comparison
|
2018-11-17 16:49:55 +01:00 |
|
jespergravgaard
|
2a25f8d79d
|
Improved logging of live ranges.
|
2018-11-11 21:51:37 +01:00 |
|
jespergravgaard
|
fc867aea3d
|
Fixed tests
|
2018-11-08 01:11:38 +01:00 |
|
jespergravgaard
|
46751edd16
|
Fixed fragment errors. Added missing fragments. Working on 16bit 3D.
|
2018-11-08 01:06:33 +01:00 |
|
jespergravgaard
|
d482815704
|
Re-added tests.
|
2018-11-08 00:14:25 +01:00 |
|
jespergravgaard
|
93a0d9110a
|
Removed surefire section.
|
2018-11-08 00:05:42 +01:00 |
|
jespergravgaard
|
659b274a60
|
Disabling all test cases - replacing with trivial test.
|
2018-11-07 23:45:29 +01:00 |
|
jespergravgaard
|
516205e1a4
|
Trying to add CI testing again. Working on improving 3D quality.
|
2018-11-07 23:41:30 +01:00 |
|
Jesper Gravgaard
|
77c0edab1a
|
improved multiply tables
|
2018-11-04 20:46:42 +01:00 |
|
Jesper Gravgaard
|
67611e548b
|
Added print_at methods
|
2018-11-03 19:02:59 +01:00 |
|
jespergravgaard
|
808ed90f83
|
Added working perspective to 3D rotation.
|
2018-10-31 00:45:59 +01:00 |
|
jespergravgaard
|
9b101f29bd
|
Improved readability.
|
2018-10-21 20:20:24 +02:00 |
|
jespergravgaard
|
4d031a82f1
|
Improved readability.
|
2018-10-21 20:00:53 +02:00 |
|
jespergravgaard
|
467f5bcbb8
|
Added missing fragments
|
2018-10-21 18:15:15 +02:00 |
|
jespergravgaard
|
6d98f18960
|
Implemented working 3d rotation.
|
2018-10-21 17:25:33 +02:00 |
|
jespergravgaard
|
8421b47760
|
Fixed constant elimination optimization. Added (unfinished) 3D example.
|
2018-10-21 16:03:19 +02:00 |
|
jespergravgaard
|
5896f483b7
|
Improved readability a bit.
|
2018-10-20 21:05:11 +02:00 |
|
jespergravgaard
|
87933460f3
|
Implemented z-rotation for 8 sprites.
|
2018-10-20 20:43:26 +02:00 |
|
jespergravgaard
|
2f1f530128
|
Optimized rotation position calculation
|
2018-10-19 02:26:42 +02:00 |
|
jespergravgaard
|
908cb3ea8d
|
Changed fast multiply to a _prepare(a) & _prepared(b) sub-functions.
Added support for "." operator in ASM.
|
2018-10-19 00:28:57 +02:00 |
|
jespergravgaard
|
5d38d8c6ec
|
Changed rotate to use 8-bit sine and 8x8 bit multiplication.
|
2018-10-18 23:28:59 +02:00 |
|
jespergravgaard
|
a6c10c5c65
|
Added fragment folder option to sh.
|
2018-10-18 22:46:41 +02:00 |
|
jespergravgaard
|
0a25830de9
|
Added rotate example
|
2018-10-18 22:36:11 +02:00 |
|
jespergravgaard
|
ead3fe7eb8
|
Added some missing fragments
|
2018-10-18 09:42:24 +02:00 |
|
jespergravgaard
|
8adbdd59e4
|
Fixed test
|
2018-10-17 23:23:54 +02:00 |
|
jespergravgaard
|
fabc107cd1
|
Merge remote-tracking branch 'origin/master'
|
2018-10-17 23:01:24 +02:00 |
|
jespergravgaard
|
5050452e23
|
Fixed infinite loop during optimization when aliase candidates end up with one single element.
|
2018-10-17 23:00:54 +02:00 |
|
Jesper Gravgaard
|
688df931f0
|
Working 16bit signed fast multiplication - with test.
|
2018-10-17 13:42:52 +02:00 |
|
jespergravgaard
|
0b4cb53d07
|
Added signed fast 16bit multiply.
|
2018-10-17 12:11:42 +02:00 |
|
jespergravgaard
|
e9892219b6
|
Added fast 16bit unsigned multiplication.
|
2018-10-17 01:40:56 +02:00 |
|
jespergravgaard
|
17cb00955c
|
Added all current verbosity options.
|
2018-10-16 17:29:00 +02:00 |
|
jespergravgaard
|
9cf226348c
|
Added a few verbosity options plus a missing fragment.
|
2018-10-16 02:02:51 +02:00 |
|
jespergravgaard
|
25f5d77f34
|
Added a few verbosity options plus a missing fragment.
|
2018-10-16 02:02:30 +02:00 |
|
jespergravgaard
|
6bd55add24
|
Moved unused fragments. Changed clobber syntax in inline kickasm.
|
2018-10-07 16:20:04 +02:00 |
|
Jesper Gravgaard
|
75b923e11e
|
Fixinf windows newlines in fragments
|
2018-10-07 12:03:45 +02:00 |
|
Jesper Gravgaard
|
7d2c09ea68
|
Fixed Win/Linux difference for fragment test
|
2018-10-07 11:36:52 +02:00 |
|
Jesper Gravgaard
|
287ffb46ed
|
Some test work
|
2018-10-07 03:10:48 +02:00 |
|
Jesper Gravgaard
|
2b5f6b8856
|
Rearraning source files to bring KC/REF and fragment files out of the JARS.
|
2018-10-07 02:32:09 +02:00 |
|
jespergravgaard
|
4373150634
|
Reinstated tests.
|
2018-10-02 02:14:12 +02:00 |
|
Jesper Gravgaard
|
0f813d9d0f
|
Fixed BAT runner
|
2018-10-02 01:53:39 +02:00 |
|
Jesper Gravgaard
|
2ec3f9dd12
|
Fixed BAT runner
|
2018-10-02 01:51:35 +02:00 |
|
jespergravgaard
|
e4e762aa13
|
Added bat file to assembly
|
2018-10-02 01:17:00 +02:00 |
|
jespergravgaard
|
00e6293e20
|
JAR file version number should now follow git tag.
|
2018-10-02 01:06:36 +02:00 |
|
Jesper Gravgaard
|
b810023859
|
Implemented initial BAT file for execution on Windows.
|
2018-10-02 00:40:58 +02:00 |
|
jespergravgaard
|
ec3790a39f
|
Added new version of the manual.
|
2018-10-02 00:08:41 +02:00 |
|
jespergravgaard
|
32d224589a
|
Added kickc.sh executor and examples of kickc code to release.
|
2018-10-01 01:15:00 +02:00 |
|
jespergravgaard
|
0b86f55829
|
Added PDF manual
|
2018-09-30 20:32:50 +02:00 |
|
jespergravgaard
|
66b1249336
|
Refactored to a single CI task - with a single artifact
|
2018-09-30 15:51:15 +02:00 |
|
Jesper Gravgaard
|
84c2e54085
|
Hoping to create beter release ZIP
|
2018-09-29 12:24:57 +02:00 |
|
jespergravgaard
|
fcd3902090
|
Added test for default interrupt type (KERNEL_MIN).
|
2018-09-26 22:44:40 +02:00 |
|
jespergravgaard
|
c70801ee85
|
Added option for controlling uplift combinations.
|
2018-09-26 22:01:15 +02:00 |
|
jespergravgaard
|
44c32ba2e8
|
Added current path to includes.
|
2018-09-26 21:13:54 +02:00 |
|
jespergravgaard
|
b777a6bd98
|
Updated libraries. Added packaging assembly to maven POM.
|
2018-09-26 19:57:15 +02:00 |
|
jespergravgaard
|
7cecb2fb71
|
Added rudimentary bitwise not.
|
2018-09-13 12:08:11 +02:00 |
|
jespergravgaard
|
5f91f3c8be
|
Added initial package phase to maven.
|
2018-09-03 00:33:16 +02:00 |
|
jespergravgaard
|
9816e4cba1
|
Fixed test
|
2018-09-01 00:03:45 +02:00 |
|
jespergravgaard
|
e335a956e7
|
Added inline hello world 2
|
2018-08-31 23:43:37 +02:00 |
|
jespergravgaard
|
82c7a6c84d
|
Improved command help
|
2018-08-31 23:22:09 +02:00 |
|
jespergravgaard
|
17ad45d453
|
Moved some KC-files to stdlib. Added option for multiple include paths.
|
2018-08-31 22:52:10 +02:00 |
|
jespergravgaard
|
7f29a344ae
|
Improved commandline to include output-directory, compilation & execution.
|
2018-08-27 01:03:15 +02:00 |
|
jespergravgaard
|
7b940014a2
|
Version 0.5. First cmdline runnable version.
|
2018-08-26 09:12:31 +02:00 |
|
jespergravgaard
|
ffba4a87c1
|
Added target to create JAR
|
2018-08-25 10:28:22 +02:00 |
|
jespergravgaard
|
c05b04ff3c
|
Created initial simple commandline using picocli.
|
2018-08-23 23:54:39 +02:00 |
|
jespergravgaard
|
8efb7f9f2f
|
Added example of (non-working) calls inside unrolled loop.
Refactored hyperscreen to use c64.kc.
|
2018-08-23 22:14:39 +02:00 |
|
jespergravgaard
|
6dca0ada51
|
Added few comments and a few new constants
|
2018-08-23 00:35:19 +02:00 |
|
jespergravgaard
|
63badba136
|
Removed a bit more logging.
|
2018-08-23 00:24:33 +02:00 |
|
jespergravgaard
|
2c6fab8fe4
|
Removed a bit more logging.
|
2018-08-22 22:38:40 +02:00 |
|
jespergravgaard
|
126c8f6e0d
|
Added detection of non-constant loops.
|
2018-08-22 22:23:43 +02:00 |
|
jespergravgaard
|
a223abdf6e
|
Now also simplifying +0 and *0 in constant values.
|
2018-08-22 12:40:19 +02:00 |
|
jespergravgaard
|
105510a9ae
|
Now consolidating constant integer increments eliminating xx+1+1+1 expressions in the output.
|
2018-08-22 11:36:38 +02:00 |
|
jespergravgaard
|
42bc31126a
|
Decreased default logging.
|
2018-08-22 11:10:10 +02:00 |
|
jespergravgaard
|
2a5cdfb064
|
A bit more inlining
|
2018-08-22 10:17:58 +02:00 |
|
jespergravgaard
|
5fe09eefde
|
Fixed test ref (and added failing infinite unroll loop)
|
2018-08-22 02:45:38 +02:00 |
|
jespergravgaard
|
a78960a823
|
Using loop unrolling in logo scroller.
|
2018-08-22 02:34:03 +02:00 |
|
jespergravgaard
|
1d339804da
|
Added a double unroll loop
|
2018-08-22 02:19:27 +02:00 |
|
jespergravgaard
|
be18a84d98
|
Working loop unrolling! There are probably still a lot of non-working cases - and the lack of loop unroll limit will definitely cause infinite loops.
|
2018-08-22 01:42:00 +02:00 |
|
jespergravgaard
|
bbeb37ea61
|
Loop unroll prepare now complete.
|
2018-08-21 16:45:07 +02:00 |
|
jespergravgaard
|
4f23ed5079
|
Split unroll prepare into separate pass
|
2018-08-21 10:01:09 +02:00 |
|
jespergravgaard
|
b19bf2246e
|
Created "loop-unroll" branch.
|
2018-08-19 21:48:26 +02:00 |
|
jespergravgaard
|
a87da922f8
|
Centralized getting all entry point blocks in the program into ControlFlowGraph
|
2018-08-12 01:03:44 +02:00 |
|
Jesper Gravgaard
|
75a8749db4
|
Moved interrrupt registers into c64.kc
|
2018-08-11 12:04:52 +02:00 |
|
Jesper Gravgaard
|
39e7ce3df1
|
Refactored all casts to pointers to use the generic OperatorCastPtr.
|
2018-08-11 11:38:19 +02:00 |
|
Jesper Gravgaard
|
129de6c3ec
|
Refactored most casts to pointers to use the generic OperatorCastPtr.
|
2018-08-11 11:30:19 +02:00 |
|
Jesper Gravgaard
|
fe7950798e
|
Added call-graph recursion in clobber-analysis for interrupt hardware clobber.
|
2018-08-11 11:08:43 +02:00 |
|
jespergravgaard
|
9a9eeec129
|
Fixed tests.
|
2018-08-11 00:52:02 +02:00 |
|
jespergravgaard
|
f33d7018ba
|
Implemented clobber analysis to ensure that hardware clobber interrupts only save the registers clobbered.
|
2018-08-11 00:48:15 +02:00 |
|
jespergravgaard
|
9ef574f32d
|
Fixed tests
|
2018-08-10 20:33:17 +02:00 |
|
jespergravgaard
|
df224c70b6
|
Fixed tests
|
2018-08-10 20:32:45 +02:00 |
|
jespergravgaard
|
f8ec74dc14
|
Implemented hardware & kernel interrupt types.
|
2018-08-10 12:46:44 +02:00 |
|
jespergravgaard
|
6a20fc33c7
|
Improved comments
|
2018-08-06 00:41:29 +02:00 |
|
jespergravgaard
|
044282e523
|
Added 2 Raster IRQ tests.
|
2018-08-06 00:37:40 +02:00 |
|
jespergravgaard
|
238cd2a531
|
Added volatile keyword and initial implementation ensuring that volatiles are not constant-optimized or put into registers.
|
2018-08-05 22:40:13 +02:00 |
|
jespergravgaard
|
b23029760a
|
IRQ referencing outside const.
|
2018-08-05 17:50:45 +02:00 |
|
jespergravgaard
|
b8841a90f5
|
Added forward reference support yo procedure references.
|
2018-08-05 17:46:42 +02:00 |
|
jespergravgaard
|
b755cd4297
|
Added interrupt types (kernel, hardware).
|
2018-08-05 17:28:02 +02:00 |
|
Jesper Gravgaard
|
f463606742
|
Implemented interrupt procedures and pointers to procedures initial support.
|
2018-08-05 13:33:23 +02:00 |
|
Jesper Gravgaard
|
c0c7a1da44
|
Fixed test
|
2018-08-04 13:11:34 +02:00 |
|
jespergravgaard
|
0763a63a66
|
Working on interrupts
|
2018-08-04 13:07:21 +02:00 |
|
jespergravgaard
|
18473295c9
|
Fixed tests
|
2018-08-03 02:08:39 +02:00 |
|
jespergravgaard
|
ca55ac68cb
|
Improved the multiplexer - now 32 sprites.
|
2018-08-03 02:02:08 +02:00 |
|
jespergravgaard
|
962fefe582
|
Improved the multiplexer
|
2018-08-03 00:07:42 +02:00 |
|
jespergravgaard
|
3559ac29d5
|
Improved multiplexer
|
2018-08-02 23:05:33 +02:00 |
|
jespergravgaard
|
0f4490dfb0
|
Implemented sprite multiplexer
|
2018-08-02 22:57:20 +02:00 |
|
jespergravgaard
|
3658d9f68e
|
Implemented sorter inside a multiplexer.
|
2018-08-02 02:53:52 +02:00 |
|
Jesper Gravgaard
|
c272b93872
|
Added kickasm support for expressions specifying bytes & cycles.
|
2018-07-25 20:44:10 +02:00 |
|
Jesper Gravgaard
|
6475f70192
|
Added kickasm support for bytes & cycles. Changed location to pc.
|
2018-07-25 19:59:49 +02:00 |
|
Jesper Gravgaard
|
ae765bec6b
|
Allowing location to be any expression that ends up being constant. Changed syntax for kickasm directives.
|
2018-07-25 20:09:12 +09:00 |
|
Jesper Gravgaard
|
19855bed21
|
Added "location" directive to inline kickasm to allow absolute placement.
|
2018-07-25 17:10:46 +09:00 |
|
Jesper Gravgaard
|
ea80c9445a
|
Fixed arrays with fixed size defined by a simple named constant.
|
2018-07-23 23:24:44 +09:00 |
|
Jesper Gravgaard
|
112087b7bb
|
Added iteration through all parts of the symbol table to usage finding. Now array lenghts set to constant calculations also work.
|
2018-07-23 16:27:30 +09:00 |
|
Jesper Gravgaard
|
99085f1351
|
Refactored ReferenceInfos to use a more abstract model of references to variables/constants.
|
2018-07-23 01:00:25 +09:00 |
|
Jesper Gravgaard
|
4b4c6f5364
|
Using ProgramValueIterator instead of custom loop.
|
2018-07-22 16:41:19 +09:00 |
|
Jesper Gravgaard
|
81e214cee3
|
Now replacing in both control flow graph and symbol table per default.
|
2018-07-22 16:24:08 +09:00 |
|
Jesper Gravgaard
|
f17422a564
|
Renamed ValueReplacer classes to ValueIterator to better illustrate the generic nature.
|
2018-07-22 16:02:51 +09:00 |
|
Jesper Gravgaard
|
a14fa4dec3
|
Eliminated AliasReplacers separate implementation of the execution. Now using a clean ValueReplacer. Also fixed Pass1GenerateSSA to use a clean ValueReplacer.
|
2018-07-22 14:14:15 +09:00 |
|
Jesper Gravgaard
|
f9449997cb
|
Refacing ValueReplacer
|
2018-07-21 23:29:11 +09:00 |
|
Jesper Gravgaard
|
62cfda6468
|
Added SymbolVariableRef (preparing for refacing ValueReplacer and ReferenceInfos)
|
2018-07-21 22:58:42 +09:00 |
|
Jesper Gravgaard
|
3328a570c6
|
Implemented late constant resolving for array lengths allowing the use of any constant expressions in the first/last values. The length inside the SymbolType still needs to be fixed - so a few tests currently fail.
|
2018-07-21 18:13:36 +09:00 |
|