1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-12-11 19:49:32 +00:00
Commit Graph

2777 Commits

Author SHA1 Message Date
jespergravgaard
9c006cf015 Removed support for auto-casting integers to pointers. Closes #659 2021-05-11 13:40:56 +02:00
jespergravgaard
d4b8820b1c Removed support for auto-casting integers to pointers. Closes #659 2021-05-11 13:36:45 +02:00
jespergravgaard
497fd2b89f Removed most of the support for auto-casting integers to pointers. #659 2021-05-10 21:27:14 +02:00
jespergravgaard
a076fde1f0 Added missing fragments from @Flight_Control. Also demonstrates problem with auto-casting integers to pointers. Closes #656 2021-05-09 10:37:14 +02:00
jespergravgaard
0174743e94 Added missing fragments from @Flight_Control. 2021-05-08 20:24:17 +02:00
jespergravgaard
799f681991 Fixed problem with constantifying struct initializers. Closes #653 2021-05-08 13:33:17 +02:00
jespergravgaard
09d11f220b Converted DeclFunction to use declarator. #121 2021-05-03 00:50:10 +02:00
jespergravgaard
d59c5315ec Converted ParamDecl to use declarator. #121 2021-05-03 00:24:37 +02:00
jespergravgaard
7fb310296d Converted typedef to use declarator. #121 2021-05-02 21:11:03 +02:00
jespergravgaard
fafc9a5765 Converted ranged for to use declarator. Removed support for ranged for without type. #121 2021-05-02 17:39:07 +02:00
jespergravgaard
f0970364b5 Parser now based on declarator - allowing for more advanced pointer/array syntax. Preparing for declarator-based functions. #121 2021-05-02 14:28:03 +02:00
jespergravgaard
6400ef4d88 Simplified VariableDeclaration by removing VariableDeclType. Type qualifiers are now entirely embedded inside SymbolType. #121 2021-05-01 13:08:08 +02:00
jespergravgaard
78209db593 Variable printing now in C syntax. #121 2021-04-30 17:26:46 +02:00
jespergravgaard
8fd8bb1832 Removed const/volatile from Variable. #121 2021-04-30 16:21:38 +02:00
jespergravgaard
38d62b5759 Merge remote-tracking branch 'origin/master' 2021-04-30 15:39:40 +02:00
jespergravgaard
6e0cacc908 Moved const/volatile to SymbolType. #121 2021-04-30 15:39:29 +02:00
jespergravgaard
37ad98913f working on type qualifiers 2021-04-24 08:05:16 +02:00
Jesper Gravgaard
7e6c97779b Fixed problem with NPE when removing unused code can leave global constants referencing removed variables. Closes #650 2021-04-21 19:34:18 +02:00
jespergravgaard
8b2186e634 Added volatile/const booleans to SymbolType. So far they are always false! 2021-04-16 08:54:02 +02:00
jespergravgaard
5b82ae95ea Merged with master - ArraySpec moved to SystemTypePointer. 2021-04-12 22:00:49 +02:00
jespergravgaard
e78cd72417 Merge remote-tracking branch 'origin/master' into 121-pointer-to-function 2021-04-12 21:47:35 +02:00
Jesper Gravgaard
76edc3b8c8 Moved ArraySpec to SymbolTypePointer. 2021-04-12 20:57:46 +02:00
jespergravgaard
40d2b3b361 Updated parser syntax to work for any C-types - including pointers to functions. See section 5.12 in K&R for test cases. Pass0 will break! #121 2021-04-07 00:18:33 +02:00
Jesper Gravgaard
66b3daa62f Added example of work-around for passing parameters to call by pointer function. 2021-04-06 21:58:12 +02:00
jespergravgaard
6fe60c6ad5 Added WORD0/1 and fragments. #221 2021-04-06 00:18:49 +02:00
jespergravgaard
510935eee7 Added BYTE0/1/2/3 fragments. #221 2021-04-05 02:19:29 +02:00
jespergravgaard
9443fd5c46 Added BYTE0/1/2/3 support in ilist initializers. #221 2021-04-05 02:02:30 +02:00
jespergravgaard
299671109b Added initial support for special BYTE2() and BYTE3() unary operators giving access to specific bytes. #221 2021-04-05 01:14:35 +02:00
jespergravgaard
03d5d9621a Added initial support for special BYTE0() and BYTE1() unary operators giving access to specific bytes. #221 2021-04-05 00:30:04 +02:00
jespergravgaard
945d8a1113 Added initial support for special BYTE0() and BYTE1() unary operators giving access to specific bytes. #221 2021-04-05 00:29:49 +02:00
jespergravgaard
1d4e754f0e Added initial support for special BYTE0() and BYTE1() unary operators giving access to specific bytes. #221 2021-04-05 00:27:47 +02:00
jespergravgaard
d8cd73115a Added camelot 1536 dots source code. 2021-04-04 21:52:03 +02:00
jespergravgaard
1d5afcdf68 Added a naive double sine xy-plotter. 2021-04-04 19:10:47 +02:00
jespergravgaard
ce41782240 Added a naive double sine xy-plotter. 2021-04-04 18:32:56 +02:00
jespergravgaard
0598d6548a Added initial naive y-plotter. 2021-04-04 13:10:41 +02:00
jespergravgaard
87f0b6d526 Improved division waiting 2021-04-04 11:20:42 +02:00
jespergravgaard
ba2fdf58c5 Fixed line drawing - and fixed a fragment with an error. 2021-04-04 10:59:29 +02:00
jespergravgaard
ab71bff269 Added division function. 2021-04-04 10:23:39 +02:00
jespergravgaard
9fbaf71e31 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	src/test/kc/examples/mega65/linedrawing.c
2021-04-04 09:24:10 +02:00
jespergravgaard
f4c392ba6a Better documentation 2021-04-04 09:12:59 +02:00
jespergravgaard
3a2e795918 Fixed line drawing 2021-04-03 21:45:29 +02:00
jespergravgaard
ad92cea393 Fixed line drawing example. 2021-04-03 21:35:20 +02:00
jespergravgaard
65eb2edc12 Added better rounding after division. 2021-04-03 21:00:48 +02:00
jespergravgaard
9c9a99e2ac Moved DMA to separate function. Adde 1/2 to better round division result. 2021-04-03 20:51:59 +02:00
jespergravgaard
1c9fa962d3 Fixed slope calculation. Added fragment. 2021-04-03 00:20:47 +02:00
jespergravgaard
a750c606c9 Updated test data. 2021-04-02 17:11:13 +02:00
jespergravgaard
3de1834b35 Added slope initialization and a few fragments. 2021-04-02 11:49:28 +02:00
jespergravgaard
2c6947a600 Made long address unsigned. 2021-04-02 11:11:25 +02:00
jespergravgaard
663f134b0f Optimized readability. 2021-04-02 10:51:20 +02:00
jespergravgaard
fa53ba3dce Optimized readability. 2021-04-02 10:47:37 +02:00
jespergravgaard
eea4792eca Improved readability. 2021-04-02 09:54:58 +02:00
jespergravgaard
e6d28c8ff4 Added constants 2021-04-01 20:53:46 +02:00
jespergravgaard
385a5b2eb1 Using MEGA65 registers. 2021-04-01 20:33:53 +02:00
jespergravgaard
51e7441e62 Added MEGA65 math unit. Using math unit in line drawing. 2021-04-01 19:33:48 +02:00
jespergravgaard
920e0011ba Added new MEGA65 DMA options (line drawing & spiral). Updated line drawing sample. 2021-04-01 12:39:40 +02:00
jespergravgaard
2702432332 Working on mega65 DMA line drawer. Works for fixed x1, y1. 2021-04-01 01:32:02 +02:00
jespergravgaard
d08c678449 Added a fragment and the start of a line drawing mega65 program. 2021-03-31 20:43:36 +02:00
jespergravgaard
0d546d215f Added a fragment and the start of a line drawing mega65 program. 2021-03-31 20:23:35 +02:00
jespergravgaard
ebbecaa875 Merge remote-tracking branch 'origin/master' 2021-03-31 12:24:46 +02:00
jespergravgaard
e3555ff651 Added memchr() to <string.h> 2021-03-31 12:24:38 +02:00
jespergravgaard
566a6c0ffc Fixed error "Type inference case not handled byte* + byte*" that occurs when constant addition optimization changes the sequence of addition between pointers and integers. 2021-03-30 01:22:29 +02:00
jespergravgaard
ffa0ae17d0 Updated cache files. 2021-03-28 09:10:29 +02:00
jespergravgaard
03a25b8915 Updated test data. Added borderline pacman example. 2021-03-28 08:58:48 +02:00
jespergravgaard
e024ac6086 Added some SID register shorthands. 2021-03-20 22:12:49 +01:00
jespergravgaard
329beb2698 Merge remote-tracking branch 'origin/master' 2021-03-15 00:24:55 +01:00
jespergravgaard
2fd5fa6a1d Added missing fragments. 2021-03-15 00:24:48 +01:00
jespergravgaard
eba0c6a32d Merge remote-tracking branch 'origin/master' 2021-03-07 10:27:36 +01:00
jespergravgaard
5b10b2de05 Work in progress on MEGA65 DevKit support. 2021-03-07 10:27:22 +01:00
jespergravgaard
31825bfc94 Added missing fragments. 2021-03-07 01:01:41 +01:00
jespergravgaard
c2bfa98d8f Fixed problem with erronously coalescing structs of same size/type affected by address-of. Closes #632 2021-03-06 08:53:09 +01:00
jespergravgaard
f40050c558 Fixed problem with erronously coalescing structs of same size/type affected by address-of. Closes #632 2021-03-06 08:26:41 +01:00
jespergravgaard
56fe16e753 Added proper error message on unknown struct memeber. Closes #638 2021-03-03 22:24:18 +01:00
jespergravgaard
fd0d903e44 Added missing fragment 2021-03-03 07:53:57 +01:00
jespergravgaard
b2375f49c7 optimized fragments. 2021-02-17 23:35:01 +01:00
jespergravgaard
25abb9740d optimized fragments. 2021-02-17 09:30:36 +01:00
jespergravgaard
d7e6ad8fea Added missing fragments. 2021-02-15 13:44:29 +01:00
jespergravgaard
f3a878014b Renamed VICII_CONTROL to VICII_CONTROL1. 2021-02-07 16:14:44 +01:00
jespergravgaard
0f01dbb700 Upgraded to KickAsm 5.19. 2021-02-07 15:16:19 +01:00
jespergravgaard
4648165f86 Added "c64-" prefix on all C64-only libraries. 2021-02-04 09:18:27 +01:00
jespergravgaard
f9a1edc4cc Retired bitmap-draw.h and bitmap2.h. Introduced c64-bitmap.h instead. 2021-02-04 08:53:47 +01:00
jespergravgaard
4993a2cb4b Merged FlightControl/CX16_VERA Commander X16 veralib updates and space demo. 2021-02-02 01:37:05 +01:00
jespergravgaard
41bb71511c Merged FlightControl/CX16_VERA Commander X16 veralib updates and space demo. 2021-02-02 00:14:47 +01:00
jespergravgaard
d79b654e94 Added cbm.h 2021-02-01 21:54:52 +01:00
jespergravgaard
fa9736d15b Merged CX16 veralib progress. 2021-02-01 21:52:35 +01:00
jespergravgaard
c32857c87f Merged CX16 veralib progress. 2021-02-01 21:51:12 +01:00
FlightControl
83b8353d36 Space.c is uploaded. Compiles in release version, but not in latest kickc version; Assembly fails. 2021-01-26 22:19:27 +01:00
FlightControl
97d7141fa0 Created new functions to:
- generate bitmap load files.
- load bitmap files into banked memory on the cx16, cross banks between address space A000 and BFFF.
- added cx16-kernal.c and cx16-kernal.h to load files.
- created arithmetic to determine bank addressing using dwords over the 512K of memory (used in bnkcpy_vram_address() and LoadFileBanked()).
 - optimized functions for vera and conio.
