1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-12-24 20:32:39 +00:00
Commit Graph

2125 Commits

Author SHA1 Message Date
jespergravgaard
30b3172e7f Added Z register support to register allocation, synthesis, fragment system, clobber and more for 65CE02 and 45GS02. 2020-07-31 23:16:54 +02:00
jespergravgaard
b7a6412440 Added byte size to test of compatible CPU opcodes. 2020-07-31 13:19:11 +02:00
jespergravgaard
0f7061bcf0 Updated KickAsm with newest version of 45GS02 CPU. Now all opcodes match between KickC and KickAsm. 2020-07-31 01:47:49 +02:00
jespergravgaard
462c05552d Added test that checks that KickC and KickAss agree on all mnemonics and opcodes. Removed discrepancies for 6502 official & illegal, 65c02 and 65ce02. 2020-07-31 00:56:22 +02:00
jespergravgaard
f27fe1a75c Added support fro 45GS02 CPU addressing modes and instructions. Added a few 45GS02 optimized fragments. 2020-07-30 14:11:17 +02:00
jespergravgaard
1a436a67a3 Added some fragments and tests for 65CE02. 2020-07-30 01:26:41 +02:00
jespergravgaard
88cdba9d0c Added some fragments and tests for 65CE02. 2020-07-30 01:20:41 +02:00
jespergravgaard
e66705c103 Syntax for clobber aligned. 2020-07-30 00:25:06 +02:00
jespergravgaard
96cabc382f Added support for clobber, registers, addressing modes and instructions in the 65CE02 instruction set. 2020-07-29 23:52:38 +02:00
jespergravgaard
1881fb17d0 Now the ASM generation uses the instruction set of the declared CPU. Added support for addressing modes and instructions in the 65C02 instruction set. 2020-07-28 22:40:24 +02:00
jespergravgaard
ba9f99059a Added lexer support for all mnemonics used in CPU 65C02. Added Cpu65C02 instruction set. 2020-07-28 21:31:17 +02:00
jespergravgaard
a454ee2cdd Added support for all new addressing modes used in CPU's 65C02, 65CE02 and 45GS02. 2020-07-28 19:05:58 +02:00
jespergravgaard
a8b5929adf Working on CPU model. 2020-07-27 13:50:21 +02:00
jespergravgaard
21a6e60eed Fixed Wrong size of padding for non-byte arrays. Closes #497 2020-07-27 12:20:54 +02:00
jespergravgaard
9227a3a857 Fixed Wrong size of padding for non-byte arrays. Closes #497 2020-07-27 12:12:41 +02:00
jespergravgaard
dcb68b8c1a Moved clobber info to a constructor parameter. Added clobber info for SP, PC, d, i. 2020-07-26 22:51:34 +02:00
jespergravgaard
1fb532718f Changed clobber string format and made difference between registers and flags more clear. 2020-07-26 20:56:24 +02:00
jespergravgaard
7e72604cf9 Changed clobber to a value object. 2020-07-26 20:27:21 +02:00
jespergravgaard
676df5fc02 Moved 6502 family instruction set to separate java package. 2020-07-26 18:47:14 +02:00
jespergravgaard
f221865593 Added initial support for new CPU's 65C02, 65CE02 and 45GS02. 2020-07-26 16:50:49 +02:00
jespergravgaard
f62631812e Now using kickassembler-5.16-65ce02 properly. 2020-07-26 02:25:33 +02:00
jespergravgaard
afae4975f1 Updated to KickAssembler 5.16-65CE02 (my own hacked version). 2020-07-26 02:01:02 +02:00
jespergravgaard
be85d43f1c Upgraded to Kickassembler 5.16 2020-07-26 00:57:17 +02:00
jespergravgaard
d39893f97a Fixed problem with casting negative 8-bit numbers to 16-bit. Closes #496 2020-07-22 09:10:34 +02:00
jespergravgaard
b336ba38df Optimized slightly 2020-07-15 12:26:02 +02:00
jespergravgaard
f82800dd67 Added missing fragments. Working on scroller. 2020-07-14 20:14:57 +02:00
Jesper Gravgaard
ed84cda8ea Added missing fragment. 2020-07-13 21:52:20 +02:00
Jesper Gravgaard
8eebce644a Working on lazyNES. Adding sprite 0 hit test. 2020-07-11 23:46:42 +02:00
Jesper Gravgaard
87febe359d Working on lazyNES. Now lnList() works for vertical. CleanUp needed for vertical. 2020-07-11 22:14:02 +02:00
Jesper Gravgaard
6c8a320f5c Working on lazyNES. now lnList() works for single and horizontal. 2020-07-11 08:42:49 +02:00
Jesper Gravgaard
00e8822ff5 Merge remote-tracking branch 'origin/master' 2020-07-09 10:12:56 +02:00
Jesper Gravgaard
324b83e95e Improved fragment. Updated test data. 2020-07-09 10:12:28 +02:00
jespergravgaard
8de41e2438 Working on lazynes print.c demonstrating lnList() 2020-07-09 09:57:10 +02:00
jespergravgaard
1f02f81b3d Working on lazynes print.c demonstrating lnList() 2020-07-08 10:29:49 +02:00
jespergravgaard
858c5de57a Added working lazynes scroll.c 2020-07-08 09:01:28 +02:00
jespergravgaard
64db016dc2 Added working lazynes scroll.c 2020-07-08 01:06:39 +02:00
Jesper Gravgaard
a78ac24f81 Fixed problem with empty for() condition and non-empty increment. Closes #488 2020-07-07 13:07:26 +02:00
jespergravgaard
be54089089 Fixing #488. Still fails on for() with no condition and an increment. 2020-07-07 08:32:42 +02:00
jespergravgaard
1852630b16 Working on lazynes. 2020-07-06 23:58:44 +02:00
Jesper Gravgaard
7384fb5357 Fixed problem with post increment inside conditions. Closes #486 2020-07-06 17:49:41 +02:00
Jesper Gravgaard
fcd41d7390 Working on #486 post increment problems inside conditions. 2020-07-06 17:42:40 +02:00
Jesper Gravgaard
7f3c378119 Working on #486 post increment problems inside conditions. 2020-07-06 17:40:15 +02:00
jespergravgaard
862847b681 Working on lazynes 2020-07-06 08:39:09 +02:00
jespergravgaard
e25ef0e3f7 Fixed ASM error in fragment. Improved fragment synthesis. Working on lazynes (there seems to be an issue with waiting for vblank using lnSync(0) ). 2020-07-05 21:58:53 +02:00
jespergravgaard
c10615b9b8 Fixed fragment error. Closes #487 2020-07-05 18:49:37 +02:00
jespergravgaard
837ce228ac Added failing test for for(;;). 2020-07-05 18:38:55 +02:00
jespergravgaard
a74d02203e Attempting to port lazyNES API to KickC. 2020-07-05 18:27:42 +02:00
jespergravgaard
6b2d9d6522 Updated fragment caches. 2020-07-02 08:55:19 +02:00
jespergravgaard
3d549ea941 Added a test. 2020-07-01 23:45:09 +02:00
jespergravgaard
e96dd5825b Finished better ASM fragment handling for pointer to pointer. Closes #484 2020-07-01 23:39:45 +02:00