1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-02 18:06:48 +00:00
Commit Graph

1249 Commits

Author SHA1 Message Date
uz
acd1233bf2 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
2009-08-17 20:48:28 +00:00
uz
bfc8bd6d74 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
2009-08-16 16:38:52 +00:00
uz
aa7d419165 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
2009-08-15 21:06:06 +00:00
uz
b1f772e9be 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
2009-08-15 20:58:35 +00:00
uz
6a26b6e3b4 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
2009-08-14 22:08:28 +00:00
uz
f8d3fccc01 get_tv() implementation for the CBM610 by Stefan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3998 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-08-06 20:24:41 +00:00
cpg
9cafacaf6d introduce STARTUP segment to Atari platform
git-svn-id: svn://svn.cc65.org/cc65/trunk@3995 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-08-04 20:04:41 +00:00
uz
7ecf7a7e58 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
2009-07-31 12:46:38 +00:00
uz
8216bf1d6a 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
2009-07-31 12:05:42 +00:00
uz
931add050e 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
2009-07-27 18:44:37 +00:00
uz
087ae8173a 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
2009-07-27 18:42:37 +00:00
uz
2363a6f5c7 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
2009-07-27 17:59:27 +00:00
uz
37e08cac59 Re-added cbm_dir which was acidently removed.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3964 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-05-07 18:31:57 +00:00
cpg
2f39754838 use RUNAD (from atari.inc) instead of /bin/bash2E0
git-svn-id: svn://svn.cc65.org/cc65/trunk@3963 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-04-29 21:37:10 +00:00
cpg
482b3da7d8 add Atari MultiJoy driver from Stefan A. Haubenthal
git-svn-id: svn://svn.cc65.org/cc65/trunk@3962 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-04-11 18:10:44 +00:00
uz
d352b85c87 Fixed problems with the startup code (Greg King): Interrupts must be hooked
before calling initlib because initlib calls contructors and may install
drivers, which enable hardware interrupts. Similar for donelib.

See also R3897 and R3951 where this change was done for other platforms.
                         


git-svn-id: svn://svn.cc65.org/cc65/trunk@3954 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 18:23:31 +00:00
uz
81c7457e04 Added support for chained interrupt handlers installed with .condes type 2.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3953 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 18:16:13 +00:00
uz
0aea6d28dc Removed an unsed import.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3952 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 18:14:54 +00:00
uz
d28ba06f79 Fixed problems with the startup code (Greg King): Interrupts must be hooked
before calling initlib because initlib calls contructors and may install
drivers, which enable hardware interrupts. Similar for donelib.

See also R3897 where this change was done for other platforms.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3951 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 18:10:01 +00:00
uz
e5cbba264f Move the irqcount variable from BSS into DATA, since it is used by the
interrupt handler, which is installed *before* zerobss is called.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3950 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 18:04:25 +00:00
uz
a17d27247e initmainargs routine by Stefan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3949 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 17:51:12 +00:00
uz
89951068dd writefndiskcmd gets its arguments in ptr1 and Y.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3945 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 15:40:06 +00:00
uz
3c168b4323 A few minor 65C02 optimizations.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3944 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 15:39:19 +00:00
uz
a0cd736adb Must open the command channel before writing to it.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3943 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 14:43:02 +00:00
uz
828b4226cf Comment additions and changes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3942 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 14:42:32 +00:00
uz
9c193743a0 Added missing .export statements.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3941 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 14:11:34 +00:00
uz
ef18b567f0 Added a new sysrename module to make the high level function rename work. Code
is untested!


git-svn-id: svn://svn.cc65.org/cc65/trunk@3940 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 14:06:12 +00:00
uz
30237d3c36 Moved some code from scratch.s into a new subroutine named writefndiskcmd in
the diskcmd.s module.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3939 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 14:02:52 +00:00
uz
770d230178 fnparse will return zero flag according to error (ZF=1 means no error).
git-svn-id: svn://svn.cc65.org/cc65/trunk@3938 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-22 13:54:03 +00:00
uz
feb31603da Use named constants from ctype.inc instead of hard coded numeric values.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3929 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-10 22:11:56 +00:00
uz
b6d7dba170 Removed an unused import.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3928 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-10 22:08:43 +00:00
cpg
b68094a2f6 add strnicmp.o
git-svn-id: svn://svn.cc65.org/cc65/trunk@3924 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-10 19:15:51 +00:00
cpg
222a421969 initial check-in
git-svn-id: svn://svn.cc65.org/cc65/trunk@3923 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-02-10 19:15:21 +00:00
cpg
f94ee2c20e small optimization
git-svn-id: svn://svn.cc65.org/cc65/trunk@3920 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-01-30 19:17:14 +00:00
cpg
8008a980bb now it really works (tested w/MYDOS only)
git-svn-id: svn://svn.cc65.org/cc65/trunk@3918 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-01-28 22:01:28 +00:00
cpg
46cb2548c1 fix comments
git-svn-id: svn://svn.cc65.org/cc65/trunk@3917 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-01-28 21:54:02 +00:00
uz
02d5f3025d Function key support be Stephan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3912 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-01-24 16:35:42 +00:00
uz
8c8e0b131f Code optimizations (by Stefan Haubenthal and me).
git-svn-id: svn://svn.cc65.org/cc65/trunk@3906 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-01-06 17:49:29 +00:00
uz
7e9b6e7311 Fixed problems with the startup code (Greg King): Interrupts must be hooked
before calling initlib because initlib calls contructors and may install
drivers, which enable hardware interrupts. Similar for donelib.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3897 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-08-31 18:22:51 +00:00
uz
0cc2bf015e Reverted a change that should not have been commited.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3896 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-08-31 18:21:17 +00:00
uz
0ec5268baa Made strxfrm fastcall, added docs.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3895 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-08-27 20:02:48 +00:00
uz
2b098710d9 Added Koala Pad mouse drivers written by Stefan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3877 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-08-05 20:54:35 +00:00
uz
af9286852f A label must always be followed by a statement. This wasn't checked by the
compiler before.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3864 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-08-03 12:54:11 +00:00
uz
4812feb44b git-svn-id: svn://svn.cc65.org/cc65/trunk@3863 b7a2c559-68d2-44c3-8de9-860c34a00d81 2008-08-02 22:02:54 +00:00
cuz
258a8e7d4c Move zpsave into its own segment to decrease the executable size.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3852 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-07-15 18:34:20 +00:00
cpg
e64672acc7 use __ZPSAVE_LOAD__ instead of __BSS_LOAD__ to create EXEHDR
git-svn-id: svn://svn.cc65.org/cc65/trunk@3851 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-07-04 17:32:00 +00:00
cuz
f257b2ee81 Moved the data that keeps a copy of the used zero page locations in its own
segment to reduce the executable size.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3849 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-07-03 19:39:14 +00:00
cpg
baf1e77645 Use RMARGN instead of a hard coded value for compatibility with XEP80.
Patch by Stefan Haubenthal.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3847 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-07-01 20:58:03 +00:00
cuz
545df804bb Renamed setoserror to seterrnofromoserror to avoid clashes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3838 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-04-15 06:55:35 +00:00
cuz
6c5c0be79f Fixed an error.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3837 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-04-15 06:44:46 +00:00