On 09/08/11 22:55, William Hahne wrote:
This is a forth primitive that is required by BootX. It just fills some specified memory address and length with longs.
Index: kernel/forth.c
--- kernel/forth.c (revision 1041) +++ kernel/forth.c (working copy) @@ -1610,6 +1616,20 @@ memset(src, value, count); } +/*
- filll ( addr len byte -- )
- */
+static void filll(void) +{
- ucell value = POP();
- ucell count = POP();
- ucell *dest = (ucell *)cell2pointer(POP());
- int i;
- for (i = 0; i <= count / 4; i++) {
- dest[i] = value;
- }
+} /*
- unaligned-w@ ( addr -- w )
@@ -1963,4 +1983,5 @@ do_encode_file, /* $encode-file */ do_debug_xt, /* (debug */ do_debug_off, /* (debug-off) */
- filll /* filll */ };
Index: kernel/bootstrap.c
--- kernel/bootstrap.c (revision 1041) +++ kernel/bootstrap.c (working copy) @@ -89,7 +89,7 @@ "here", "here!", "dobranch", "do?branch", "unaligned-w@", "unaligned-w!", "unaligned-l@", "unaligned-l!", "ioc@", "iow@", "iol@", "ioc!", "iow!", "iol!", "i", "j", "call", "sys-debug",
- "$include", "$encode-file", "(debug", "(debug-off)"
- "$include", "$encode-file", "(debug", "(debug-off)", "filll" }; /*
This looks reasonably straightforward - again, can you add a reference to the documentation for this word as part of the commit message?
ATB,
Mark.