fix typos

This commit is contained in:
RainRat
2024-02-28 20:15:56 -08:00
parent b53a43027f
commit a3658f85ac
167 changed files with 320 additions and 320 deletions
+5 -5
View File
@@ -25,11 +25,11 @@ Generally the build is the same as the unix build:
[Edit Oct 4, 2020:]
Resulting libaries will be in the `targets/wasm` directory for `CROSS_TO_WASM=1`.
Resulting libaries will be in the `src` directory for `WANT_LIBNH=1`.
Resulting libraries will be in the `targets/wasm` directory for `CROSS_TO_WASM=1`.
Resulting libraries will be in the `src` directory for `WANT_LIBNH=1`.
[Original text:]
Resulting libaries will be in the `src` directory.
Resulting libraries will be in the `src` directory.
WASM also has a npm module that can be published out of `sys/lib/npm-library`. After building the `nethack.js` it can be published by:
1. `cd sys/lib/npm-library`
@@ -38,13 +38,13 @@ WASM also has a npm module that can be published out of `sys/lib/npm-library`. A
## API: libnethack.a
The API is two functions:
* `nhmain(int argc, char *argv[])` - The main function for NetHack that configures the program and runs the `moveloop()` until the game is over. The arguments to this function are the [command line arguments](https://nethackwiki.com/wiki/Options) to NetHack.
* `shim_graphics_set_callback(shim_callback_t cb)` - A single function that sets a callback to gather graphics events: write a string to screen, get user input, etc. Your job is to pass in a callback and handle all the requested rendering events to show NetHack on the scrren. The callback is `void shim_callback_t(const char *name, void *ret_ptr, const char *fmt, ...)`
* `shim_graphics_set_callback(shim_callback_t cb)` - A single function that sets a callback to gather graphics events: write a string to screen, get user input, etc. Your job is to pass in a callback and handle all the requested rendering events to show NetHack on the screen. The callback is `void shim_callback_t(const char *name, void *ret_ptr, const char *fmt, ...)`
* `name` is the name of the [window function](https://github.com/NetHack/NetHack/blob/NetHack-3.7/doc/window.txt) that needs to be handled
* `ret_ptr` is a pointer to a memory space for the return value. The type expected to be returned in this pointer is described by the first character of the `fmt` string.
* `fmt` is a string that describes the signature of the callback. The first character in the string is the return type and any additional characters describe the variable arguments: `i` for integer, `s` for string, `p` for pointer, `c` for character, `v` for void. For example, if format is "vis" the callback will have no return (void), the first argument will be an integer, and the second argument will be a string. If format is "iii" the callback must return an integer, and both the arguments passed in will be integers.
* [Variadic arguments](https://www.gnu.org/software/libc/manual/html_node/Variadic-Example.html): a variable number and type of arguments depending on the `window function` that is being called. The arguments associated with each `name` are described in the [NetHack window.txt](https://github.com/NetHack/NetHack/blob/NetHack-3.7/doc/window.txt).
Where is the header file for the API you ask? There isn't one. It's three functions, just drop the forward declarations at the top of your file (or create your own header). It's more work figuring out how to install and copy around header files than it's worth for such a small API. If you disagree, feel free to sumbit a PR to fix it. :)
Where is the header file for the API you ask? There isn't one. It's three functions, just drop the forward declarations at the top of your file (or create your own header). It's more work figuring out how to install and copy around header files than it's worth for such a small API. If you disagree, feel free to submit a PR to fix it. :)
## API: nethack.js
The WebAssembly API has a similar signature to `libnethack.a` with minor syntactic differences: