]> git.sur5r.net Git - cc65/blobdiff - libsrc/tgi/tgi-kernel.s
remove superfluous ".code" line
[cc65] / libsrc / tgi / tgi-kernel.s
index fa926895f4eead48c0f15545d925a86e9f742278..a4316f8f1a5b5f920462cfc23eb1f863dcc5e649 100644 (file)
 .bss
 
 _tgi_drv:                  .res    2           ; Pointer to driver
+; From here on, variables get cleared when a new driver is loaded
+cstart:
 _tgi_error:                .res    1           ; Last error code
 _tgi_gmode:         .res    1           ; Flag: Graphics mode active
 _tgi_curx:          .res    2           ; Current drawing cursor X
 _tgi_cury:          .res    2           ; Current drawing cursor Y
 _tgi_color:         .res    1           ; Current drawing color
+_tgi_font:          .res    1           ; Which font to use
 _tgi_textdir:       .res    1           ; Current text direction
+_tgi_vectorfont:    .res    2           ; Pointer to vector font
 ; The following two store an 8.8 fixed point value in the first two bytes,
 ; and a rounded integer value in the third byte. The latter is passed to the
 ; driver to scale the bitmap font. The variables are expected to be in
 ; this order and adjacent.
-_tgi_textmagw:      .res    3           ; Text magnification for the width
-_tgi_textmagh:      .res    3           ; Text magnification for the height
+_tgi_textscalew:    .res    3           ; Text scale for the width
+_tgi_textscaleh:    .res    3           ; Text scale for the height
 
 ; The following two must also be in exactly this order
 _tgi_charwidth:     .res    1           ; Char width of system font
 _tgi_charheight:    .res    1           ; Char height of system font
 
+; End of section that gets cleared when a new driver is loaded
+csize   = * - cstart
+
+; Maximum X and Y coordinate (that is, xres-1 and yres-1)
+_tgi_xmax:          .res    2
+_tgi_ymax:          .res    2
+
 ; The following variables are copied from the driver header for faster access
 ; fontwidth and fontheight are expected to be in order and adjacent.
 tgi_driver_vars:
@@ -50,6 +61,7 @@ _tgi_aspectratio:   .res    2           ; Aspect ratio in 8.8 fixed point
 
 ; Jump table for the driver functions.
 
+jumpvectors:
 tgi_install:               jmp     $0000
 tgi_uninstall:             jmp     $0000
 tgi_init:           jmp     $0000
@@ -133,17 +145,17 @@ _tgi_install:
 ; Initialize some other variables
 
         lda     #$00
-@L4:    ldx     #8-1
-@L5:    sta     _tgi_error,x            ; Clear error/mode/curx/cury/textdir
+@L4:    ldx     #csize-1
+@L5:    sta     cstart,x                ; Clear error/mode/curx/cury/...
         dex
         bpl     @L5
 
        rts
 
-; Copy one byte from the jump vectors
+; Copy one byte to the jump vectors
 
 copy:   lda     (ptr1),y
-        sta     tgi_install,x
+        sta     jumpvectors,x
         iny
         inx
         rts