1
0
mirror of https://github.com/cc65/cc65.git synced 2024-11-18 00:07:21 +00:00
cc65/libsrc/runtime/sub.s
cuz 23c35f27f8 Improved 65c02 support
git-svn-id: svn://svn.cc65.org/cc65/trunk@2507 b7a2c559-68d2-44c3-8de9-860c34a00d81
2003-10-10 17:52:12 +00:00

36 lines
527 B
ArmAsm

;
; Ullrich von Bassewitz, 05.08.1998
;
; CC65 runtime: sub ints
;
.export tossuba0, tossubax
.import addysp1
.importzp sp
.macpack cpu
; AX = TOS - AX
tossuba0:
ldx #0
tossubax:
sec
eor #$FF
.if (.cpu .bitand CPU_ISET_65SC02)
adc (sp)
ldy #1
.else
ldy #0
adc (sp),y ; Subtract low byte
iny
.endif
pha ; Save high byte
txa
eor #$FF
adc (sp),y ; Subtract high byte
tax ; High byte into X
pla ; Restore low byte
jmp addysp1 ; drop TOS