1
0
mirror of https://github.com/cc65/cc65.git synced 2024-07-05 06:28:57 +00:00
Commit Graph

1603 Commits

Author SHA1 Message Date
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
uz
57c9a8f796 Additional error code.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4418 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-01 22:01:23 +00:00
uz
5a2a741cde Added tgi_free_vectorfont.s
git-svn-id: svn://svn.cc65.org/cc65/trunk@4416 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-01 21:53:34 +00:00
uz
97ef7df9f5 Fixed a bug (wrong order of variables).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4415 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-11-01 21:53:22 +00:00
ol.sc
6da8c5639c 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@4407 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-30 21:44:36 +00:00
uz
763fe0b802 Start of TGI changes. Untested, may not work.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4404 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-30 21:26:35 +00:00
uz
4e4beef8b7 Fixed the return types of the sine/cosine functions. Added comments.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4402 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-30 14:02:24 +00:00
uz
c65925b0b9 Merged the sine/cosine routines into one file, because they're often used
together, we save some code in this case, and the sine table isn't of real use
for programs, because it contains some specialities.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4400 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-30 09:58:11 +00:00
uz
7d453f5e11 Added fixpoint sine and cosine functions.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4399 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-29 23:19:00 +00:00
ol.sc
50c1db0331 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@4398 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-29 23:11:46 +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
ol.sc
1d9fc5f655 Changed 'Clear the screen' to 'Clear the drawpage'.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4394 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-27 21:20:06 +00:00
uz
33af076cfc Lynx TGI driver update by Karri Kaksonen. Adds collision detection.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4393 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-26 19:28:11 +00:00
uz
f24adadb9c Added a first version of a Cohen Sutherland line clipper. This version
basically works, but has rounding problems and an intermediate result overflow
in the multiplication, which causes for larger lines.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4392 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-26 15:37:51 +00:00
uz
54a8a778eb Remove 65C02 code, because in this case, the value of Y on return is always
zero, which can be used by the optimizer.
                                         


git-svn-id: svn://svn.cc65.org/cc65/trunk@4384 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-20 08:25:58 +00:00
uz
ed2767e65f Changed names of the pragmas to be identical to the corresponding command line
options. This should make use easier. The old names of the pragmas are still
available but will cause warnings.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4364 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-14 12:55:15 +00:00
uz
30586e95e8 Cosmetic change. Formatting was lost because of cut&paste.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4357 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-10 20:50:15 +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
a3529cd048 Ignore start address in cbm_opendir. Rearrange the code somewhat to make it
shorter.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4319 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-03 18:38:39 +00:00
uz
d42ce3b59e Lynx updates by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4285 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-10-01 14:09:19 +00:00
ol.sc
5f609164d6 This is what was actually meant in the first place.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4279 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-30 08:04:34 +00:00
uz
d54a1ba3d2 Improved cbm_dir routines by Thomas Giesel.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4264 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-28 22:01:58 +00:00
uz
e4d9fd3bd1 Fixed more bugs, shortened the code where possible.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4257 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-28 18:39:55 +00:00
uz
6c8fab8e51 Fixed two bugs, made the sources somewhat better readable.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4256 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-28 17:47:33 +00:00
uz
9329908927 Stefan Haubenthal fixed a few typos.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4252 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-28 07:29:56 +00:00
ol.sc
fd0fa0241e Adjusted driver to the recent kernel interface change (code rearrange ment necessary to stay in 6502 branch reach).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4251 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-27 23:26:41 +00:00
uz
d55fb5217e Changed the solution for the PLOT problem with old -02 kernals to that used
for the VIC20: PLOT is not an kernal entry but a library function that will 
do the right stuff. This makes it work with other stuff that calls PLOT, too.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4249 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-27 18:45:08 +00:00
uz
5967b4845e Let vsprintf call vsnprintf to save code.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4247 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-27 12:18:06 +00:00
uz
067383eb6a Added an untested implementation of snprintf.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4246 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-27 12:11:05 +00:00
uz
0b43444c26 Added an (only roughly tested) implementation of vsnprintf
git-svn-id: svn://svn.cc65.org/cc65/trunk@4245 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-27 12:04:36 +00:00
ol.sc
dfc6162e91 Fixed bug triggered if all 8 io buffer slots may be used.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4242 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-26 21:32:05 +00:00
uz
2b50847a4c The _printf routine does not return anything.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4239 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-26 19:20:51 +00:00
uz
70cb60ef31 Fix the plot routine to work with the buggy -02 kernal.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4234 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-26 15:56:29 +00:00
uz
b695733cda OOPS! Forgot to add the mouse_getbox and mouse_setbox modules to subversion.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4233 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-26 15:19:14 +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
16e6deaf86 Changed the mouse API: mouse_box is gone, there are now mouse_getbox and
mouse_setbox instead. Beware: Current drivers will crash until they're
changed!