2021-01-26 22:09:47 +01:00
FlightControl
2e0d00bf4e Created new functions to:
- generate bitmap load files.
- load bitmap files into banked memory on the cx16, cross banks between address space A000 and BFFF.
- added cx16-kernal.c and cx16-kernal.h to load files.
- created arithmetic to determine bank addressing using dwords over the 512K of memory (used in bnkcpy_vram_address() and LoadFileBanked()).
 - optimized functions for vera and conio.
2021-01-26 21:55:20 +01:00
FlightControl
473722f8eb One demo program for vera modes. 2021-01-23 17:23:25 +01:00
FlightControl
519e2fbc2c Merge branch 'master_upstream' into CX16_VERA 2021-01-23 16:19:41 +01:00
jespergravgaard
09bb98b319 Fixed test data. 2021-01-23 14:04:33 +01:00
jespergravgaard
5ddc33ceea Fixed test data. 2021-01-23 13:10:14 +01:00
jespergravgaard
9250e346be Fixed infinite loop. Closes #626 2021-01-23 12:49:49 +01:00
FlightControl
f70d503001 One demo program for vera modes. 2021-01-22 20:37:24 +01:00
FlightControl
8b767abd7d One demo program for vera modes. 2021-01-22 20:21:13 +01:00
FlightControl
b4cbf3f883 One demo program for vera modes. 2021-01-22 20:17:55 +01:00
FlightControl
85e6be623d One demo program for vera modes. 2021-01-22 19:57:22 +01:00
FlightControl
f4fb0cf56b One demo program for vera modes. 2021-01-22 19:51:57 +01:00
FlightControl
41a3e067bc Updated one demo program. 2021-01-21 21:10:37 +01:00
FlightControl
4bc7f1bc0f Updated one demo program. 2021-01-21 20:12:27 +01:00
FlightControl
15fbefa7e5 Documented and cleaned up bitmap-draw.h and bitmap-draw.c 2021-01-21 20:06:58 +01:00
FlightControl
17832182b4 Documented and cleaned up verlib.h and veralib.c 2021-01-21 19:51:09 +01:00
FlightControl
5157db5844 Documented and cleaned up verlib.h and veralib.c 2021-01-21 19:41:14 +01:00
FlightControl
ce8e0ab26a Documented and cleaned up verlib.h and veralib.c 2021-01-21 19:38:50 +01:00
FlightControl
f60c94a374 Cleaning the code a bit 2021-01-21 12:51:17 +01:00
FlightControl
6f0145d5a8 Cleaning the code a bit 2021-01-21 12:36:47 +01:00
FlightControl
d038a3df9a Cleaning the code a bit 2021-01-21 12:16:44 +01:00
FlightControl
7e86bebc41 Fixed old bitmap logic by isolating the c64 old bitmap logic into separa .h and .c files! 2021-01-21 12:11:36 +01:00
FlightControl
2cd61a8d78 Bitmap mode working! 2021-01-21 09:15:27 +01:00
FlightControl
4db64f30cf Bitmap mode working! 2021-01-21 09:02:29 +01:00
FlightControl
962c5f0e17 Merge branch 'master_upstream' into CX16_VERA
# Conflicts:
#	src/main/fragment/cache/fragment-cache-wdc65c02.asm
#	src/main/fragment/mos6502-common/pduc1_derefidx_vbuxx=vdum1.asm
#	src/main/fragment/mos6502-common/vdum1=vdum1_ror_1.asm
#	src/test/ref/examples/cx16/cx16-sprites.asm
#	src/test/ref/examples/cx16/cx16-sprites.cfg
#	src/test/ref/examples/cx16/cx16-sprites.log
#	src/test/ref/examples/cx16/cx16-sprites.sym
#	src/test/ref/examples/cx16/cx16-tilemap.asm
#	src/test/ref/examples/cx16/cx16-tilemap.cfg
#	src/test/ref/examples/cx16/cx16-tilemap.log
#	src/test/ref/examples/cx16/cx16-tilemap.sym
#	src/test/ref/examples/cx16/cx16-veralayers.asm
#	src/test/ref/examples/cx16/cx16-veralayers.cfg
#	src/test/ref/examples/cx16/cx16-veralayers.log
#	src/test/ref/examples/cx16/cx16-veralayers.sym
2021-01-21 04:49:08 +01:00
FlightControl
843c6c91c0 Bitmap mode - wip 2021-01-21 04:39:26 +01:00
jespergravgaard
44ad31a27e Added fragment. Closes #624 2021-01-20 22:27:39 +01:00
jespergravgaard
b56163c82a Added fragment. Closes #623 2021-01-20 22:24:21 +01:00
jespergravgaard
53bdb9d60b Improved error message. See #622 2021-01-20 19:02:32 +01:00
jespergravgaard
47f4e03835 Fixed test. 2021-01-20 18:27:34 +01:00
jespergravgaard
14933cbb6a Added example of how to code a ROM in KickC using a linker file and a segment that is compiled but thrown away by the linker. Closes #621 2021-01-20 17:51:49 +01:00
FlightControl
cf185d539b Bitmap mode 2021-01-20 09:02:35 +01:00
FlightControl
6c8654fbc8 Bitmap mode 2021-01-19 22:36:08 +01:00
FlightControl
6b690f860b Bitmap mode 2021-01-19 22:30:51 +01:00
FlightControl
5daa045271 Fine-tuning the logic. 2021-01-18 07:55:59 +01:00
FlightControl
40bc8e42d6 Got all the vera tile demos working now. First versions ... 2021-01-17 22:29:27 +01:00
FlightControl
ead5a43085 Added 2 new fragments to resolve asm dword related code. Optimized a lot of veralib code. Test programs added. 2021-01-17 20:53:13 +01:00
jespergravgaard
789fcd033a Added missing fragments for @Flight_Control 2021-01-17 19:54:00 +01:00
jespergravgaard
b11256030c Fixed test data. 2021-01-17 13:01:07 +01:00
jespergravgaard
6366d1a9fa Fixed problem where Variable used inside ASM is optimized to a constant.
Now variables used inside ASM are made volatile before the early const pass.
Closes #618
2021-01-17 12:59:41 +01:00
FlightControl
bdb1dba43b fixed much code, working on 16x16 8bit tile mode.
There is an error in the compiler i think which i need to communicate to Jesper.
2021-01-17 08:39:17 +01:00
FlightControl
056259b2e0 fixed much code, working on 16x16 8bit tile mode.
There is an error in the compiler i think which i need to communicate to Jesper.
2021-01-17 08:21:46 +01:00
FlightControl
a5e81ca64d fixed much code, working on 16x16 8bit tile mode.
There is an error in the compiler i think which i need to communicate to Jesper.
2021-01-17 08:21:20 +01:00
FlightControl
a5b10d962f fixed much code, working on 16x16 8bit tile mode.
There is an error in the compiler i think which i need to communicate to Jesper.
2021-01-17 08:20:45 +01:00
jespergravgaard
3bed5e1aee Updated test data. 2021-01-16 23:51:52 +01:00
jespergravgaard
2577fae6ad Fixed missing include in conio on cx16. Closes #616 2021-01-16 22:33:11 +01:00
jespergravgaard
7bbfb43912 Added ISR for VIC20 and Plus/4. Re-arranged example programs into platform folders. 2021-01-16 18:39:02 +01:00
jespergravgaard
9681fe8f86 Added ASM-files to examples. 2021-01-15 01:45:16 +01:00
jespergravgaard
354863d157 Updated Manual 2021-01-14 23:57:26 +01:00
FlightControl
d45e58a1be 2BPP 8x8 first explanation done.
Created new vera functions to set the mode of a layer, in one call, and to paint an area with a tile. More functions like this will be made. (like tile increment, tile template fill, etc, etc).
2021-01-14 21:47:18 +01:00
FlightControl
72dd0f044c Merge from upstream 2021-01-14 08:04:55 +01:00
FlightControl
bdfb6a21eb 2BPP demo started. 2021-01-13 19:41:12 +01:00
Jesper Gravgaard
f8134facc4 Updated version number. 2021-01-13 18:29:00 +01:00
Jesper Gravgaard
ec1da0250c Updated CX16 test data. 2021-01-13 18:28:08 +01:00
Jesper Gravgaard
ee9f738f87 Merged FlightControl/CX16_FRAMEWORK implemeting CX16 veralib.h and conio.h by Sven Van de Velde. 2021-01-13 18:18:14 +01:00
FlightControl
598b5b81d2 2BPP demo started. 2021-01-13 13:34:51 +01:00
FlightControl
5ca07ed458 Did the removal of the vsync interrupt reset code. 2021-01-13 08:34:38 +01:00
FlightControl
b812c76427 Updates to make the demo even more compelling. I will continue now with other VERA mode settings. 2021-01-13 08:30:58 +01:00
FlightControl
1333e3c21a Fixed some spelling mistakes. 2021-01-12 22:32:29 +01:00
FlightControl
69d3f2f395 Worked out a demo for panning the visible screen over the tile map.
Worked out functions to set the dimensions of the tile map width and height.

