1
0
mirror of https://github.com/cc65/cc65.git synced 2024-07-11 14:29:11 +00:00
Commit Graph

131 Commits

Author SHA1 Message Date
uz
bfbf94404b Squeezed bytes and cycles out of the kbhit functions for almost all platforms.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4480 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-24 18:31:16 +00:00
uz
c7a33334ba Don't hardcode the address of the SYS call for the startup code of the
Commodore machines.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4474 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-23 12:01:24 +00:00
uz
5304a8149e Changes to the TGI driver API:
* Removed CIRCLE
  * Aspect ratio is a new header variable
  * Removed the reserved bytes - it's easier to bump the API version
  * Clipping is done completely in the wrapper



git-svn-id: svn://svn.cc65.org/cc65/trunk@4396 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-29 20:13:56 +00:00
uz
ed15f337d9 Use a simple expression now that ldwarning is available as an assert action.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4324 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-04 13:04:53 +00:00
uz
7ecdaf3d6e Use the new ldwarning assert action.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4322 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-04 12:42:32 +00:00
uz
634e84f12a Changed the existing Commodore mouse drivers for the new API. UNTESTED!
git-svn-id: svn://svn.cc65.org/cc65/trunk@4232 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-26 11:35:32 +00:00
uz
83be732983 The CIA TOD needs a write to the 1/10 sec register to start. Shortened the
code by using initialized data.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4224 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-24 19:40:36 +00:00
uz
5c5d01d84a Moved most platform assembler includes into asminc, so they will be available
in the distribution. 
Added --forget-inc-paths to the command line of the assembler in the
Makefiles, because the assembler does now have builtin paths and will find
include files from an installation first.
Hopefully fixed any problems that arose from the two changes.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4223 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-24 17:44:22 +00:00
uz
80fc3a0b48 Replaced the condition for the assertion in toggle_videomode by something that
is still always false, but will be evaluated by the linker instead of the
assembler. The assembler will otherwise emit a warning when just translating
the module.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4190 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-18 17:39:23 +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
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
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
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
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
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
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
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
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
cuz
263b7863a3 Oliver Schmidt fixed errors in the LINE and SETPIXELCLIP routines.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3812 b7a2c559-68d2-44c3-8de9-860c34a00d81
2008-02-25 07:47:04 +00:00
cuz
4b8d90d2de Changed the mouse API: Introduced a new flag byte that contains information
about the driver, the mouse kernel needs to know. Current supported: Two flags
to enable interrupts before or after calling the driver INSTALL routine.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3741 b7a2c559-68d2-44c3-8de9-860c34a00d81
2006-05-21 11:25:31 +00:00
cuz
cbdcab4fdb Change the sematics of callirq and the existing interruptors: The interrupts
must now return carry set if the interrupt has been handled, and carry clear
if not. The callirq routine will stop calling handlers with the first handler
that claims to have handled the interrupt. callirq will return the carry flag
to the caller as it came from the last interruptor called.


