From 20143c018729797d844bc5449d50b56e5bd5e6ac Mon Sep 17 00:00:00 2001 From: cuz Date: Wed, 24 Oct 2001 20:44:54 +0000 Subject: [PATCH] New pushwysp implementation git-svn-id: svn://svn.cc65.org/cc65/trunk@1071 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- libsrc/runtime/pushwsp.s | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/libsrc/runtime/pushwsp.s b/libsrc/runtime/pushwsp.s index 1c940e038..d6baf9933 100644 --- a/libsrc/runtime/pushwsp.s +++ b/libsrc/runtime/pushwsp.s @@ -8,13 +8,24 @@ .import pushax .importzp sp + .macpack generic + pushw0sp: - ldy #1 + ldy #2 pushwysp: - lda (sp),y ; get hi byte - tax - dey - lda (sp),y ; get lo byte - jmp pushax ; push that - + lda sp ; 3 + sub #2 ; 4 + sta sp ; 3 + bcs @L1 ; 3(+1) + dec sp+1 ; (5) +@L1: lda (sp),y ; 5 =16 + tax ; 2 + dey ; 2 + lda (sp),y ; 5 + ldy #$00 ; 2 + sta (sp),y ; 5 + iny ; 2 + txa ; 2 + sta (sp),y ; 5 + rts -- 2.39.5