]> git.sur5r.net Git - cc65/blob - libsrc/runtime/staxspp.s
Fixed a bug and - while doing so - made it somewhat shorter.
[cc65] / libsrc / runtime / staxspp.s
1 ;
2 ; Ullrich von Bassewitz, 25.10.2000
3 ;
4 ; CC65 runtime: Store a/x indirect into address at top of stack
5 ;
6
7         .export         staxspp
8         .import         incsp2
9         .importzp       sp, ptr1
10
11 .proc   staxspp
12
13 .ifpc02
14         pha
15         lda     (sp)
16         sta     ptr1
17         ldy     #1
18         lda     (sp),y
19         sta     ptr1+1
20         txa
21         sta     (ptr1),y
22         pla
23         sta     (ptr1)
24 .else
25         pha
26         ldy     #0
27         lda     (sp),y
28         sta     ptr1
29         iny
30         lda     (sp),y
31         sta     ptr1+1
32         txa
33         sta     (ptr1),y
34         pla
35         dey
36         sta     (ptr1),y
37 .endif
38         jmp     incsp2          ; Drop address
39
40 .endproc
41
42