X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libsrc%2Fruntime%2Flsubeqsp.s;h=f32930c69ee6c5896b2f698f6f65db1890e7296e;hb=85885001b133e2dc320b6f6459259afa69784ca8;hp=c679c8806bb0e8473f77368de79d2a56bddcc311;hpb=44fd1082ae807a0b6b4046c65914e20a7e27101c;p=cc65 diff --git a/libsrc/runtime/lsubeqsp.s b/libsrc/runtime/lsubeqsp.s index c679c8806..f32930c69 100644 --- a/libsrc/runtime/lsubeqsp.s +++ b/libsrc/runtime/lsubeqsp.s @@ -4,33 +4,33 @@ ; CC65 runtime: -= operator for longs on the stack ; - .export lsubeq0sp, lsubeqysp - .importzp sp, sreg + .export lsubeq0sp, lsubeqysp + .importzp sp, sreg lsubeq0sp: - ldy #0 + ldy #0 lsubeqysp: - sec - eor #$FF - adc (sp),y - sta (sp),y - pha ; Save low byte - iny - txa - eor #$FF - adc (sp),y - sta (sp),y - tax - iny - lda (sp),y - sbc sreg - sta (sp),y - sta sreg - iny - lda (sp),y - sbc sreg+1 - sta (sp),y - sta sreg+1 - pla - rts + sec + eor #$FF + adc (sp),y + sta (sp),y + pha ; Save low byte + iny + txa + eor #$FF + adc (sp),y + sta (sp),y + tax + iny + lda (sp),y + sbc sreg + sta (sp),y + sta sreg + iny + lda (sp),y + sbc sreg+1 + sta (sp),y + sta sreg+1 + pla + rts