912cf89702
Added new constants from tgi.h
uz
2009-11-01 22:32:14 +00:00
57c9a8f796
Additional error code.
uz
2009-11-01 22:01:23 +00:00
5bfe33e4b7
Small changes in definitions. Additional error code.
uz
2009-11-01 22:01:06 +00:00
5a2a741cde
Added tgi_free_vectorfont.s
uz
2009-11-01 21:53:34 +00:00
97ef7df9f5
Fixed a bug (wrong order of variables).
uz
2009-11-01 21:53:22 +00:00
944749e07f
Preparations for use of vectorfonts.
uz
2009-11-01 21:49:09 +00:00
23c96f81c0
Some small format changes. Output name is input name + '.tch'.
uz
2009-11-01 21:33:28 +00:00
45777792ee
Replaced obsolete 'codeseg' with 'code-name'.
ol.sc
2009-11-01 10:48:43 +00:00
784c709f97
Wrote the actual conversion. Still untested.
uz
2009-10-31 15:42:59 +00:00
b8b3dcce74
Fixed a problem introduced with the last change.
uz
2009-10-31 14:01:22 +00:00
00a1121d8c
Fixed a problem with OptJumpTarget3. In a loop over all elements of a collection that may remove something from the collection, we may not use an upcounting loop.
uz
2009-10-31 10:36:59 +00:00
b86682d29d
File reading, verification and comments.
uz
2009-10-30 22:34:08 +00:00
6da8c5639c
Changes to the TGI driver API:
ol.sc
2009-10-30 21:44:36 +00:00
e60544452e
Added the chrcvt vector font converter to the top level makefile.
uz
2009-10-30 21:35:25 +00:00
3a9d29d5e2
Created the skeleton of the vector font converter.
uz
2009-10-30 21:34:40 +00:00
763fe0b802
Start of TGI changes. Untested, may not work.
uz
2009-10-30 21:26:35 +00:00
7b8fbb31da
Rewrote the sinus display using the new cc65_sin function.
uz
2009-10-30 14:03:21 +00:00
4e4beef8b7
Fixed the return types of the sine/cosine functions. Added comments.
uz
2009-10-30 14:02:24 +00:00
4d93094936
Added new header file.
uz
2009-10-30 10:01:31 +00:00
c65925b0b9
Merged the sine/cosine routines into one file, because they're often used together, we save some code in this case, and the sine table isn't of real use for programs, because it contains some specialities.
uz
2009-10-30 09:58:11 +00:00
7d453f5e11
Added fixpoint sine and cosine functions.
uz
2009-10-29 23:19:00 +00:00
50c1db0331
Changes to the TGI driver API:
ol.sc
2009-10-29 23:11:46 +00:00
07e629a342
Allow fully scoped labels and constants instead of normal ones. This breaks the barrier between scopes: It is now possible to introduce symbols into a foreign scope, provided that it's name is known.
uz
2009-10-29 20:30:41 +00:00
5304a8149e
Changes to the TGI driver API:
uz
2009-10-29 20:13:56 +00:00
1d9fc5f655
Changed 'Clear the screen' to 'Clear the drawpage'.
ol.sc
2009-10-27 21:20:06 +00:00
33af076cfc
Lynx TGI driver update by Karri Kaksonen. Adds collision detection.
uz
2009-10-26 19:28:11 +00:00
f24adadb9c
Added a first version of a Cohen Sutherland line clipper. This version basically works, but has rounding problems and an intermediate result overflow in the multiplication, which causes for larger lines.
uz
2009-10-26 15:37:51 +00:00
c437afd62b
Added another optimization step.
uz
2009-10-26 10:17:53 +00:00
7687489a08
Fixed a bug in the last change. For variables that have no initializer, no storage was allocated if -Cl (static locals) was in effect.
uz
2009-10-26 10:17:17 +00:00
f4b4a812ed
Removed an unused table.
uz
2009-10-24 19:37:57 +00:00
bd45df7cad
Rearranged/duplicated optimization steps to generate better code in a few cases.
uz
2009-10-23 10:03:46 +00:00
814be2524b
Restructured parts of locals.c. This will also fix a problem where arrays with unspecified size but an initializer would cause an error when -Cl (static locals) was in effect.
uz
2009-10-23 09:22:17 +00:00
54a8a778eb
Remove 65C02 code, because in this case, the value of Y on return is always zero, which can be used by the optimizer.
uz
2009-10-20 08:25:58 +00:00
96b46beee0
Fixed a problem with bit-fields: Values spanning more than a byte must always be loaded as an int. This was not the case if the expression rhs was a char.
uz
2009-10-20 08:21:12 +00:00
4372d111a2
The CodeEntry buffer array was one entry to small.
uz
2009-10-19 19:37:28 +00:00
3b079c0947
Added another optimization step.
uz
2009-10-19 19:12:50 +00:00
f4acd3eb4f
Added a makefile for cc65 for testing purposes.
uz
2009-10-19 18:02:40 +00:00
918171231c
Marked abort() and longjmp() with __attribute__((noreturn)).
uz
2009-10-19 09:29:09 +00:00
a5a9700d19
Changed handling of attributes to a more generic form (it's allowed in each declaration now) and added a new attribute "unused" to flag unused parameters, variables or functions that shouldn't be warned about.
uz
2009-10-18 21:42:59 +00:00
5a00b38aab
Fixed the existing but unused attribute parsing code. Added __attribute__((noexit)) that may be used to mark functions that won't return. Added this attribute to the exit() function in stdlib.h.
uz
2009-10-18 18:31:02 +00:00
0ce362a69b
Some cleanup in the code generator. Added a g_drop function. g_drop and g_space can now handle sizes > 255 bytes.
uz
2009-10-15 21:08:03 +00:00
1f92d6bfa2
Warn when structs are passed by value to a function.
uz
2009-10-15 19:18:34 +00:00
1f489fd9e1
Extend handling for "long branch to RTS" to "long branch to jump leaving function".
uz
2009-10-15 11:11:20 +00:00
635fae97fb
If a conditional branch as an unconditional jump as target, that doesn't jump to a function-internal label, don't replace the jump target with the final one, because this has no advantages and makes the code larger.
uz
2009-10-15 10:21:50 +00:00
d9753c2eb7
Allow switching warnings about unused pragmas on or off.
uz
2009-10-14 13:04:38 +00:00
62fdd55fee
Fixed a problem with SB_GetSym.
uz
2009-10-14 13:03:47 +00:00
ed2767e65f
Changed names of the pragmas to be identical to the corresponding command line options. This should make use easier. The old names of the pragmas are still available but will cause warnings.
uz
2009-10-14 12:55:15 +00:00
869a1369c4
Fixed an error in the SB_SkipMultiple macro.
uz
2009-10-14 10:04:20 +00:00
a1fb355a9a
Rewrote most of the #pragma parsing code. I'm still not satisfied, but at least, it's a bit better than before. #pragma warn (...) is now used to switch single warnings instead of a global on/off switch.
uz
2009-10-13 21:24:32 +00:00
583b9f8fcc
Removed an unused function.
uz
2009-10-11 15:10:55 +00:00
c221b3c8cf
Leveraged new bit-field support.
ol.sc
2009-10-11 11:14:35 +00:00
e623c87d63
New function SB_SkipMultiple().
uz
2009-10-10 20:51:52 +00:00
30586e95e8
Cosmetic change. Formatting was lost because of cut&paste.
uz
2009-10-10 20:50:15 +00:00
161cf913e3
Oops - forgot to make these minor things identical to apple2.sgml.
ol.sc
2009-10-10 11:38:34 +00:00
90a3e1fa8b
Updated to the level of apple2.sgml
ol.sc
2009-10-10 11:32:38 +00:00
6a72d53355
Some fixes to the recent change.
ol.sc
2009-10-10 11:11:25 +00:00
b7071c05a2
Added quite some info on the stuff in 'cfg' and 'obj'. Apple2enh needs to be adjusted too for sure, but check the result of the nightly build first.
ol.sc
2009-10-09 22:19:35 +00:00
f2d1ea10d9
Added a simulated console (memory mapped screen device, inpout device will follow).
uz
2009-10-08 18:33:50 +00:00
1122ddb05a
Fixed a bug: Attribute numbers were not correctly read.
uz
2009-10-08 17:54:23 +00:00
07c25db768
Added the __STDC_HOSTED__ macro.
uz
2009-10-08 15:00:25 +00:00
b55419af59
Rewrote handling of the -W command line option. It is now used to enable or disable warnings by name.
uz
2009-10-08 13:29:35 +00:00
58e8826da2
Fixed some sloopy StrBuf coding.
uz
2009-10-08 12:11:51 +00:00
b19a29f80b
Use the new InvArg function.
uz
2009-10-08 11:35:34 +00:00
45b469c786
Use the new InvArg() function.
uz
2009-10-08 11:34:36 +00:00
b7c8c651f6
New function InvArg().
uz
2009-10-08 11:31:55 +00:00
9971b645a5
Fixed some sloopy StrBuf coding.
uz
2009-10-08 10:51:45 +00:00
4b4a9b444b
Make AUTO_STRBUF_INITIALIZER identical to STATIC_STRBUF_INITIALIZER.
uz
2009-10-08 10:50:15 +00:00
17d592352c
Fixed an error with r4329: In case of a struct pointer the qualifiers of the pointers had been used, not the qualifiers of the struct.
uz
2009-10-08 09:54:46 +00:00
b208b7e3b1
Merge calls to decsp. The implemented routine is not perfect and will miss some pieces of code, but it's better than nothing.
uz
2009-10-07 15:28:35 +00:00
2ae20c3b61
Get rid of ldaconst/ldxconst/ldyconst in many places.
uz
2009-10-07 15:27:26 +00:00
3be976189b
Bumped the version number
uz
2009-10-06 12:24:15 +00:00
9c5224165f
Fixed a bug: A similar problem as that with structs does also exist for arrays. An array element has all qualifiers from itself and from the array declaration.
uz
2009-10-05 18:46:39 +00:00
8dd3cc35dc
When using GetQualifier, pass correct params :-)
uz
2009-10-05 18:38:01 +00:00
ea582a9d74
Use GetQualifier() instead of accessing the field directly.
uz
2009-10-05 18:37:07 +00:00
7992bfb74a
Changed solution for r4329 so that it uses less memory.
uz
2009-10-05 18:22:28 +00:00
c69e2d9f0f
Fixed a bug: Function designators are converted to rvalues of type "pointer to function", so dereferencing a function is a legal operation. The result is immediately converted back to "pointer to function" again. Note: Because of performance considerations, cc65 does treat functions as "pointer to function" internally, but nevertheless dereferencing a function must be possible.
uz
2009-10-05 17:49:45 +00:00
43c89d5fd0
Fixed a bug: A struct field has all qualifiers from its definition plus the qualifiers of the struct.
uz
2009-10-05 17:37:45 +00:00
8348f62114
Must link libdl to use dynamic libraries.
uz
2009-10-04 18:52:27 +00:00