Commit Graph

113 Commits

Author SHA1 Message Date
polluks2 446a785f95
Don't hide errors in error handling
You don't want the low byte, see grep _ERR_ libsrc/tgi/*
2022-09-02 11:55:54 +02:00
mrdudz f8f901b05e remove dangling spaces 2022-04-17 16:06:22 +02:00
Jeff Tranter 2bf8be5b3b Fix some commonly made spelling errors in comments. 2022-02-21 15:44:31 -05:00
mrdudz 5fc9d3f048 change driver _install calls from taking "void*" to "const void*" 2021-05-16 22:57:28 +02:00
Greg King 14c62f1368 Allowed the TGI API to support 256 colors. 2020-06-04 12:58:05 -04:00
Oliver Schmidt ac0b452834 Added '_' prefix to sin and cos.
Users complained that otherwise the names might clash with their functions.
2019-04-13 11:25:54 +02:00
IrgendwerA8 3d8c3a4948 Code review adaptations, removed "cc65_" prefix from functions 2019-03-29 22:53:04 +01:00
Greg King e6fc904e3c Fixed some code, to adapt to register-use changes caused by pull request #652. 2018-07-27 09:21:31 -04:00
IrgendwerA8 166425f807 Converted unintentionally introduced tabs to spaces. 2018-05-21 14:33:44 +02:00
Irgendwer 32bbacbb78
Merge branch 'master' into popptr1 2018-05-21 13:33:14 +02:00
IrgendwerA8 c95ed4b8b5 Added "popptr1" which is of common use to save some bytes. 2018-05-20 15:30:18 +02:00
Oliver Schmidt dacee3b9ed Removed IRQ support from TGI drivers.
All but one TGI drivers didn't use IRQs. Especially when the TGI driver kernel was the only .interruptor this meant quite some unnecessary overhead because it pulled in the whole IRQ infrastructure.

The one driver using IRQs (the graphics driver for the 160x102x16 mode on the Lynx) now uses a library reference to set up a JMP to its IRQ handler.
2018-02-02 18:15:45 +01:00
Greg King 0390c34e88 Changed multi-line C comments into another style.
The left side doesn't look unbalanced.
2014-06-30 16:51:07 -04:00
Oliver Schmidt b0dd6c614f Added library reference tgi_libref to TGI interface. 2013-06-01 12:42:00 +02:00
Oliver Schmidt 85885001b1 Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
Oliver Schmidt 008b4c4e1d Replaced whole bunch for Makefiles with a single generic Makefile.
- No complex shell logic.
- "Source file shadowing" for all targets via vpath.
- Dependency handling.
- True incremental build.
- Don't write into source directories.
- Easy cleanup by just removing 'wrk'.
2013-05-04 22:10:48 +02:00
uz f1d8210450 Fix calculation of text width for bitmap fonts.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5829 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-09-20 21:14:46 +00:00
uz 1f9f96d9b7 More comment fixes.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5792 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-07-22 11:20:45 +00:00
uz 97060cc32e Fixed a few comments.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5791 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-07-22 11:18:36 +00:00
uz 975a06c2ee Rewrote tgi_load_driver in assembler and fixed a possible memory leak when
doing so. Changed the behaviour in case a driver is already loaded: Since the
library cannot know if this driver was linked statically or loaded
dynamically, an already installed driver is considered an error. It must be
removed before calling tgi_load_driver.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5790 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-07-22 11:07:46 +00:00
uz 285aaf8933 Patch by Stefan Haubenthal: Remove __fastcall__ in comments and/or the
function description for functions that don't take any parameters.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5573 b7a2c559-68d2-44c3-8de9-860c34a00d81
2012-03-04 13:08:54 +00:00
uz 417a57fabd New tgi_settextdir() function.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5105 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-08-01 21:00:51 +00:00
uz 03b147e71e Fixed a bug (Greg King).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5104 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-08-01 20:59:33 +00:00
uz 9c55586569 Renamed tgi_textheight -> tgi_gettextheight, tgi_textwidth -> tgi_gettextwidth
tgi_textstyle -> tgi_settextstyle and tgi_textscale -> tgi_settextscale.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5090 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-07-17 18:36:12 +00:00
uz 83d67e930a Worked on text scaling. This is an intermediate version which doesn't work.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5089 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-07-17 18:27:01 +00:00
uz 928f675e4b Small change in the vector font format.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5088 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-07-17 17:15:54 +00:00
uz 4026a28c60 Added a new flags byte to the TGI headers. Bumped the API version.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5083 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-07-17 11:23:27 +00:00
uz f36f6922f2 Fixed a typo.
git-svn-id: svn://svn.cc65.org/cc65/trunk@5081 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-07-10 15:00:37 +00:00
uz ca9d802d1e Fix width calculation for bitmap font output. Use new 8x16 multiplication
routines to save some cycles.


git-svn-id: svn://svn.cc65.org/cc65/trunk@5080 b7a2c559-68d2-44c3-8de9-860c34a00d81
2011-07-10 14:59:29 +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
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
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
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
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 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
uz c6831e936a Added --forget-inc-paths to the assembler command line to avoid problems if
more than one version of ca65 is installed on the machine (Spiro Trikaliotis).


git-svn-id: svn://svn.cc65.org/cc65/trunk@4530 b7a2c559-68d2-44c3-8de9-860c34a00d81
2009-12-18 11:58:50 +00:00
uz 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 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 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
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