1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-01 13:41:34 +00:00
cc65/libsrc/common/_idiv32by16r16.s
Oliver Schmidt fc6a63a15e Avoid unintended file "shadowing".
3d8c3a4948 caused an unintended "shadowing" of files in /libsrc/runtime by files in /libsrc/common. Therefore the files in question are renamed (again) in /libsrc/common to make the files in /libsrc/runtime "visible" again.
2019-04-04 09:16:59 +02:00

40 lines
745 B
ArmAsm

;
; Ullrich von Bassewitz, 2009-11-04
;
; CC65 library: 32by16 => 16 signed division
;
.export _idiv32by16r16
.import idiv32by16r16, incsp4
.include "zeropage.inc"
;---------------------------------------------------------------------------
; 32by16 division.
.proc _idiv32by16r16
pha ; Save rhs
; Copy from stack to zeropage. This assumes ptr1 and ptr2 are adjacent.
ldy #3
@L1: lda (sp),y
sta ptr1,y
dey
bpl @L1
lda #4
clc
adc sp
sta sp
bcc @L2
inc sp+1
@L2: pla ; Old rhs
jmp idiv32by16r16
.endproc