67 lines
1.6 KiB
HTML
67 lines
1.6 KiB
HTML
<!DOCTYPE html>
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>µEforth for Linux</title>
|
|
<link rel="stylesheet" href="static/eforth.css">
|
|
</head>
|
|
<body>
|
|
<h1>µEforth for Linux</h1>
|
|
|
|
{{MENU}}
|
|
|
|
<h2>Download</h2>
|
|
|
|
<p>
|
|
<a href="downloads/ueforth.linux">ueforth.linux</a>
|
|
- Linux 64-bit Executable µEforth<br/>
|
|
<i>Version: {{VERSION}} Rev: {{REVISION}}</i>
|
|
</p>
|
|
|
|
<p>
|
|
<a href="https://github.com/flagxor/eforth" target="_blank">http://github.com/flagxor/eforth</a>
|
|
- Complete Source Code (under ueforth)
|
|
</p>
|
|
|
|
<h2>µEforth</h2>
|
|
|
|
<h3>µEforth Specific Words</h3>
|
|
|
|
{{COMMON}}
|
|
{{POSIX_COMMON}}
|
|
|
|
<h3>Linux</h3>
|
|
|
|
<h4>Linux Opcodes</h4>
|
|
|
|
<p>
|
|
Linux libraries and the operating system can be accessed via the use
|
|
of the <code>DLSYM</code> word. Functions can be requested by name from
|
|
particular modules. As the dynamic linking module is already loaded initially,
|
|
a 0 for the module allows the library loading function (<code>dlopen</code>)
|
|
to be loaded from Forth.
|
|
</p>
|
|
|
|
<pre>
|
|
DLSYM ( module name-z -- fn )
|
|
</pre>
|
|
|
|
<p>
|
|
See <a href="https://github.com/flagxor/eforth/blob/main/ueforth/posix/posix_main.c">posix_main.c</a>.
|
|
</p>
|
|
|
|
<p>
|
|
Native functions all called with CALL(n) (see Windows & Linux Calling below).
|
|
</p>
|
|
|
|
<h4>Linux Imports</h4>
|
|
|
|
<p>
|
|
Various Linux calls including Xlib are imported in
|
|
<a href="https://github.com/flagxor/eforth/blob/main/ueforth/posix/posix.fs">posix.fs</a> and
|
|
<a href="https://github.com/flagxor/eforth/blob/main/ueforth/posix/xlib.fs">xlib.fs</a>.
|
|
In addition, <code>TYPE</code> and <code>KEY</code> are connected to
|
|
<code>stdin</code> and <code>stdout</code>.
|
|
</p>
|
|
|
|
{{DESKTOP_COMMON}}
|