few 6502 and some 65SC02 optimizations
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
;
|
||||
; Ullrich von Bassewitz, 06.08.1998
|
||||
; Christian Krueger, 11-Mar-2017, added 65SC02 optimization
|
||||
;
|
||||
; CC65 runtime: long push
|
||||
;
|
||||
@@ -11,13 +12,20 @@
|
||||
.import decsp4
|
||||
.importzp sp, sreg
|
||||
|
||||
.macpack cpu
|
||||
|
||||
pushl0:
|
||||
lda #0
|
||||
tax
|
||||
push0ax:
|
||||
ldy #0
|
||||
.if (.cpu .bitand ::CPU_ISET_65SC02)
|
||||
stz sreg
|
||||
stz sreg+1
|
||||
.else
|
||||
ldy #$00
|
||||
sty sreg
|
||||
sty sreg+1
|
||||
.endif
|
||||
pusheax:
|
||||
pha ; decsp will destroy A (but not X)
|
||||
jsr decsp4
|
||||
@@ -30,8 +38,12 @@ pusheax:
|
||||
dey
|
||||
txa
|
||||
sta (sp),y
|
||||
dey
|
||||
pla
|
||||
.if (.cpu .bitand ::CPU_ISET_65SC02)
|
||||
sta (sp)
|
||||
.else
|
||||
dey
|
||||
sta (sp),y
|
||||
.endif
|
||||
rts
|
||||
|
||||
|
||||
Reference in New Issue
Block a user