version 1.15, 1998/11/22 23:18:09
|
version 1.18, 1998/12/12 22:32:04
|
Line 1
|
Line 1
|
\ Gforth primitives |
\ Gforth primitives |
|
|
\ Copyright (C) 1995,1996 Free Software Foundation, Inc. |
\ Copyright (C) 1995,1996,1997,1998 Free Software Foundation, Inc. |
|
|
\ This file is part of Gforth. |
\ This file is part of Gforth. |
|
|
Line 1369 n=1;
|
Line 1369 n=1;
|
: |
: |
1 ; |
1 ; |
|
|
\+os |
|
|
|
key-file wfileid -- n gforth paren_key_file |
key-file wfileid -- n gforth paren_key_file |
|
#ifdef HAS_FILE |
fflush(stdout); |
fflush(stdout); |
n = key((FILE*)wfileid); |
n = key((FILE*)wfileid); |
|
#else |
|
n = key(stdin); |
|
#endif |
|
|
key?-file wfileid -- n facility key_q_file |
key?-file wfileid -- n facility key_q_file |
|
#ifdef HAS_FILE |
fflush(stdout); |
fflush(stdout); |
n = key_query((FILE*)wfileid); |
n = key_query((FILE*)wfileid); |
|
#else |
|
n = key_query(stdin); |
|
#endif |
|
|
|
\+os |
|
|
stdin -- wfileid gforth |
stdin -- wfileid gforth |
wfileid = (Cell)stdin; |
wfileid = (Cell)stdin; |
Line 1596 write-file c_addr u1 wfileid -- wior fil
|
Line 1604 write-file c_addr u1 wfileid -- wior fil
|
clearerr((FILE *)wfileid); |
clearerr((FILE *)wfileid); |
} |
} |
|
|
|
\+ |
|
|
emit-file c wfileid -- wior gforth emit_file |
emit-file c wfileid -- wior gforth emit_file |
|
#ifdef HAS_FILE |
wior = FILEIO(putc(c, (FILE *)wfileid)==EOF); |
wior = FILEIO(putc(c, (FILE *)wfileid)==EOF); |
if (wior) |
if (wior) |
clearerr((FILE *)wfileid); |
clearerr((FILE *)wfileid); |
|
#else |
|
putc(c, stdout); |
|
#endif |
|
|
\+ |
|
\+file |
\+file |
|
|
flush-file wfileid -- wior file-ext flush_file |
flush-file wfileid -- wior file-ext flush_file |
Line 2041 open-lib c_addr1 u1 -- u2 gforth open_li
|
Line 2054 open-lib c_addr1 u1 -- u2 gforth open_li
|
#endif |
#endif |
u2=(UCell) dlopen(cstr(c_addr1, u1, 1), RTLD_GLOBAL | RTLD_LAZY); |
u2=(UCell) dlopen(cstr(c_addr1, u1, 1), RTLD_GLOBAL | RTLD_LAZY); |
#else |
#else |
# ifdef HAVE_LIBKERNEL32 |
# ifdef _WIN32 |
u2 = (Cell) GetModuleHandle(cstr(c_addr1, u1, 1)); |
u2 = (Cell) GetModuleHandle(cstr(c_addr1, u1, 1)); |
# else |
# else |
#warning Define open-lib! |
#warning Define open-lib! |
Line 2053 lib-sym c_addr1 u1 u2 -- u3 gforth lib_s
|
Line 2066 lib-sym c_addr1 u1 u2 -- u3 gforth lib_s
|
#if defined(HAVE_LIBDL) || defined(HAVE_DLOPEN) |
#if defined(HAVE_LIBDL) || defined(HAVE_DLOPEN) |
u3 = (UCell) dlsym((void*)u2,cstr(c_addr1, u1, 1)); |
u3 = (UCell) dlsym((void*)u2,cstr(c_addr1, u1, 1)); |
#else |
#else |
# ifdef HAVE_LIBKERNEL32 |
# ifdef _WIN32 |
u3 = (Cell) GetProcAddress((HMODULE)u2, cstr(c_addr1, u1, 1)); |
u3 = (Cell) GetProcAddress((HMODULE)u2, cstr(c_addr1, u1, 1)); |
# else |
# else |
#warning Define lib-sym! |
#warning Define lib-sym! |
Line 2073 UP=up=(char *)a_addr;
|
Line 2086 UP=up=(char *)a_addr;
|
: |
: |
up ! ; |
up ! ; |
Variable UP |
Variable UP |
|
|