Recent Software and Documentation Postings

Selected items are available for download from our Customer Support Central web page.
All of our documents and software may be accessed using our Download Index page.

31 August 2020: EVB002 and arrayForth-3 Getting Started

In response to customer feedback, a short "Getting Started" section has been added to the Introduction in DB013, arrayForth-3 User's manual; and the instructions in AN021, Getting Started with EVB002, have been simplified and clarified.

27 January 2020: arrayForth 3 03c Released

arrayForth 3 Rev 03c is now available and is fully supported. Fixes are included for SOFTSIM which is no longer in Beta testing. Improvements include cardinal directions in the F18 Assembler and Boot Descriptor Languages, double numeric literals in polyFORTH definitions, and a convenient new mechanism for helping to manage projects while avoiding the need to edit the common source bases for the saneFORTH and polyFORTH systems.

7 July 2019: arrayForth 3 03b5 Released

arrayForth 3 Rev 03b5 is now available and is fully supported. It's accompanied by updates to DB013, arrayForth 3 User's Manual, and DB006, polyFORTH Supplement for G144A12. In addition to general improvements, a Beta test version of SOFTSIM is included along with an IDE based test for problems in external SRAM assembly on EVB001/2 compatible PCBs.

27 May 2019: PCB commissioning instructions and EVB002 component datasheets

have been posted. See Index of Downloads section on Hardware Designs.

26 May 2019: Documentation for saneFORTH

on Win32 platforms has been released. Please see the third party documentation section in the Index of Downloads, document SFW32PR.

21 May 2019: arrayForth 3 First Release

arrayForth 3 Rev 03b4 is now available and is fully supported. It's accompanied by new DB013, arrayForth 3 User's Manual, and an update to DB006, polyFORTH Supplement for G144A12.

20 May 2019: Documentation for EVB002

New postings document the EVB002: DB014, Evaluation Board EVB002 Reference, and AN021, Getting Started with the EVB002 Evaluation Board.

26 Dec 2018: Preview of arrayFORTH 3 Code and Documentation

During development of arrayForth 3, the most recent installer and relevant documentation are posted near the bottom of the Customer Support Central page.

7 Nov 2017: Data Book DB001, F18A Technology Reference, Minor Updates.

New edition resolves comments received: Add Ldata for side analog nodes. Clarify variable length destination address field. Emphasize conditions for overflow in multiply step. Clarify shared pin wake-up configuration is a chip design issue not an F18 issue.

6 Nov 2017: App Note AN020, Distributing 1080p Video in Large Scale Sunrise Systems LED Signs, Newly Issued

Documents an extensive design project we undertook for Sunrise Systems, maker of fine custom LED signs. The goal was to build large 1080p video displays from existing Sunrise modules, accepting arbitrary HDMI video input and distributing the video to those modules in a practical and relatively inexpensive way. The project involved the ADV7611 of AN018, FPGA designs done by James Bowman, and the design and development of prototype hardware that would allow building a sign comprised of about 2000 LED modules and using about 2000 GA144 chips per sign. In addition to novel hardware we invented and proved a good deal of useful programming methods for our chips when working under just barely feasible timing constraints.

6 Nov 2017: App Note AN018, Controlling the ADV7611 HDMI Receiver, Newly Issued

Records our methods for taming the Analog Devices ADV7611 HDMI Receiver. This relatively complicated chip (with equally complicated documentation) was selected for use in the Sunrise Systems LED Sign design project described by AN020. The project included study of relevant standards that were necessary to make an HDMI device that is understood by HDMI signal sources.

6 Nov 2017: App Brief AB005, Delay Lines (or buffers), Newly Issued

This brief shows how to build FIFO delay lines from one or more nodes, using all of the SRAM in each node and maintaining a constant level of throughput (on the order of 20 Megawords/second) regardless of the length of the delay line. Released at this time because this method is used in AN020 as well as in Daniel Kalny's work which will be presented at Forth Day 2017.

6 Nov 2017: App Note AN017, Ganglia Mark 2, Newly Issued

We upgraded the Ganglia to support two chips and and as many path segments as are necessary for a given routing. This was done as part of the arrayForth-3 system which has not been released yet. However the module is used in the Sunrise project documented in AN020 so it is released to document what was done in that project.

6 Nov 2017: App Note AN002 Major Update

New edition documents the methods we have been successfully using for exciting high frequency crystals, and suggests external RC networks as a method of awakening at very long intervals with very small cost in energy per interval.

12 Nov 2014: App Notes AN007 and AN016 Updated

Minor textual errors are corrected in AN007 and one graphic has been corrected in AN016.

5 Nov 2014: App Note AN007, Software-Defined NIC, Newly Issued

A software-defined full duplex 10baseT Network Interface Controller is implemented as a team of nodes controlling transmit and receive signal pins directly. The signals are conditioned by minimal electrical interface circuitry. External transmit timing is used. The team is designed to function as a memory-mapped device but may be stripped down for direct use by other node teams. This NIC is supported by the polyFORTH® TCP/IP package on the host chip of the EVB001 Evaluation Board.

2 Nov 2014: App Note AN016, Incremental PID Controller, Newly Issued

