]> git.sur5r.net Git - cc65/log
cc65
15 years agoAnother tiny code improvement for integer compares.
uz [Sat, 29 Aug 2009 11:31:28 +0000 (11:31 +0000)]
Another tiny code improvement for integer compares.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4071 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed a problem with local variables (stack offset for RHS was not corrected).
uz [Sat, 29 Aug 2009 11:31:06 +0000 (11:31 +0000)]
Fixed a problem with local variables (stack offset for RHS was not corrected).

git-svn-id: svn://svn.cc65.org/cc65/trunk@4070 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoJust comment and formatting changes.
uz [Sat, 29 Aug 2009 10:54:59 +0000 (10:54 +0000)]
Just comment and formatting changes.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4069 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoChange mode constants for ParseDecl to an enum.
uz [Fri, 28 Aug 2009 21:34:28 +0000 (21:34 +0000)]
Change mode constants for ParseDecl to an enum.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4068 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoReorder optimimization steps to get better results.
uz [Fri, 28 Aug 2009 21:03:17 +0000 (21:03 +0000)]
Reorder optimimization steps to get better results.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4067 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded more code to improve compares.
uz [Fri, 28 Aug 2009 19:34:35 +0000 (19:34 +0000)]
Added more code to improve compares.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4066 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed a bug introduced by recent changes.
uz [Fri, 28 Aug 2009 17:38:24 +0000 (17:38 +0000)]
Fixed a bug introduced by recent changes.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4065 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoIncrease count to 16384. Simplify complex expression.
uz [Fri, 28 Aug 2009 17:21:58 +0000 (17:21 +0000)]
Increase count to 16384. Simplify complex expression.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4064 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoChanged code generated for compares. Fixed bugs in OptStackOps. Still
uz [Fri, 28 Aug 2009 16:32:58 +0000 (16:32 +0000)]
Changed code generated for compares. Fixed bugs in OptStackOps. Still
generates wrong code in at least one place.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4063 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoChange code generated for compares for special cases.
uz [Fri, 28 Aug 2009 13:44:03 +0000 (13:44 +0000)]
Change code generated for compares for special cases.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4062 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded -u as an alias for --force-import. Updated command line option infos in
uz [Fri, 28 Aug 2009 10:23:19 +0000 (10:23 +0000)]
Added -u as an alias for --force-import. Updated command line option infos in
the cl65 and ld65 docs.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4061 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoRelax the precondition for OPtStackOps somewhat.
uz [Fri, 28 Aug 2009 09:29:11 +0000 (09:29 +0000)]
Relax the precondition for OPtStackOps somewhat.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4060 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoWhen preprocessing, all compares evaluate to constants, so don't print a
uz [Thu, 27 Aug 2009 22:09:46 +0000 (22:09 +0000)]
When preprocessing, all compares evaluate to constants, so don't print a
warning in this case.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4059 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded better code to replace tossubax.
uz [Thu, 27 Aug 2009 22:07:28 +0000 (22:07 +0000)]
Added better code to replace tossubax.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4058 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded a warning if the result of a compare operation is constant. This should
uz [Thu, 27 Aug 2009 22:00:18 +0000 (22:00 +0000)]
Added a warning if the result of a compare operation is constant. This should
protect against missing parenthesis like in (si & 0x7F == 0). Hopefully
without too many false positives.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4057 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoTry to generate more predicable code. clc always before adc or sbc.
uz [Thu, 27 Aug 2009 16:59:26 +0000 (16:59 +0000)]
Try to generate more predicable code. clc always before adc or sbc.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4056 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoCheck for usage of Y instead of reloading it. The latter will destroy the
uz [Thu, 27 Aug 2009 16:38:27 +0000 (16:38 +0000)]
Check for usage of Y instead of reloading it. The latter will destroy the
flags from load of A.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4055 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed a problem with OptPtrLoad6 (must correct stack pointer).
uz [Thu, 27 Aug 2009 16:13:17 +0000 (16:13 +0000)]
Fixed a problem with OptPtrLoad6 (must correct stack pointer).

