]> git.sur5r.net Git - cc65/blobdiff - libsrc/conio/scrsize.s
Merge remote-tracking branch 'upstream/master' into cassette
[cc65] / libsrc / conio / scrsize.s
index 4be59964a1361c6f6d9a295948dd4d9b34a97b08..6582568d77820df29fd246a998556cea65aaaf08 100644 (file)
@@ -4,35 +4,32 @@
 ; void screensize (unsigned char* x, unsigned char* y);
 ;
 
-       .export         _screensize
-       .export         xsize, ysize
-
-       .import         popax
-       .importzp       ptr1, ptr2
-
-.proc  _screensize
-
-       sta     ptr1            ; Store the y pointer
-       stx     ptr1+1
-
-       jsr     popax           ; get the x pointer
-       sta     ptr2
-       stx     ptr2+1
-
-       ldy     #0
-       lda     xsize
-       sta     (ptr2),y
-       lda     ysize
-       sta     (ptr1),y
-       rts
-
-.endproc       
-
-
-.bss
-
-xsize: .res    1
-ysize: .res    1
-
-
+        .export         _screensize
+
+        .import         popsreg
+        .import         screensize
+        .importzp       ptr1, sreg
+
+.proc   _screensize
+
+        sta     ptr1            ; Store the y pointer
+        stx     ptr1+1
+        jsr     popsreg         ; Get the x pointer into sreg
+        jsr     screensize      ; Get screensize into X/Y
+        tya                     ; Get Y size into A
+
+.IFP02
+        ldy     #0
+        sta     (ptr1),y
+        txa
+        sta     (sreg),y
+.ELSE
+        sta     (ptr1)
+        txa
+        sta     (sreg)
+.ENDIF
+
+        rts
+
+.endproc