]> git.sur5r.net Git - cc65/blobdiff - libsrc/c128/cgetc.s
Fixed gcc compiler warning (#867)
[cc65] / libsrc / c128 / cgetc.s
index 46f13d197c18214c54e4429d7f3a19d19cb428d0..7cf7fcc3ed21adf5b9a133f34e05055b27d65b36 100644 (file)
@@ -10,6 +10,7 @@
 
         .import         cursor
 
+        .include        "cbm_kernal.inc"
         .include        "c128.inc"
 
 ;--------------------------------------------------------------------------
@@ -17,8 +18,8 @@
 _cgetc: lda     KEY_COUNT       ; Get number of characters
         bne     L2              ; Jump if there are already chars waiting
 
-; Switch on the cursor if needed. We MUST always switch the cursor on, 
-; before switching it off, because switching it off will restore the 
+; Switch on the cursor if needed. We MUST always switch the cursor on,
+; before switching it off, because switching it off will restore the
 ; character attribute remembered when it was switched on. So just switching
 ; it off will restore the wrong character attribute.
 
@@ -39,18 +40,18 @@ L2:     jsr     KBDREAD         ; Read char and return in A
 ;--------------------------------------------------------------------------
 ; Module constructor/destructor
 
-.bss
+.segment        "INIT"
 keyvec: .res    2
 
-.segment        "INIT"
+.segment        "ONCE"
 initcgetc:
 
 ; Save the old vector
 
         lda     KeyStoreVec
+        ldx     KeyStoreVec+1
         sta     keyvec
-        lda     KeyStoreVec+1
-        sta     keyvec+1
+        stx     keyvec+1
 
 ; Set the new vector. I can only hope that this works for other C128
 ; versions...
@@ -68,5 +69,3 @@ SetVec: sei
         stx     KeyStoreVec+1
         cli
         rts
-
-