33 lines
365 B
ArmAsm
33 lines
365 B
ArmAsm
.define .sar2
|
|
.sect .text
|
|
.sect .rom
|
|
.sect .data
|
|
.sect .bss
|
|
.sect .text
|
|
|
|
! special case sar: element size = 2 (statically known)
|
|
! parameters:
|
|
! on stack
|
|
! adapted from .aar2
|
|
! execution time: 143 states
|
|
|
|
|
|
|
|
.sar2:
|
|
pop ix
|
|
pop hl
|
|
ld c,(hl)
|
|
inc hl
|
|
ld b,(hl)
|
|
pop hl
|
|
xor a
|
|
sbc hl,bc
|
|
add hl,hl
|
|
pop de
|
|
add hl,de
|
|
pop de
|
|
ld (hl),e
|
|
inc hl
|
|
ld (hl),d
|
|
jp (ix)
|