nuttx-apps/interpreters
Manuel Stühn 88d47e469f Merged in manuelstuehn/nuttx-apps/feature/bsd-portable (pull request #190)
change all occurences of /bin/(ba)sh to /usr/bin/env bash which appears more portable

Approved-by: Gregory Nutt <gnutt@nuttx.org>
2019-08-10 17:16:33 +00:00
..
bas apps/: Modification to build system: Unified application compilation rules 2018-09-03 09:29:56 -06:00
ficl Merged in manuelstuehn/nuttx-apps/feature/bsd-portable (pull request #190) 2019-08-10 17:16:33 +00:00
minibasic apps/: Modification to build system: Unified application compilation rules 2018-09-03 09:29:56 -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.