nuttx-apps/interpreters
anchao 220653f21c Squashed commit of the following:
Author: anchao <anchao@pinecone.net>

     apps/, most main() function: Correct CONFIG_BUILD_LOADABLE usage
     Loadable apps/: Correct loadable symbol table generate
     apps/system/ubloxmodem:  Fix build break
     apps/examples/ostest: start restart/waitpid/user test from main loop
     apps/nshlib:  Expand reboot and poweroff commands to include a second, optional mode argument

    Author: Gregory Nutt <gnutt@nuttx.org>

     An attempt to fix build issues.  Does not work.
     apps/examples/ostest:  Fix some inappropriate renaming of static functions introduced with recent patches.
     apps/builtin/exec_builtin.c:  Fix a error introduced by recent comments.  Found in build testing.

    Author: anchao <anchao@pinecone.net>

     apps/builtin/exec_builtin.c:  Try posix_spawn if builtin apps do not have have an entry point.
     apps/Application.mk: introduce MODULE config to simplify tristate(m)
     apps/nsh:  Change the nuttx shell module type to tristate
     apps:  Add loadable application support
     script/mksymtab:  Generate symbol table name by default
     apps/builtin:  Allow loadable applications can register with apps/builtin.
2018-08-23 11:06:15 -06:00
..
bas Squashed commit of the following: 2018-08-23 11:06:15 -06:00
ficl The last change added .PRECIOUS: $(BIN) to everyway Makefile in hopes the libapps.a will not be deleted on Control-C (unproven so far). However, $(BIN) may contain back slashes in some build platforms and that causes problems for make: It can't handle the backslashes in the .PRECIOUS dependency list. $(BIN) replaced with ../../libapp.a, where the number of ../ depends on the depth of the Makefile in the apps/ source tree. 2017-08-13 11:03:17 -06:00
minibasic Squashed commit of the following: 2018-08-23 11:06:15 -06:00
pcode add apps/interpreters/pcode/.gitignore 2016-06-30 11:29:13 -06:00
.gitignore Recursive Kconfig autogeneration 2016-06-02 16:34:00 +02:00
Make.defs make the full tree use wildcards make.defs 2016-06-02 16:21:21 +02:00
Makefile Rearrange to eliminate Kmenu files 2016-06-09 08:59:16 -06:00
README.txt Remove apps/interpreters/micropthon. There are several reasons for this. (1) the current version 1.3.8 is very old and no one is supporting it. (2) the port only includes the core micropython logic and none of the Python libraries. As such it is useless in any real application. (3) There have recently been compile failures reported. It looks like this is due to changes in newlib based toolchains that now bring in incompatible newlib header files. See issue 104 at https://bitbucket.org/nuttx/nuttx/issues/104/build-micropython-138-error. With no one dedicated to the support of micropython, it can no longer be carried in the NuttX apps/ repository. 2018-06-18 08:10:09 -06:00

apps/interpreters README file
=============================

This apps/ directory is set aside to hold interpreters that may be
incorporated into NuttX.

ficl
----

  This is DIY port of Ficl (the "Forth Inspired Command Language").  See
  http://ficl.sourceforge.net/.  It is a "DIY" port because the Ficl source
  is not in that directory, only an environment and instructions that will
  let you build Ficl under NuttX.  The rest is up to you.

minibasic
---------

  The Mini Basic implementation at apps/interpreters derives from version 1.0
  by Malcolm McLean, Leeds University, and was released under the Creative
  Commons Attibution license.  I am not legal expert, but this license
  appears to be compatible with the NuttX BSD license see:
  https://creativecommons.org/licenses/ .  I, however, cannot take
  responsibility for any actions that you might take based on my
  understanding.  Please use your own legal judgement.

pcode
-----

  At present, only the NuttX Pascal add-on is supported.  This NuttX add-on
  must be downloaded separately (or is available from the Nuttx Pascal GIT
  repository).

  This Pascal add-on must be installed into the NuttX apps/ directory.  After
  unpacking the Pascal add-on package, an installation script and README.txt
  instructions can be found at pascal/nuttx.

  INSTALL.sh -- The script that performs the operation.  Usage:

     ./INSTALL.sh [-16|-32] <install-dir>

      If you are using this standard NuttX apps/ package, the correct
      location for the <install-dir> is apps/interpreters.  That is
      where the examples and build logic will expect to find the pcode
      sub-directory.

    Example:

      ./INSTALL.sh -16 $PWD/../../../apps/interpreters

    After installation, the NuttX apps/interpresters directory will contain
    the following files

      pcode
      |-- Makefile
      |-- include
      |   `-- Common header files
      |-- libboff
      |   `-- Pascal object format (POFF) library
      `--insn
          |-- include
          |   `-- model-specific header files
          `-- prun
              `-- model-specific source files

  pashello

    There is a simple Pascal example at apps/examples/pashello.  This is the
    standard "Hello, World!" example written in Pascal and interpreted from
    Pascal P-Code at runtime.  To use this example, place the following in
    your defonfig file:

      CONFIG_EXAMPLES_PASHELLO=y
      CONFIG_INTERPRETERS_PCODE=y

prun

  This directory holds some simple, convenience functions to simplify and
  standardize the interaction with the P-Code library.