]> git.sur5r.net Git - cc65/blobdiff - libsrc/tgi/tgi_geterror.s
Replace sscanf by an assembler version
[cc65] / libsrc / tgi / tgi_geterror.s
index e291cf87999b511058abd8ffcc311dd2974e63d6..c2426158bf514f312254b800811273f93decd156 100644 (file)
@@ -8,11 +8,18 @@
 
         .include        "tgi-kernel.inc"
 
-        .export         _tgi_geterror
+.proc   _tgi_geterror
 
-_tgi_geterror:
-        ldx     #0
-        lda     _tgi_error
-        stx     _tgi_error
-        rts
+        lda     _tgi_drv                ; Check if we have a driver
+        ora     _tgi_drv+1
+        beq     @L1
+        jsr     tgi_geterror            ; First call driver
+@L1:    ldx     #$00                    ; Clear high byte
+        ldy     _tgi_error              ; Test high level error code
+        beq     @L2                     ; Branch if no high level error code
+        tya                             ; Use high level code if we have one
+        stx     _tgi_error              ; Clear high level error code
+@L2:    rts
+
+.endproc