When in conio, scrolling is disabled (by calling scroll(0)), then printf will print beyond the visible screen borders and will print until the tile map border is reached.

I still need to add the scrolling functions, but that is not too much.

I have stolen your irq routine to pan the screen smoothly!

When all the characters are drawn, you can still type or move the cursor :-).
2021-01-12 22:10:17 +01:00
FlightControl
21df8c6557 Added veralib.h and veralib.c
for conio-cx16.h, there will be a dependency on veralib.h. Because of the layering. So that we can direct conio towards a specific layer. But now conio-cx16.h is not anymore polluted with vera encapsulation functions. These are moved to veralib.h and veralib.c.
2021-01-12 14:08:01 +01:00
FlightControl
51874941a0 Test program to print the default tiles of the CX16 on the screen. It demonstrates the tile addressing of the VERA and the vera functions in kickc that can be used for this. 2021-01-12 13:46:29 +01:00
FlightControl
d24ca095dd progress with vera encapsulation.
- vera layers
- vera layer config
- vera layer mapbase
- vera layer tilebase
- vera layer color

now conio is using the new vera functions. conio is cleaned from exotic functions, except screenlayer, which i believe should be part of conio to indicate to which layer conio is outputting.
2021-01-11 22:58:00 +01:00
FlightControl
f9f7eec372 - kbhit() test is working and returns a character.
- fine tuned the veralayers.c demonstration program.
- fine tuned clearline(), which will clear the current line of conio_cursor_y and reposition x at the start of the line.
2021-01-10 21:44:32 +01:00
FlightControl
cdf564574a - kbhit() test is working and returns a character.
- fine tuned the veralayers.c demonstration program.
- fine tuned clearline(), which will clear the current line of conio_cursor_y and reposition x at the start of the line.
2021-01-10 21:30:46 +01:00
FlightControl
9fd668bba5 Implementation of the layers in VERA is working now in text mode!
Added a number of new methods in conio to accommodate this.