git-svn-id: svn://svn.cc65.org/cc65/trunk@4054 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded the --force-import option also to the cl65 utility.
uz [Thu, 27 Aug 2009 15:30:52 +0000 (15:30 +0000)]
Added the --force-import option also to the cl65 utility.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4053 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded a new "--force-import" command line option to the linker.
uz [Thu, 27 Aug 2009 14:43:44 +0000 (14:43 +0000)]
Added a new "--force-import" command line option to the linker.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4052 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoUse the new AddrSizeFromStr function.
uz [Thu, 27 Aug 2009 14:19:47 +0000 (14:19 +0000)]
Use the new AddrSizeFromStr function.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4051 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded an AddrSizeFromStr function.
uz [Thu, 27 Aug 2009 14:11:07 +0000 (14:11 +0000)]
Added an AddrSizeFromStr function.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4050 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed two more function that didn't clear the high byte of the function result.
uz [Sun, 23 Aug 2009 21:40:36 +0000 (21:40 +0000)]
Fixed two more function that didn't clear the high byte of the function result.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4049 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed an error in cbm_k_save (on which cbm_save is based): The X register was
uz [Sun, 23 Aug 2009 21:38:11 +0000 (21:38 +0000)]
Fixed an error in cbm_k_save (on which cbm_save is based): The X register was
not cleared on return.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4048 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoDisable handling of tossubax since it won't work as implemented in many cases.
uz [Thu, 20 Aug 2009 21:01:01 +0000 (21:01 +0000)]
Disable handling of tossubax since it won't work as implemented in many cases.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4047 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded several constraints to the optimizer functions to avoid breaking code.
uz [Thu, 20 Aug 2009 16:06:20 +0000 (16:06 +0000)]
Added several constraints to the optimizer functions to avoid breaking code.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4046 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed a bug reported by Greg King: Initialized data for constant arrays was
uz [Thu, 20 Aug 2009 10:55:38 +0000 (10:55 +0000)]
Fixed a bug reported by Greg King: Initialized data for constant arrays was
not placed in the RODATA but in the DATA segment.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4044 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoSpecial cased the division 16 by 8.
uz [Wed, 19 Aug 2009 14:51:16 +0000 (14:51 +0000)]
Special cased the division 16 by 8.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4043 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAlso handle ldaxysp as a valid load insn before a push.
uz [Wed, 19 Aug 2009 13:36:26 +0000 (13:36 +0000)]
Also handle ldaxysp as a valid load insn before a push.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4042 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoInline the left shift routines.
uz [Wed, 19 Aug 2009 13:20:28 +0000 (13:20 +0000)]
Inline the left shift routines.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4041 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoApply OptTransfers3 again in a later step, so it gets another chance.
uz [Wed, 19 Aug 2009 12:47:30 +0000 (12:47 +0000)]
Apply OptTransfers3 again in a later step, so it gets another chance.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4040 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoGenerate more predictable code.
uz [Wed, 19 Aug 2009 10:17:10 +0000 (10:17 +0000)]
Generate more predictable code.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4039 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdd an additional precondition check for safety.
uz [Wed, 19 Aug 2009 10:14:14 +0000 (10:14 +0000)]
Add an additional precondition check for safety.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4038 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoServal improvements, handling of tossubax.
uz [Tue, 18 Aug 2009 15:10:15 +0000 (15:10 +0000)]
Serval improvements, handling of tossubax.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4037 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoGreatly improved multiplication routine. Optimized the generic 16x16 one and
uz [Mon, 17 Aug 2009 20:48:28 +0000 (20:48 +0000)]
Greatly improved multiplication routine. Optimized the generic 16x16 one and
added special cases for 8x16 and 8x8. The former is directly called by the
compiler as tosmula0 and tosumula0 resp.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4036 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded a multiplication test program.
uz [Mon, 17 Aug 2009 20:37:36 +0000 (20:37 +0000)]
Added a multiplication test program.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4035 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoChange order of insns in generated sequence in OptPtrLoad17.
uz [Mon, 17 Aug 2009 16:25:54 +0000 (16:25 +0000)]
Change order of insns in generated sequence in OptPtrLoad17.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4034 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded/corrected code info.
uz [Mon, 17 Aug 2009 16:23:29 +0000 (16:23 +0000)]
Added/corrected code info.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4033 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoRewrite of the main function.
uz [Mon, 17 Aug 2009 12:52:50 +0000 (12:52 +0000)]
Rewrite of the main function.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4032 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoChange order, so that the forced imports for main() go into the global
uz [Sun, 16 Aug 2009 23:37:09 +0000 (23:37 +0000)]
Change order, so that the forced imports for main() go into the global
segments and not the one for main().