Daniel Kalný controls the speed of a brushed DC motor equipped with an optical encoder using a software PID controller in a closed loop system.

23 Oct 2014: App Note AN001, An Implementation of the MD5 Hash, Revised and Updated

Along with other updates, this revision shows how to test and exercise a module such as the MD5 team under control of polyFORTH running on the host chip of an EVB001 evaluation board.

21 Oct 2014: App Brief AB004, Port Execution, Newly Issued

This single-page brief gives a simplified demonstration of controlling a neighbor node by feeding it instructions over a COM port.

30 Oct 2013: arrayForth & polyFORTH Release 02b

arrayForth tools now facilitate programming both chips on the EVB001 board as a unit with a single interface. The IDE is updated to make the target chip appear as an extension of the host. SPI Flash boot streams can now program both chips after resetting the host. A new facility is added for generating and delivering boot streams through asynchronous node 708 of a chip, and like the above may be used to program host and target chips in a single operation. This considerably speeds the interactive development and testing of large applications. Reflecting the new software, DB004 (the arrayForth User's Guide) is updated. There is no change in the polyForth code or documentation in this release.

3 Jul 2013: App Note AN012, Controlling the TI® SensorTag with the GA144, Newly Issued

The Texas Instruments SensorTag provides an excellent set of devices on a small, inexpensive platform. This exercise demonstrates various choreographic and programming techniques, primarily toward minimizing energy consumed per unit useful work. In this application we demonstrate the GA144's ability to maintain continuous situational awareness while operating from a coincell at an average power of 363 microwatts. Included is a practical use of the single-pin, software-defined 32.768 kHz crystal oscillator.

10 Jun 2013: App Note AN011, Ganglia Mark 1: A Dynamic Message Routing Surface, Newly Issued

This paper describes a means for exchanging message transactions between nodes that do not share a common COM port using message frames whose headers hold source routing information that is updated incrementally as the frame moves between contiguous nodes that have been programmed to serve as part of a surface, or fabric, for this purpose. In the polyFORTH system, for example, all otherwise fallow nodes are programmed in this way and are utilized for most communications between the polyFORTH virtual machine and other interfaces elsewhere on the chip.

4 Jun 2013: App Note AN010, The Snorkel Mark 1: A Programmable DMA Channel, Newly Issued

This application note describes a simple SRAM master that moves arbitrary sequences of 18-bit or 16-bit data between one of its COM ports and specified areas of the external SRAM. This is done by a simple, software-defined special purpose processor that executes a stored program from SRAM to define the sequence of transfers. The Snorkel is used by the polyFORTH system.

18 Oct 2012: App Brief AB003 Measuring Currents on the EVB001 Board, Newly Issued

This single-page brief shows how to measure currents on the evaluation board and discusses considerations in selecting and setting up test equipment for that purpose.

23 Sep 2012: arrayForth & polyFORTH Release 02a

A 16-bit polyFORTH implementation, running on a software-defined virtual machine consisting of several nodes and external SRAM, is now released and fully supported on the EVB001 board. Reflecting the new software, DB004 (the arrayForth User's Guide) is updated and a new manual, DB006 (G144A12 polyFORTH Supplement) is published.

12 Sep 2012: App Note AN009 Attaching a PS/2 Keyboard, Newly Issued

This application note by Stefan Mauerhofer describes a method for attaching a PS/2 keyboard to the EVB001 evaluation board. The whole process from the hardware to arrayFORTH till polyFORTH is covered by this app note.

25 Aug 2012: polyFORTH® Reference Manual (DB005) Released

FORTH, Inc.s polyFORTH Reference Manual, never previously available to the general public, is now released by special permission. This manual is based on source documents provided by FORTH, Inc., reformatted for PDF publication, with no intentional changes in its substance. DB005 is the primary document for GreenArrays' implementation(s), whose details will be published in one or more Supplements to this Reference Manual.

11 May 2012: Institute adds course on App Notes

The arrayForth Institute now offers a "course" structured to present one application note in each learning path. The first such App Note is AN008. Register for the course to view Peter's video presentation of the project in question. An additional new course, "The Commons", provides an experimental venue for interaction among those interested in GreenArrays technology.

10 May 2012: App Note AN008, 3-axis accelerometer, Newly Issued

This application note by Peter Milford describes a high-level interactive process of testing a new SPI device, verifying its protocol documentation, and obtaining data from the device.

10 May 2012: App Note AN001, MD5, Update

This application note has been considerably revised and reformatted. Find it on the Index of Downloads or the Featured App Notes pages.

23 Dec 2011: arrayForth Release 01g

Includes changes made but not published as 01f. F18 compiler directives have been improved; org no longer forces alignment, node sets location counter for zero, grey words no longer force alignment and now display slot number if nonzero. Human interface improvements in the feedback area: Word entry area no longer collides with stack display, stack display indicates emptiness and limits display to top 5 items, stack color no longer changes when editor colors are selected, and mechanism has been added to support a feedback message area (new to colorForth.) Messages added for forward transfers out of range. empty no longer changes display unless it is actually necessary. Minor bugs fixed. Softsim improvements incorporated, released and documented: Pin wakeup now works correctly; pin functions added for serdes and analog nodes; testbed (external signal) facilities improved and documented. Minor human interface cleanups. Documented breakpoint mechanism and added softsim capability to process boot descriptors for loading the chip with the same description of a program as may be used for IDE and stream loading of the real chip.

23 Dec 2011: arrayForth User's Manual (DB004) Update

Update to correspond with software release 01g.

3 Nov: arrayForth Release 01e

Formal automated program loading has been added for the IDE environment. The Boot Descriptor syntax is now formally defined and has been normalized so that the same descriptions will serve for both IDE and stream loading. polyFORTH system development has continued and a full pre-release system is now included in the distribution.

3 Nov: arrayForth User's Manual (DB004) Update

Update to correspond with software release 01e. Document preliminary module structure. Add description of new common load descriptor syntax and describe its use with automated IDE loading and boot stream generation.

16 Oct: arrayForth Release 01d

Blue word handling updated with , . .. ... and *. Only blue words marked as such are interpreted during display (WARNING: Old systems may crash when displaying new source since the older systems lack this robustness feature.) Editor block number display changed; no more background watermark, instead the number appears above the editor hint map. Additionally the block number turns red whenever the editor is active as a warning that the keyboard is "hot" for editing. When audit utility is loaded, qx index displays show differing blocks in red. Audit and compression buffers have been moved up higher in memory and the memory map updated so that it will be possible to enlarge the block range used for source code. Considerable housekeeping has been done so that the GreenArrays code released in the system does not interfere with your application code and vice versa. This version includes, and requires, a new colorForth kernel 4.2b.

16 Oct: arrayForth User's Manual (DB004) Update

Update to correspond with software release 01d. Add sections for memory map and bin assignment tables. Describe new blue words. Remove mention of watermarked block number in editor and replace with image and prose describing the block number over hint area with color annunciating editor status. Update audit utility backup image area. Fix typos and make minor improvements in clarity.

8 Oct: Getting Started with the Evaluation Board (AN004) Update

Board photos and diagrams have been updated, and the annotations improved, for greater clarity. Section 1.3 is now explicit that all four pins of J29 are ground.

4 Oct: arrayForth Release 01c

COM port configuration has been simplified; it is no longer necessary to edit .BAT script files. More powerful disk management and considerable Softsim improvements, including interactive functions like those of the IDE, are included. An ancient editor bug has been fixed. This version includes, and requires, a new colorForth kernel.

4 Oct: arrayForth User's Manual (DB004) Update

Updated for consistency with Release 01c. Deprecate obsolete colorForth comment types in 01c editor. Clarify functions of talk in the IDE. Clarify softsim section and document new interactive vocabulary. Emphasize use of recaim to control identifier scope. Add a-com and c-com used by internal baud rate setting functions. Document new onamed and bnamed functions to rename the working and backup source files. Show the new installation instructions which no longer require editing of .bat files, and include screenshots for readers unfamiliar with the Windows Device Manager. Fix typos.

26 Sep: Eval Board Reference Manual (DB003) Update

Upgrade status to Production reflecting board revision 0.1.1. Added details in Power Configuration section (3). Added table showing FTDI flash configuration (4.3). Corrected Target pin connections to J32 in 8.1.2 and 8.2.4. Clarified jumper table in 8.2.2. Added Errata table. Updated schematics and layouts to Production. Added Bill of Materials table. Fixed various typos.

20 Sep: Getting Started with the Evaluation Board (AN004) Update

Clarified J23 pin directions in 1.2.1.

18 Sep: arrayForth Release 01b

New Windows Installer and procedures deployed. Includes several improvements in the user vocabulary.

18 Sep: Getting Started with the Evaluation Board (AN004) Update

Added information about wall-wart power sources. Updated check-out procedures in 1.4 through 1.6 to reflect 0.1b Windows Installer procedures and to reflect recent support experience.

18 Sep: arrayForth User's Manual (DB004) Update

Added 2.3 arrayForth User Vocabulary. Completed 5.3 F18 Compiler Syntax. Updated installation instructions to reflect the Windows Installer of 01b, and updated procedures for all platforms to reflect recent support experience and suggestions. Documented new functions and corrected typos. Removed inaccurate statements from Practical Example.

15 Sep: arrayForth User's Manual (DB004) Update

Photo sequence in practical example corrected. Editor description reorganized for clarity. Numerous typos fixed. Committed plan for vocabulary, F18 compiler syntax, and installer descriptions in next rev.

12 Sep: arrayForth User's Manual (DB004) Initial Release

Documentation for software release 01a, also posted today.

12 Sep: arrayForth Release 01a

This is the first release of our software support for the EVB001 Evaluation Board, including colorForth 4.1b, eForth 22a, and the Virtual Machine for polyFORTH 01v. The polyFORTH system has not been released yet but the source code for the VM is provided for study along with much other source code included in the release.

3 Sep: Getting Started with the Evaluation Board (AN004) Initial Release

This brief paper has been shipped in each Evaluation Kit starting on 3 September. It includes instructions for initial set-up and check-out of the EVB001 board.