1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-25 02:29:52 +00:00
cc65/libsrc/runtime/incsp2.s
cuz dd0ddc94e3 More module splits
git-svn-id: svn://svn.cc65.org/cc65/trunk@393 b7a2c559-68d2-44c3-8de9-860c34a00d81
2000-10-25 19:53:22 +00:00

45 lines
644 B
ArmAsm

;
; Ullrich von Bassewitz, 25.10.2000
;
; CC65 runtime: Increment the stackpointer by 2. For performance reasons,
; this modules does also contain the popax function.
.export popax, incsp2
.importzp sp
; Pop a/x from stack. This function will run directly into incsp2
.proc popax
ldy #1
lda (sp),y ; get hi byte
tax ; into x
dey
lda (sp),y ; get lo byte
.endproc
.proc incsp2
ldy sp ; 3
iny ; 2
beq @L1 ; 2
iny ; 2
beq @L2 ; 2
sty sp ; 3
rts
@L1: iny ; 2
@L2: sty sp ; 3
inc sp+1 ; 5
rts
.endproc