git-svn-id: svn://svn.cc65.org/cc65/trunk@4031 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoUse correct adddressing mode for "asl a".
uz [Sun, 16 Aug 2009 21:01:16 +0000 (21:01 +0000)]
Use correct adddressing mode for "asl a".

git-svn-id: svn://svn.cc65.org/cc65/trunk@4030 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoSome more pattern replacements.
uz [Sun, 16 Aug 2009 20:56:33 +0000 (20:56 +0000)]
Some more pattern replacements.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4029 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoOutput an apropriate error message when a floating point type is encountered
uz [Sun, 16 Aug 2009 19:23:07 +0000 (19:23 +0000)]
Output an apropriate error message when a floating point type is encountered
(instead of an internal compiler error).

git-svn-id: svn://svn.cc65.org/cc65/trunk@4028 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded an entry point that clears the high word of rhs.
uz [Sun, 16 Aug 2009 16:38:52 +0000 (16:38 +0000)]
Added an entry point that clears the high word of rhs.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4027 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded more function info
uz [Sun, 16 Aug 2009 16:38:25 +0000 (16:38 +0000)]
Added more function info

git-svn-id: svn://svn.cc65.org/cc65/trunk@4026 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoMore entry points for long ops that clear the high word of the lhs.
uz [Sat, 15 Aug 2009 21:06:06 +0000 (21:06 +0000)]
More entry points for long ops that clear the high word of the lhs.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4025 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoCheck also sreg in OptSize1. Added information about shortcut functions for
uz [Sat, 15 Aug 2009 21:00:27 +0000 (21:00 +0000)]
Check also sreg in OptSize1. Added information about shortcut functions for
longs that clear the high word of the right operand on entry.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4024 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded additional entry points that clear the high word of the right operand.
uz [Sat, 15 Aug 2009 20:58:35 +0000 (20:58 +0000)]
Added additional entry points that clear the high word of the right operand.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4023 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed wrong insertion order that caused problems with labels.
uz [Sat, 15 Aug 2009 16:49:46 +0000 (16:49 +0000)]
Fixed wrong insertion order that caused problems with labels.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4022 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed wrong insertion order that caused problems with labels.
uz [Sat, 15 Aug 2009 16:45:02 +0000 (16:45 +0000)]
Fixed wrong insertion order that caused problems with labels.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4021 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoclc should always be the insn before adc.
uz [Sat, 15 Aug 2009 16:00:30 +0000 (16:00 +0000)]
clc should always be the insn before adc.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4020 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoSome branch improvements.
uz [Sat, 15 Aug 2009 15:58:21 +0000 (15:58 +0000)]
Some branch improvements.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4019 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoInline some forms of aslax1
uz [Sat, 15 Aug 2009 15:27:43 +0000 (15:27 +0000)]
Inline some forms of aslax1

