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

1791 Commits

Author SHA1 Message Date
uz
49cdfcf5b0 The BASIC stub does encode the start address with only 4 digits. Add a check
so the linker will not generate an invalid header for program files with
larger start addresses.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5074 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-07-08 08:58:41 +00:00
uz
e531e5abd1 Removed __fastcall__ declarations for functions without parameters.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5073 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-07-07 20:19:35 +00:00
uz
9d7edad0cc Fixes for program arguments and TAP header by Stefan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5071 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-07-03 13:23:07 +00:00
uz
ad1c31b049 Fixed order of rules, so not only the tgi driver gets built.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5068 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-06-22 08:19:59 +00:00
uz
eae262b7c3 NES character mode TGI driver. By Stefan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5067 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-06-21 20:34:18 +00:00
cpg
6d0db06931 interruptor support by Stefan Haubenthal
git-svn-id: svn://svn.cc65.org/cc65/trunk@5055 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-06-13 16:42:45 +00:00
uz
f40c977623 Added (again) IRQ support for the Oric Atmos by Stefan Haubenthal. This time
with the correct patch for atmos.inc.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5039 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-06-07 21:22:02 +00:00
uz
c4492130c4 Reverted the last change, because it doesn't compile.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5028 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-24 06:48:02 +00:00
uz
5df93d5561 Add support for interruptors (Stefan Haubenthal).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5027 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-23 17:35:25 +00:00
uz
9c17760227 Corrected screensize function by Stefan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5026 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-13 15:31:26 +00:00
ol.sc
ba7b4d5e86 Back to revision 3818: The value of COLOR_WHITE changed back from 3 to 1.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5023 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-05 20:43:10 +00:00
ol.sc
b4fda77b6c The TGI kernel will call SETVIEWPAGE(0) after calling INIT so there's no need to switch to the first page here.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5022 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-03 21:40:51 +00:00
ol.sc
a4b6b6004a Removed tgi_load() and all corresponding infrastructure. The idea behind tgi_load() was to be able to describe a TGI mode in a target-neutral way by resolution and colordepth. However it turned out that there arn't any cc65 targets sharing any resolution. As a result the only working target-independent approach for a TGI program is to call tgi_loaddriver(tgi_stddrv); and then look up the resolution provided - and to adapt to that resolution.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5021 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-03 21:28:20 +00:00
ol.sc
a7a41f9415 Fixed comment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5020 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-03 20:22:32 +00:00
uz
73a7cf8c8c Added commands to copy the extra-object modules for all targets.
These two patches speed up library building:
Do the "runtime" directory before doing the platform directory, because
platform drivers need a file from the runtime directory (the old code
ran "runtime/Makefile" three times for each target!!!).
Clean only the shared directories -- the target directories don't need
cleaning.
Changes by Greg King.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5019 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-02 19:29:05 +00:00
ol.sc
d72d373e83 Computed pixel aspect ratio (PAR) by presuming a display aspect ratio (DAR) of 4/3 for a classic CRT and using the given driver resolutions as storage aspect ratio (SAR).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5017 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-02 11:23:30 +00:00
ol.sc
4aa00e84e1 Removed tgi_load() and all corresponding infrastructure. The idea behind tgi_load() was to be able to describe a TGI mode in a target-neutral way by resolution and colordepth. However it turned out that there arn't any cc65 targets sharing any resolution. As a result the only working target-independent approach for a TGI program is to call tgi_loaddriver(tgi_stddrv); and then look up the resolution provided - and to adapt to that resolution.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5016 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-02 10:38:48 +00:00
ol.sc
97b950b8d8 Removed unused TGI mode tables.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5015 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-02 10:30:49 +00:00
uz
06fddaf11f Improved the stub for __osmaperrno somewhat (Stefan Haubenthal).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5013 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-01 21:39:04 +00:00
ol.sc
b47113ad80 Removed recently added TGI mode tables for Atmos and Lynx as according to Greg King those targets don't load drivers dynamically.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5011 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-01 21:32:03 +00:00
uz
a507605a89 New TGI routines tgi_getaspectratio/tgi_setaspectratio.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5009 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-01 18:40:38 +00:00
uz
ea32400df4 Removed two extra bytes from the TGI driver's header.
Added "tgi_colors.s" and a missing mouse-driver support file.
Added driver-module rules to the make-file.
All changes by Greg King.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5004 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-05-01 17:04:30 +00:00
ol.sc
a0d53cff6b Documented the reason for having a pixel aspect ratio (PAR) of 1 on the Lynx.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5002 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-30 12:47:53 +00:00
ol.sc
14cfadbc75 Computed pixel aspect ratio (PAR) by presuming a display aspect ratio (DAR) of 4/3 for a classic CRT and using the given driver resolutions as storage aspect ratio (SAR).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5001 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-30 12:46:03 +00:00
ol.sc
905c1252f5 No need to explicitly set two page in 40 column mode as two pages are the default anyway.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4999 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-28 13:06:37 +00:00
ol.sc
f9b25bad48 Added TGI mode tables for Atmos and Lynx
git-svn-id: svn://svn.cc65.org/cc65/trunk@4997 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-25 19:05:43 +00:00
uz
977c64ce01 Fixed comments. No code change.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4996 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-25 18:49:24 +00:00
uz
671a4a653f Reverted the change by Stefan Haubenthal - order of segments is important for
the heap to work correctly.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4995 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-25 18:45:57 +00:00
uz
cc3424a545 Access routines for different eeprom types. By Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4994 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-25 18:42:50 +00:00
ol.sc
5e37ed1a16 Target-specific black & white values for use by the target-shared TGI kernel
git-svn-id: svn://svn.cc65.org/cc65/trunk@4993 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-25 17:11:23 +00:00
ol.sc
012e3e456a Added TGI_COLOR_... macros to be used both for hires and lores. Introduced color mapping on lores to allow for common color macros.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4992 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-25 11:16:56 +00:00
ol.sc
98fdd6f792 Added toascii().
git-svn-id: svn://svn.cc65.org/cc65/trunk@4991 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-22 12:14:28 +00:00
uz
ba2a945417 Changes by Greg King:
Made cbm_readdir() report a disk's format-code and more file-access modes.
Added more definitions to <cbm.h> for cbm_readdir().  And, improved the
header's comments.  Added some ASCII-to-PetSCII character-mappings.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4986 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-16 12:28:06 +00:00
uz
49d7d2df87 Added stub for _osmaperrno. Improve uname info. By Stefan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4985 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-16 12:15:49 +00:00
uz
ccd1f5fcd7 Fix tape header output. Add version info in the header. By Stefan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4984 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-16 12:09:28 +00:00
uz
c7528d6e3e Patch by groepaz to fix the problem that DEL files would appear as type DIR.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4983 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-07 20:58:03 +00:00
uz
d78e52fd40 New uploader that can be hiding in top of memory waiting for a BLL-kind of
loadable application over the ComLynx serial port. By Karri Kaksonen.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4982 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-06 19:54:55 +00:00
uz
3eccb74a0a Missing files added by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4981 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-04-06 19:51:15 +00:00
uz
00a11e642c Lynx boot stuff split up into several files. Changes by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4979 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-03-21 17:49:03 +00:00
uz
9528aae744 Improved and much smaller bootloader by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4978 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-03-17 22:36:09 +00:00
ol.sc
a25d9bdf4b Improved exec():
- Copy the pathname to $280 for SYS programs
- Make sure 80 column firmware is off (which btw. switches to the normal character set) which should increase program compatibility
Now "only" cmdline support should be left to do.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4976 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-02-11 23:22:26 +00:00
ol.sc
e4aa2a549b Added MACHID - we'll need it sooner or later...
git-svn-id: svn://svn.cc65.org/cc65/trunk@4975 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-02-11 23:15:20 +00:00
ol.sc
56d04f523f Added first implementation of exec(). No support for commandline parameters so far.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4969 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-02-06 22:27:31 +00:00
uz
fe92bc9c68 Bug correction by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4964 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-02-06 14:34:02 +00:00
uz
6cbbe66c87 Removed the obsolete mouse module.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4960 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-31 16:44:12 +00:00
ol.sc
110f911ccb Introduced constructor to raise the ProDOS 8 file level - and extended the destructor to restore the file level again. This is a prerequisite to allow the upcoming exec() to open a file before the destructors run and continue reading from of it after the destructors have run.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4955 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-29 21:43:26 +00:00
ol.sc
9e31f7fb63 Set the priority of the main() args constructor to 24 simply be cause most other targets do - and adjust the priority of the dos detection constructor to stay higher than the main() args constructor.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4954 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-29 21:39:17 +00:00
ol.sc
d2f59fb8b0 The constructor doesn't have any interaction with other constructors so there seems to be no need for a priority at all.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4953 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-29 21:36:18 +00:00
uz
1dcba5c24e Bugfix by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4949 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-29 17:53:58 +00:00
uz
8685bb116c Allow to pass arguments to a program compiled for the Oric Atmos. Code
contributed by Stefan A. Haubenthal.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4941 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-28 12:12:59 +00:00
uz
a9990fbcf3 Changed priorities of destructors so atexit will be called before open files
are closed on exit, so atexit handlers may close the files themselves or
whatever is necessary for a clean shutdown.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4939 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-28 10:55:03 +00:00
uz
d6c6c54ad6 Renamed conioinit to initconio because most other constructors have this
naming scheme.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4933 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-27 21:12:55 +00:00
uz
e654ad49eb Allow different output formats using additional linker configs. Contributed by
Karri Kaksonen.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4925 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-26 22:14:42 +00:00
ol.sc
76c543a26f Saved two bytes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4924 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-26 22:11:23 +00:00
uz
f79473f53a Slightly improved memset function by Christian Krüger.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4923 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-26 22:07:59 +00:00
ol.sc
b4c237b2b1 Minor beautification.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4922 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-26 21:37:42 +00:00
uz
4a32e84639 Fixed an error in the division routine: The high byte of the wrong 16 bit
value was checked before entering the faster 16b8 division routine.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4904 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-11 17:08:29 +00:00
ol.sc
bee54df029 Allow to set the ProDOS type and auxtype on creating new files in a similiar way done on the CBMs.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4902 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-05 16:09:08 +00:00
uz
a2ec97ac13 More changes by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4899 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-01-04 19:39:07 +00:00
uz
38ebc6618d Bug fixes by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4893 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-12-30 19:05:33 +00:00
uz
d993b332a4 Lynx update including file routines that access a file system on a cartridge
by Karri Kaksonen.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4892 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-12-29 10:37:57 +00:00
uz
f11067e260 Latest versions of startup code and config by Karri Kaksonen. Citing: The new
header contains an encrypted loader, a small directory structure and a single
pixel black title screen. This is directly bootable on a real Lynx.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4890 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-12-22 15:37:20 +00:00
uz
a3493d5e72 New versions that match the current TGI API by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4888 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-12-20 07:20:49 +00:00
uz
0d5267fc1a Added an implementation of toascii() for the Lynx, contributed by Karri
Kaksonen.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4887 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-12-19 11:49:58 +00:00
uz
e907b57e9c Added kernal replacement routines for RDTIM and SETTIM.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4882 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-25 20:39:46 +00:00
uz
81cfbe06c6 Changed the startup module and the linker config for the Commodore VIC to use
the common loadaddr and exehdr modules.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4874 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-17 13:35:43 +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
7252f071a2 Changed the startup module and the linker config for the C128 to use the
common loadaddr and exehdr modules.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4872 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-17 13:00:34 +00:00
uz
da59130820 Changed the startup module and the linker config for the C16 to use the common
loadaddr and exehdr modules.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4871 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-17 12:46:55 +00:00
uz
8aff2a9159 Fixed a problem with the last change in crt0.s: The symbols for the RAM memory
area had been used but not defined in the linker config. Changed the startup
module and the linker config to use the common loadaddr and exehdr modules.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4870 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-16 17:33:25 +00:00
uz
85c157f8fa Removed the code that checks for valid/invalid chars in a filename. Actually
most characters are valid, and even the remaining ones do something more or
less useful.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4867 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-15 21:50:58 +00:00
uz
577247df58 As a test, remove the SYS header from the startup code and use the one
supplied by the new exehdr module.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4862 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-14 11:51:05 +00:00
uz
62e39780bc Added a module that contains a small basic stub (SYS header) that starts
machine language code following it. Using this header, machine language
programs linked to this stub can be started using RUN.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4861 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-14 11:50:38 +00:00
uz
9948b5acfe Remove the load address since it's supplied in its own module now.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4856 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-13 16:57:23 +00:00
uz
ae922930a1 New module that contains the load address expected by the Commodore machines
in the first two bytes of a file loaded with LOAD.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4855 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-11-13 16:56:42 +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
cpg
f0d0e4e543 really use default drive
git-svn-id: svn://svn.cc65.org/cc65/trunk@4834 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-10-29 19:53:45 +00:00
cpg
3386876fd3 __defdev is not dependent on DYNAMIC_DD
git-svn-id: svn://svn.cc65.org/cc65/trunk@4833 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-10-29 19:52:31 +00:00
cpg
50becf541b fix for files with no extension
git-svn-id: svn://svn.cc65.org/cc65/trunk@4832 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-10-29 19:25:01 +00:00
cpg
5f006333bf add posixdirent.s by Stefan Haubenthal
git-svn-id: svn://svn.cc65.org/cc65/trunk@4830 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-10-28 21:03:05 +00:00
cpg
03ed1b3a6a some fixes
git-svn-id: svn://svn.cc65.org/cc65/trunk@4829 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-10-28 21:02:09 +00:00
cpg
1aeb5651f5 initial version by Stefan A. Haubenthal
git-svn-id: svn://svn.cc65.org/cc65/trunk@4828 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-10-28 20:55:18 +00:00
ol.sc
d1f5b74f01 Now that we reduce the size of the RAM memory area by the stacksize in the linker configuration we need to add the stacksize to end of the RAM area when setting the initial stack pointer in the startup code.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4822 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-10-02 10:37:20 +00:00
ol.sc
eef8ecc74d User linker generated symbols for stack placement (like most other targets) instead of a hardcoded constant in order to allow control of stack placement via linker configuration.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4821 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-10-02 10:32:26 +00:00
ol.sc
aaf90c1252 Exclude (small) stack from RAM memory area (like on most other targets) to make explicit that the linker may not use all RAM. If the cc65 parameter stack isn't used at all the __STACKSIZE__ symbol may be overridden on the linker command line with -D __STACKSIZE__=0.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4820 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-10-02 10:20:00 +00:00
uz
1708ec318b Updated GEOS TGI driver by Maciej Witkowiak.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4815 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-17 21:14:30 +00:00
uz
103af67585 Change handling of errno/seterrno to new behaviour. By Maciej Witkowiak.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4791 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-08-07 18:22:37 +00:00
ol.sc
07680d2376 Read number of total blocks from ProDOS 8 volume directory header - and fall back on the constant 280 only for non-ProDOS 8 disks.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4750 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-17 19:16:25 +00:00
ol.sc
f15910e5f1 Made use of the new common __directerrno and __mappederrno function.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4749 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-17 19:13:07 +00:00
ol.sc
b1dab3a37d Use MLI error names from ProDOS 8 Technical Reference Manual Quick Reference Card (and not Section 4.8 !).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4748 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-17 19:11:51 +00:00
ol.sc
b9740f52e2 Saved one byte.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4747 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-17 19:07:57 +00:00
uz
3a88860d8b Removed the rs232 module from the makefile, since it will no longer compile.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4746 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-15 20:58:46 +00:00
uz
3afb4e4e94 Added getopt. The implementation is based on a public domain source,
originally written by Henry Spencer and supplied by Harald Arnesen.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4737 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-10 11:28:02 +00:00
uz
54cd9a17dd Removed useless high byte loads of the error code.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4734 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-08 15:00:15 +00:00
ol.sc
f1d7044b7c Adjusted parameter handling to match prototype.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4733 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-07 22:28:14 +00:00
cpg
e673b53850 adapt to new oserror/errno handling
git-svn-id: svn://svn.cc65.org/cc65/trunk@4732 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-07-06 22:43:19 +00:00
uz
ae98a6db40 Fixed sources to use the new __mappederrno and __directerrno functions, and
made handling of _oserror and errno consistent.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4731 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-26 11:28:44 +00:00
cpg
db71d5e9e4 abort build if $(AR) reports an error
git-svn-id: svn://svn.cc65.org/cc65/trunk@4727 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-25 22:16:43 +00:00
ol.sc
51d4a5bf79 Use MLI error names from ProDOS 8 Technical Reference Manual (and ProDOS 8 Technical Note #21).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4724 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-16 21:21:01 +00:00
ol.sc
a0359724ff - Use ProDOS 8 unit number as parameter.
- Don't access the drive, just check its presence.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4723 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-16 21:19:47 +00:00
ol.sc
ab068d43e3 Use MLI error names from ProDOS 8 Technical Reference Manual (and ProDOS 8 Technical Note #21).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4722 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-16 21:16:14 +00:00
ol.sc
148a6569e5 Clear __oserror on success.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4721 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-15 21:44:18 +00:00
ol.sc
155c5629a9 Make use of the new common __directerrno and __mappederrno function.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4720 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-15 20:38:05 +00:00
uz
8806c31e4a No need to import __oserror.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4719 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-10 19:14:42 +00:00
uz
131a5cad09 Renamed oserrcheck to __mappederrno. Added an additional function named
__directerrno and moved both to errno.s. Changed several sources to use these
functions. Needs testing.
                         


git-svn-id: svn://svn.cc65.org/cc65/trunk@4718 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-10 18:10:53 +00:00
ol.sc
5741b6e7d3 Minor comment style adjustment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4717 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-07 19:20:10 +00:00
uz
0bdc045f65 Removed a comment that was no longer correct.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4716 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-06 14:31:24 +00:00
ol.sc
2273b7575c DIO functions always set _oserror.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4715 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-04 21:41:22 +00:00
ol.sc
1568376fbf Adjustment to recent change in ca65 relative include path handling.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4713 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-04 20:58:40 +00:00
ol.sc
c8c604f353 Minor optimization.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4712 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-04 20:52:52 +00:00
uz
e0c00d2054 Fix errno/oserror handling.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4711 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-04 10:50:58 +00:00
uz
a86d23a63c Change calling convention of cbm_save() to __fastcall__.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4709 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-04 10:25:53 +00:00
uz
ba0562c9f0 Save two bytes by a small code change.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4708 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-04 10:15:44 +00:00
uz
23901280c9 Save a few bytes and cycles.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4707 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-04 09:38:35 +00:00
uz
75fbc5c5e3 Removed maperrno() since it's no longer needed.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4706 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:40:32 +00:00
uz
aa8f817182 Use _seterrno instead of assigning to _errno.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4705 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:37:27 +00:00
uz
eac4711731 No need to import __seterror, since this is done in errno.inc.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4704 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:33:55 +00:00
uz
49723f6a64 Use _errno, not errno.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4703 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:31:06 +00:00
uz
a7f392a96f Call __seterrno and save a few bytes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4702 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:29:28 +00:00
uz
ef4a2e667d Call __seterrno instead of assigning to _errno and save a few bytes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4701 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:26:52 +00:00
uz
30920f0709 Removed the prototype for _seterrno, since it is now provided in errno.h.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4700 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:25:17 +00:00
uz
8194408abc Set errno if the stream is in error state. Small code size improvements. Fixed
comment regarding _oserror.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4699 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:22:51 +00:00
uz
b97986b124 Rewrote parts of the code for better error handling. fileno must set errno and
return -1 in case of an invalid argument, which it didn't until now.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4698 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:20:10 +00:00
uz
1dabfda734 Added messages for EBADF (new) and EUNKNOWN (missing).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4697 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:16:07 +00:00
uz
d7aaac7e71 Return EUNKNOWN instead of EINVAL if the error code cannot be mapped.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4695 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 21:10:22 +00:00
uz
a9ba343e1b Use _seterrno instead of assigning to _errno to make the code shorter.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4694 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 20:46:08 +00:00
uz
1b71d3fe42 Rewrote the code to make it somewhat shorter.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4693 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 20:43:30 +00:00
uz
eacc7052eb Call _seterror instead of assigning to _errno to make the code somewhat
shorter. Fixed a comment regarding oserror/errno.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4692 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 20:27:59 +00:00
uz
00222e41ab Fixed a comment regarding errno/oserror.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4691 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 20:26:33 +00:00
uz
63b629b801 Call _seterrno instead of assigning to _errno to make the code shorter.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4690 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 20:21:23 +00:00
uz
1ab221bd05 Don't include errno.h since it is not needed.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4689 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 20:20:01 +00:00
uz
c3922228a9 Use _seterrno to make the code shorter.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4688 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-03 20:18:43 +00:00
ol.sc
710f59b654 Align rootdir() return value rather with POSIX functions than with DIO functions.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4680 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-02 07:03:54 +00:00
ol.sc
2e0ab6f863 Set _oserror only on error.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4679 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-06-01 21:01:59 +00:00
ol.sc
05b23194d9 Added function to find out the volume name of a ProDOS 8 disk in a ProDOS 8 device.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4668 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-05-26 21:02:35 +00:00
ol.sc
1bbbed5e96 Added functions to learn about the unit numbers of the ProDOS 8 devices found.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4663 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-05-24 20:10:19 +00:00
cpg
84b1e343b5 syschdir by Stefan Haubenthal
git-svn-id: svn://svn.cc65.org/cc65/trunk@4658 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-05-01 22:33:25 +00:00
ol.sc
186657e5ad Save some cycles.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4646 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-04-22 19:51:34 +00:00
uz
e4d63daff1 Comment fix.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4636 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-23 19:39:32 +00:00
uz
09adce2fec Added patches to make systime work correctly with the different video systems
(Stefan Haubenthal).


git-svn-id: svn://svn.cc65.org/cc65/trunk@4624 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-19 20:46:56 +00:00
uz
21c38fa7db Removed a forgotten ScrollSave variable (Stefan Haubenthal).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4623 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-17 17:09:24 +00:00
uz
44852e317e Shortened the code
git-svn-id: svn://svn.cc65.org/cc65/trunk@4620 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-08 18:40:55 +00:00
ol.sc
8663ae5975 Fixed line endings I broke with recent change.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4618 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-07 21:00:42 +00:00
uz
9656dde9e3 Fix scrolling (again). The old code switched off scrolling completely, as a
consequence it didn't work when write(FILENO_STDOUT, ...) was used. So we will
have to disable scrolling on a per character basis in cputc.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4617 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-03-07 13:37:58 +00:00
uz
38a1690968 Replaced '=' by ':=' where applicable and moved the atmos specific assembler
include into the asminc directory.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4609 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-28 10:22:26 +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
uz
8b6a40c04e Patch by Marco van den Heuvel that adds detection of GEOS 1.1 and the plus4
GEOS to the get_ostype function.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4600 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-27 14:46:43 +00:00
uz
b256d6fb46 Made Olivers devnum patch (r4588) work with the PET-II models. On these
machines, the program runs in a separate 64K bank, and zeropage variables need
to be copied from the system bank into the execution bank to read by a simple
load operation. The change is currently untested!


git-svn-id: svn://svn.cc65.org/cc65/trunk@4597 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-20 19:46:51 +00:00
ol.sc
9ef9396b71 Added comment based on mailing list posting by Greg King.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4593 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-20 09:52:05 +00:00
uz
2bd1f2f69f Fixed a problem with a disabled cursor: Switching off the cursor using the
kernal routine does not work, when the cursor is not at the same position
where it was switched on, because when switching it on, the kernal remembers
the character attribute and restores this when switching it off. So characters
may get the wrong attribute. The solution is to always switch the cursor on,
before switching it off.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4592 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-18 20:31:50 +00:00
uz
4bf888aa62 Fixed a video problem: When switching the display, the SCROLL flag gets
cleared, which in turn causes the display to scroll when a character is output
in the lower right corner.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4590 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-15 18:32:15 +00:00
uz
5f18ddbec9 Patches by Greg King to avoid crosstalk between mouse and keyboard.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4589 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-15 17:52:41 +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
d4592d1a7c New EMD driver for the Double Quick Brown Box cartridge, written and
contributed by Marco van den Heuvel with quite some cleanup by me.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4587 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-12 11:09:23 +00:00
uz
49f6f3972b Make PIA upper case for orthogonality.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4586 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-12 11:07:07 +00:00
uz
6a712d8b9e More driver cleanup.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4585 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-12 10:46:57 +00:00
uz
8bae793f48 Use the .max function to calculate the backup space.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4584 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-11 18:56:47 +00:00
uz
c72cf88723 Comment update.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4582 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-04 22:29:57 +00:00
uz
7d03059240 Fixes for the ptvjoy drivers by Marco van den Heuvel.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4581 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-04 21:02:00 +00:00
uz
e65f966d25 Added DTV detection code by Marco van den Heuvel.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4580 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-04 20:27:48 +00:00
uz
aa6a507991 Some more improvements (untested).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4579 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-04 20:08:50 +00:00
uz
37fbe08df2 New extended memory driver for the C256K memory extension. Written and
contributed by Marco van den Heuvel with several changes by me.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4577 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-04 19:19:17 +00:00
uz
44bb5c62e6 Moved the extended RAM driver to c128-ram2.emd and restored the old one.
Machines with RAM in pages 2+3 are quite rare, so it's better to have the
additional code+features in a separate driver.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4575 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-04 18:28:56 +00:00
uz
4e18dad55a New EMD driver for the ISEPIC cartridge written and contributed by
Marco van den Heuvel with some cleanup by me.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4574 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-02 18:32:34 +00:00
uz
31819685af Fixes for joysticks 3+4 in the ptv joystick driver. Contributed by Marco van
den Heuvel.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4573 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-02 17:05:18 +00:00
uz
7d731dce02 Marco van den Heuvel contributed code to detect a C64 DTV.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4570 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-01 18:04:14 +00:00
uz
1524b0c13f Added code to the driver to use also banks 2 and 3 if present. Contributed by
Marco van den Heuvel.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4569 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-01 17:56:37 +00:00
uz
6c2fb80084 Added size checking code contributed by Marco van den Heuvel.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4568 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-01 07:20:06 +00:00
uz
cf4d3d0a16 No need to save the Y register in INSTALL.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4567 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-01 07:19:47 +00:00
uz
3bf4afae50 Added size checking code contributed by Marco van den Heuvel.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4566 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-01 07:15:41 +00:00
uz
80b1dddb7f Added size checking routine contributed by Marco van den Heuvel.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4565 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-02-01 07:07:24 +00:00
uz
6d89093d4b Removed the call to tgi_clear from tgi_init, so the screen is not
automatically cleared.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4559 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-01-26 16:51:03 +00:00
ol.sc
47a8b9191a Minor reformatting.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4557 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-01-24 14:53:48 +00:00
ol.sc
e9f69ad123 Factored out generic LINE implementation based on SETPIXEL from the three drivers previously containing the identical code.
Note: Originally I planned to create a module to be linked to the driver. However this turned out to cause quite some issues with the Makefiles - especially on the Apple2 where one driver uses to generic LINE implementation and the other doesn't. The final Makefile was so ugly that I rather opted for including the code in question on source level. In order to avoid to unwanted cross dependencies the whole .inc file content is wrapped in its own scope.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4553 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-01-24 11:21:44 +00:00
ol.sc
16129b2724 Quite some minor changes to have the two C128 TGI driver source files only differ where they are semantically different.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4552 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-01-23 08:55:37 +00:00
ol.sc
246a8db9ac Some optimization.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4546 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-01-08 23:09:02 +00:00
ol.sc
c71c75c162 - Added ioctl for mixing graphics with 4 lines of text.
- Preserve drawing color during CLEAR.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4545 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-01-08 22:45:59 +00:00
ol.sc
c3ef1369f3 Minor comment adjustment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4544 b7a2c559-68d2-44c3-8de9-860c34a00d81
2010-01-08 22:24:38 +00:00
uz
62669bcb73 P.A.S.E. joystick driver for the Oric Atmos, contributed by Stefan Haubenthal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4532 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-21 21:14:21 +00:00
ol.sc
651df0889c Minor comment adjustment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4531 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-19 13:09:57 +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
ol.sc
8ea7c876d6 Added macro for ssc slot selection.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4528 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-13 11:23:20 +00:00
ol.sc
fd82520622 Added ioctl for mixing graphics with 4 lines of text.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4521 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-12 23:06:58 +00:00
uz
36cf23680c MAde the second parameter of tgi_ioctl a void* instead of an unsigned to keep
the interface more uniform between the driver APIs.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4518 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-11 14:33:53 +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
ol.sc
6b148748a9 Replaced left-over tab with space.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4510 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-09 18:16:02 +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
cpg
2bca737f57 more space improvements by Daniel Serpell
git-svn-id: svn://svn.cc65.org/cc65/trunk@4503 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-07 18:58:32 +00:00
cpg
e65719bf98 don't hardcode 'D' as device name, use __defdev
git-svn-id: svn://svn.cc65.org/cc65/trunk@4495 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-26 18:47:14 +00:00
cpg
20e9cf6d85 remove check for ATEOL
git-svn-id: svn://svn.cc65.org/cc65/trunk@4492 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-25 18:21:26 +00:00
cpg
b0afb15402 save 2 bytes -- patch by Uz
git-svn-id: svn://svn.cc65.org/cc65/trunk@4491 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-25 18:08:56 +00:00
cpg
0b28cda7b0 put _revflag into .bss
git-svn-id: svn://svn.cc65.org/cc65/trunk@4489 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-25 17:44:54 +00:00
cpg
94f7ce4978 fix comments
git-svn-id: svn://svn.cc65.org/cc65/trunk@4488 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-25 17:41:00 +00:00
cpg
7fb08aa749 move __do_oserror and __inviocb into their own source files
git-svn-id: svn://svn.cc65.org/cc65/trunk@4487 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-25 17:35:21 +00:00
cpg
9b058add4a remove not longer needed import of __errno
git-svn-id: svn://svn.cc65.org/cc65/trunk@4486 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-25 17:08:24 +00:00
cpg
daa41d41d6 remove not longer needed import of tmp2 and tmp3
git-svn-id: svn://svn.cc65.org/cc65/trunk@4485 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-25 17:06:47 +00:00
cpg
d17e0f7c02 space improvements by Daniel Serpell
git-svn-id: svn://svn.cc65.org/cc65/trunk@4484 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-25 17:03:18 +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
cpg
7357b44104 don't use constructor to setup runtime stack
git-svn-id: svn://svn.cc65.org/cc65/trunk@4479 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-23 22:06:32 +00:00
cpg
fa25cc732f move fdtoiocb function into its own file -- idea by Daniel Serpell
git-svn-id: svn://svn.cc65.org/cc65/trunk@4478 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-23 21:59:29 +00:00
cpg
5a593b8105 poor man's _toascii routine, contributed by Fatih Aygun
git-svn-id: svn://svn.cc65.org/cc65/trunk@4477 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-23 21:35:33 +00:00
cpg
314984aae4 save 3 bytes, patch by Daniel Serpell
git-svn-id: svn://svn.cc65.org/cc65/trunk@4476 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-23 21:21:49 +00:00
cpg
2011f92c3a save a byte (idea by Uz, done by Daniel Serpell)
git-svn-id: svn://svn.cc65.org/cc65/trunk@4475 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-23 21:17:56 +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
cpg
61b2834508 don't call __getdevdef in crt0.s, but make it a constructor of getdefdev.s
git-svn-id: svn://svn.cc65.org/cc65/trunk@4473 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-19 22:12:51 +00:00
cpg
38901e1614 move setup of stdin/stdout/stderr from crt0.s to getfd.s
git-svn-id: svn://svn.cc65.org/cc65/trunk@4472 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-19 20:57:23 +00:00
cpg
429c3888bc add a comment describing why this file is really included despite an obvious reference to it
git-svn-id: svn://svn.cc65.org/cc65/trunk@4471 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-18 23:52:54 +00:00
cpg
4ee7121ba2 small space optimization -- 3 bytes reduced
git-svn-id: svn://svn.cc65.org/cc65/trunk@4470 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-18 22:16:13 +00:00
cpg
cce24a2c9a no TGI_ERR_NO_MEM or TGI_ERR_NO_IOCB anymore: replaced by TGI_ERR_NO_RES
git-svn-id: svn://svn.cc65.org/cc65/trunk@4469 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-15 14:55:14 +00:00
cpg
b739a2d335 changes from Fatih
git-svn-id: svn://svn.cc65.org/cc65/trunk@4468 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-15 14:46:09 +00:00
uz
097b094fdd Replaced TGI_ERR_NO_MEM by TGI_ERR_NO_RES
git-svn-id: svn://svn.cc65.org/cc65/trunk@4467 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-13 15:53:01 +00:00
uz
e74ed31936 Fixed TGI error codes and messages. Removed the Atari specific ones.
tgi_load_vectorfont will now return TGI_ERR_NO_MEM and clear the error code if
the load was successful.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4466 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-13 12:57:10 +00:00
uz
d1e4687540 Final touches to the first full version of the vector font output.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4464 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-12 18:00:17 +00:00
uz
5dc80c2615 Rename the 8x8 multiplication using the same scheme as for the 16x16
multiplication.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4463 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-12 15:48:11 +00:00
uz
80b81549fd Moved outcode calculation in a separate module.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4462 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-12 15:10:45 +00:00
cpg
b30d834772 remove superfluous ".code" line
git-svn-id: svn://svn.cc65.org/cc65/trunk@4460 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-11 23:17:55 +00:00
cpg
ab6ff06e76 bugfix from Fatih
git-svn-id: svn://svn.cc65.org/cc65/trunk@4459 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-11 23:15:42 +00:00
cpg
7b42fd028a fix comment
git-svn-id: svn://svn.cc65.org/cc65/trunk@4457 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-10 21:56:56 +00:00
cpg
b18d6ad8db add Atari TGI drivers from Fatih Aygun
git-svn-id: svn://svn.cc65.org/cc65/trunk@4456 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-10 21:53:55 +00:00
uz
fe5adb5c4e Working on stroked font output.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4455 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-10 18:50:33 +00:00
uz
1154a11649 tgi_vectorchar takes now a char argument. Added tgi_install_vectorfont.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4454 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-06 16:18:13 +00:00
uz
e12bd13e16 Added clipping for lines.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4452 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-06 15:26:46 +00:00
uz
24e68f5df3 Changed a comment.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4451 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-06 12:08:25 +00:00
uz
e319fc217b Hold the maximum X and Y coordinate in variables instead of calculating them
when needed. The variables make signed compares in the line clipper easier.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4450 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-06 12:02:52 +00:00
uz
eee4430061 Added a tgi_pieslice function.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4449 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-05 20:32:17 +00:00
uz
bafd7a7279 Fixed a sign error.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4448 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-05 20:26:23 +00:00
uz
787f069738 Moved fixed point multiplication and rounding into an asm module.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4447 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-05 20:16:43 +00:00
uz
de6050f21d Added a tgi_arc function. Removed the old ellipse code and create a new
ellipse module that calls tgi_arc.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4446 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-05 19:52:18 +00:00
uz
78070d8bfb Added tgi_circle and tgi_ellipse functions. The latter works, but could be
optimized.



git-svn-id: svn://svn.cc65.org/cc65/trunk@4445 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-05 17:14:29 +00:00
uz
18272c0427 Working on the division and multiplication routines.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4443 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-04 19:41:54 +00:00
uz
655ba3e6ee Added a C callable entry point for the division routine.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4442 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-04 18:25:29 +00:00
uz
c200e0ec94 Added division routine. Removed C callable entry points from mul routines,
they're now in common.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4441 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-04 18:23:40 +00:00
uz
851926b301 Add C callable special multiplication routines.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4440 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-04 18:17:00 +00:00
uz
56e035635b Use new multiplication routine.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4439 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-04 13:46:16 +00:00
uz
7c804513fa The upper 16 bit differ between signed and unsigned multiplication, so while
for 16x16=16, the unsigned routine can be used, regardless of signedness, this
is not true for 16x16=32.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4438 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-04 13:45:27 +00:00
ol.sc
1bec071755 - Replaced font .byte's with font .incbin file
- Adjusted font width declaration from 8 to 7
- Modified font using Beagle Bros Shape Mechanic font editor to look like Apple2 text mode glyphs (with the exception of '_' because OUTTEXT _always_ inserts 2 empty pixels between chars)

git-svn-id: svn://svn.cc65.org/cc65/trunk@4437 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-03 22:20:48 +00:00
uz
100c470727 Added C callable entry point for the 16x16=32 multiplication.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4435 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-03 17:43:57 +00:00
uz
0c1703f8fd Added 16*16=32 multiplication routine.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4434 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-03 13:40:03 +00:00
uz
87866e3099 Working on the TGI API, adding vector fonts. Only roughly tested!
git-svn-id: svn://svn.cc65.org/cc65/trunk@4432 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-02 22:29:49 +00:00
uz
fdc7604d8f Added separate 8x8=>16 multiplication routine as start of the multiplication
and division stuff cleanup.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4431 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-02 22:28:02 +00:00
ol.sc
9fa0acfefc Removed unintentionally added line.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4430 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-02 22:10:13 +00:00
ol.sc
2fcb498f58 Removed generic macpack
git-svn-id: svn://svn.cc65.org/cc65/trunk@4429 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-02 21:54:51 +00:00
ol.sc
4b601bea40 - Adjusted TEXTSTYLE and OUTTEXT to TGI specs
- Removed defunct scaling support from TEXTSTYLE
- Optimized OUTTEXT
- Clarified font source and format
- Removed generic macpack

git-svn-id: svn://svn.cc65.org/cc65/trunk@4428 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-02 21:38:18 +00:00
uz
1518a4813c The X register must be zero on return.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4426 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-02 16:24:26 +00:00
uz
3b06aaaf85 Added the new toascii function for the CBMs.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4425 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-02 16:23:32 +00:00
uz
7f865046f3 Fixed an error in the color setting code which caused tgi_init to fail.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4423 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-02 15:36:13 +00:00
uz
2e5281fa2d Added tgi_load_vectorfont(). Fixed tgi_free_vectorfont().
git-svn-id: svn://svn.cc65.org/cc65/trunk@4421 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-01 22:35:22 +00:00
uz
25ccbeeaa8 When initializing the driver, set white as the drawing color.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4420 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-01 22:33:27 +00:00