jespergravgaard
|
b2f16e2a57
|
Added missing fragments and a few new synth rules for derefidx
|
2018-04-24 23:15:18 +02:00 |
|
jespergravgaard
|
34d8afcaae
|
Added some simple test programs for the manual.
|
2018-04-24 10:05:48 +02:00 |
|
jespergravgaard
|
34909f47d8
|
Recusion now detected, resulting in CompileError. Closes #88
|
2018-04-22 23:46:26 +02:00 |
|
jespergravgaard
|
a34f77d319
|
Improved fragment synthesis by allowing X/Y registers to be used for constant byte values - great for _derefidx_vbuc1! Closes #99
|
2018-04-22 22:49:40 +02:00 |
|
Jesper Gravgaard
|
eb2ff934c7
|
Added pass 2 assertion that no unversioned or fwddref variable refs exist.
|
2018-04-22 12:40:20 +02:00 |
|
Jesper Gravgaard
|
4640b31043
|
Added another test securing that undefined variables cannot be used even if fwd-refs are allowed.
|
2018-04-22 12:22:48 +02:00 |
|
jespergravgaard
|
c8edee4291
|
Implemented constant pointer detection - allowing for efficient NULL-code using const byte* NULL = $00. Closes #79
|
2018-04-22 11:40:25 +02:00 |
|
jespergravgaard
|
43395567af
|
Implemented constant pointer detection - allowing for efficient NULL-code using const byte* NULL = $00. Closes #79
|
2018-04-22 11:24:02 +02:00 |
|
jespergravgaard
|
3a0a8f450d
|
Now allowing forward references to variables (expected to be constants). Closes #101
|
2018-04-22 11:10:47 +02:00 |
|
jespergravgaard
|
13249cd744
|
Fixed problem where inline string is used only in hi/lo operator. Closes #103
|
2018-04-22 09:59:08 +02:00 |
|
jespergravgaard
|
b2f1e1abe3
|
Implemented boolean && /
|
2018-04-21 23:00:05 +02:00 |
|
jespergravgaard
|
8a7f5bde39
|
Implemented identification & elimination of complex constant if()s
|
2018-04-21 21:38:30 +02:00 |
|
jespergravgaard
|
5e3cbe1f3a
|
Added a const inline case
|
2018-04-20 23:09:18 +02:00 |
|
Jesper Gravgaard
|
b1b8f361d3
|
Improved bool min test
|
2018-04-20 20:48:13 +02:00 |
|
jespergravgaard
|
92cba685e1
|
Added another const bool test
|
2018-04-19 22:29:01 +02:00 |
|
jespergravgaard
|
ee6e58f79c
|
Fixed problem with PHI-blocks still referencing blocks that no longer call them bacause of constant bool if()s.
|
2018-04-19 01:46:41 +02:00 |
|
jespergravgaard
|
2fb9619381
|
Implemented constant if elimination and unused block removal in pass 2.
|
2018-04-18 23:19:25 +02:00 |
|
Jesper Gravgaard
|
e319ec9260
|
Added bool min test
|
2018-04-18 20:03:39 +02:00 |
|
Jesper Gravgaard
|
1ae9dbb6cf
|
Added inline string test 3 & made minor fix to dtv-blitter-min
|
2018-04-18 12:44:52 +02:00 |
|
jespergravgaard
|
3ddc19c5c2
|
Implemented blitter minimal example. Added missing ref files.
|
2018-04-15 23:32:49 +02:00 |
|
Jesper Gravgaard
|
c29d278146
|
Adding more C64DTV test programs
|
2018-04-15 20:02:48 +02:00 |
|
Jesper Gravgaard
|
9cc3490f28
|
Added the last modes
|
2018-04-14 01:08:08 +02:00 |
|
Jesper Gravgaard
|
7fd8669cc1
|
Fixed constant inlining of strings. Closes #102
|
2018-04-13 20:06:29 +02:00 |
|
jespergravgaard
|
23ff5bab95
|
Added Sixs FRED mode
|
2018-04-10 00:00:01 +02:00 |
|
jespergravgaard
|
301ea8b645
|
Added more presets
|
2018-04-09 08:46:37 +02:00 |
|
jespergravgaard
|
a49e61f747
|
Added more gfx to the tester
|
2018-04-08 02:32:37 +02:00 |
|
jespergravgaard
|
706734360f
|
Fixed tests
|
2018-04-07 17:03:36 +02:00 |
|
jespergravgaard
|
72e39f7cc4
|
Form and GFX are now two separate modes
|
2018-04-07 16:01:35 +02:00 |
|
jespergravgaard
|
2aef56bb2c
|
Implemented split screen form menu
|
2018-04-05 00:30:26 +02:00 |
|
jespergravgaard
|
6bfc6de252
|
Added a keyboard event queue with scanner. Using it in C64DTV Gfx Explorer.
|
2018-04-04 12:07:14 +02:00 |
|
jespergravgaard
|
93fb8e1bff
|
Added form colors. Added all fields to form.
|
2018-04-03 22:52:59 +02:00 |
|
jespergravgaard
|
0ad7984fe2
|
Added form field max values
|
2018-04-03 19:49:06 +02:00 |
|
jespergravgaard
|
25f396de12
|
Added z4 to tests
|
2018-04-03 08:21:04 +02:00 |
|
jespergravgaard
|
17ffe83bd2
|
Implemented v0.1 of a screen form library
|
2018-04-03 00:02:25 +02:00 |
|
jespergravgaard
|
91589327e3
|
Fixed loop detection problem.
|
2018-04-01 12:32:45 +02:00 |
|
jespergravgaard
|
10fd6ff19a
|
Lowered uplift combinations further for higher speed
|
2018-04-01 12:17:13 +02:00 |
|
jespergravgaard
|
617b85ba8d
|
Added missing a ora c
|
2018-04-01 04:40:28 +02:00 |
|
jespergravgaard
|
2d2ca18553
|
Fixed syntax
|
2018-04-01 04:38:11 +02:00 |
|
jespergravgaard
|
ef83e4342c
|
Making loop error not fail.
|
2018-04-01 04:00:07 +02:00 |
|
jespergravgaard
|
302b5a62d7
|
Implemented partial gfx mode tester for c64dtv. found loop error.
|
2018-04-01 03:58:07 +02:00 |
|
jespergravgaard
|
6e9503a14d
|
Made modes 1-3 compatible with stock C64
|
2018-03-29 09:19:36 +02:00 |
|
jespergravgaard
|
626329ddaa
|
Added hicol MC mode
|
2018-03-29 09:09:07 +02:00 |
|
jespergravgaard
|
89e2900fdc
|
Added ECM modes and MC std mode.
|
2018-03-29 08:49:51 +02:00 |
|
jespergravgaard
|
88313bbb81
|
added std charset / hicolor std charset and ecm std charset modes
|
2018-03-29 00:37:04 +02:00 |
|
jespergravgaard
|
7a55705b3e
|
Added Sixs FRED 2 mode
|
2018-03-28 16:43:47 +02:00 |
|
jespergravgaard
|
b4bfaf016a
|
Lowered number of uplift permutations to 1000
|
2018-03-28 15:21:22 +02:00 |
|
jespergravgaard
|
e518c393e6
|
Added chunky 8bpp BMM
|
2018-03-28 13:00:32 +02:00 |
|
jespergravgaard
|
839c356118
|
Added 8bpp Pixel Cell Mode
|
2018-03-27 22:32:06 +02:00 |
|
Jesper Gravgaard
|
46e5cb3e79
|
Fixed high-byteoperator problem with constants.
|
2018-03-27 12:01:58 +02:00 |
|
Jesper Gravgaard
|
39a6b0493f
|
Fixed high-byteoperator problem with constants.
|
2018-03-27 11:52:51 +02:00 |
|
jespergravgaard
|
b122ac8af3
|
Added Sixs FRED mode.
|
2018-03-27 10:01:28 +02:00 |
|
jespergravgaard
|
472e6c43bd
|
Better test image for Two Plane Bitmap Mode. Added keyboard glitch tester and operator hi/lo problem test.
|
2018-03-26 23:49:07 +02:00 |
|
jespergravgaard
|
6cfa6633f4
|
Now also eliminating unused variables from phi blocks. Closes #89
|
2018-03-26 21:57:30 +02:00 |
|
jespergravgaard
|
dc25fa7d11
|
Improved keyboard routine slightly.
|
2018-03-26 21:41:09 +02:00 |
|
jespergravgaard
|
770f213b40
|
Added missing SCREEN var
|
2018-03-26 00:44:41 +02:00 |
|
jespergravgaard
|
13a3f46858
|
Started C64DTV GfxMode tester
|
2018-03-25 23:40:38 +02:00 |
|
jespergravgaard
|
e01be9d33b
|
Added a partial 3x5 font - ref data
|
2018-03-25 13:31:57 +02:00 |
|
jespergravgaard
|
f652d14fed
|
Added a partial 3x5 font
|
2018-03-24 22:37:11 +01:00 |
|
jespergravgaard
|
7922d0f21a
|
Added missing fragments
|
2018-03-22 22:30:16 +01:00 |
|
Jesper Gravgaard
|
71e4e5d22d
|
Added shift support to CHARGEN tester
|
2018-03-22 21:50:25 +01:00 |
|
Jesper Gravgaard
|
49d2aaaf24
|
Merge remote-tracking branch 'origin/master'
|
2018-03-22 18:34:09 +01:00 |
|
Jesper Gravgaard
|
981d925a4d
|
Coding CHARGEN tester
|
2018-03-22 18:34:04 +01:00 |
|
jespergravgaard
|
18bf726d1c
|
Fixed P key
|
2018-03-22 00:04:41 +01:00 |
|
Jesper Gravgaard
|
cfd0e836ce
|
Added keyboard space check test program.
|
2018-03-20 00:52:55 +01:00 |
|
Jesper Gravgaard
|
b796a248c0
|
Added a fragment
|
2018-03-20 00:44:57 +01:00 |
|
Jesper Gravgaard
|
f613cbbe36
|
Added keyboard library and tester
|
2018-03-20 00:30:27 +01:00 |
|
jespergravgaard
|
2015c17d25
|
Updated fragment reference
|
2018-03-19 01:22:04 +01:00 |
|
jespergravgaard
|
8f6db3a39b
|
Implemented keyboard routines for reading the keyboard matrix status.
|
2018-03-19 01:15:18 +01:00 |
|
jespergravgaard
|
171b015d5f
|
Implemented simple DTV raster test
|
2018-03-18 16:35:47 +01:00 |
|
jespergravgaard
|
f212c55c02
|
Fixed const casting problem
|
2018-03-11 21:45:26 +01:00 |
|
jespergravgaard
|
979cb91eeb
|
Moved operator type inference to Operator class. Improved type inference.
|
2018-03-11 18:44:48 +01:00 |
|
jespergravgaard
|
cfa3ab9047
|
Renamed calculate() to calculateLiteral()
|
2018-03-10 21:14:51 +01:00 |
|
jespergravgaard
|
ec791672ce
|
Removed ConstantValueCalculator.
|
2018-03-10 21:11:24 +01:00 |
|
Jesper Gravgaard
|
18335aa29a
|
Moved constant literal value calculation into Operator
|
2018-03-10 17:06:42 +01:00 |
|
Jesper Gravgaard
|
1fa3d8bbbf
|
Moved statements, symbols and values into packages
|
2018-03-06 20:54:52 +01:00 |
|
Jesper Gravgaard
|
fd0b667b19
|
Moved expression operators to separate package
|
2018-03-06 19:50:26 +01:00 |
|
Jesper Gravgaard
|
73afb3d1be
|
Moved expression operators to separate classes.
|
2018-03-05 23:49:09 +01:00 |
|
Jesper Gravgaard
|
7876b98573
|
Caching alive combinations for better performance.
|
2018-03-05 10:45:07 +01:00 |
|
Jesper Gravgaard
|
133f8603c7
|
Fixed precedence problems for casts and inc/dec
|
2018-03-05 10:10:56 +01:00 |
|
jespergravgaard
|
f4196b9e67
|
Fixed log
|
2018-03-05 01:14:10 +01:00 |
|
jespergravgaard
|
f31eb7b1f0
|
Added scaled sin generator - found problem with cast & precedence.
|
2018-03-05 01:00:33 +01:00 |
|
jespergravgaard
|
0663888a3f
|
Added initial min/max sin-generator.
|
2018-02-26 23:00:10 +01:00 |
|
jespergravgaard
|
d5fd4a41c3
|
Fixed loop problem.
|
2018-02-25 19:27:36 +01:00 |
|
jespergravgaard
|
53d021bae3
|
Added second 8-bit sinus test (against 16-bit sinus)
|
2018-02-25 14:35:20 +01:00 |
|
jespergravgaard
|
2789361724
|
Fixed 8-bit sinus implementation.
|
2018-02-25 14:07:44 +01:00 |
|
jespergravgaard
|
7d26c74c21
|
Added initial 8-bit sinus (not quite working yet.)
|
2018-02-25 11:10:50 +01:00 |
|
jespergravgaard
|
97bc9870f9
|
Syntax changes
|
2018-02-25 00:39:19 +01:00 |
|
jespergravgaard
|
651de919b3
|
Comment fixed
|
2018-02-25 00:10:10 +01:00 |
|
jespergravgaard
|
73bdd4ff8d
|
Optimized sin /128 part.
|
2018-02-25 00:08:11 +01:00 |
|
jespergravgaard
|
f0917c7bed
|
Optimized ZP coalesce vastly.
|
2018-02-24 21:06:25 +01:00 |
|
jespergravgaard
|
1ec9060962
|
Added clobber test to ZP coalesce
|
2018-02-24 14:12:37 +01:00 |
|
jespergravgaard
|
a87a97c669
|
Moved sin to separate method.
|
2018-02-24 13:02:15 +01:00 |
|
jespergravgaard
|
948db1a389
|
Fixed lo/hi test
|
2018-02-24 08:14:01 +01:00 |
|
jespergravgaard
|
028fd75878
|
Fixed > & < for pointers.
|
2018-02-24 00:54:12 +01:00 |
|
jespergravgaard
|
b3537e3b66
|
Implemented full -$7fff-$7fff range word sinus generator.
|
2018-02-24 00:46:25 +01:00 |
|
jespergravgaard
|
6702baa875
|
Fixed lo/hi of dwords in constants.
|
2018-02-23 22:15:10 +01:00 |
|
jespergravgaard
|
37bfd18716
|
Working a bit on the sinus table generator.
|
2018-02-20 23:12:39 +01:00 |
|
jespergravgaard
|
696d1a1f5f
|
Working a bit on sinus table generator. Tested resulting sinus - it is within +/-2 of a java-calculated sinus.
|
2018-02-20 22:41:36 +01:00 |
|
jespergravgaard
|
db603554ac
|
Using reciprocal multiplication for divisions inside loop.
|
2018-02-20 10:53:31 +01:00 |
|
jespergravgaard
|
d3070fec14
|
Implemented first sinus generator using sinx=x-x^/3!+x^/5!.
|
2018-02-19 08:29:47 +01:00 |
|
jespergravgaard
|
a695a94422
|
Extended linear table gen with two tables.
|
2018-02-18 20:41:36 +01:00 |
|
jespergravgaard
|
b5dfef7368
|
Optimized line table generator. Improved const identification in phi-values.
|
2018-02-18 19:52:51 +01:00 |
|
jespergravgaard
|
0478bc7404
|
Limited label usage for constant integers referenced outside scope. Optimized division.
|
2018-02-18 19:39:08 +01:00 |
|
jespergravgaard
|
d3898d717e
|
Using labels for constant integers referenced outside scope.
|
2018-02-18 17:49:03 +01:00 |
|
jespergravgaard
|
76d3e25b84
|
Implemented inline dword constructor dword dw = { wl, wh };
|
2018-02-18 15:35:17 +01:00 |
|
jespergravgaard
|
0c7883532e
|
Split multiply tests for performance
|
2018-02-16 08:59:54 +01:00 |
|
jespergravgaard
|
8f21ffc0e4
|
Implemented signed word multiplication & test.
|
2018-02-16 01:13:57 +01:00 |
|
jespergravgaard
|
34d3c732da
|
Implemented word multiplication
|
2018-02-15 20:36:26 +01:00 |
|
jespergravgaard
|
b5a79848f3
|
Implemented dword ASM and printing
|
2018-02-15 19:50:33 +01:00 |
|
jespergravgaard
|
8b54f38640
|
Implemented bitshift signed byte multiply.
|
2018-02-15 12:35:40 +01:00 |
|
Jesper Gravgaard
|
c936da289e
|
Implemented normal binary multiply for unsigned integers - mul8u().
|
2018-02-14 11:30:31 +01:00 |
|
Jesper Gravgaard
|
a6f32bea13
|
Renamed multiply.kc to fastmultiply.kc - and methods multiply()/signed_multiply() to mulf8u(), mulf8s()
|
2018-02-14 10:05:18 +01:00 |
|
Jesper Gravgaard
|
7900c846c9
|
Adde useful comment
|
2018-02-13 23:21:24 +01:00 |
|
Jesper Gravgaard
|
3eb08597cf
|
Implemented 16bit signed division.
|
2018-02-13 23:10:47 +01:00 |
|
Jesper Gravgaard
|
1fd0cd6874
|
Moved remainder to global var
|
2018-02-13 22:07:01 +01:00 |
|
Jesper Gravgaard
|
8705527316
|
Fixed conflict
|
2018-02-13 21:40:52 +01:00 |
|
Jesper Gravgaard
|
a50d685574
|
Fixed problem with phi lifting not updating predecessor in phi blocks when introducing new blocks. Implemented signed division for bytes.
|
2018-02-13 21:27:17 +01:00 |
|
jespergravgaard
|
1feed93b43
|
Renamed long branch fix label.
|
2018-02-13 13:05:46 +01:00 |
|
jespergravgaard
|
aec15a3125
|
Removed a bit of unused code.
|
2018-02-13 12:46:35 +01:00 |
|
jespergravgaard
|
c8a2d03550
|
Fixed register coalesce issues (Double.MIN_VALUE is unexpectedly positive).
|
2018-02-13 04:23:44 +01:00 |
|
jespergravgaard
|
9f80f71c64
|
Isolated KickAss assembly during test. Fixed long branches. Closes #62
|
2018-02-13 03:34:21 +01:00 |
|
jespergravgaard
|
2db042801b
|
Isolated KickAss assembly during test. Fixed long branches. Closes #62
|
2018-02-13 03:34:01 +01:00 |
|
jespergravgaard
|
0d6ce93e93
|
Added KickAss assembly to Test
|
2018-02-12 23:41:46 +01:00 |
|
jespergravgaard
|
52dd6035a0
|
Dropped JSON serialization. Added KickAss JAR.
|
2018-02-12 21:39:26 +01:00 |
|
jespergravgaard
|
6b43d797f5
|
Using address-of in test-division.
|
2018-02-11 23:55:52 +01:00 |
|
jespergravgaard
|
3f62d86312
|
Implemented working address-of operator byte* pte = &b1;
|
2018-02-10 22:08:36 +01:00 |
|
jespergravgaard
|
085aa9f825
|
Added missing toString/()
|
2018-02-03 15:46:12 +01:00 |
|
jespergravgaard
|
623f83a076
|
Added address-of operator. Working in basic programs. Transience of variables not implemented so there is a risk the variable being referenced is optimized into a constant or removed. Closes #78
|
2018-02-03 13:20:34 +01:00 |
|
jespergravgaard
|
7343a85b91
|
Moved division into library
|
2018-02-01 22:55:26 +01:00 |
|
jespergravgaard
|
b502c26140
|
Optimizing zeropage coalesce to minimize moving values around. Closes #80
|
2018-02-01 22:36:54 +01:00 |
|
jespergravgaard
|
45302103fa
|
Implemented 16bit division. Added support for word arrays. (idx must be multiplied by 2 manually)
|
2018-02-01 20:17:08 +01:00 |
|
jespergravgaard
|
e0124ee654
|
Added 8bit unsigned division. Ensured that pointers are generated into ASM labels.
|
2018-01-31 21:27:23 +01:00 |
|
jespergravgaard
|
b466f2f5cc
|
Added test provoking a register clobber error.
|
2018-01-30 22:23:07 +01:00 |
|
jespergravgaard
|
63f6620246
|
Implemented register(A/X/Y) keyword for allocating variables to specific register. Closes #70
|
2018-01-30 22:18:49 +01:00 |
|
jespergravgaard
|
7e268c5b4f
|
Moving declared register through the variable chain.
|
2018-01-30 11:50:18 +01:00 |
|
jespergravgaard
|
88744c8624
|
Consolidating variable methods - preparing to remove the 3 sub-classes.
|
2018-01-30 10:23:55 +01:00 |
|
jespergravgaard
|
6a012a3fd0
|
Added register keyword
|
2018-01-30 10:04:35 +01:00 |
|
jespergravgaard
|
02d7170a4c
|
Made ASM parenthesis hard.
|
2018-01-28 23:22:22 +01:00 |
|
jespergravgaard
|
341d8c5556
|
Renamed dword fragments from vl... to vd...
|
2018-01-28 23:09:47 +01:00 |
|
jespergravgaard
|
546644b7d3
|
Added parenthesis to ASM expressions.
|
2018-01-28 23:06:19 +01:00 |
|
jespergravgaard
|
9b09aaab14
|
Made dword value higher (>$80000000)
|
2018-01-28 22:15:09 +01:00 |
|
jespergravgaard
|
3d33851983
|
Improved dword type inference.
|
2018-01-28 17:21:57 +01:00 |
|
jespergravgaard
|
9025b7d64a
|
Removed verbose log.
|
2018-01-28 16:39:58 +01:00 |
|
jespergravgaard
|
fff4299fb2
|
Added dword and signed dword. Closes #76
|
2018-01-28 16:19:15 +01:00 |
|
jespergravgaard
|
b3a1c330a7
|
Removed two synthable fragments
|
2018-01-28 10:25:40 +01:00 |
|
jespergravgaard
|
4bbddfb5e2
|
Added comment.
|
2018-01-24 23:34:35 +01:00 |
|
jespergravgaard
|
f599eb2735
|
Expanded inline casting to also handle nop casts of pointer derefs.
|
2018-01-24 23:29:44 +01:00 |
|
jespergravgaard
|
15c1108d2c
|
Expanded inline casting to also handle word/pointer casts. Closes #2.
|
2018-01-22 00:31:28 +01:00 |
|
jespergravgaard
|
1646f9d3ff
|
Implemented inline casting - allowing for improved ASM when doing no-op casting.
|
2018-01-21 23:24:28 +01:00 |
|
Jesper Gravgaard
|
eab2e64154
|
Dropped suite again.
|
2018-01-21 16:30:37 +01:00 |
|