]> git.sur5r.net Git - cc65/blobdiff - libsrc/common/sprintf.s
Removed (pretty inconsistently used) tab chars from source code base.
[cc65] / libsrc / common / sprintf.s
index 6a1a29c4b6c79bb022674c2171b25d549d42191e..d502d8638bbdadd8224ff122f8a728f73a153b64 100644 (file)
@@ -4,18 +4,18 @@
 ; Ullrich von Bassewitz, 1.12.2000
 ;
 
-       .export         _sprintf
-       .import         pushax, addysp, subysp, _vsprintf
-       .importzp       sp, ptr1
+        .export         _sprintf
+        .import         pushax, addysp, decsp4, _vsprintf
+        .importzp       sp, ptr1
 
-       .macpack        generic
+        .macpack        generic
 
 ; ----------------------------------------------------------------------------
 ; Data
 
 .bss
 
-ParamSize:     .res    1               ; Number of parameter bytes
+ParamSize:      .res    1               ; Number of parameter bytes
 
 ; ----------------------------------------------------------------------------
 ; Code
@@ -24,48 +24,46 @@ ParamSize:  .res    1               ; Number of parameter bytes
 
 
 _sprintf:
-       sty     ParamSize               ; Number of param bytes passed in Y
+        sty     ParamSize               ; Number of param bytes passed in Y
 
 ; We have to push buf and format, both in the order they already have on stack.
 ; To make this somewhat more efficient, we will create space on the stack and
-; the do a copy of the complete block instead of pushing each parameter
+; then do a copy of the complete block instead of pushing each parameter
 ; separately. Since the size of the arguments passed is the same as the size
 ; of the fixed arguments, this will allow us to calculate the pointer to the
 ; fixed size arguments easier (they're just ParamSize bytes away).
 
-       ldy     #4
-       jsr     subysp
+        jsr     decsp4
 
 ; Calculate a pointer to the Format argument
 
-       lda     ParamSize
-       add     sp
-       sta     ptr1
-       ldx     sp+1
-       bcc     @L1
-       inx
-@L1:   stx     ptr1+1
+        lda     ParamSize
+        add     sp
+        sta     ptr1
+        ldx     sp+1
+        bcc     @L1
+        inx
+@L1:    stx     ptr1+1
 
 ; Now copy both, buf and format
 
-       ldy     #4-1
-@L2:   lda     (ptr1),y
-       sta     (sp),y
-       dey
-       bpl     @L2
+        ldy     #4-1
+@L2:    lda     (ptr1),y
+        sta     (sp),y
+        dey
+        bpl     @L2
 
-; Push va_list (last parameter to vsprintf)
+; Load va_list (last and __fastcall__ parameter to vsprintf)
 
-       lda     ptr1
-       ldx     ptr1+1
-       jsr     pushax
+        lda     ptr1
+        ldx     ptr1+1
 
-; Call vfprintf
+; Call vsprintf
 
-       jsr     _vsprintf
+        jsr     _vsprintf
 
 ; Cleanup the stack. We will return what we got from vsprintf
 
-       ldy     ParamSize
-       jmp     addysp
+        ldy     ParamSize
+        jmp     addysp