git-svn-id: svn://svn.cc65.org/cc65/trunk@4230 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-26 11:11:14 +00:00
uz
8be28482ac Remove this copy of the apple include file - a copy was added to asminc
before and we don't need it twice.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4229 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-25 13:46:18 +00:00
uz
019dbb7b1d Systime implementation derived from the cbm610.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4227 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-24 21:09:45 +00:00
uz
753bbab40d Systime implementation for the CBM610, derived from the C64.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4225 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-24 20:12:40 +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
ol.sc
a4871a4928 Build files in the extra directory (analog to apple2).
git-svn-id: svn://svn.cc65.org/cc65/trunk@4214 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-22 21:43:57 +00:00
uz
0508d655f1 Fixed an error.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4213 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-22 19:10:46 +00:00
uz
90b7dd065d Build files in the extra directory.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4212 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-22 19:00:12 +00:00
ol.sc
5c35c213f6 Added author hint - as contained in the other source files.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4211 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-22 17:30:50 +00:00
ol.sc
6345e4b0cd Added alternative implementation for ProDOS 8 I/O buffer management. The purpose of this implementation is to avoid pulling in the heap stuff (and especially the C-written posix_memalign() function) into small file utility-like applications. It saves in this scenario > 1400 Bytes. It manages memory blocks between $0800 and the cc65 start address. This is especially usefull for the now supported "native" SYS programs starting at $2000.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4210 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-22 17:29:49 +00:00
uz
6a5e402ad7 Move/rename extra object files for the Apple2.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4206 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-22 10:22:29 +00:00
uz
95b70fe0fc Renamed the comlynx source and driver to lynx-comlynx, so it follows the
existing naming conventions.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4201 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-20 16:47:30 +00:00
uz
0e91f15ea8 Improved memset/memcpy/memmove functions by Christian Krueger.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4200 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-20 14:32:25 +00:00
uz
2153cc46db Remove the framerate module. It's job is done by the tgi driver.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4199 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-20 14:26:50 +00:00
uz
ec946cae51 Lynx patches by Karri Kaksonen. Improvements for the graphics driver, new
serial driver.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4198 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-20 14:22:04 +00:00
uz
6019580fb6 Removed unused code.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4191 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-18 17:42:44 +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
689d06929c Fixed an error in the makefile. strtoimax and strtoumax were in the wrong
list.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4189 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-18 17:23:48 +00:00
uz
75068a6528 New strtoimax and strtoumax standard functions as aliases for strtol/strtoul.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4182 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-17 18:37:42 +00:00
uz
3a3eaf99cb Lynx changes by Karri Kaksonen.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4181 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-17 09:32:05 +00:00
uz
5e55e1c651 Added a (currently untested) strtoul implementation. strtol and strtoul should
probably get merged somehow, because they share quite some code.


git-svn-id: svn://svn.cc65.org/cc65/trunk@4180 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-15 21:45:25 +00:00
uz
2f2bced531 Shrink atoi by using negeax instead of inlined code.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4179 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-09-15 21:25:44 +00:00
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