ol.sc
2e5823d43d
Save some bytes by sharing the code doing the actual vector setting. Note: Jumping from segemnt INIT to segment CODE is okay while the other way wouldn't be.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@5989 b7a2c559-68d2-44c3-8de9-860c34a00d81
2013-02-14 16:48:05 +00:00
ol.sc
7c9171ee87
Moved IRQ hooking / unhooking from startup code to constructor / destructor to avoid linking in the hooking / unhooking code (and callirq) for the majority of cc65 prorams not linking in interruptors.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@5985 b7a2c559-68d2-44c3-8de9-860c34a00d81
2013-02-12 22:39:38 +00:00
ol.sc
6860ac7dfd
Introduced static standard drivers.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@5891 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-11-01 19:53:47 +00:00
ol.sc
dbc66c247a
Added missing standard driver definitions.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@5890 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-11-01 15:58:27 +00:00
ol.sc
1bba8355da
Fixed typo.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@5889 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-10-31 23:39:58 +00:00
ol.sc
a3c940e315
Convert dynamically loadable drivers into statically linkable drivers and add them to the target libraries.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@5887 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-10-29 20:26:26 +00:00
ol.sc
59e96ef740
Turned the 'ST' status byte into a symbol resolved by the linker in order to allow to use it from code living in the 'cbm' directory.
...
Moved getdevice.s from 'c64'/'c128' to 'cbm' making use of the new 'ST' setup.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5834 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-09-30 18:20:15 +00:00
uz
285aaf8933
Patch by Stefan Haubenthal: Remove __fastcall__ in comments and/or the
...
function description for functions that don't take any parameters.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5573 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-03-04 13:08:54 +00:00
uz
9a9cea5a61
Changed the startup module and the linker config for the Commodore PET to use
...
the common loadaddr and exehdr modules.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4873 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-17 13:27:43 +00:00
uz
fa1b5047dd
Fixed order of options in call to ld65, which became important after the
...
latest changes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4843 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-09 21:33:14 +00:00
uz
207a8ea10d
Fixes for the pet-ptvjoy driver and a new standard joystick driver by Marco
...
van den Heuvel. Cleanup and integration by me.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4604 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-28 09:56:51 +00:00
uz
a284d8ffeb
Moved the pet.inc file into the asminc subdirectory. Added definitions for the
...
6522 VIA and fixed the assignments for addresses to use ':=' instead of '='.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4603 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-28 09:55:12 +00:00
ol.sc
d1aad57b98
Initialize _curunit from the zeropage value DEVNUM (aka First Address) in a constructor with a very high priority to be called before DEVNUM gets overwritten by other constructors.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4588 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-14 23:12:54 +00:00
uz
c6831e936a
Added --forget-inc-paths to the assembler command line to avoid problems if
...
more than one version of ca65 is installed on the machine (Spiro Trikaliotis).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4530 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-18 11:58:50 +00:00
uz
7e2a24176f
Replaced $30 by literal '0' for better readability.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4513 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-10 22:12:24 +00:00
uz
13698871cb
Removed the call to CLRCH in the startup code.
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4512 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-10 21:22:17 +00:00
uz
60bc009991
* Moved the BASIC stub that calls the compiled program into it's own segment
...
named EXEHDR.
* Renamed BASICHDR to EXEHDR for the PET-II machines.
* Moved the call to CHRCH in front of the code that saves the zero page, since
open files are sometimes remembered in the zero page, so we need to close
them before we grab a copy.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4507 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-09 12:42:24 +00:00
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
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
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
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
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
39f096b34e
Added constructor support (contributed by Stefan Haubenthal).
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3757 b7a2c559-68d2-44c3-8de9-860c34a00d81
2006-08-17 19:19:55 +00:00
cuz
aeb90b37c0
Driver for the Protovision 4 Player Joystick Adapter by Stefan Haubenthal.
...
New joy_stddrv module to make the Protovision driver the default driver (cause
it's the only one).
git-svn-id: svn://svn.cc65.org/cc65/trunk@3596 b7a2c559-68d2-44c3-8de9-860c34a00d81
2005-08-28 21:06:23 +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
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
b5db6e9e7b
New function get_tv
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@3260 b7a2c559-68d2-44c3-8de9-860c34a00d81
2004-10-26 19:07:38 +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
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
a3109620ab
Changed rm -f to $(RM)
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2385 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-20 11:59:27 +00:00
cuz
4e76d0155d
New uname function
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2286 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-08-12 17:24:02 +00:00
cuz
3b3e1bec17
Removed the empty LOWCODE segments from the startup files. This is now
...
handled by the OPTIONAL segment attribute in the linker config.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2164 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-05-22 22:32:04 +00:00
cuz
37178d5141
Make screensize() fetch the values dynamically instead of using variables
...
that are set on startup. This is needed to support the C128, which can switch
the screen size at runtime.
git-svn-id: svn://svn.cc65.org/cc65/trunk@2042 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-04-09 19:34:57 +00:00
cuz
467d8ad9c5
Added routines to handle command line params
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@2012 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-03-10 21:21:46 +00:00
cuz
a8810a464d
Make sure the zap target is available
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1932 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-02-06 15:35:30 +00:00
cuz
36fe6284a8
For the CBM platforms, make revers() machine dependent and use the RVS flag
...
of the different machines instead of a separate one.
For the C128, make the textcolor() function work in 40 and 80 column mode.
git-svn-id: svn://svn.cc65.org/cc65/trunk@1787 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-19 20:29:27 +00:00
cuz
380f5ce51d
Added a PLOT kernal replacement function
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1740 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-12-12 18:44:28 +00:00
cuz
bbbf2ac45a
Move the startup code into its own segment
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1581 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-22 17:43:30 +00:00
cuz
ae38242db9
Added kernal replacement routines
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1546 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-20 01:31:56 +00:00
cuz
6d498d8187
Use external symbols for the CBM kernal jump table functions. This allows
...
to emulate these functions on platforms where one or more of these functions
are not available (PET, CBM-II).
git-svn-id: svn://svn.cc65.org/cc65/trunk@1544 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-19 23:02:47 +00:00
cuz
163c421db0
Renamed randomize to _randomize
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1489 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-05 20:17:38 +00:00
cuz
3fae969b5b
New randomize() function for nearly all platforms
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1487 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-11-05 10:48:20 +00:00
cuz
33c1e82bda
Move zp space out of crt0.s
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@1291 b7a2c559-68d2-44c3-8de9-860c34a00d81
2002-05-26 09:09:10 +00:00
cuz
0856c6debc
Fixed an error in the reset_brk() routine of all target machines (all the code
...
was derived from my old C64 code which had an error).
git-svn-id: svn://svn.cc65.org/cc65/trunk@900 b7a2c559-68d2-44c3-8de9-860c34a00d81
2001-09-13 15:29:13 +00:00
cuz
e906d07cc1
Fixed newline bug in cvline
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@523 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-02 14:59:14 +00:00
cuz
e02b3e91c8
Use a destructor instead of atexit
...
git-svn-id: svn://svn.cc65.org/cc65/trunk@515 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-12-01 17:58:40 +00:00
cuz
99ecc9a609
Removed initialization code to set the screen size and replaced it by a
...
separate module that contains a module constructor. In some cases, the
code was even unnecessary, since the screen size is known in advance.
git-svn-id: svn://svn.cc65.org/cc65/trunk@476 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-11-23 19:05:32 +00:00