| \ lib.fs shared library support package 16aug03py |
\ lib.fs shared library support package 16aug03py |
| |
|
| \ Copyright (C) 1995,1996,1997,1998,2000,2003 Free Software Foundation, Inc. |
\ Copyright (C) 1995,1996,1997,1998,2000,2003,2005 Free Software Foundation, Inc. |
| |
|
| \ This file is part of Gforth. |
\ This file is part of Gforth. |
| |
|
| DOES> ( x1 .. xn -- r ) |
DOES> ( x1 .. xn -- r ) |
| dup cell+ @ swap 3 cells + >r ; |
dup cell+ @ swap 3 cells + >r ; |
| |
|
| |
Variable ind-call ind-call off |
| |
: fptr ( "name" -- ) |
| |
Create here thisproc ! 0 , 0 , 0 , 0 also c-decl ind-call on |
| |
DOES> 3 cells + >r ; |
| |
|
| : library ( "name" "file" -- ) |
: library ( "name" "file" -- ) |
| \G loads library "file" and creates a proc defining word "name" |
\G loads library "file" and creates a proc defining word "name" |
| \G library format: |
\G library format: |
| |
|
| : rettype ( endxt startxt "name" -- ) |
: rettype ( endxt startxt "name" -- ) |
| Create 2, |
Create 2, |
| DOES> decl, symbol, previous revarg off ; |
DOES> decl, ind-call @ 0= IF symbol, THEN |
| |
previous revarg off ind-call off ; |
| |
|
| also c-decl definitions |
also c-decl definitions |
| |
|
| ' av-call-longlong ' av-start-longlong rettype (llong) |
' av-call-longlong ' av-start-longlong rettype (llong) |
| ' av-call-ptr ' av-start-ptr rettype (ptr) |
' av-call-ptr ' av-start-ptr rettype (ptr) |
| |
|
| : (addr) postpone EXIT symbol, previos revarg off ; |
: (addr) postpone EXIT drop symbol, previous revarg off ; |
| |
|
| previous definitions |
previous definitions |
| |
|