mirror of
https://gitlab.com/octospacc/MultiSpaccSDK
synced 2025-04-23 15:17:18 +02:00
50 lines
412 B
ArmAsm
50 lines
412 B
ArmAsm
|
|
.importzp TEMP
|
|
.import popa, popax
|
|
.include "zpvars.inc"
|
|
.export _memfill
|
|
|
|
;void __fastcall__ memfill(void *dst,unsigned char value,unsigned int len);
|
|
|
|
_memfill:
|
|
|
|
sta <LEN
|
|
stx <LEN+1
|
|
jsr popa
|
|
sta <TEMP
|
|
jsr popax
|
|
sta <DST
|
|
stx <DST+1
|
|
|
|
ldx #0
|
|
|
|
@1:
|
|
|
|
lda <LEN+1
|
|
beq @2
|
|
jsr @3
|
|
dec <LEN+1
|
|
inc <DST+1
|
|
jmp @1
|
|
|
|
@2:
|
|
|
|
ldx <LEN
|
|
beq @5
|
|
|
|
@3:
|
|
|
|
ldy #0
|
|
lda <TEMP
|
|
|
|
@4:
|
|
|
|
sta (DST),y
|
|
iny
|
|
dex
|
|
bne @4
|
|
|
|
@5:
|
|
|
|
rts
|