Irmen de Jong
|
14a13da7ec
|
simplified heapId for stringvalue
|
2020-02-08 15:54:03 +01:00 |
|
Irmen de Jong
|
875a71c786
|
removed datatype from StringValue classes (is always STR now)
|
2020-02-08 02:21:18 +01:00 |
|
Irmen de Jong
|
0ff5b79353
|
code inspection cleanups
|
2020-02-08 01:31:41 +01:00 |
|
Irmen de Jong
|
8c4d276810
|
improvements to string encoding/decoding and text output in the simulator
|
2020-02-08 01:12:30 +01:00 |
|
Irmen de Jong
|
3dd38c0ac8
|
antlr library updated to 4.8
|
2020-02-07 23:58:07 +01:00 |
|
Irmen de Jong
|
b8816a0e2f
|
got rid of separate str_s datatype
|
2020-02-07 20:47:38 +01:00 |
|
Irmen de Jong
|
a01a9e76f9
|
removed bogus clang target
fixed various simulator bugs regarding strings and chars
|
2020-02-07 01:22:07 +01:00 |
|
Irmen de Jong
|
357d704aec
|
clean up version specifier
|
2020-02-02 19:33:40 +01:00 |
|
Irmen de Jong
|
654d74da1e
|
automatic selection of best Vice C64 emulator executable
|
2020-02-02 13:39:56 +01:00 |
|
Irmen de Jong
|
66e0b07428
|
gradle updates
|
2020-01-07 01:29:25 +01:00 |
|
Irmen de Jong
|
52769decd4
|
fix assembler float truncation warning
|
2019-11-27 22:36:59 +01:00 |
|
Irmen de Jong
|
165eec4054
|
started a c++ language compiler code target
(meant to be an intermediate step before direct Wasm/binaryen, via clang compilation to wasm)
|
2019-10-30 00:15:03 +01:00 |
|
Irmen de Jong
|
8c2e602cc7
|
preparing for multiple compiler backends/targets
|
2019-10-26 23:41:15 +02:00 |
|
Irmen de Jong
|
b5d1e8653d
|
tiny cleanups
|
2019-10-20 23:52:26 +02:00 |
|
Irmen de Jong
|
f6d4c90dea
|
improved number-to-decimal routines
|
2019-09-23 20:44:41 +02:00 |
|
Irmen de Jong
|
9dedbbf47c
|
use more modern java date/time api
|
2019-09-10 01:29:33 +02:00 |
|
Irmen de Jong
|
adfddddac6
|
attempt to fix bcd
|
2019-09-05 21:38:40 +02:00 |
|
Irmen de Jong
|
8d6542905d
|
beginnings of 6502 cpu simulator
|
2019-09-03 23:58:46 +02:00 |
|
Irmen de Jong
|
befe4b8e9f
|
try to fix windows path issue with drive letter
|
2019-08-27 01:02:31 +02:00 |
|
Irmen de Jong
|
772e48105e
|
fixed some type cast compiler errors in for loops
|
2019-08-26 23:38:59 +02:00 |
|
Irmen de Jong
|
9afe451b8d
|
fix build script to target jdk 1.8
|
2019-08-26 21:27:45 +02:00 |
|
Irmen de Jong
|
59a43889a5
|
examples
|
2019-08-25 00:24:00 +02:00 |
|
Irmen de Jong
|
7caa0daffc
|
examples
|
2019-08-24 21:40:50 +02:00 |
|
Irmen de Jong
|
5e854c2cf8
|
more forloop asm
|
2019-08-24 21:26:29 +02:00 |
|
Irmen de Jong
|
9edc92ec29
|
more bitshift asm stubs (actual functions still to be done)
|
2019-08-23 23:06:36 +02:00 |
|
Irmen de Jong
|
1d178080a3
|
more bitshift asm
|
2019-08-23 21:33:43 +02:00 |
|
Irmen de Jong
|
aa94300bdd
|
added output directory command line option
improved cli parser by using kotlinx.cli
|
2019-08-23 00:11:08 +02:00 |
|
Irmen de Jong
|
2d768c3f28
|
code cleanups
|
2019-08-22 22:06:21 +02:00 |
|
Irmen de Jong
|
b79af624ae
|
added more asmgen for bitshift operations
|
2019-08-22 00:34:17 +02:00 |
|
Irmen de Jong
|
38208a7c9e
|
removed fake vm functions
|
2019-08-21 22:00:05 +02:00 |
|
Irmen de Jong
|
8eff51904e
|
taking down the heapvalue mess further
|
2019-08-21 00:29:31 +02:00 |
|
Irmen de Jong
|
c717f4573d
|
taking down the heapvalue mess further
|
2019-08-20 23:02:13 +02:00 |
|
Irmen de Jong
|
984d251a6d
|
taking down the heapvalue mess, RuntimeValue class separation
|
2019-08-20 00:01:31 +02:00 |
|
Irmen de Jong
|
8c3b43f3ed
|
taking down the heapvalue mess
|
2019-08-19 22:28:41 +02:00 |
|
Irmen de Jong
|
0f1485f30b
|
added sorted, sgn, reverse to the AstVm
|
2019-08-18 16:39:08 +02:00 |
|
Irmen de Jong
|
f0d4654917
|
v1.60
|
2019-08-18 14:06:30 +02:00 |
|
Irmen de Jong
|
4ce93b5d9d
|
restored proper compiler error when trying to modify a constant
|
2019-08-18 14:05:20 +02:00 |
|
Irmen de Jong
|
fb0d7a1908
|
some array literals weren't put on the heap
|
2019-08-18 13:46:13 +02:00 |
|
Irmen de Jong
|
bb7b063757
|
revert inline var declaration in for loops
|
2019-08-18 03:16:23 +02:00 |
|
Irmen de Jong
|
c495f54bbb
|
don't fall-through into nested subroutine
|
2019-08-18 02:33:42 +02:00 |
|
Irmen de Jong
|
1cc1f2d91d
|
reverse() added (byte+word)
|
2019-08-18 02:05:51 +02:00 |
|
Irmen de Jong
|
d837cc11f9
|
sort() added (bytes+words)
|
2019-08-18 00:04:03 +02:00 |
|
Irmen de Jong
|
cbb7083307
|
fix problem with typechecking of const arrays
|
2019-08-17 21:43:48 +02:00 |
|
Irmen de Jong
|
d4a17dfad1
|
fixed builtin functions no longer const-folding over arrays
|
2019-08-17 20:16:39 +02:00 |
|
Irmen de Jong
|
59f8b91e25
|
tweak
|
2019-08-17 18:44:44 +02:00 |
|
Irmen de Jong
|
80113f9208
|
version 1.52
|
2019-08-17 16:44:46 +02:00 |
|
Irmen de Jong
|
27f987f0ae
|
fixed bit shifts, added sgn() function
|
2019-08-17 16:44:28 +02:00 |
|
Irmen de Jong
|
3ae2597261
|
irq driven music player example
|
2019-08-17 13:13:15 +02:00 |
|
Irmen de Jong
|
248e7b808c
|
split codegen
|
2019-08-16 22:49:29 +02:00 |
|
Irmen de Jong
|
a983a896f2
|
some asm and some for loop asm fixed, renamed asmgen2 back to just asmgen
|
2019-08-16 21:37:27 +02:00 |
|
Irmen de Jong
|
68df1730f5
|
cleaned up some stuff, improved checking of asmsub statement body
|
2019-08-14 23:17:50 +02:00 |
|
Irmen de Jong
|
d62ab93b24
|
word >> 8 optimized to msb(word)
|
2019-08-14 22:28:44 +02:00 |
|
Irmen de Jong
|
47297f7e31
|
improved handling of inferredType
|
2019-08-14 02:25:27 +02:00 |
|
Irmen de Jong
|
b64d611e02
|
split array and string literal classes
|
2019-08-13 03:00:17 +02:00 |
|
Irmen de Jong
|
9fb9bcfebd
|
correction
|
2019-08-12 23:25:19 +02:00 |
|
Irmen de Jong
|
d4a77321d2
|
tweak gradle to work with openjdk-11
|
2019-08-11 22:56:54 +02:00 |
|
Irmen de Jong
|
2665618fa6
|
zp test added, some cleanups
|
2019-08-11 22:23:18 +02:00 |
|
Irmen de Jong
|
b5c5560af8
|
info
|
2019-08-11 18:21:15 +02:00 |
|
Irmen de Jong
|
065587525e
|
version
|
2019-08-11 17:43:14 +02:00 |
|
Irmen de Jong
|
58e5d5c071
|
hash
|
2019-08-11 17:32:28 +02:00 |
|
Irmen de Jong
|
b44e76db57
|
fix any/all assembly routine, added asm for min/max/sum/ etc aggregates
removed avg function because of hidden internal overflow issues
|
2019-08-11 16:13:09 +02:00 |
|
Irmen de Jong
|
2ce6bc5946
|
fix strlen
|
2019-08-11 14:02:53 +02:00 |
|
Irmen de Jong
|
fe5b225732
|
asmsub stack arg
|
2019-08-11 12:29:18 +02:00 |
|
Irmen de Jong
|
d499e40a4b
|
doc tweaks
|
2019-08-11 10:56:36 +02:00 |
|
Irmen de Jong
|
62a66d89c6
|
was not needed
|
2019-08-11 10:15:34 +02:00 |
|
Irmen de Jong
|
1c151f4a3f
|
remove dysfunctional repl
|
2019-08-10 21:36:26 +02:00 |
|
Irmen de Jong
|
8917926996
|
new version
|
2019-08-10 20:45:41 +02:00 |
|
Irmen de Jong
|
b54a9b9831
|
fix output of word arrays containing addressofs
|
2019-08-10 20:43:27 +02:00 |
|
Irmen de Jong
|
f08906dba1
|
fix byte->word typecast
|
2019-08-10 14:20:42 +02:00 |
|
Irmen de Jong
|
a6bba824d3
|
fixed some array codegen issues
|
2019-08-10 12:55:27 +02:00 |
|
Irmen de Jong
|
fd84152a2b
|
import cleanups
|
2019-08-09 02:21:04 +02:00 |
|
Irmen de Jong
|
3466106119
|
fixed some array codegen issues
|
2019-08-09 02:15:31 +02:00 |
|
Irmen de Jong
|
c79b587eea
|
nonconst forloops (bytes)
|
2019-08-08 23:13:02 +02:00 |
|
Irmen de Jong
|
4862fb7db1
|
asmsub return value in registers is now put on evalstack, and loopvar sequence numbering
|
2019-08-08 00:13:58 +02:00 |
|
Irmen de Jong
|
2136db0e61
|
fix auto var naming collisions
|
2019-08-07 22:25:57 +02:00 |
|
Irmen de Jong
|
2f0c0f6fcd
|
fix function arguments
|
2019-08-07 02:31:27 +02:00 |
|
Irmen de Jong
|
7ddc01f883
|
added continuous compilation mode (file watching)
|
2019-08-05 23:36:24 +02:00 |
|
Irmen de Jong
|
efe2723874
|
version
|
2019-08-05 21:06:41 +02:00 |
|
Irmen de Jong
|
bccfeb2fa2
|
fix some unittests
|
2019-08-05 21:04:15 +02:00 |
|
Irmen de Jong
|
5095d090cc
|
added optimized multiplications to asmgen2
|
2019-08-05 21:00:55 +02:00 |
|
Irmen de Jong
|
6544fcdc36
|
fixed output of force_output blocks
|
2019-08-04 23:08:58 +02:00 |
|
Irmen de Jong
|
e834924857
|
more ++ and -- code, 'dontuse' zeropage option
|
2019-08-04 22:44:20 +02:00 |
|
Irmen de Jong
|
2c3b8a9819
|
more ++ and -- code, 'dontuse' zeropage option
|
2019-08-04 22:35:27 +02:00 |
|
Irmen de Jong
|
309c82fc9e
|
fixed some compiler errors
|
2019-08-04 19:54:32 +02:00 |
|
Irmen de Jong
|
0f91ce6441
|
removed a few more hazardous zp addresses
|
2019-08-04 19:40:31 +02:00 |
|
Irmen de Jong
|
f29ec3b4e1
|
relaxed symbol shadowing
|
2019-08-04 18:52:03 +02:00 |
|
Irmen de Jong
|
cc1fc869cf
|
fix param type casts for builtin functions
|
2019-08-04 18:25:00 +02:00 |
|
Irmen de Jong
|
0431d3cddc
|
implemented asm for continue and break
|
2019-08-04 16:05:50 +02:00 |
|
Irmen de Jong
|
a1cd202cd2
|
some more array asm
|
2019-08-04 15:33:00 +02:00 |
|
Irmen de Jong
|
b842493cf0
|
trying to fix arithmetic and funcion calls and var scoping issues
|
2019-08-03 13:21:38 +02:00 |
|
Irmen de Jong
|
4718f09cb7
|
trying to fix arithmetic and funcion calls
|
2019-08-03 01:51:12 +02:00 |
|
Irmen de Jong
|
e9c357a885
|
fix range typing issues and function call param cleanup bug for asmsub
|
2019-08-02 01:26:28 +02:00 |
|
Irmen de Jong
|
fb00ff74d1
|
simplistic repeat and while loops
|
2019-08-01 21:23:55 +02:00 |
|
Irmen de Jong
|
b740b079db
|
simplified mapping of builtin functions to just a jsr
|
2019-08-01 21:03:21 +02:00 |
|
Irmen de Jong
|
6394841041
|
fix byte/word add/sub mixup
|
2019-08-01 20:42:09 +02:00 |
|
Irmen de Jong
|
3f4050c647
|
more for loops, words
|
2019-08-01 00:35:25 +02:00 |
|
Irmen de Jong
|
82f01d84c2
|
more for loops
|
2019-07-31 22:15:20 +02:00 |
|
Irmen de Jong
|
299ea72d70
|
various for loops
|
2019-07-31 21:47:30 +02:00 |
|
Irmen de Jong
|
50aa286d3a
|
begin of for asm
|
2019-07-31 00:54:04 +02:00 |
|
Irmen de Jong
|
6f7322150f
|
fix string literal replacing by identifierref
|
2019-07-31 00:14:12 +02:00 |
|
Irmen de Jong
|
cc9965cc96
|
improved deduction of array datatypes
|
2019-07-30 23:35:25 +02:00 |
|
Irmen de Jong
|
ae90a957c6
|
fix var prefix issues in asm gen of anonscopes
|
2019-07-30 21:13:52 +02:00 |
|
Irmen de Jong
|
8cec032e7d
|
more asm for byte writes to memory
|
2019-07-30 02:49:13 +02:00 |
|
Irmen de Jong
|
3732ab1e62
|
fix compilation errors
|
2019-07-30 02:26:30 +02:00 |
|
Irmen de Jong
|
fba149ee28
|
removed the ~ before block names
|
2019-07-29 23:11:13 +02:00 |
|
Irmen de Jong
|
4661cba974
|
asm for when statements added
|
2019-07-29 22:47:04 +02:00 |
|
Irmen de Jong
|
025be8cb7c
|
fix infinte loop in constantfolding of when choices
|
2019-07-29 22:06:59 +02:00 |
|
Irmen de Jong
|
3aea32551b
|
fixes
|
2019-07-29 02:47:01 +02:00 |
|
Irmen de Jong
|
8e8c112ff0
|
improved subroutine param ast checks, added asm for Carry parameter
|
2019-07-29 00:33:19 +02:00 |
|
Irmen de Jong
|
b0dda08e74
|
assembler reserved symbols checked
|
2019-07-28 23:37:33 +02:00 |
|
Irmen de Jong
|
2c25df122a
|
merge strings in asm output
|
2019-07-28 21:29:49 +02:00 |
|
Irmen de Jong
|
7cb5702b37
|
array asm
|
2019-07-28 21:03:09 +02:00 |
|
Irmen de Jong
|
b7502c7eaa
|
fixed some node update issues in Modifying Ast visitor
|
2019-07-28 15:18:53 +02:00 |
|
Irmen de Jong
|
fed020825a
|
some more asmgen v2; fixed duplicate label namings, if stmt, and vars in anon scopes
|
2019-07-28 13:12:13 +02:00 |
|
Irmen de Jong
|
1c411897df
|
some more asmgen v2, and seemingly useless assignments to memory variables are no longer optimized away
|
2019-07-27 03:11:15 +02:00 |
|
Irmen de Jong
|
f94e241fb2
|
fix array datatypes in vardecls
|
2019-07-26 23:51:53 +02:00 |
|
Irmen de Jong
|
f9617d777a
|
floats from rom
|
2019-07-24 00:39:01 +02:00 |
|
Irmen de Jong
|
9961a404ae
|
got rid of bytecode based compiler and vm
|
2019-07-23 20:44:11 +02:00 |
|
Irmen de Jong
|
776c844d02
|
more ast-codegen v2
|
2019-07-23 01:36:49 +02:00 |
|
Irmen de Jong
|
03782a37a2
|
begin of ast-codegen v2
|
2019-07-21 23:50:13 +02:00 |
|
Irmen de Jong
|
173663380b
|
slight optimization for creating the asmpatterns list
|
2019-07-20 22:37:16 +02:00 |
|
Irmen de Jong
|
c6fdd65c63
|
shuffling some things around
|
2019-07-18 22:23:31 +02:00 |
|
Irmen de Jong
|
d9546f9dc7
|
version
|
2019-07-18 01:38:35 +02:00 |
|
Irmen de Jong
|
2a6b0f5db7
|
remove some more dead code
|
2019-07-18 01:31:12 +02:00 |
|
Irmen de Jong
|
b4e1b42cec
|
remove some dead code
|
2019-07-17 22:35:38 +02:00 |
|
Irmen de Jong
|
a8898a5993
|
using sealed class instead of interface
|
2019-07-17 02:35:26 +02:00 |
|
Irmen de Jong
|
e03c68b632
|
optimize imports
|
2019-07-17 02:11:16 +02:00 |
|
Irmen de Jong
|
411bedcc46
|
fixed assignment type error with structs
added structs example
|
2019-07-16 23:56:00 +02:00 |
|
Irmen de Jong
|
07d8caf884
|
string literal concatenation and repeating added again
|
2019-07-16 23:34:43 +02:00 |
|
Irmen de Jong
|
4dbf4b2005
|
tweaks about initialization values
|
2019-07-16 20:32:23 +02:00 |
|
Irmen de Jong
|
61af72b906
|
struct literals
|
2019-07-16 02:36:32 +02:00 |
|
Irmen de Jong
|
17be722e2b
|
arrays without init value are once again cleared with zeros
|
2019-07-15 23:05:04 +02:00 |
|
Irmen de Jong
|
16d7927d2f
|
fix arrays and some struct parsing issues
|
2019-07-15 22:28:05 +02:00 |
|
Irmen de Jong
|
55a7a5d9d5
|
fix aggregate functions in astvm
|
2019-07-15 03:57:51 +02:00 |
|
Irmen de Jong
|
78d7849197
|
fixes
|
2019-07-15 03:08:26 +02:00 |
|
Irmen de Jong
|
d5b12fb01d
|
made astchecker readonly
|
2019-07-15 01:47:59 +02:00 |
|
Irmen de Jong
|
31f4e378aa
|
split up Literalvalue into numeric and reference ones
|
2019-07-15 01:11:32 +02:00 |
|
Irmen de Jong
|
8a26b7b248
|
- fixed lookup of members in structs defined in another scope
- preserve order of variable definitions in the Ast (and thus, the output)
|
2019-07-13 23:03:22 +02:00 |
|
Irmen de Jong
|
87c28cfdbc
|
restructure c64 machinedefinition
|
2019-07-13 03:16:48 +02:00 |
|
Irmen de Jong
|
1f5420010d
|
prevent struct member vars from shuffling around, can take address of struct now
|
2019-07-13 01:16:34 +02:00 |
|
Irmen de Jong
|
a089c48378
|
finalize v 1.11
|
2019-07-12 20:31:18 +02:00 |
|
Irmen de Jong
|
3e5deda46c
|
struct finished
|
2019-07-12 20:07:41 +02:00 |
|
Irmen de Jong
|
7500c6efd0
|
struct fixes
|
2019-07-12 17:57:56 +02:00 |
|
Irmen de Jong
|
717b5f3b07
|
struct fixes
|
2019-07-12 16:40:18 +02:00 |
|
Irmen de Jong
|
9f6fa60bf1
|
prepare
|
2019-07-12 14:38:37 +02:00 |
|
Irmen de Jong
|
1e9586f635
|
Structs can be compiled and executed in the vm! structs are just syntactic sugar for a set of variables for now.
|
2019-07-12 12:41:08 +02:00 |
|
Irmen de Jong
|
44f9d5e69e
|
added struct syntax
|
2019-07-12 06:14:59 +02:00 |
|
Irmen de Jong
|
845a99d623
|
return statement only has one single possible value
astvm can now more or less run all examples
|
2019-07-10 19:27:44 +02:00 |
|
Irmen de Jong
|
3d7a4bf81a
|
astvm can now more or less run all examples
|
2019-07-10 18:44:54 +02:00 |
|
Irmen de Jong
|
d4b3e35bd2
|
astvm almost complete
|
2019-07-10 16:50:41 +02:00 |
|