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
66cfcc4824 Fixed problem with illegal call giving exception. Closes #689 2021-08-02 08:00:08 +02:00
jespergravgaard
dbd8a3cbac Fixed problem with macros with empty parameter lists. Closes #688 2021-08-02 07:52:50 +02:00
jespergravgaard
9bcda2cb67 Added complex test for function pointers. Closes #121 2021-08-01 23:27:59 +02:00
jespergravgaard
f2f9b79ece Added support for short / long / signed types (without int). Closes #681 2021-08-01 20:52:23 +02:00
jespergravgaard
82dd27e627 Parameters and return values now work for calling convention stack. Pointers to functions with parameters/return values now work. Parameter transfer through stack of structs/unions now work. #121 2021-08-01 17:24:12 +02:00
jespergravgaard
599a757bf1 Added missing fragment and strncpy() to string.h. 2021-07-29 23:04:05 +02:00
jespergravgaard
d372383d48 Fixed problem with typedef enum. Closes #686 2021-07-29 22:29:49 +02:00
jespergravgaard
8c77cbb45a Updated cache 2021-07-29 21:14:07 +02:00
jespergravgaard
7dbb73e8bd Added support for silent truncation from int/long to char. Closes #684 2021-07-29 21:13:39 +02:00
jespergravgaard
d6179a0b3c Added support for upper case integer suffixes eg. 1234U. Closes #682 2021-07-29 19:26:36 +02:00
jespergravgaard
825a3b79a5 Added support for unsigned integer suffix U eg. 1234U. Closes #682 2021-07-29 19:12:05 +02:00
jespergravgaard
9d2e3f299e Added MEGA65 hypervisor inludes. 2021-07-29 19:01:18 +02:00
jespergravgaard
2cc8c94d63 Improved error message during preprocessor expansion. Closes #683 2021-07-29 19:00:48 +02:00
jespergravgaard
ec8c555816 Added some bits & bops from WeeIP for testing unions. #197 2021-07-28 00:23:40 +02:00
jespergravgaard
e528f44570 Working on classic unions - return values. #197 2021-07-27 23:20:25 +02:00
jespergravgaard
cf44674bee Working on classic unions. #197 2021-07-27 22:43:06 +02:00
jespergravgaard
ea70b1f2e3 Working on classic unions. #197 2021-07-27 22:32:54 +02:00
jespergravgaard
5050079229 Working in classic structs. #197 2021-07-27 20:11:30 +02:00
jespergravgaard
c67d4d6ec9 Working in classic structs. #197 2021-07-27 19:38:51 +02:00
jespergravgaard
1df68ee4d8 Working on eliminating memcpy() statements when using classic structs. #197 2021-07-27 19:11:14 +02:00
jespergravgaard
5fec69e3f1 Working on classic structs. #197 2021-07-26 12:15:15 +02:00
jespergravgaard
47d6ea3f9a Working in classic structs. #197 2021-07-25 22:30:22 +02:00
jespergravgaard
6d39582e5f Working in classic structs. #197 2021-07-25 22:06:49 +02:00
jespergravgaard
08bb1aa9a0 Working on classic structs and unions. #197 2021-07-25 02:21:45 +02:00
jespergravgaard
f50cbf3cf1 Working on classic structs and unions. #197 2021-07-25 02:21:25 +02:00
jespergravgaard
29633a2479 Working on varcall calling convention, structs and unions. #197 #372 2021-07-24 11:33:07 +02:00
jespergravgaard
fa937d4874 Added support for union default initializers (initializing the first element) including any necessary padding to reach the right byte size. #197 2021-07-23 17:26:47 +02:00
jespergravgaard
16234fefa0 Added union syntax and support for very simple unions. Still need some work to support passing as parameters and more. #197 2021-07-22 21:05:48 +02:00
jespergravgaard
eee018847c Added a test of nested struct definitions. 2021-07-22 09:14:16 +02:00
jespergravgaard
88c26c2507 Added fragments. Fixed problem in CIA timer library and tests. 2021-07-22 01:16:59 +02:00
jespergravgaard
bd15b53cab Added missing fragment 2021-07-16 13:55:58 +02:00
jespergravgaard
3dff5d04fb Fixed exception "Block referenced, but not found in program" when encountering complex if(&&). Closes #676 2021-07-07 08:47:44 +02:00
jespergravgaard
72c5c7d537 Added test. 2021-07-03 00:21:22 +02:00
jespergravgaard
6e80a72cc2 Updated caches 2021-07-03 00:19:26 +02:00
jespergravgaard
c740b9f487 Added MAKELONG4() constant identification and removed need for declaration in source. Closes #675 2021-07-02 21:56:23 +02:00
jespergravgaard
56e9346eb1 Added MAKELONG4(). Closes #675 2021-07-02 21:06:09 +02:00
jespergravgaard
1eb61b9c9d Added MAKEWORD() and MAKELONG(). Removed support for initializer lists for initializing word/dword. Closes #668 2021-07-02 00:33:29 +02:00
jespergravgaard
ff770cb0d7 Added MAKEWORD() and MAKELONG(). Removed support for initializer lists for initializing word/dword. #668 2021-07-02 00:21:25 +02:00
jespergravgaard
3013352b2e Added MAKEWORD() and MAKELONG(). Removed support for initializer lists for initializing word/dword. #668 2021-07-02 00:21:08 +02:00
jespergravgaard
79f85b439f Now synthesizing _deref_p..c. fragments using v..m. Closes #674 2021-06-30 00:58:50 +02:00
jespergravgaard
62b79212cb Now synthesizing _deref_p..c. fragments using v..m. Closes #674 2021-06-30 00:05:01 +02:00
jespergravgaard
04ce973d0d Now synthesizing _deref_p..c. fragments using v..m. Closes #674 2021-06-29 23:00:49 +02:00
jespergravgaard
a540f1015f Now synthesizing _deref_p..c. fragments using v..m. Closes #674 2021-06-29 22:54:28 +02:00
jespergravgaard
bf52297c73 Now synthesizing _deref_p..c. fragments using v..m. Closes #674 2021-06-29 00:49:38 +02:00
jespergravgaard
eec9f260df Added fallback to ZP-addressing if inline ASM instruction does not support absolute addressing. Closes #673 2021-06-26 09:46:46 +02:00
jespergravgaard
8d797ac308 Improved sign extension in fragments. 2021-06-23 09:57:58 +02:00
jespergravgaard
822d168dd8 Improved sign extension in fragments. 2021-06-23 09:40:48 +02:00
jespergravgaard
4628870166 Added missing fragments. 2021-06-21 14:29:35 +02:00
jespergravgaard
866460d942 Improved doxygen documentation. #672 2021-06-20 12:59:27 +02:00
jespergravgaard
2b882e6a50 Improved doxygen documentation. #672 2021-06-20 12:45:52 +02:00
jespergravgaard
6a4fd1fdad Tweaked doxygen documentation. #672 2021-06-20 10:07:38 +02:00
jespergravgaard
7782e89666 Improved doxygen documentation. #672 2021-06-19 22:46:41 +02:00
jespergravgaard
e277b08a26 Improved doxygen documentation. Closes #672 2021-06-19 22:37:48 +02:00
jespergravgaard
bde31dac4c Improved doxygen documentation. #672 2021-06-19 22:28:44 +02:00
jespergravgaard
78e6ef761f Improved doxygen documentation. #672 2021-06-19 22:11:26 +02:00
jespergravgaard
6f283b886b Moved doxygen to a better image. #672 2021-06-19 21:49:37 +02:00
jespergravgaard
6585f08f55 Updated tests with doxygen standard library documentation. #672 2021-06-19 21:26:05 +02:00
jespergravgaard
9408902136 Added doxygen standard library documentation. #672 2021-06-19 20:49:14 +02:00
jespergravgaard
8a0d9d3708 Fixed NPE when compiling in the local directory. Closes #671 2021-06-19 13:38:23 +02:00
jespergravgaard
924e795c06 Fixed problem where pointer addition and constant consolidation could produce error "Type inference case not handled byte* + byte*". Closes #669 2021-06-17 07:36:49 +02:00
jespergravgaard
0d2b08ef3b Succesfully deprecated lo/hi operators. Closes #667 2021-06-14 08:51:55 +02:00
jespergravgaard
6e32444f9f Working on deprecating lo/hi operators. Closes #667 2021-06-14 08:08:54 +02:00
jespergravgaard
9965ad9ede Working on deprecating lo/hi operators. Closes #667 2021-06-14 08:05:31 +02:00
jespergravgaard
0592a9e7a0 Working on deprecating lo/hi operators. Closes #667 2021-06-14 08:04:08 +02:00
jespergravgaard
10df356dda Working on deprecating lo/hi operators. Closes #667 2021-06-13 14:24:57 +02:00
jespergravgaard
d4f487eecc Working on deprecating lo/hi operators. Closes #667 2021-06-13 13:35:55 +02:00
jespergravgaard
44db8db459 Working on deprecating lo/hi operators. Closes #667 2021-06-13 13:29:49 +02:00
jespergravgaard
fa2378c38d Working on deprecating lo/hi operators. Closes #667 2021-06-13 13:16:20 +02:00
jespergravgaard
a8d84f5e60 Working on deprecating lo/hi operators. Closes #667 2021-06-13 09:47:30 +02:00
jespergravgaard
1028bd1115 Working on deprecating lo/hi operators. Closes #667 2021-06-13 09:27:50 +02:00
jespergravgaard
c2638ff86c Working on deprecating lo/hi operators. Closes #667 2021-06-13 09:23:37 +02:00
jespergravgaard
459c220af3 Working on deprecating lo/hi operators. Closes #667 2021-06-13 08:38:46 +02:00
jespergravgaard
603c53a7d3 Working on deprecating lo/hi operators. Closes #667 2021-06-13 08:22:32 +02:00
jespergravgaard
6850e4a3d9 Working on deprecating lo/hi operators. Closes #667 2021-06-13 07:57:15 +02:00
jespergravgaard
0d2dfb87b3 Working on deprecating lo/hi operators. Closes #667 2021-06-13 00:14:39 +02:00
jespergravgaard
d5759bfb6b Working on deprecating lo/hi operators. Closes #667 2021-06-12 21:11:26 +02:00
jespergravgaard
60e97ee702 Working on deprecating lo/hi operators. Closes #667 2021-06-12 21:08:42 +02:00
jespergravgaard
65847f84b3 Working on deprecating lo/hi operators. Closes #667 2021-06-12 20:57:35 +02:00
jespergravgaard
ff812d6f60 Removed support for LValue unary operator low/high <x >x. Added support for LValue BYTE0(), BYTE1(), ..., WORD0(), .... Closes #667 2021-06-11 21:41:01 +02:00
jespergravgaard
d6d1250f51 Removed special small number handling. 2021-06-11 08:51:11 +02:00
jespergravgaard
be74ec1b9e Removed byteN/wordN from intrinsics. 2021-06-11 07:44:08 +02:00
jespergravgaard
0d73070f37 Fixed problem with aliased intermediate memory variables. #666 2021-06-07 21:15:07 +02:00
jespergravgaard
194e851f0d Intermediate variables are now affected by the var_model. Closes #666 2021-06-06 23:34:29 +02:00
jespergravgaard
78e378a8e1 #666 Moved intermediate variable creation into VariableBuilder in preparation for fix of memory area. 2021-06-06 22:23:14 +02:00
jespergravgaard
1715e4f5ba Added a few fragments 2021-06-06 21:41:35 +02:00
Jesper Gravgaard
843baa6fb2 #666 working on memory model for intermediate vars 2021-06-06 12:19:05 +02:00
Jesper Gravgaard
fcb23cbf59 Added some fragments. Preparing for VariableBuilder being used for intermediate variables. 2021-06-05 09:46:47 +02:00
jespergravgaard
a24cc6267a Fixed tests. 2021-05-19 09:01:54 +02:00
jespergravgaard
5de7578bc6 Minor code clean-up. 2021-05-17 08:34:38 +02:00
jespergravgaard
fef4a88204 Minor code clean-up. 2021-05-17 08:32:33 +02:00
jespergravgaard
3d87387ae3 Updated test data. #121 2021-05-16 20:10:40 +02:00
jespergravgaard
f14dfe4252 Moved stack call parameter assignments out of pass 0. Added address-of handling for procedures converting them to stack call if they have parameters. #121 2021-05-16 10:19:21 +02:00
jespergravgaard
55e5e6bca2 Added a test for OutputFileManager. This fixes the problem with -o not being honored always. Closes #644 2021-05-15 12:38:53 +02:00
jespergravgaard
867a816eae Implemented OutputFileManager which ensures that the output directory, basename and extension follows well defined rules. Closes #663 2021-05-15 11:17:17 +02:00
jespergravgaard
f67c2712d3 Fixed support for address-of on arrays. Closes #662 2021-05-14 00:01:58 +02:00
jespergravgaard
3ad844ada1 Fixed problem with auto-casting parameters. Closes #299 2021-05-13 11:42:07 +02:00
jespergravgaard
541b92c55b Implemented support for complex casts and parsing complex type names for sizeof(). #121 2021-05-13 10:26:33 +02:00
jespergravgaard
2ffa6e3ca8 Standard C type parsing now works! #121 2021-05-12 08:58:10 +02:00
jespergravgaard
35fdd06abf Added missing test files and fixed a test. #121 2021-05-11 23:19:29 +02:00
jespergravgaard
d1b7d45372 Implemented function pointer types in standard C syntax. #121 2021-05-11 23:11:51 +02:00
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