git-svn-id: svn://svn.cc65.org/cc65/trunk@3491 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-04-25 20:10:10 +00:00
cuz
d0bee35728 Move constructor code into the INIT segment
git-svn-id: svn://svn.cc65.org/cc65/trunk@3405 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-02-26 09:28:46 +00:00
cuz
a939b2b7e9 Added the IRQ entry
git-svn-id: svn://svn.cc65.org/cc65/trunk@3287 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-11-07 11:33:08 +00:00
cuz
16c81eb942 Add the irq entry point
git-svn-id: svn://svn.cc65.org/cc65/trunk@3279 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-11-06 13:12:57 +00:00
cuz
303304fe90 Add definitions for tools so the makefile is useful by itself.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3262 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-26 19:28:26 +00:00
cuz
7b13d79bde Use get_tv.inc
git-svn-id: svn://svn.cc65.org/cc65/trunk@3259 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-26 19:05:19 +00:00
cuz
cfef8e1e0d Renamed __IRQFUNC_xxx -> __INTERRUPTOR_xxx
git-svn-id: svn://svn.cc65.org/cc65/trunk@3189 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-09-20 10:24:59 +00:00
cuz
5fc98bd69a Comment fixes by Stefan Haubenthal
git-svn-id: svn://svn.cc65.org/cc65/trunk@3061 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-05-31 19:35:30 +00:00
cuz
6211fe8205 New command line parsing routine
git-svn-id: svn://svn.cc65.org/cc65/trunk@2990 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-28 09:48:06 +00:00
cuz
6aae136a00 Set FNAM_BANK *after* calling constructors
git-svn-id: svn://svn.cc65.org/cc65/trunk@2989 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-28 09:47:57 +00:00
cuz
657f495500 Use new := operator, added a few addresses
git-svn-id: svn://svn.cc65.org/cc65/trunk@2988 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-28 09:47:33 +00:00
cuz
2b57b0e4f4 Small speed improvement
git-svn-id: svn://svn.cc65.org/cc65/trunk@2979 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-19 11:38:51 +00:00
cuz
0d7cf8ebce Use new callirq function
git-svn-id: svn://svn.cc65.org/cc65/trunk@2970 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-04 14:28:57 +00:00
cuz
5e50355f2a Ignore mouse drivers
git-svn-id: svn://svn.cc65.org/cc65/trunk@2969 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-04 14:28:26 +00:00
cuz
71cdffebdd Applied a graphics driver bugfix sent by Greg King
git-svn-id: svn://svn.cc65.org/cc65/trunk@2967 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-04-04 12:30:50 +00:00
cuz
e4de88958e Loadable mouse driver for the C128
git-svn-id: svn://svn.cc65.org/cc65/trunk@2966 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-29 17:27:48 +00:00
cuz
7a5d4f3138 Fixed issues with the last change: The return code must be pulled from stack
before the stack pointer is reset.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2906 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-08 20:38:58 +00:00
cuz
220e5a3898 Place the return code into ST
git-svn-id: svn://svn.cc65.org/cc65/trunk@2884 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 17:08:07 +00:00
cuz
910f9277ac Place the return code into ST
git-svn-id: svn://svn.cc65.org/cc65/trunk@2883 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-03-02 16:59:52 +00:00
cuz
be5adac693 Use the assembler version as BASIC line number, so the version of the
assembler (and probably compiler) can be determined from a compiled
executable. Nice idea from Stefan Haubenthal.


git-svn-id: svn://svn.cc65.org/cc65/trunk@2880 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-02-02 13:34:12 +00:00
cuz
dbbc0032e8 Started to remove obsolete RS232 code
git-svn-id: svn://svn.cc65.org/cc65/trunk@2840 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-26 21:44:52 +00:00
cuz
b15e4106dc Use new joystick decls
git-svn-id: svn://svn.cc65.org/cc65/trunk@2777 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-16 22:38:12 +00:00
cuz
5010b8be45 Use changed EM decls
git-svn-id: svn://svn.cc65.org/cc65/trunk@2773 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-16 21:08:13 +00:00
cuz
ba079ae6a1 Added an IRQ vector
git-svn-id: svn://svn.cc65.org/cc65/trunk@2753 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-14 17:39:22 +00:00
cuz
042c63f278 Squeezed one precious byte out of the code
git-svn-id: svn://svn.cc65.org/cc65/trunk@2749 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-13 20:55:37 +00:00
cuz
3b69c2fd21 Small size optimizations
git-svn-id: svn://svn.cc65.org/cc65/trunk@2746 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-13 15:16:11 +00:00
cuz
aa030c8e6c Ignore serial binary drivers
git-svn-id: svn://svn.cc65.org/cc65/trunk@2739 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-13 11:03:10 +00:00
cuz
fb09db833e Added C128 swiftlink driver
git-svn-id: svn://svn.cc65.org/cc65/trunk@2738 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-12-13 11:02:48 +00:00
cuz
ad2c6a0e18 Removed the HORLINE entry point
git-svn-id: svn://svn.cc65.org/cc65/trunk@2648 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-11-12 16:07:08 +00:00