Skip to content

Commit

Permalink
mcrun typo fixes/clarification
Browse files Browse the repository at this point in the history
  • Loading branch information
lprader committed Jan 10, 2022
1 parent d14207b commit 9dd5f68
Showing 1 changed file with 17 additions and 9 deletions.
26 changes: 17 additions & 9 deletions documentation/tools/tools.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,23 @@
# Tools

Copyright 2017-2021 Moddable Tech, Inc.<BR>
Revised: June 16, 2021
Copyright 2017-2022 Moddable Tech, Inc.<BR>
Revised: January 10, 2022

**Warning**: These notes are preliminary. Omissions and errors are likely. If you encounter problems, please ask for assistance.

## About this Document

This document describes the tools provided by Moddable to build, debug, and run JavaScript apps on microcontrollers or in the Moddable simulator.

The tools compile and link JavaScript modules, and prepare assets for specific platforms and specific screens. The only tools you will use directly are **mcconfig** and **xsbug**. The other tools are used indirectly, through the make file generated by **mcconfig**, but are nevertheless presented here to help you understand what is happening under the hood.
The tools compile and link JavaScript modules, and prepare assets for specific platforms and specific screens. The only tools you will use directly are **mcconfig**, **mcrun**, and **xsbug**. The other tools are used indirectly, through the make file generated by **mcconfig** and **mcrun**, but are nevertheless presented here to help you understand what is happening under the hood.

To build the tools themselves, and to build and run apps in the Moddable simulator, you will only need standard development tools. To build and run apps on microcontrollers, you will also need the microcontrollers toolchains to compile and link C code, and to transfer apps to flash storage. See the [Getting Started document](../Moddable%20SDK%20-%20Getting%20Started.md) for full instructions on how to build the Moddable SDK tools.

## Table of Contents

* [mcconfig](#mcconfig)
* [mcrez](#mcrez)
* [mcrun](#mcrun)
* [mcrez](#mcrez)
* [png2bmp](#png2bmp)
* [xsc](#xsc)
* [xsl](#xsl)
Expand Down Expand Up @@ -58,7 +58,7 @@ A few notes:
- When running a debug build, **xsbug** needs to be running on your computer for the launch to be successful.
- See the [Manifest](./manifest.md) document for explanations about manifests.

<a id="arguments"></a>
<a id="mcconfig-arguments"></a>
### Arguments

```text
Expand Down Expand Up @@ -93,13 +93,21 @@ mcconfig takes an optional `-t target` argument to specify a build target. The o

<a id="mcrun"></a>
## mcrun
**mcrun** is a command line tool to build [mods](../xs/mods.md), scripts that users can install on their IoT products to add new features and change existing behaviors. The inputs to build a mod are JavaScript modules, assets data, and configuration. These are specified in a manifest. The output is an XS archive file (`.xsa` extension) containing JavaScript byte code and resource data.
**mcrun** is a command line tool to build [mods](../xs/mods.md), scripts that users can install on their IoT products to add new features and change existing behaviors. The inputs to build a mod are JavaScript modules, assets, data, and configuration. These are specified in a manifest. The output is an XS archive file (`.xsa` extension) containing JavaScript byte code and resource data.

The command line arguments to `mcrun` are nearly identical to those for `mcconfig`. There are a few differences differences between `mcrun` and `mcconfig`;
There are a few important differences between `mcrun` and `mcconfig`:

- the manifest used by `mcrun` must not reference any files which build to native code (e.g. `.c` or `.cpp` files) as a mod may only contain JavaScript
- The manifest used by `mcrun` must not reference any files which build to native code (e.g. `.c` or `.cpp` files) as a mod can only contain JavaScript
- `mcrun` does not support the `-t` option
- config propertiese are available from the `mod/config` module instead of `mc/config`
- `config` properties are available from the `mod/config` module instead of `mc/config` (see the `config` section of the [Manifest](./manifest.md) documentation for more information about `config` properties)

### Arguments

```text
mcconfig [manifest] [-d] [-f format] [-i] [-m] [-o directory] [-p platform] [-r rotation] [-v] [ssid="wifi_ssid"] [password="wifi_password"] [screen=screen_driver] [touch=touch_driver]
```

The command line arguments to `mcrun` are nearly identical to those for `mcconfig`, except that `mcrun` does not support the `-t` option. See the [`mcconfig` Arguments](#mcconfig-arguments) section for a description of each argument.

<a id="mcrez"></a>
## mcrez
Expand Down

0 comments on commit 9dd5f68

Please sign in to comment.