From 85aae8185ce2554871f6618ab2ae22a53c691018 Mon Sep 17 00:00:00 2001 From: ketmar Date: Tue, 3 Oct 2023 01:20:06 +0000 Subject: [PATCH] UrForth: added FILL FossilOrigin-Name: 211cafec111c998d1747ac6f8e3339bfdf11e8dda7d8cf5bfe2e0c3311180f08 --- src/urforth.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/urforth.c b/src/urforth.c index 7015777..fb86796 100644 --- a/src/urforth.c +++ b/src/urforth.c @@ -1855,6 +1855,19 @@ UFWORD(MOVE) { } +// FILL +// ( addr count val -- ) +UFWORD(FILL) { + uint32_t val = ufoPop(); + int32_t count = (int32_t)ufoPop(); + uint32_t dest = ufoPop(); + while (count > 0) { + ufoImgPutU32(dest, val); + dest += 1; count -= 1; + } +} + + // STR= // ( addr1 count1 addr2 count2 -- flag ) UFWORD(STREQU) { @@ -5941,6 +5954,7 @@ static void ufoInitCommon (void) { UFWORDX("CMOVE>", CMOVE_FWD); UFWORDX("CMOVE", CMOVE_BACK); UFWORDX("MOVE", MOVE); + UFWORDX("FILL", FILL); ufoVocSetOnlyDefs(vstr); UFWORDX("=", STREQU); -- 2.11.4.GIT