On 2012-Oct-21 12:18 , Programmingkid wrote:
I traced the issue with a function called
my_args_copy(). That led me to a forth word called my-args. I'm not sure what this
word does, or where it is defined.
In IEEE1275 (there are also examples in how it's used scattered
throughout the spec).
my-args ( -- arg-str arg-len ) F 0x202 Return the instance-argument
string for this instance.
Return the instance-argument string that was passed to the current
instance (when the current instance was created).
Microsoft Word - 1275.DOC [...]
set-args ( arg-str arg-len unit-str unit-len -- ) F 0x23F
Set address and arguments of new device node.
unit-string is a text string representation of a physical address within
the address space of the parent device. Translate unit-string to the
equivalent numerical representation by executing the parent instance's
"decode-unit" method. Set the current instance' s probe-address (i.e.,
the values returned by my-address and my-space) to that numerical
Copy the string arg-string to instance-specific storage, and arrange for
my-args to return the address and length of that copy when executed from
the current instance.
NOTE---set-args is typically used just after new-device. new-device
creates and selects a new device node, and set-args sets its
probe-address and arguments. Subsequently, the device node's properties
and methods are created by interpreting an FCode program with byte-load
or by interpreting Forth source code.
NOTE---The empty string (any string of zero length) is commonly used as
the arguments for a new device node, for example: 0 0 " 3,2000" set-args
Microsoft Word - 1275.DOC