git-svn-id: svn://svn.cc65.org/cc65/trunk@4018 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed an error
uz [Sat, 15 Aug 2009 14:43:59 +0000 (14:43 +0000)]
Fixed an error

git-svn-id: svn://svn.cc65.org/cc65/trunk@4017 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoReplace ldaxidx by inline code.
uz [Sat, 15 Aug 2009 14:20:26 +0000 (14:20 +0000)]
Replace ldaxidx by inline code.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4016 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdd more function to the "harmless calls" list.
uz [Sat, 15 Aug 2009 14:18:00 +0000 (14:18 +0000)]
Add more function to the "harmless calls" list.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4015 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoMinor improvement in last change
uz [Sat, 15 Aug 2009 13:42:40 +0000 (13:42 +0000)]
Minor improvement in last change

git-svn-id: svn://svn.cc65.org/cc65/trunk@4014 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoTry to generate more predictable code.
uz [Sat, 15 Aug 2009 13:25:40 +0000 (13:25 +0000)]
Try to generate more predictable code.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4013 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoRemove even more transfer instructions.
uz [Sat, 15 Aug 2009 13:16:56 +0000 (13:16 +0000)]
Remove even more transfer instructions.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4012 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoRemove unnecessary transfer instructions.
uz [Sat, 15 Aug 2009 12:49:15 +0000 (12:49 +0000)]
Remove unnecessary transfer instructions.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4011 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoRemove more push/pop sequences.
uz [Sat, 15 Aug 2009 10:27:41 +0000 (10:27 +0000)]
Remove more push/pop sequences.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4010 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoChange order of replacement code in OptPtrLoad10 to allow detection in other
uz [Sat, 15 Aug 2009 10:14:04 +0000 (10:14 +0000)]
Change order of replacement code in OptPtrLoad10 to allow detection in other
steps.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4009 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoUse __asm__() instead of asm().
uz [Sat, 15 Aug 2009 09:08:03 +0000 (09:08 +0000)]
Use __asm__() instead of asm().

git-svn-id: svn://svn.cc65.org/cc65/trunk@4008 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoDon't generate inlined codes for integers shifts. If necessary the optimizer
uz [Fri, 14 Aug 2009 22:17:47 +0000 (22:17 +0000)]
Don't generate inlined codes for integers shifts. If necessary the optimizer
can do that.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4007 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoDon't generate short code for the tosxxx functions when X is zero or similar.
uz [Fri, 14 Aug 2009 22:10:04 +0000 (22:10 +0000)]
Don't generate short code for the tosxxx functions when X is zero or similar.
Let the optimizer do it. This reduces the number of possible patterns that
must be detected by the optimizer. Add tosicmp0 as a shortcut function.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4006 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded tosicmp0, a special entry point that clears the X register.
uz [Fri, 14 Aug 2009 22:08:28 +0000 (22:08 +0000)]
Added tosicmp0, a special entry point that clears the X register.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4005 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoTell the compiler more about the runtime library functions.
uz [Fri, 14 Aug 2009 20:21:47 +0000 (20:21 +0000)]
Tell the compiler more about the runtime library functions.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4004 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoRemoved debug code
uz [Fri, 14 Aug 2009 18:32:11 +0000 (18:32 +0000)]
Removed debug code

git-svn-id: svn://svn.cc65.org/cc65/trunk@4003 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoDo size improvements always if they have no impact on speed.
uz [Fri, 14 Aug 2009 18:23:29 +0000 (18:23 +0000)]
Do size improvements always if they have no impact on speed.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4002 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoImprovements in array index code.
uz [Fri, 14 Aug 2009 17:28:32 +0000 (17:28 +0000)]
Improvements in array index code.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4001 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoMoved part of codeopt into coptptrload for better modularization.
uz [Fri, 14 Aug 2009 17:09:24 +0000 (17:09 +0000)]
Moved part of codeopt into coptptrload for better modularization.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4000 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFix definition for CIA (Stefan Haubenthal).
uz [Thu, 6 Aug 2009 20:27:19 +0000 (20:27 +0000)]
Fix definition for CIA (Stefan Haubenthal).

