]> git.sur5r.net Git - cc65/blob - libsrc/runtime/sub.s
cb7ae6de716d066f1960a744485af765afa0adbc
[cc65] / libsrc / runtime / sub.s
1 ;
2 ; Ullrich von Bassewitz, 05.08.1998
3 ;
4 ; CC65 runtime: sub ints
5 ;
6
7         .export         tossuba0, tossubax
8         .import         addysp1
9         .importzp       sp, ptr1
10
11 ;
12 ; AX = TOS - AX
13 ;
14
15 tossuba0:
16         ldx     #0
17 tossubax:
18         sta     ptr1
19         stx     ptr1+1
20 .ifpc02
21         lda     (sp)            ; Get lo byte
22         ldy     #1              ; Hi index
23 .else
24         ldy     #0
25         lda     (sp),y          ; Lo byte
26         iny                     ; Hi index
27 .endif
28         sec
29         sbc     ptr1
30         sta     ptr1            ; save lo byte
31         lda     (sp),y
32         sbc     ptr1+1
33         tax
34         lda     ptr1
35         jmp     addysp1         ; drop TOS, set condition codes
36