Rewrite the decsp and subysp functions now since they are used more often.

git-svn-id: svn://svn.cc65.org/cc65/trunk@665 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz 2001-03-24 16:15:01 +00:00
parent eec01763c4
commit 1e1199cb2b
7 changed files with 66 additions and 39 deletions

View file

@ -5,22 +5,18 @@
; ;
.export decsp2 .export decsp2
.importzp sp .importzp sp
.proc decsp2 .proc decsp2
ldy sp lda sp
beq @L1 sec
dey sbc #2
beq @L2 sta sp
dey bcc @L1
sty sp rts
rts
@L1: dey @L1: dec sp+1
@L2: dey
sty sp
dec sp+1
rts rts
.endproc .endproc

View file

@ -5,12 +5,19 @@
; ;
.export decsp3 .export decsp3
.import subysp .importzp sp
.proc decsp3 .proc decsp3
ldy #3 lda sp
jmp subysp sec
sbc #3
sta sp
bcc @L1
rts
@L1: dec sp+1
rts
.endproc .endproc

View file

@ -5,12 +5,19 @@
; ;
.export decsp4 .export decsp4
.import subysp .importzp sp
.proc decsp4 .proc decsp4
ldy #4 lda sp
jmp subysp sec
sbc #4
sta sp
bcc @L1
rts
@L1: dec sp+1
rts
.endproc .endproc

View file

@ -5,12 +5,19 @@
; ;
.export decsp5 .export decsp5
.import subysp .importzp sp
.proc decsp5 .proc decsp5
ldy #5 lda sp
jmp subysp sec
sbc #5
sta sp
bcc @L1
rts
@L1: dec sp+1
rts
.endproc .endproc

View file

@ -5,12 +5,19 @@
; ;
.export decsp6 .export decsp6
.import subysp .importzp sp
.proc decsp6 .proc decsp6
ldy #6 lda sp
jmp subysp sec
sbc #6
sta sp
bcc @L1
rts
@L1: dec sp+1
rts
.endproc .endproc

View file

@ -5,16 +5,21 @@
; ;
.export decsp7 .export decsp7
.import subysp .importzp sp
.proc decsp7 .proc decsp7
ldy #7 lda sp
jmp subysp sec
sbc #7
sta sp
bcc @L1
rts
@L1: dec sp+1
rts
.endproc .endproc

View file

@ -9,7 +9,6 @@
.proc subysp .proc subysp
pha ; Save A
sty tmp1 ; Save the value sty tmp1 ; Save the value
lda sp ; Get lo byte lda sp ; Get lo byte
sec sec
@ -17,8 +16,7 @@
sta sp ; Put result back sta sp ; Put result back
bcs @L1 bcs @L1
dec sp+1 dec sp+1
@L1: pla ; Restore A @L1: rts ; Done
rts ; Done
.endproc .endproc