screenlayer()
setscreenlayermapbase()
getscreenlayermapbase()
screenlayerenable()
screenlayerdisable()
screenlayerenabled()
2021-01-09 07:43:12 +01:00
FlightControl
218eb1a9db Added comments documenting the vram to vram copy function. 2021-01-07 19:56:41 +01:00
FlightControl
ea09a0383c Scrolling is working.
Added new functions insertup() and insertdown() to add new lines at the cursor position while scrolling the remainer screen up or down.
2021-01-07 19:45:40 +01:00
FlightControl
8ff65de74c println is working! without scrolling. 2021-01-07 19:09:39 +01:00
FlightControl
84c2cea8c1 println is working! without scrolling. 2021-01-07 19:09:05 +01:00
jespergravgaard
9c2e04aa61 Updated ASM fragment cache files. 2021-01-04 20:07:19 +01:00
jespergravgaard
2db904f7c1 Upgraded to KickAsm 5.17. Closes #609 2021-01-04 19:58:04 +01:00
Jesper Gravgaard
e2ca1801ad Added missing fragment. 2021-01-04 16:53:00 +01:00
Jesper Gravgaard
056e145d2e Merged @SijmenSchoon fix for ClassCastException when declaring array with a constant that does not exist addresses. Closes #607 2021-01-04 14:38:36 +01:00
Jesper Gravgaard
dedd1cc217 Fixed test ref. 2021-01-04 14:31:25 +01:00
Jesper Gravgaard
ac7b4a56a7 Merge remote-tracking branch 'origin/master' 2021-01-04 12:26:32 +01:00
Jesper Gravgaard
27d0aa9e67 Improved VERA code. 2021-01-04 12:26:13 +01:00
jespergravgaard
cc8d17b880 Added new_30_years_low_resolution. 2021-01-04 11:12:43 +01:00
jespergravgaard
1fd5cc001c Added new_30_years_low_resolution. 2021-01-04 01:02:00 +01:00
jespergravgaard
a6554c3d37 Removed some tests. Added new_30_years_low_resolution. 2021-01-04 01:00:49 +01:00
jespergravgaard
3cfc517fe2 Removed some tests. 2021-01-04 00:49:50 +01:00
jespergravgaard
9bf44bcb2a Removed some tests. 2021-01-04 00:41:58 +01:00
jespergravgaard
f37128fa2e Removed some tests. 2021-01-04 00:34:38 +01:00
jespergravgaard
d67749719e Removed some tests. 2021-01-04 00:33:51 +01:00
jespergravgaard
f7617fe06b Removed some tests. 2021-01-04 00:29:41 +01:00
jespergravgaard
a473e963d6 Removed some tests. 2021-01-04 00:26:11 +01:00
jespergravgaard
0eed4e7857 Fixed tests! 2021-01-04 00:11:22 +01:00
jespergravgaard
5979efaa25 Fix to problem with two ROL fragments by @SijmenSchoon. Moved NotLiteralException singleton behing a function. Closes #604 2021-01-03 20:14:05 +01:00
jespergravgaard
c36da71ecd Added cruncher plug-in and example programs. Closes #603 2020-12-30 23:13:55 +01:00
jespergravgaard
2dd2697ba1 Updated const names to VICII. 2020-12-30 01:55:04 +01:00
jespergravgaard
581f055561 Updated const names to VICII. 2020-12-29 19:37:32 +01:00
jespergravgaard
598e17b468 Merge remote-tracking branch 'origin/master' 2020-12-29 19:22:56 +01:00
jespergravgaard
dc05d90ed7 Updated const names to VICII. 2020-12-29 19:22:48 +01:00
jespergravgaard
9b0dda8766 Updated test data. 2020-12-27 22:02:15 +01:00
jespergravgaard
7d1c127999 Fixed update of resource files in output directory. Closes #495 2020-12-27 21:02:33 +01:00
jespergravgaard
043b6e29b5 Merge remote-tracking branch 'origin/master' into master 2020-12-27 18:42:25 +01:00
jespergravgaard
b27749a8bd Added more fragments. 2020-12-27 01:40:08 +01:00
jespergravgaard
8f3b8abdb3 Added more fragments. Updated C64Debugger options. 2020-12-27 00:13:16 +01:00
jespergravgaard
205eed20eb Added missing fragment 2020-12-26 11:32:14 +01:00
jespergravgaard
9b5d3f8190 Fixed off-by-one problem in multiplexer. Improved mega65 conio. 2020-12-24 01:54:13 +01:00
jespergravgaard
9e1a2a3684 Merge remote-tracking branch 'origin/master' into master 2020-12-22 10:25:20 +01:00
jespergravgaard
274764931c minor changes 2020-12-22 10:25:17 +01:00
jespergravgaard
7a8a42bb03 Added support for @nooptimize ASM tag. #599 2020-12-21 17:49:10 +01:00
jespergravgaard
bda0f28414 Removed unused clob-fragments. #599 2020-12-21 15:07:57 +01:00
jespergravgaard
ea97e20319 Changed interrupt clobber handling to use (new!) ASM tags instead of replacing the fragment. #599 2020-12-21 15:05:10 +01:00
jespergravgaard
0bdaa77876 Changed align() to __align(). Closes #600 2020-12-21 09:22:44 +01:00
jespergravgaard
da789e007f Removed support for programs without segments. Closes #465 2020-12-21 08:57:41 +01:00
jespergravgaard
089125ff5e Implemented new interrupt system supporting more platforms and CPUs. Closes #599 2020-12-21 01:04:34 +01:00
jespergravgaard
cd6c33a92c CX16 sprite example is now a 256-color 64*64 TUT sprite. #581 2020-12-17 23:34:39 +01:00
jespergravgaard
e6962d38ac CX16 sprite example is now a 256-color 64*64 TUT sprite. #581 2020-12-17 23:23:46 +01:00
jespergravgaard
559d4f65c7 Extended sprite CX16 example. #581 2020-12-17 09:28:45 +01:00
jespergravgaard
e4349daaf6 Extended sprite CX16 example. #581 2020-12-17 09:26:34 +01:00
jespergravgaard
dbaea05623 Added a sprite CX16 example. #581 2020-12-16 22:24:38 +01:00
jespergravgaard
2d58a799d5 Improved simple VRAM example. #581 2020-12-15 01:00:39 +01:00
jespergravgaard
02e57b06cb Improved raster bars. Added simple VRAM example. #581 2020-12-15 00:42:52 +01:00
Jesper Gravgaard
1e13b733ca Fixed VIA addresses. #581 2020-12-14 18:09:53 +01:00
Jesper Gravgaard
205ce4eb6c Added 6522 VIA#1 and VIA#1 to CX16. #581 2020-12-14 13:33:10 +01:00
jespergravgaard
0af602beb5 Added Commander X16 Platform Target and example program. #581 2020-12-14 01:52:55 +01:00
jespergravgaard
2f695a3724 Added Commander X16 Platform Target and example program. %581 2020-12-14 01:29:39 +01:00
jespergravgaard
7c995f82a1 Added a few missing fragments. Improved fragments for if() where rvalue1==0. Closes #598 2020-12-12 00:48:31 +01:00
jespergravgaard
df62ca5c9f Merged improved integer type inference by @tfisher98. Closes !2, #594, #334, #199 2020-12-12 00:02:55 +01:00
jespergravgaard
78d961fd19 Merged improved integer type inference by @tfisher98. Closes !2, #594, #334, #199 2020-12-12 00:01:15 +01:00
jespergravgaard
8a89a4e0a1 Merged branch ignoring trailing whitespace in reference files. Closes !4 2020-12-11 01:26:42 +01:00
jespergravgaard
82a045934d Updated to ANTLR4.9. Merged Andrzej Śliwa implementation of __address() support for constant expressions branch address_with_expression_value. Closes !1 2020-12-11 01:18:36 +01:00
jespergravgaard
717add7c75 Upgraded to Atari XE/XL Format plugin 1.3 (adding support for "_Order") in the linker file. Upgraded to KickAss 65CE02 5.16.h (Fixing off-by-one bugin long branches.) 2020-12-11 00:20:23 +01:00
Andrzej Sliwa
6116709c7e Merge branch 'master' into address_with_expression_value 2020-12-10 18:37:56 +01:00
Andrzej Sliwa
cee9bbb3f7 Merge branch 'master' into stripping_to_string_outputs_for_statetments 2020-12-10 18:37:28 +01:00
jespergravgaard
21e12bde0a Fixed problem with local variable not shadowing global functions. Closes #597 2020-12-09 22:42:17 +01:00
Andrzej Sliwa
3bf8a6f55e fixed problem with triming on string comparisions 2020-12-09 16:33:57 +01:00
Andrzej Sliwa
6466419fd1 removed verbose log from unit test 2020-12-09 13:00:02 +01:00
Andrzej Sliwa
9a3244bfc0 removed verbose log from unit test 2020-12-09 12:22:51 +01:00
Andrzej Sliwa
e8155008a2 added support for expressions in __address 2020-12-09 12:18:07 +01:00
jespergravgaard
49b58cc610 Removed test that does not contribute. 2020-12-06 21:08:22 +01:00
jespergravgaard
d3dbba3383 Fixed test data. 2020-12-06 16:59:54 +01:00
jespergravgaard
19a80842e2 Fixed problem with fragment. Thanks @mark.j.fisher. Closes #591 2020-12-06 13:57:44 +01:00
jespergravgaard
6c8c63f7b1 Optimized tests from @IcePic. Closes #514 2020-12-06 11:46:31 +01:00
Travis Fisher
b9b5baf2ea update test reference 2020-12-05 23:30:34 -05:00
Travis Fisher
6f521cd197 Merge branch 'master' into revised-attempt-improved-type-inference 2020-12-05 23:13:24 -05:00
Travis Fisher
a23e5c2848 add reference files for issue-594-case.c 2020-12-05 22:55:23 -05:00
Travis Fisher
3ee2792070 add additional step in pass2 to finalize all numbers 2020-12-05 22:26:41 -05:00
Travis Fisher
4dcff649b7 passnaddnumbertypeconversions back to original 2020-12-05 21:27:52 -05:00
Travis Fisher
33764d4466 add test case 2020-12-05 21:23:38 -05:00
jespergravgaard
deba5a27c4 Updated fragment cache. 2020-12-06 02:26:33 +01:00
jespergravgaard
ee37ed3496 Added missing fragments for Travis Fisher. Closes #585 2020-12-06 02:06:47 +01:00
jespergravgaard
50b8c78dfa Added missing fragments for Janne Johansson. Closes #293 2020-12-06 01:56:33 +01:00
jespergravgaard
f1605bb085 Added missing fragments for Travis Fisher 2020-12-06 01:43:36 +01:00
jespergravgaard
1b283b3084 Added missing fragments for Richard-William Loerakker 2020-12-06 01:13:48 +01:00
jespergravgaard
abb946cca8 Merged 372-varcall into master. 2020-12-06 00:48:41 +01:00
jespergravgaard
c1af79cf47 Added missing ref files. 2020-12-05 23:56:32 +01:00
jespergravgaard
8b6fabc9c8 All tests are now passing. __varcall works reasonably well for non-struct variables. Added some missing fragments and some new tests. 2020-12-05 23:56:01 +01:00
Travis Fisher
4aec255c95 add type cast in simple assignment of numbers; allow integer constants to be finalized to a fixed value; bugfix memcpy 2020-12-04 23:38:14 -05:00
jespergravgaard
28729cbd45 Added new MEGA65 DMA methods and tests. Added a missing fragment. 2020-12-03 01:52:49 +01:00
jespergravgaard
63bc6e0a8e Merge remote-tracking branch 'origin/master' into master
# Conflicts:
#	src/main/fragment/cache/fragment-cache-csg65ce02.asm
#	src/main/fragment/cache/fragment-cache-mega45gs02.asm
#	src/main/fragment/cache/fragment-cache-mos6502.asm
#	src/main/fragment/cache/fragment-cache-mos6502x.asm
#	src/main/fragment/cache/fragment-cache-wdc65c02.asm
2020-12-03 01:38:25 +01:00
jespergravgaard
340db44a84 Added new MEGA65 DMA methods and tests. Added a missing fragment. 2020-12-03 01:37:58 +01:00
jespergravgaard
34a5ca474a Struggling with struct return values. 2020-11-23 11:46:54 +01:00
jespergravgaard
19893e25f6 Added test with 16bit types. 2020-11-23 10:08:11 +01:00
jespergravgaard
381799bbea Rudimentary return value working. TODO: Passing using registers, Live ranges, Entry Points. 2020-11-22 22:39:15 +01:00
jespergravgaard
3be0b5d2d4 Updated test data. 2020-11-22 22:30:24 +01:00
jespergravgaard
2479fc08db The first small test of calling convention VAR is working. TODO: return values, live ranges, allow registers for parameter/return transfer, entry points. 2020-11-22 22:29:48 +01:00
jespergravgaard
6cc6242a54 Fixed a few comments. Added kbhit() check at end of eightqueens. 2020-11-21 14:17:19 +01:00
jespergravgaard
5c0618f9e8 Added missing fragments and a few new pretty hairy synthesis rules.. Closes #577 2020-11-20 23:01:01 +01:00
jespergravgaard
9a38de88ce Added a few missing fragments. Closes #449 2020-11-20 20:46:42 +01:00
jespergravgaard
cb6953dd0d Upgraded to Atari XEX Format Plugin 1.2 2020-11-18 17:53:17 +01:00
Jesper Gravgaard
4d70e8c410 Fixed problem with specifying absolute paths for source files. Closes #576 2020-11-15 20:12:45 +01:00
jespergravgaard
511e47f69e Added support for string encoding suffixes as: ASCII, at: ATASCII, sa: Screencode Atari. Closes #575 2020-11-15 17:51:04 +01:00
jespergravgaard
18e50a245b Using full path for VS.code clickyness. 2020-11-15 14:43:22 +01:00
jespergravgaard
4b543b7de5 Now formatting errors according to GCC standard format. Thanks @RoyJacobs. Closes #551 2020-11-15 14:15:07 +01:00
jespergravgaard
762cce9720 Upgraded XES plugin for supporting older JVMs. Added better support for start address to target platforms. Closes #574 2020-11-15 10:11:43 +01:00
jespergravgaard
a67f01a61a Introduced KickAss XEX format modifier plugin https://gitlab.com/jespergravgaard/kickass-plugin-atari-xex. Changed #pragma pc() to #pragma start_address(). Added start_address to .TGT platform file. Closes #571 2020-11-15 02:15:48 +01:00
Roy Jacobs
a0137d78da Try to infer as much context as possible from existing CompileErrors and clean up their syntax a bit 2020-11-08 21:11:03 +01:00
Roy Jacobs
2084df4a18 Format CompileErrors using new ErrorFormatter class when compiling through the main KickC class 2020-11-08 21:11:03 +01:00
jespergravgaard
bca3622d55 Improved error when emulator cannot be found. Closes #506 2020-11-08 13:02:07 +01:00
jespergravgaard
66d94d7501 Added support for passing command line options on to the assembler using -Xassembler. Closes #530 2020-11-08 12:46:42 +01:00
jespergravgaard
78571d56ee Changed sinus to sine for better english. Closes #565 2020-11-08 10:48:03 +01:00
jespergravgaard
0136093db0 Initializing cursor position in conio/stdio for C64/PLUS4/VIC20. Closes #521 2020-11-08 10:17:22 +01:00
jespergravgaard
2a0efd5f5b Fixed multiplexer tests. 2020-11-08 08:36:09 +01:00
jespergravgaard
d905298115 Improved test. 2020-11-06 08:21:23 +01:00
jespergravgaard
0e9a7e94ca Fixed multiplexer problem caused by missing volatile on screen variable. Added test demonstrating the problem. 2020-11-06 08:16:28 +01:00
jespergravgaard
c6d0f41c14 Merge remote-tracking branch 'origin/master' 2020-11-04 09:10:36 +01:00
jespergravgaard
bc3731dc5d Added test for #564 2020-11-04 09:09:38 +01:00
Jesper Gravgaard
35d03db4c5 Now skipping postponed folders that cannot be deleted. 2020-11-02 19:03:05 +01:00
Jesper Gravgaard
5a99c43efb Fixed problem where temporary folders not being deleted causes errors on every compile. Closes #493 2020-11-02 15:00:09 +01:00
Jesper Gravgaard
9a98476d6e Added test refs. 2020-11-02 11:07:29 +01:00
jespergravgaard
f6c32196ed Improved support for declaring pointers located on zero-page. __address(0xfc) char * zp2. #554 2020-11-02 01:18:03 +01:00
jespergravgaard
6394f074fa Fixed test. 2020-11-01 23:12:46 +01:00
jespergravgaard
c920c360a1 Variables used in ASM is now automatically converted to volatile if not const. Beware that char * const var; and char * volatile var; do behave quite differently when used in ASM Closes #554 2020-11-01 22:42:09 +01:00
jespergravgaard
6bec9849b6 Working on #554 variables used in ASM. 2020-11-01 21:51:16 +01:00
jespergravgaard
85dcf992df Fixed exception in pass 2 casued by constant function parameter. Closes #561 2020-11-01 18:49:10 +01:00
jespergravgaard
b1f34e5769 Working on #554 variables used in ASM. 2020-11-01 11:29:53 +01:00
jespergravgaard
279cc322b7 Added test for #558 2020-11-01 08:19:32 +01:00
jespergravgaard
251cf0856b Added test for #557 2020-11-01 08:00:52 +01:00
jespergravgaard
48af107a90 Created minimal failing MD5 loop 2020-10-30 21:43:12 +01:00
jespergravgaard
8835a8c8f2 Created minimal failing MD5 loop 2020-10-30 21:11:37 +01:00
jespergravgaard
9a44547552 Added second MD5 test. 2020-10-30 20:10:13 +01:00
jespergravgaard
77754f8d39 Added missing fragment. Closes #555 2020-10-30 18:12:52 +01:00
jespergravgaard
4caaa9b752 Added last rol/rors. 2020-10-30 17:09:56 +01:00
jespergravgaard
6daf5ee97a Updated tests. 2020-10-30 16:41:58 +01:00
jespergravgaard
e8ccd96d07 Added 32bit unsigned rol/ror fragments. 2020-10-30 16:05:31 +01:00
jespergravgaard
6f1ef0274e Updated cache. 2020-10-30 10:58:36 +01:00
jespergravgaard
5c0009239e Added missing 32bit-fragments for @mark.j.fisher.See #553 2020-10-30 10:43:01 +01:00
jespergravgaard
b79425ee48 Added missing fragments from @mark.j.fisher.See #550 2020-10-30 10:15:02 +01:00
jespergravgaard
d9fab8eb23 Fixed problem where zp_reserve is not being honoured after using __address. Closes #550 2020-10-30 09:17:34 +01:00
jespergravgaard
eb183ada7e Added font locations 2020-10-29 08:17:29 +01:00
jespergravgaard
599aaf4d67 Added test for macro-based struct addressing vs. const-pointer based. 2020-10-19 23:59:26 +02:00
Jesper Gravgaard
482811f2c8 Merged https://gitlab.com/mark.j.fisher/kickc/-/tree/conio-atari ATARI XL/XE conio.h implementation. Closes #546 2020-10-19 12:22:42 +02:00
jespergravgaard
61f1f5a939 Added documentation to VIC-II 2020-10-19 08:24:40 +02:00
jespergravgaard
a55f7477de Added 6502.h with SEI() and CLI(). 2020-10-18 20:33:36 +02:00
jespergravgaard
2ad0285dc6 Fixed problem where nested infinite loop produces wrong block sequence. Closes #547 2020-10-18 17:46:09 +02:00
Mark Fisher
96a11cddc1 Fixed typo and tests for conio comment 2020-10-17 14:47:29 +01:00
Mark Fisher
6d84bc1ada Add target pragma to conio-atari example 2020-10-16 12:55:12 +01:00
Mark Fisher
24a83558e8 Add conio example for Atari 2020-10-15 12:45:16 +01:00
Mark Fisher
b38626f018 Add conio implementation for Atari XL target 2020-10-15 10:18:44 +01:00
jespergravgaard
e3662e22d6 Fixed fragment cache. 2020-10-12 20:42:06 +02:00
jespergravgaard
03907f9e48 Fixed fragment. 2020-10-12 20:33:33 +02:00
jespergravgaard
26a25364c2 Added missing fragments. Aligned clc sequence. Closes #539 2020-10-12 20:28:00 +02:00
jespergravgaard
724ea3e235 Added missing fragment. 2020-10-12 20:03:17 +02:00
jespergravgaard
6a9ca1537c Fixed problem problem where constant references are not literal. Closes #540 2020-10-12 19:59:07 +02:00
jespergravgaard
2068fd3b7b Fixed tests. 2020-10-11 15:59:07 +02:00
jespergravgaard
a4e62009d0 Fixed problem with post-increment causing java exception. Closes #538 2020-10-11 15:56:17 +02:00
jespergravgaard
cb1ae7bd30 Fixed problem caused when the same resource is decalred twice in inline kickasm. Closes #537 2020-10-11 15:47:10 +02:00
jespergravgaard
4fd5e18bd0 Added 2 missing fragments. Thanks @fenrock 2020-10-10 19:52:26 +02:00
jespergravgaard
315a65f01f Added 2 missing fragments. Thanks @fenrock 2020-10-10 19:48:37 +02:00
jespergravgaard
74ba01ebac Added missing fragment. Thanks @fenrock 2020-10-10 15:47:05 +02:00
jespergravgaard
0a2e4189fe Added test for loop loop invariant calculation hoisting optimization. #535 2020-10-05 23:35:41 +02:00
jespergravgaard
66d7c4ed51 Improved log/sym/cfg output format for readability. Shortened log a bit. Closes #534 2020-10-05 23:14:34 +02:00
jespergravgaard
6253bdce28 Improved out 2020-10-05 22:58:02 +02:00
Jesper Gravgaard
0995c29f0f Improved log output slightly. 2020-10-05 17:53:46 +02:00
jespergravgaard
f117db148d Working on log output readability. #534 2020-10-05 09:31:16 +02:00
jespergravgaard
e3cd22ecab Added missing fragments. 2020-10-04 23:08:53 +02:00
jespergravgaard
946327da37 Improves ball[i].x rewriting for 16bit i. Closes #533 2020-10-04 21:43:41 +02:00
jespergravgaard
a22a0e483d Added missing fragment. Closes #531 2020-10-03 08:12:56 +02:00
Jesper Gravgaard
1df52a8c5b Added tests for improving array iteration performance for different types of arrays. 2020-10-01 22:30:04 +02:00
Jesper Gravgaard
5c2d1c48d9 Updated test data 2020-10-01 11:01:49 +02:00
jespergravgaard
cd2dcd1614 Added missing files. 2020-10-01 10:31:34 +02:00
jespergravgaard
b9d69db454 Fixed problem with boolean constant comparison (false!=false). Closes #527 2020-10-01 08:45:55 +02:00
jespergravgaard
31b0a500a1 Merged nesballs 3 2020-10-01 00:55:47 +02:00
jespergravgaard
9262adf09f Added nesballs-3 test 2020-10-01 00:54:08 +02:00
Jesper Gravgaard
1e0d21d06e Expanded DuplicateRValueIdentification to also find RValues in different blocks as long as the scope is the same and the first block dominates the last block. Closes #525 2020-10-01 00:18:56 +02:00
Jesper Gravgaard
e92f72e490 Expanded DuplicateRValueIdentification to also find RValues in different blocks as long as the first one dominates the last one. Closes #525 2020-09-30 22:48:44 +02:00
jespergravgaard
a6a3aed144 Improved fragments. 2020-09-30 20:16:27 +02:00
jespergravgaard
295c5d1dbd Added missing fragment. Thanks @ubik 2020-09-30 09:03:55 +02:00
jespergravgaard
7c1bed30f2 Fixed ATASCII newline encoding. Closes #526 2020-09-29 02:07:09 +02:00
jespergravgaard
5831e8ac26 Fixed ATASCII newline encoding. Closes #526 2020-09-29 02:05:57 +02:00
jespergravgaard
62e61d0ec3 Updated cache. 2020-09-29 01:35:55 +02:00
jespergravgaard
d9ced92fd7 Added another test for #525 demonstrating problem with reuse of index*sizeof(). Added more fragments and optimizing others. 2020-09-29 01:35:08 +02:00
jespergravgaard
8abaa95008 Added test for #525 demonstrating problem with reuse of index*sizeof(). Added a fragment. 2020-09-29 00:42:25 +02:00
jespergravgaard
0a31136651 Improved compiler error messages. Added bubbles64 example (not working yet). Added missing fragments. 2020-09-28 23:45:41 +02:00
jespergravgaard
d64faa132d Added __KICKC__ define. Closes #523 2020-09-28 22:25:15 +02:00
jespergravgaard
8ec4831541 Now initializing cursor position in conio.h on MEGA65. Closes #522 2020-09-28 21:34:39 +02:00
jespergravgaard
c75c99654b Updated fragment cache files. 2020-09-28 20:40:12 +02:00
jespergravgaard
5a121eb5dd Moved NES example files into a NES folder. 2020-09-28 20:32:39 +02:00
jespergravgaard
a8272388b8 Moved NES example files into a NES folder. 2020-09-28 20:29:30 +02:00
jespergravgaard
ad7b74ddac Converted NES balls example to 32balls. 2020-09-28 19:59:03 +02:00
jespergravgaard
79484c4b37 Added NES balls example. 2020-09-28 08:56:30 +02:00
jespergravgaard
81b638f060 Added missing fragments. 2020-09-28 08:51:20 +02:00
jespergravgaard
abb12deed9 Added missing C-file. 2020-09-28 00:10:47 +02:00
jespergravgaard
fa0de1e789 Fixed problem with inner compound assignment using arrays with elements with size>1 results in bad code. Closes #519 2020-09-28 00:01:06 +02:00
jespergravgaard
53ed7c976d Added missing fragments. Fixed problem with addition fragments. 2020-09-27 22:58:38 +02:00
jespergravgaard
adf63a551d Corrected preprocessor handling of #define with a body starting with left parenthesis. Closes #518 2020-09-27 19:48:54 +02:00
jespergravgaard
c4de8a017c Added test with array of function pointers. 2020-09-26 22:52:19 +02:00
jespergravgaard
202fd67943 Added missing fragments and synthesis for NES kickballs.c. See https://forums.nesdev.com/viewtopic.php?f=2&t=20187&start=15 2020-09-26 21:59:10 +02:00
jespergravgaard
4e301e0258 Better error message when assuming type of symbol. Closes #517 2020-09-26 20:35:06 +02:00
jespergravgaard
8901165547 Added missing fragment. Closes #515 2020-09-26 14:31:12 +02:00
jespergravgaard
ce2dfe62b6 Updated reference manual. Added better MEGA65 DMA tests. 2020-09-26 13:30:48 +02:00