git-svn-id: svn://svn.cc65.org/cc65/trunk@3999 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoget_tv() implementation for the CBM610 by Stefan Haubenthal.
uz [Thu, 6 Aug 2009 20:24:41 +0000 (20:24 +0000)]
get_tv() implementation for the CBM610 by Stefan Haubenthal.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3998 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoRemove the top-level Makefile's attempt to install the no-longer-external
uz [Wed, 5 Aug 2009 14:31:33 +0000 (14:31 +0000)]
Remove the top-level Makefile's attempt to install the no-longer-external
start-up files.  Let the makefile work with command-shells that don't
recognize the "test" command's "-e" operator (the Minix OS has that shell).
Patch by maintainer Greg King.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3997 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed an off-by-one error (reported by Greg King - thanks).
uz [Wed, 5 Aug 2009 14:29:30 +0000 (14:29 +0000)]
Fixed an off-by-one error (reported by Greg King - thanks).

git-svn-id: svn://svn.cc65.org/cc65/trunk@3996 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agointroduce STARTUP segment to Atari platform
cpg [Tue, 4 Aug 2009 20:04:41 +0000 (20:04 +0000)]
introduce STARTUP segment to Atari platform

git-svn-id: svn://svn.cc65.org/cc65/trunk@3995 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoDon't allow to call subroutines that aren't actual functions.
uz [Tue, 4 Aug 2009 19:23:15 +0000 (19:23 +0000)]
Don't allow to call subroutines that aren't actual functions.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3994 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed an off-by-one bug
uz [Tue, 4 Aug 2009 19:22:15 +0000 (19:22 +0000)]
Fixed an off-by-one bug

