uz
96637a8c35
Make system() fastcall like most other library functions.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4178 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-15 21:01:20 +00:00
uz
e5996090f7
Added an implementation of strtol (stdlib.h).
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4177 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-15 20:56:08 +00:00
ol.sc
0c161a6cdd
Now that cc65 programs can run as SYS files themselves my ProDOS Loader ulimately has to change from a minimalistic shell replacement to a pure loader (without exit hook). This approach simplifies several things. However the "reboot after exit" option now present as a ProDOS Loader variant has to move into the cc65 program.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4172 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-14 19:58:06 +00:00
ol.sc
b7df1ed5d4
Being loaded by my 'ProDOS Loader' needs to be classified as being loaded as BIN from an interpreter (and not as SYS). But the 'ProDOS Loader' zeros the system bitmap up to the system global page (this is what it's about) so additionally check page $03 protection which is zero when loaded as SYS but one when loaded by 'ProDOS Loader 1.4'.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4168 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-13 19:50:09 +00:00
uz
4b84d95891
labs() is also imaxabs().
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4167 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-13 18:06:43 +00:00
uz
fe652c8206
Sqeeze out two bytes of the code.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4165 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-13 13:39:27 +00:00
uz
c9de0e6841
Lynx changes by Karri Kaksonen.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4164 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-13 13:37:44 +00:00
ol.sc
c271f18d00
Hooking into the MLI call needs much more thoughts - and is currently not necessary...
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4159 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-12 20:55:20 +00:00
ol.sc
2b98ab38f7
Addon to 4155: Fixed error.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4157 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-12 06:58:20 +00:00
uz
d660356ff7
Added a comment about the first entry being the default entry. Not sure if
...
this is true for GEOS.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4156 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-12 06:41:08 +00:00
ol.sc
736db8789e
Much better approach for ProDOS 8 IO-buffer custom implementations - the first one was actually kind of stupid.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4155 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-11 19:54:29 +00:00
ol.sc
c8e1d7e0d2
Adjusted Apple2 targets to the new standard mouse driver paradigm.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4154 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-11 19:35:13 +00:00
uz
7de61e351c
Define a standard driver and mode for tgi graphics and use it in the sample
...
program. The standard driver and mode is the first one in the tgi_mode_table.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4153 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-11 18:59:37 +00:00
uz
569b8d0e77
Separated tgi_load and tgi_load_driver.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4152 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-11 18:47:33 +00:00
uz
7c2823e780
Added the mouse_stddrv variable for the C64 and C128.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4149 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-11 16:51:21 +00:00
ol.sc
aeccd3a776
Allow to run programs as ProDOS SYS files (beside BIN files). To do so detect at runtime if BASIC.SYSTEM is present by checking the "signature" of the last system bitmap byte.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4146 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-11 16:27:20 +00:00
uz
d9cdca75b6
Make use of the IRQ to swap view and draw pages when they aren't visible.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4145 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-11 13:56:50 +00:00
uz
d95321f489
Changes by Karri Kaksonen to implement interruptor support.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4144 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-11 13:56:20 +00:00
ol.sc
773e05b5f3
Removed '_' prefix from textframe(xy) because this prefix for non-standard symbols isn't necessary if they are declared in non-standard include files.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4143 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-10 19:18:15 +00:00
ol.sc
d91fe6b877
ProDOS 8 requires an page-aligned 1kB IO-buffer for every open file. The implementation using posix_memalign() is universally correct but quite expensive. There I added support for overriding this implementation with maybe limited (i.e. to one open file) but cheaper custom implementations.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4142 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-10 09:59:26 +00:00
ol.sc
19397b742d
Fixed typo.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4141 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-10 09:35:37 +00:00
ol.sc
648a1b5427
Added support for switching between 40/80 columns. As the Apple //e 80 column firmware features converting the current screen content on switching if was already active before the idea is to keep the 80 column firmware active and initialize it (which clears the screen) only if necessary.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4140 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-10 09:04:05 +00:00
uz
931b6418bf
Changed the prototype of videomode() to take and return an unsigned instead of
...
an unsigned char. Two more video mode constants as discussed on the list.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4133 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-08 16:25:12 +00:00
ol.sc
96b731dd96
Just presume alternate charset to be active on the //e - how shouldn't it if conio usage activates it.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4127 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-07 14:00:17 +00:00
uz
74bfd6ee31
New function videomode() for the C128. Marked toggle_videomode as deprecated.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4126 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-07 13:21:04 +00:00
ol.sc
78a7af13e6
Adjusted to the changed default start address.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4120 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-04 21:32:41 +00:00
ol.sc
0d25264ed4
Minor reformatting.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4119 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-04 21:28:16 +00:00
uz
1ea503a036
The pleasp.s module is no longer in use.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4094 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-08-31 12:56:54 +00:00
uz
db69c202a4
Oh well. Decided to throw away the separate implementation for leaa0sp,
...
because it's not used too much, may sometimes inlined and can easily be
replaced by another entry in leaaxsp.s
git-svn-id: svn://svn.cc65.org/cc65/trunk@4092 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-08-31 12:22:13 +00:00
uz
bf9d36a2fa
Renamed leaasp.s again, this time to leaa0sp.s. Added a new module leaaxsp.s.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4091 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-08-31 12:15:51 +00:00
uz
a1dd468291
Renamed leasp.s to leaasp.s
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4090 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-08-31 12:10:59 +00:00
uz
23dae5a04b
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
2009-08-23 21:40:36 +00:00
uz
4c4071b34a
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
2009-08-23 21:38:11 +00:00
uz
c4763e9007
Special cased the division 16 by 8.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4043 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-08-19 14:51:16 +00:00
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