mirror of
https://github.com/remko/waforth
synced 2025-01-18 22:26:39 +01:00
Documentation updates
This commit is contained in:
parent
02dabe38df
commit
067a12301d
2 changed files with 8 additions and 9 deletions
|
@ -49,11 +49,11 @@ Although WebAssembly (and therefore WAForth) is typically used in a web environm
|
||||||
You can download a pre-built binary of the standalone shell from
|
You can download a pre-built binary of the standalone shell from
|
||||||
[the Releases page](https://github.com/remko/waforth/releases).
|
[the Releases page](https://github.com/remko/waforth/releases).
|
||||||
|
|
||||||
The standalone shell is built using [wasmtime](https://wasmtime.dev),
|
The standalone shell uses the [Wasmtime](https://wasmtime.dev) engine,
|
||||||
but the build configuration can easily be adapted to build using any
|
but its build configuration can easily be adapted to build using any
|
||||||
WebAssembly engine that supports the
|
WebAssembly engine that supports the
|
||||||
[WebAssembly C API](https://github.com/WebAssembly/wasm-c-api) (although some
|
[WebAssembly C API](https://github.com/WebAssembly/wasm-c-api) (although some
|
||||||
have [known issues](https://github.com/remko/waforth/issues/6#issue-326830993)).
|
engines have [known issues](https://github.com/remko/waforth/issues/6#issue-326830993)).
|
||||||
|
|
||||||
|
|
||||||
## Using WAForth in a JavaScript application
|
## Using WAForth in a JavaScript application
|
||||||
|
|
|
@ -19,7 +19,7 @@
|
||||||
;; Returns: number of bytes read
|
;; Returns: number of bytes read
|
||||||
(import "shell" "read" (func $shell_read (param i32 i32) (result i32)))
|
(import "shell" "read" (func $shell_read (param i32 i32) (result i32)))
|
||||||
|
|
||||||
;; Read a single key from the input device
|
;; Read a single key from the input device (without echoing)
|
||||||
(import "shell" "key" (func $shell_key (result i32)))
|
(import "shell" "key" (func $shell_key (result i32)))
|
||||||
|
|
||||||
;; Load a webassembly module.
|
;; Load a webassembly module.
|
||||||
|
@ -35,7 +35,7 @@
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
|
||||||
;; A regular compiled word is a function with only the
|
;; A regular compiled word is a function with only the
|
||||||
;; top-of-stack pointer as parameter (and return the new top-of-stack pointer)
|
;; top-of-stack pointer as parameter (and returns the new top-of-stack pointer)
|
||||||
;; Arguments are passed via the stack.
|
;; Arguments are passed via the stack.
|
||||||
(type $word (func (param i32) (result i32)))
|
(type $word (func (param i32) (result i32)))
|
||||||
|
|
||||||
|
@ -68,7 +68,6 @@
|
||||||
;; ABORT_INDEX := 0x39
|
;; ABORT_INDEX := 0x39
|
||||||
;; CONSTANT_INDEX := 0x4c
|
;; CONSTANT_INDEX := 0x4c
|
||||||
;; NEXT_TABLE_INDEX := 0xab (; Next available table index for a compiled word ;)
|
;; NEXT_TABLE_INDEX := 0xab (; Next available table index for a compiled word ;)
|
||||||
|
|
||||||
(table (export "table") 0xab (; = NEXT_TABLE_INDEX ;) funcref)
|
(table (export "table") 0xab (; = NEXT_TABLE_INDEX ;) funcref)
|
||||||
|
|
||||||
|
|
||||||
|
@ -186,9 +185,9 @@
|
||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
|
||||||
;; These follow the following pattern:
|
;; These follow the following pattern:
|
||||||
;; - WebAssembly function definition (func ...)
|
;; - WebAssembly function definition: `(func ...)`
|
||||||
;; - Dictionary entry in memory (data ...)
|
;; - Dictionary entry in memory: `(data ...)`
|
||||||
;; - Function table entry (elem ...)
|
;; - Function table entry: `(elem ...)`
|
||||||
;;
|
;;
|
||||||
;; The dictionary entry has the following form:
|
;; The dictionary entry has the following form:
|
||||||
;; - prev (4 bytes): Pointer to start of previous entry
|
;; - prev (4 bytes): Pointer to start of previous entry
|
||||||
|
|
Loading…
Reference in a new issue