version 1.89, 2002/01/05 20:16:17
|
version 1.91, 2002/01/20 19:04:10
|
Line 1356 a_addr = (Cell *)DOES_CODE(xt);
|
Line 1356 a_addr = (Cell *)DOES_CODE(xt);
|
code-address! ( c_addr xt -- ) gforth code_address_store |
code-address! ( c_addr xt -- ) gforth code_address_store |
""Create a code field with code address @i{c-addr} at @i{xt}."" |
""Create a code field with code address @i{c-addr} at @i{xt}."" |
MAKE_CF(xt, c_addr); |
MAKE_CF(xt, c_addr); |
CACHE_FLUSH(xt,(size_t)PFA(0)); |
|
: |
: |
! ; |
! ; |
|
|
Line 1364 does-code! ( a_addr xt -- ) gforth does
|
Line 1363 does-code! ( a_addr xt -- ) gforth does
|
""Create a code field at @i{xt} for a child of a @code{DOES>}-word; |
""Create a code field at @i{xt} for a child of a @code{DOES>}-word; |
@i{a-addr} is the start of the Forth code after @code{DOES>}."" |
@i{a-addr} is the start of the Forth code after @code{DOES>}."" |
MAKE_DOES_CF(xt, a_addr); |
MAKE_DOES_CF(xt, a_addr); |
CACHE_FLUSH(xt,(size_t)PFA(0)); |
|
: |
: |
dodoes: over ! cell+ ! ; |
dodoes: over ! cell+ ! ; |
|
|
Line 1372 does-handler! ( a_addr -- ) gforth does_
|
Line 1370 does-handler! ( a_addr -- ) gforth does_
|
""Create a @code{DOES>}-handler at address @i{a-addr}. Normally, |
""Create a @code{DOES>}-handler at address @i{a-addr}. Normally, |
@i{a-addr} points just behind a @code{DOES>}."" |
@i{a-addr} points just behind a @code{DOES>}."" |
MAKE_DOES_HANDLER(a_addr); |
MAKE_DOES_HANDLER(a_addr); |
CACHE_FLUSH((caddr_t)a_addr,DOES_HANDLER_SIZE); |
|
: |
: |
drop ; |
drop ; |
|
|
Line 2427 does-exec ( #a_cfa -- R:nest a_pfa ) new
|
Line 2424 does-exec ( #a_cfa -- R:nest a_pfa ) new
|
a_pfa = PFA(a_cfa); |
a_pfa = PFA(a_cfa); |
nest = (Cell)ip; |
nest = (Cell)ip; |
IF_spTOS(spTOS = sp[0]); |
IF_spTOS(spTOS = sp[0]); |
SUPER_END; |
#ifdef DEBUG |
|
{ |
|
CFA_TO_NAME(a_cfa); |
|
fprintf(stderr,"%08lx: does %08lx %.*s\n", |
|
(Cell)ip,(Cell)a_cfa,len,name); |
|
} |
|
#endif |
SET_IP(DOES_CODE1(a_cfa)); |
SET_IP(DOES_CODE1(a_cfa)); |
SUPER_END; |
|
|
|
include(peeprules.vmg) |
include(peeprules.vmg) |
|
|