TGI_TEXT_VERTICAL = 1
;------------------------------------------------------------------------------
-; Variables
+; C accessible Variables
.global _tgi_drv ; Pointer to driver
.global _tgi_error ; Last error code
.global _tgi_charheight ; Height of scaled system font char
.global _tgi_xres ; X resolution of the current mode
.global _tgi_yres ; Y resolution of the current mode
+ .global _tgi_xmax ; Maximum X coordinate
+ .global _tgi_ymax ; Maximum Y coordinate
.global _tgi_colorcount ; Number of available colors
.global _tgi_pagecount ; Number of available screen pages
.global _tgi_fontwidth ; System font width
.global _tgi_fontheight ; System font height
.global _tgi_aspectratio ; Aspect ratio, fixed point 8.8
+;------------------------------------------------------------------------------
+; ASM accessible Variables
+
+ .global tgi_clip_x1 ; Coordinate for line clipper
+ .global tgi_clip_y1 ; Coordinate for line clipper
+ .global tgi_clip_x2 ; Coordinate for line clipper
+ .global tgi_clip_y2 ; Coordinate for line clipper
+
;------------------------------------------------------------------------------
; Driver entry points
;------------------------------------------------------------------------------
; ASM functions
+ .global tgi_clippedline
+ .global tgi_curtoxy
.global tgi_getset
.global tgi_inv_arg
.global tgi_inv_drv
.global tgi_linepop
- .global tgi_set_ptr
.global tgi_popxy
.global tgi_popxy2
- .global tgi_curtoxy
+ .global tgi_set_ptr
;------------------------------------------------------------------------------
; C callable functions
--- /dev/null
+;*****************************************************************************/
+;* */
+;* tgi-vectorfont.inc */
+;* */
+;* TGI vector font definitions */
+;* */
+;* */
+;* */
+;* (C) 2009, Ullrich von Bassewitz */
+;* Roemerstrasse 52 */
+;* D-70794 Filderstadt */
+;* EMail: uz@cc65.org */
+;* */
+;* */
+;* This software is provided 'as-is', without any expressed or implied */
+;* warranty. In no event will the authors be held liable for any damages */
+;* arising from the use of this software. */
+;* */
+;* Permission is granted to anyone to use this software for any purpose, */
+;* including commercial applications, and to alter it and redistribute it */
+;* freely, subject to the following restrictions: */
+;* */
+;* 1. The origin of this software must not be misrepresented; you must not */
+;* claim that you wrote the original software. If you use this software */
+;* in a product, an acknowledgment in the product documentation would be */
+;* appreciated but is not required. */
+;* 2. Altered source versions must be plainly marked as such, and must not */
+;* be misrepresented as being the original software. */
+;* 3. This notice may not be removed or altered from any source */
+;* distribution. */
+;* */
+;*****************************************************************************/
+
+
+
+;------------------------------------------------------------------------------
+; Vectorfont constants
+
+TGI_VF_VERSION = $00 ; File version number
+TGI_VF_FIRSTCHAR = $20 ; First char in file
+TGI_VF_LASTCHAR = $7E ; Last char in file
+TGI_VF_CCOUNT = (TGI_VF_LASTCHAR - TGI_VF_FIRSTCHAR + 1)
+
+;------------------------------------------------------------------------------
+; TCH file header and font data structures
+
+; TCH file header
+.struct TGI_VF_HDR
+ MAGIC .byte 3 ; "TCH"
+ VERSION .byte 1 ; Version number
+ SIZE .word 1 ; Font data size
+.endstruct
+
+; Font data loaded directly from file
+.struct TGI_VECTORFONT
+ TOP .byte ; Height of char
+ BASELINE .byte ; Character baseline
+ BOTTOM .byte ; Descender
+ WIDTHS .byte ::TGI_VF_CCOUNT ; Char widths
+ CHARS .word ::TGI_VF_CCOUNT ; Pointer to character defs
+ OPS .byte ; Actually dynamic
+.endstruct
+
+;------------------------------------------------------------------------------
+; C callable functions
+
+ .global _tgi_vectorchar
+
+
+