git-svn-id: svn://svn.cc65.org/cc65/trunk@3993 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoNew function IsLocalLabelName.
uz [Tue, 4 Aug 2009 19:12:34 +0000 (19:12 +0000)]
New function IsLocalLabelName.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3992 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoThere's no longer a need to link in the startup file, it's done my magic
uz [Fri, 31 Jul 2009 13:39:07 +0000 (13:39 +0000)]
There's no longer a need to link in the startup file, it's done my magic
instead.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3991 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoThere are no more startup object modules.
uz [Fri, 31 Jul 2009 12:56:36 +0000 (12:56 +0000)]
There are no more startup object modules.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3990 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdjust geos startup code to new compiler handling. Introduce __STARTUP__
uz [Fri, 31 Jul 2009 12:46:38 +0000 (12:46 +0000)]
Adjust geos startup code to new compiler handling. Introduce __STARTUP__
symbol, remove geos.o.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3989 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoForce an import of the special symbol __STARTUP__ in the C compiler when
uz [Fri, 31 Jul 2009 12:05:42 +0000 (12:05 +0000)]
Force an import of the special symbol __STARTUP__ in the C compiler when
main() is encountered. Define this symbol in the startup code. This will
automatically force linking of the startup code which can then reside inside
the standard library as any other object file.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3988 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoInline shifts in g_asl as is already the case in g_scale.
uz [Thu, 30 Jul 2009 19:41:25 +0000 (19:41 +0000)]
Inline shifts in g_asl as is already the case in g_scale.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3987 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoCalculate time in seconds, not ticks. Implement pager output for primes.
uz [Thu, 30 Jul 2009 19:25:59 +0000 (19:25 +0000)]
Calculate time in seconds, not ticks. Implement pager output for primes.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3986 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFix problem with R3904: Chars on the lhs of opeq must still be accessed as
uz [Thu, 30 Jul 2009 15:15:13 +0000 (15:15 +0000)]
Fix problem with R3904: Chars on the lhs of opeq must still be accessed as
such.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3985 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed problems with R3977: While the solution was correct, the generated code
uz [Thu, 30 Jul 2009 14:45:50 +0000 (14:45 +0000)]
Fixed problems with R3977: While the solution was correct, the generated code
is bad, since information is lost when converting functions and arrays to
pointers and cannot be regained easily. So I've reverted the change and fixed
the problem in a less general manner.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3984 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAllow registers in sweet16 mode also to be specified as constant numbers
uz [Thu, 30 Jul 2009 13:05:41 +0000 (13:05 +0000)]
Allow registers in sweet16 mode also to be specified as constant numbers
instead of Rx. Suggestion and sample code by Gabriele Galeotti.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3983 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoCorrect sweet16 addressing bug with SUB instr. Patch by Gabriele Galeotti.
uz [Wed, 29 Jul 2009 14:37:58 +0000 (14:37 +0000)]
Correct sweet16 addressing bug with SUB instr. Patch by Gabriele Galeotti.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3982 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoThe "inc" target needed for the snapshot build script seems to have been lost.
uz [Tue, 28 Jul 2009 19:40:23 +0000 (19:40 +0000)]
The "inc" target needed for the snapshot build script seems to have been lost.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3981 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdd a dummy return to fix a Watcom warning.
uz [Tue, 28 Jul 2009 19:36:44 +0000 (19:36 +0000)]
Add a dummy return to fix a Watcom warning.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3980 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed a compatibility problem in TypeCmp: Subtracting pointers with different
uz [Tue, 28 Jul 2009 19:29:11 +0000 (19:29 +0000)]
Fixed a compatibility problem in TypeCmp: Subtracting pointers with different
signedness is not allowed.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3979 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed a problem with function pointer conversion.
uz [Tue, 28 Jul 2009 19:21:38 +0000 (19:21 +0000)]
Fixed a problem with function pointer conversion.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3978 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoFixed an error: If an expression is loaded into the primary, a function must
uz [Tue, 28 Jul 2009 18:56:16 +0000 (18:56 +0000)]
Fixed an error: If an expression is loaded into the primary, a function must
be converted to pointer-to-function and an array to pointer-to-member resp.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3977 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoPrepared the code for referencing a symbol that forces the startup code to get
uz [Tue, 28 Jul 2009 18:55:23 +0000 (18:55 +0000)]
Prepared the code for referencing a symbol that forces the startup code to get
linked in.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3976 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoRemoved setoserror as an external.
uz [Mon, 27 Jul 2009 18:48:03 +0000 (18:48 +0000)]
Removed setoserror as an external.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3975 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdded a systime implementation by Stefan Haubenthal with a few changes. The
uz [Mon, 27 Jul 2009 18:44:37 +0000 (18:44 +0000)]
Added a systime implementation by Stefan Haubenthal with a few changes. The
routine reads the TOD clock of CIA1 on the C64 and C128. Since systime was a
dummy routine common for all CBMs before, this change adds an individual dummy
routine for all other CBM systems. CBM510/610 do also have a TOD clock, so a
similar function as in the C64 could be used ...

git-svn-id: svn://svn.cc65.org/cc65/trunk@3974 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoBe sure to read disk errors after sending the command on the command channel.
uz [Mon, 27 Jul 2009 18:42:37 +0000 (18:42 +0000)]
Be sure to read disk errors after sending the command on the command channel.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3973 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoMove common data and ex-/imports into an assembler include named time.inc.
uz [Mon, 27 Jul 2009 17:59:27 +0000 (17:59 +0000)]
Move common data and ex-/imports into an assembler include named time.inc.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3972 b7a2c559-68d2-44c3-8de9-860c34a00d81

15 years agoAdd some code that avoids outputing a forward label in the same line as a
uz [Mon, 6 Jul 2009 20:33:06 +0000 (20:33 +0000)]
Add some code that avoids outputing a forward label in the same line as a
normal label. It works but looks bad.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3971 b7a2c559-68d2-44c3-8de9-860c34a00d81