Go to Triangle Digital Support Home Page TDS2020F TECHNICAL MANUAL
Development software
TDS-PC development software
Live website search
Enter key words



Fast start guide - About TDS-PC for Windows - Fast access keys - Interactive window - Source code editor window - External editor - Definitions database - Compilation - Conditional compilation - Capture to file - Dictionary menu - PROMS menu - Manual on disk menu - Help menu - Configuration - Library programs


See INSTALLATION OF TDS-PC FOR WINDOWS, page 14. There is information on minimum hardware and software requirements for your PC in PC REQUIREMENTS, page 209.

TDS-PC for Windows

TDS-PC for Windows



The About menu selection advises the date and version of the TDS-PC for Windows development software which you are using. From version 3.00 it is a 32-bit application compiled with Visual Basic Professional.

Apart from the development environment, installation from the CD puts on your hard disk pre-written software modules that can be called from your applications software. An extended library is available through the order code UPDATE-SERVICE.

Unless indicated otherwise in a particular file, the software on the CD is copyright Triangle Digital Support Ltd. You do not buy TDS-PC for Windows and library files but an indefinite licence to use them. This is particular to the purchaser and cannot be transferred. Within an organisation any number of copies can be made but each user must be made aware that copies may be not be taken for personal or third party use. See PLEASE NOTE, page 4, for licence and copyright details of the board computers.


TDS-PC for Windows runs on most PCs, the minimum recommended hardware requirement is:


q       Processor 486 or above

q       Speed 66MHz or above

q       800 x 600 resolution screen or better

q       640k bytes of memory or more

q       One free serial port designated COM1 to COM9


This is the minimum specification; the software will run much better on a faster machine with a 1024 x 768 display. The operating system should be any of:


q       Windows 98

q       Windows NT4

q       Windows 2000

q       Windows XP


Help screens and web connection use your installed browser. This should be at least the following version:


q       Microsoft Internet Explorer 4.00

q       Netscape Navigator 4.00


Source code for TDS-PC for Windows is supplied with the Update Service. If you wish to modify it, Microsoft Visual Basic for Windows (professional edition) is required. This is not necessary if you do not intend to make changes.

To use an external editor you will need one that accepts the file name on the same line as the command. For example this might be EDIT TASK.TDS if you want to edit the file TASK.TDS. (All Forth files created for the TDS2020F computer are automatically given the extension .TDS). If you choose to use an external word-processor the software needs to be set in the 'programming' or 'plain ASCII' mode to avoid extraneous embedded characters (e.g. tabs).


TDS-PC for Windows causes the PC to emulate a terminal. Any key typed is passed to the serial link for transmission to the TDS2020F in your prototype; any character sent by the Forth computer is received and passed to the screen.

You edit source code in one or more source code windows and then F8 will automatically compile programs by sending them line by line to the TDS2020F. When an error is detected because of a syntax problem in your program, compilation stops and the line where the error was detected is highlighted.



These keys can select the window you want without using the mouse:


Alternates between Interactive window and last used Source Editor window. However in the source editor window an option can be selected which makes a TAB key insert 2, 3 or 4 spaces in source text.


Cycles round all source code windows


Cycles round all the windows



Context-sensitive help


Terminate any unfinished definition and get out of most executing loops. The sequence sent is: ctrl+C  ctrl+Q  esc  space  ;  return  return


Open new window & show existing file


PROM file upload from TDS2020F to PC


File download from PC to PROM programmer


View definitions databases


Show Manual-on-disk (when set to TDS2020F)


Show Forth words definitions (when set to TDS2020F)


Open a DOS window-close by typing EXIT


Start an external editor


Capture to file


Kill (delete, erase) a file from disk


Open new blank source editor window


Cascade source files, put current source file on top


Zap dictionary by sending COLD to TDS2020F. See DICTIONARY MENU, page 223.



Delete selected text


Context-sensitive help


Terminate any unfinished definition and get out of most executing loops. The sequence sent is: ctrl+C  ctrl+Q  esc  space  ;  return  return


Search for next occurrence of text first sought with Find window


Compile current source text


Open new window & show existing file


View definitions databases


Show Manual-on-disk (when set to TDS2020F)


Show Forth words definitions (when set to TDS2020F)


Compile selected source text


Select all text


Back-up current source editor file


Copy selected text to clipboard


Open a DOS window-close by typing EXIT


Start an external editor


Open Find window to search for text


Insert file as text at present cursor position


Kill (delete, erase) a file from disk


Open new blank source editor window


Print current source text


Close current source editor window


Restore back-up file to current window


Save current source text with current file name


Save selected text in a file


Unravel current source text and its INCLUDE files


Paste text from clipboard to present cursor position


Invert case of selected text (upper to lower and vice-versa)


Delete selected text and put it on clipboard


Cascade source files, put current source file on top


Compile from the first start of definition before the cursor



In this window two-way communications with the TDS2020F is maintained. All characters sent by the TDS2020F are displayed in this window. Also, when this window has the focus (caption bar is coloured), anything you type is sent from the PC to the TDS2020F. The PC acts as a dumb terminal emulator.

The window position and size can be temporarily changed but these will be restored when a new source editor window is opened. Any serial input can be captured to a file if required, see CAPTURE TO FILE, page 222.


When the Interactive Window is selected these menus are displayed:
File, PROMs, Dictionary, Options, Window, Definitions, Manual, Help and About.


The message 'Serial Error' will flash in red in the top right corner of the interactive window if the PC does not recognise a byte from the TDS2020F computer. This might be caused by:


q       Baud rate setting for the serial port does not match that of the TDS2020F

q       A floating input to the PC because the TDS2020F is in standby.

q       The PC (a portable) turns off its serial port to save battery power

q       Bad physical connection-check the wire.

q       Wrong Intercharacter Delay setting.


ASCII 9 (tab) as a key input is not transmitted to the TDS2020F, it is used to switch to the last used source code window.


All serial input codes have bit 7 stripped before being displayed or being chosen as a special code below. This is not true of the data capture to file, all codes 0 to 255 are sent to the file and this can be useful in debugging applications which will ultimately connect with a second computer.


ASCII 7 (bell)

as serial input will sound the PC beeper only if


the Quiet configuration has not been made.

ASCII 10 (line feed)

will send the cursor down, scrolling the screen



ASCII 11 (home)

will send the cursor to the top left without



ASCII 12 (page)

will clear the screen and send the cursor to top left.

ASCII 13 (return)

will send the cursor to the start of the line.

ASCII 28 (right)

will send the cursor one character to the right.

ASCII 30 (up)

will send the cursor one character up.

Other ASCII codes below 32 (hex 20)

are ignored.



In this window you edit source code for TDS2020F. It is a word-processor with special characteristics for the job. For instance you can't accidentally embed control codes in the text and each line is limited to the 80-character limit needed for compiling into TDS2020F. Apart from the built-in editor, an external editor of your choice can be used to create or amend source code.

You can have many source code editor windows open at a time and may cut-and-paste between them to make editing easier. When they get jumbled organise them with ctrl+Y or select the Window menu, then Cascade source.

The File and Edit menus give access to operations you will need, like saving files and deleting text. However there is a selection of fast access editor keys available.


When editing these cursor movements are useful:



moves to start of line


moves to end of text


moves to start of text


moves to end of text

Page up

moves up one screen

Page down

moves down one screen

Arrow keys

moves cursor in four directions

Ctrl+right arrow

moves cursor one word to right

Ctrl+left arrow

moves cursor one word to left


Files should be in plain ASCII. In particular avoid tab characters inserted by some word-processors. No file should exceed 65536 characters (usually 1000 to 2000 lines of code). Split larger programs into two or more files and use INCLUDE . No line of source code should exceed 80 characters. Files produced using the built-in editor will satisfy these requirements.


By default the installation process puts TDS-PC for Windows in the c:\tdswin directory, although this can be changed during installation. The utility files are placed in subdirectories of whatever main directory was chosen and are always called tds2020 and tds9092.

When you open a source code file, either directly or during compilation, TDS-PC for Windows looks for it in several key subdirectories.

This means that you can have your projects as subdirectories of the installation directory, yet library files will still be found during compilation even though you don't give them a full path reference. For instance if your source files are in directory c:\tdswin\myjob and they reference a library routine by a statement INCLUDE #SHELTER.TDS then this will be compiled because the system will find it in subdirectory c:\tdswin\tds2020.

Files can be placed anywhere on the PC, even on a remote computer over a network. By default source code files are sought in these paths (in this order):


q       Path of top-level source file

q       Any extra paths set with 'Source file paths' command

q       c:\tdswin

q       c:\tdswin\tds2020

q       c:\tdswin\tds9092

q       c:\tds

q       Paths set with operating system append command


Here c:\tdswin is only representative. Substitute the directory from which TDS-PC for Windows was started.


q       To have other paths searched select the Source Editor window, then the Options menu. Now choose 'Source file paths', then 'Add a path'. Enter a new path in the input box, including drive letter and press return or select 'OK'. A list of paths searched for source code files is displayed.

q       To view the paths searched at any time without changing them, just leave the box empty.

q       To go back to original paths shown above make the final selection 'Set default paths'.


Your program can be split into separate source code files, each with the .TDS extension. Typically each open window will be one of your INCLUDE files, with one window, the top level of the program, being a list of INCLUDE statements. At any point in the source code you can incorporate another file by the command INCLUDE filename . The rules are as follows:


q       The line must start from the first column with the word INCLUDE

q       You can have as many INCLUDE files as you wish

q       INCLUDE files can be nested up to 100 deep; i.e. a file which is being INCLUDEd can itself incorporate INCLUDE files etc.


Note that if you have the same INCLUDE file twice, the second directive is just ignored provided you don't have more than 100 INCLUDE files in total. For example the top level of a program may be a file like this and have no code in it at all:


INCLUDE HEADERS.TDS \ Variables & constants

INCLUDE LIBRARY.TDS \ Pre-supplied software



For details on what subdirectories are searched for files see SOURCE FILE DIRECTORIES, page 214.

You can use the 'Unravel' (ctrl+U) key on the Source Code Editor File menu to expand selected source code. Any INCLUDE files are expanded in-line and the result will be written to a file. You can choose the name of the file and whether to eliminate comment and excess white space in the process.


When the Source Code Editor Window is selected these menus are displayed:
File, Edit, Compile, Options, Window, Definitions, Manual, Help and About.


Invert case (ctrl+W key)

In selected text upper case is changed to lower case, and lower case to upper case.

Date and time

Inserts time and date into the text in the format 01 Jan 02  17:29 so that you can easily date stamp source code versions.


From the 'File menu' you can merge a disk file into the present editing window at the cursor position.

Conversely, 'Save selected text' on the 'File menu' will save highlighted text to disk.

BACKUP AND RESTORE (ctrl+B & ctrl+R keys)

From the 'File menu' you can keep a backup of the file in the current editing window. A file name is suggested which can be edited to another if desired. Default back-ups have the same name as the source window in their first part, and a three digit numerical extension. The extension number suggested is always one greater than the highest already existing. For instance if you are editing file PLC.TDS then the first backup suggested is PLC.001.TDS and the next is PLC.002.TDS. If you edited this name to PLC.010.TDS then the next to be suggested would be PLC.011.TDS.

On selecting 'Restore', if they exist, a list of back-ups of source code in the current editing window is presented. The files are shown in ascending order with the highest, presumably the latest, highlighted. Select the one to restore and click 'OK'. For example if the file PLC.010.TDS was chosen the source code window PLC.TDS will be overwritten but a confirmation request is made before the action takes place. Note that the restored file PLC.TDS is not written over the file PLC.TDS on the disk, but you can do that with the usual 'Save' command.



TDS-PC for Windows has a built-in editor but occasionally you may need a specialised function not provided. To configure for an external editor select a source code window, then the Option menu, then External Editor. Using the dialog boxes to select the drive, directory then the file name of the external editor you want to use. Finally select OK. The default external editor is the Windows 'Notepad' application.


To access the configured editor select the File menu, then External Editor. The helper program will now occupy a window, or the full screen,

If you want to externally edit particular source code you can save time by first selecting a Source Editor Window containing that file. When the External Editor is chosen from the File menu that window will close. The text, if changed, will be saved and then the file will be reopened in your external editor. For this to work the external editor must be capable of accepting a file name on its command line, e.g. EDIT MYSOURCE.TDS



This feature produces reports on your source code. It gives you suggestions for code improvements and produces a report on your TDS2020F program, which can be used for project documentation. This includes a list of all Forth words in alphanumeric order.

If a source code editing window is not highlighted, only the first menu option shows because the source code from which the database is to be made is not defined.

These commands work only if you have subscribed to the Update Service and have version 2.06 or above of TDS-PC for Windows.

Words database facility

Words database facility

VIEW DATABASE (ctrl+F1 key)

This will enable you to choose a database from those previously prepared with the 'Make database' option. A database of Forth words in the kernel is always available, called


q       W2020ANS.MDB for TDS2020F ANS Forth

q       W2020FIG.MDB for TDS2020 Fig-Forth

q       W9092FIG.MDB for TDS9092 Fig-Forth

Choose one of the above or a database you made from your own code using the 'Make database' option. The screen displays a combined list of all words in the application, including:


q       the top level source code file

q       all its INCLUDE files

q       in the Forth ROM

q       in files #ANS.TDS and #EXTEND.TDS (in the case of TDS2020F)


Click on a word in the left-hand list to see its definition. Your definitions are marked with a bar to the right of the word in the selection list. Any word you defined but did not reference is marked with another symbol instead of a bar. It may be a block, open box or thicker bar depending on the font selected. These words are candidates for deletion from your source code.

In addition to the definition, the database window also shows the name of the file containing the source code and the number of times the word is referenced in your source code. For instance you may choose to move words with only one reference to in-line code instead of as a separate definition.

The databases are read-only and quite separate from your source code. A database is only updated when you choose the 'Make database' menu selection. Note that you can highlight part of the displayed definitions or source code and copy the text to the clipboard with ctrl+C. It can subsequently be inserted in new source code with Ctrl+V. This can save keying text you have used before.

All database files have the ending .MDB, for instance if the source file were TRIAL.TDS the database file would be TRIAL.MDB. They are Standard Jet Databases as accepted by Office 97 onwards.

A button marked 'File it' will produce a file with the extension .TXT, for example TRIAL.TXT with a list of all definitions in alphanumeric order followed by a report on the source file (see below). This file can be imported into a normal word-processor to help produce documentation for the application.

The other button, marked 'Print', will directly print the alphanumeric listing and source code report. This will be formatted so that as far as possible Forth definitions do not continue from one page to the next.

The display also has a button marked 'Suggest' to toggle to a list of possible improvements to your program, stored in a file with the extension .SUG e.g. TRIAL.SUG. There are not only suggestions for improvement in ROM space and execution time, the screen is a complete report on your source program and its include files. The report includes:


q       Alphanumeric list of all words defined and used, including those in the Forth ROM and files #ANS.TDS or #EXTEND.TDS

q       List of all files making up a set for your program

q       Statistics on numbers of words defined and referenced

q       List of words defined but never referenced-candidates for deletion

q       List of words defined but referenced only once. You might choose to change some of these into in-line code for speed and to save ROM code.

q       Suggested improvements to your program


The 'Print' button on this screen will print the report on your source file without the preceding alphanumeric listing.


To make this option available, click on the particular source editor window (yellow by default) which contains the top-level file of your program.

It will produce a database and (optionally) a report that includes suggestions for improving your program. TDS-PC for Windows will analyse your program (taking into consideration all INCLUDE files) and make a database of your source code procedures. Any definition can then be instantly accessed while you are editing other parts of your program. In addition you can see a report on your program, see above.

A database will be retained, even after you shut down the computer, until you choose the 'Make Database' menu selection again for the same source file.



This option, or pressing F8, will compile the source file that currently has focus (coloured caption). However first the file is saved to disk, a name being requested if not already allocated. The text is then sent to the TDS2020F a line at a time, pausing after the carriage return has been sent until a linefeed echo is received back. This indicates that compilation of the line is complete. A small delay may be inserted between sending each character, see INTERCHARACTER DELAY, page 227.

During compilation significant events are placed in the Compilation report window. Unless 'Quiet' has been configured you'll hear two beeps on successful completion of compilation, one on error.

You don't have to stand by during compilation. The edit windows are active simultaneously and often you can do useful work there until compilation is complete.

To abort compilation while it is in progress press F2.


You don't have to compile all of the text in a source code editor window. To do just part of it select the required section with the mouse left button or by using arrow keys with the shift key depressed. Then press ctrl+F8 or this menu option.

The selected text is written to a dedicated file called 'SELECTED.TDS' which is then compiled.

To abort compilation while it is in progress press F2.


If compilation stops because of a syntax error, correct the error then press shift+F8. The file is recompiled from the start of the definition that contains the error to the end of that file.


Making this selection causes all subsequent compilations to be faster by having the PC strip out all comments and redundant white space from the source code before it is sent down to the TDS2020F. While configured the menu option is checked. Remove it by choosing the menu option again.

Special attention is given to the double quotes character ( " ) in reducing the line to a minimum. The algorithm tries to pair them and between pairs no white space is removed. This means that you can include spaces as necessary inside a ." " structure for example.

If you have deliberately unbalanced double quote characters, turn off 'Quick Compile' temporarily by putting the QUICK OFF compiler directive in the source code, starting in column one. Use QUICK ON to restart it.

For shortest compilation time check both 'Quick Compile' and the next option.


Making this selection causes all subsequent compilations to be faster by not displaying the transmissions from the TDS2020F during compilation. An animated display confirms progress of the compilation.


At the bottom of the menu may be up to eight files recently used as source files, either for editing or compilation. This may give you faster access than from the generalised file and directory list boxes.


When you compile source code all significant events are reported in this window. The file name, and nature of the event are shown. The window is small initially and expands during compilation. It is reset when a new compilation begins so you may like to choose the print option when a compilation is complete.

If a syntax error is found compilation will stop. The bad line is flagged in the report window but also it is highlighted in a source code editor window, a new one being specially opened if not already on the desktop. This makes correction and recompilation easier (perhaps using 'Selected text' as described above).

The report is useful for:


q       Confirming the structure of your files in a big program where an INCLUDE directive may start compilation of another file which itself may have INCLUDEs etc.

q       Identifying Forth words that are NOT UNIQUE in the dictionary. This is not an error, just a warning but you should look closely at each one since any previously compiled Forth word with the same name will now be inaccessible.

q       Seeing any syntax error reported by the TDS2020F.

q       Confirming end of compilation and the hex address of the next free dictionary byte.


Use this when two or more versions of the target TDS2020F system must be compiled from the same source code.

Here is an example:


: TEST1 ;

#CONDITION ENGLISH \ set condition for subsequent

\ conditional compilation structures

: TEST2 ;

#IF ITALIAN \ do following if condition is ITALIAN

: TEST3 ;

#ELSEIF FRENCH \ do following if condition is FRENCH

: TEST4 ;

#ELSEIF SPANISH \ do following if condition is SPANISH

: TEST5 ;

#ELSEIF GERMAN \ do following if condition is GERMAN

: TEST6 ;

#ELSE \ do following if condition is

\ none of above (perhaps ENGLISH ?)

: TEST7 ;


: TEST8 ;


The rules for using conditional compilation are:


1.       All five conditional compilation directives (e.g. #IF ) must start in column 1. They will be processed in the PC not by the TDS2020F

2.       Use #CONDITION to define the version of the program you want to compile.

3.       Always start the structure with #IF and end with #ENDIF.

4.       Both #ELSEIF and #ELSE are optional.

5.       You can have one or more #ELSEIF conditions, but only one #ELSE

6.       If no condition in #IF or #ELSEIF is satisfied (as in the above example) the #ELSE part (if it exists) will be compiled.

7.       Only one part of the structure is ever compiled, the rest are ignored.

8.       In the Unravel and Definitions database features the complete conditional compilation structuire is included.

9.       Both the names (e.g. #IF) and conditions (e.g. ENGLISH in the above) are not case sensitive, #if English is equally acceptable.

10.    You can have as many conditional compilation structures as you want in a program, but they can not be nested.

11.    Between structures you can re-use #CONDITION to set a new condition for following structures.


In the example, TEST1 TEST2 TEST7 and TEST8 are all compiled. The other definitions are ignored. If you change the condition to read #CONDITION FRENCH then only TEST1 TEST2 TEST4 and TEST8 are compiled.


Any input from the TDS2020F can be logged to a file for subsequent examination. All ASCII codes from 0 to 255 are captured so the facility is also suitable for binary data transfers.

From the Interactive window menu select 'File', then 'Capture to file'. A window opens to allow you to choose the file to which you want the data sent. To start with only files with extension .CAP are shown but you can widen the selection so that all files are shown, or you can type a new name in the box, it does not have to end in .CAP. While you are capturing to a file the menu selection will have a check mark as a reminder.

To stop capture make the same menu selection and when the file is closed you are given the option to reopen the file as an edit window so that you can immediately view results. If the file is over 65536 bytes it may be truncated and only the first part shown. However provided you close the window without modifying the text, the whole file will remain intact. Use an external editor to capable of handling big files if necessary.

Incoming data is appended to the capture file-it does not overwrite existing data, so when you view the file you may have to move to the end to see the latest input.


'Zap dictionary' sends a sequence of codes to the TDS2020F to erase all compiled code. It will terminate any unfinished definition and get out of most executing loops so that when it sends COLD , the dictionary will be erased.

The sequence is: ctrl+C  ctrl+Q  esc  space  ;  return  return COLD return



To upload compiled Forth code from a TDS2020F to the PC press F11 or from the Interactive Window menu select 'PROMs', then 'PROM upload'. A window opens to allow you to choose which area of TDS2020F memory you want to upload, the name of the file you want to create in the PC and whether the file should be in Motorola S-record format or Intel Hex format.

Having set the various parameters click 'OK'. First the file PROGMOT.TDS or PROGINT.TDS is compiled on top of your own code to give the TDS2020F the ability to send a correctly formatted file. The data is then sent to the PC and during the transfer you can monitor the current address being processed in the progress box. At the end a message confirms completion of the transfer and you can click on 'OK' to remove the window.


q       Hex start address is the hex address in the TDS2020F of the first byte you want to appear in the PROM file. The initial number in the window is only a suggestion-you can change it.

q       Hex end+1 address is the hex address in the TDS2020F of the byte after the last one you want to appear in the PROM file. Again, you can change it.

q       File name is any that is acceptable but it is suggested that Intel hex files should have extension .INT and Motorola S-records the extension .MOT. Neither is mandatory.


Intel Hex and Motorola S-records are the most popular forms of files accepted by PROM programmers. Both incorporate checksums so that you'll be sure that the data is intact when it reaches the final PROM.

A message 'Fault, no transfer' will appear if the transfer does not proceed to completion. Possible causes are:


q       Loss of communication with the TDS2020F, check hardware and power supply.

q       If your dictionary is nearly full you might need to alter the dictionary pointer in the TDS2020F to another area of free memory (e.g. $FD80 DP ! ) before using the PROM upload facility so that there is room for compilation of the utility file.


To download a PROM file to a PROM programmer unplug the PC serial port from the TDS2020F and connect it to the serial input of your PROM programmer. Since a three-wire link is used you may have to also connect RS232 pins 4, 5 and 20 somewhere, see the documentation for your PROM programmer for details.

Press F12 or from the Interactive window menu select 'PROMs', then 'PROM download'. You now choose the file you want to download. To start with only PROM files with extension .INT and .MOT are shown but you can widen the selection so that all files are shown.

Having chosen the file select 'OK' and the PROM file download window shows progress of the download. At completion a message confirms the transfer and name of the file sent.


The file #REFLASH.TDS is used by TDS-PC for Windows to re-flash a TDS2020F program memory with a binary download. Even over a modem you can change the application in a TDS2020F. Because no source code is sent, the target TDS2020F could be at your customer without compromising security. The binary download is also useful for upgrading the software revision level of a large number of instruments because it is faster than recompilation of source code to Flash-EEPROM.

The file used for the download is a normal PROM programmer file in S-record format. This can be prepared from a working prototype of the revised application by using the PROM File Upload feature of TDS-PC for Windows.

#REFLASH.TDS is not a usual library file, you don't incorporate it in a program. It is compiled from a menu selection in the TDS-PC for Windows development environment. The automatic process is in several stages:


q       The program in the TDS2020F is erased with the word COLD . This opens the locked Flash-EEPROM and re-initialises the Cold Start Parameters so that the chip is effectively empty.

q       The file #REFLASH.TDS is compiled into the RAM space in the microprocessor, away from the Flash-EEPROM.

q       The word REFLASH made available in the previous step is executed and the TDS2020F awaits new binary data.

q       TDS-PC for Windows extracts the binary data from a PROM programmer file in S-record format and sends it byte by byte to the TDS2020F, with a 10ms inter-byte delay to allow more than enough time for the data to be written to the Flash-EEPROM.

q       The Flash-EEPROM is write-protected again and the TDS2020F re-booted to leave you with the new program already running.

The re-flashing process takes up to about 5 minutes, depending on how full the Flash-EEPROM will be. Some old PCs do not have the high performance timer used in the software and these will take up to 30 minutes.

The procedure has been well tested, even on multitasking applications but there remains the chance that a TDS2020F will be left without any program. In this case the Flash-EEPROM should be in an unprotected state so attempt the process again. Triangle Digital Support Ltd accept no responsibility for loss or consequential loss if the binary download fails.



1.       If the TDS2020F program has a Part1/Part2 configuration you need to edit file #REFLASH.TDS before starting. On the fourth line from the end, change $8890 to read $4090.

2.       To see the menu option in TDS-PC for Windows you need version 3.05 or beyond, see the About menu to get the revision number.

3.       Select the 'TDS2020 ANS Forth' computer at start-up or from the 'TDS Computer' menu.

4.       Ensure the target TDS2020F is connected and escape to Forth from the application. If it is a multitasking application stop all tasks with a series of commands in the form FRED HALT .

5.       Click the black interactive window, then the 'PROMs' menu, then 'Re-flash TDS2020F'. Now just wait until the process is complete and the new application has re-started.


q       Contents (ctrl+F2 key) opens the contents page of the Manual-on-disk. It only works if TDS2020F has been selected in the computer board selection window.

q       Search opens the index window for the Manual-on-disk.

q       Latest information opens file whatsnew.htm.

q       ROM updates opens file #UPDATES.TDS showing information on updates to the Forth kernel.

q       Forth Words (ctrl+F3 key) opens database showing just the words in the Forth ROM. See Definitions menu. This command works only if you have subscribed to the Update Service.


q       On-screen help displays the contents page of the manual in hypertext format, from where you can jump to the required subject.

q       Web downloads assumes an Internet connection. It goes to the page from where you can collect the latest version of TDS-PC for Windows and library files.

q       TDS website also needs an Internet link. The website includes specifications, Experts List of people who can design TDS2020F systems for you and links showing many applications already implemented by customers.

q       Place order connects to the Triangle Digital Support' Web-based e-commerce site, from where you can place account or credit card orders.



For configuration you need to access three option menus in turn, one in each of these windows. First select the window (e.g. by clicking in it) then the 'Options' menu to gain access to various options for that window:

q       Interactive window options

q       Source code editor window options

q       Compilation report options


In addition there are some configuration options on these menus:


q       Compile menu (for two faster compile options)

q       File menu-source code editor (for printer setup selection)


This window is used to configure TDS-PC for Windows to work with a particular computer board. By default it is presented on entering the program but you can stop its appearance by un-checking the 'Opening Dialog' box.

At any time you can choose to work with another computer board by bringing up this window. To do that, first give the interactive window the focus (by clicking in it), then select 'Options' and finally 'TDS Computer'. To select the TDS computer type choose between on of these options:


q       TDS2020F ANS Forth, e.g. version 4.02

q       TDS2020 Fig Forth, e.g. version 2.13 (now obsolescent)

q       TDS9092 Fig Forth, e.g. version 1.10A

q       Terminal emulator


If the 'Terminal emulator' selection is made, the PC acts as a plain dumb terminal. In the Terminal mode you can not compile programs and when the OK button is pressed to make the selection no time and date is sent down the wire from the PC. It is useful when:


q       running or testing your program as opposed to compiling and debugging source code

q       using TDS-PC for Windows to communicate with another serial device such as a modem


The 'No reset' button leaves the selection unchanged and nothing is sent from the PC. The 'OK' button confirms the selection, which is retained also for next time you use TDS-PC for Windows. Forth code strings are sent to the Forth computer as follows to get it ready for development:


q       TDS9092 only:
$B400 $820 ! $A000 $81E ! $A000 $1400 BLANKS
This initialises the board for use of the on-board editor and clears the area of RAM used for 5 Forth 'screens' on the board. This editor is not often used but can be helpful for quick turnaround when debugging hardware. See the TDS9092 Technical Manual for further details of the on-board editor.

q       TDS2020F & TDS9092: The word DECIMAL to set the current number base.

q       TDS2020F & TDS9092: A string using NOW and HRS to set the on-board clock to the same date and time as the PC.

q       TDS2020F only: The word W! to copy the newly set date and time from the board clock to the chip clock.

q       TDS2020F ANS Forth only: The word START to produce the start-up banner and enter the interactive mode.

q       TDS2020 Fig Forth and TDS9092: The string IBM ABORT to set default cursor control codes, produce the start-up banner and enter the interactive mode.


If the 'Opening dialog' box is checked this window will open each time you start TDS-PC for Windows.


When a TDS2020F accepts a character from the PC there is short delay while it is put away before the next character can be accepted because by default input is not made under interrupt and to keep things simple a three-wire link without handshaking is used. If the PC is much faster than the board small delays have to be inserted between each character the PC sends while compiling. You can set the delays independently for TDS2020F and TDS9092.

If you want input to take place under interrupt without any delay being necessary install the library file #SHELTER.TDS.

The delay parameter is an arbitrary number. Setting it to 0 will cause characters to be sent as fast as the PC can produce them. The initial number in the box is that advisable from a measurement of your PC speed that TDS-PC for Windows has already made. We suggest you leave it unchanged unless you find compilation stops because of loss of occasional characters. In that case increase the number. A decrease in the suggested number might be possible and it will increase compilation speed.

You can change the number either by selecting one of the values in the list or by typing in a number. When complete click on 'OK'.

The delay shown is for the computer type to the right of the number, either TDS2020F or TDS9092. You can set the delay for the other type by selecting 'TDS Computer' from the Interactive options menu. Both windows can be present at the same time and clicking on different selections in the 'TDS Computer' window will be reflected in the delay presented in the 'Interactive delay' window.


In 'Options' on the Interactive Window menu you can select the PC baud rate from the values 38400, 19200, 9600, 4800, 2400, 1200, 600 & 300. Note that this will only change the speed at the PC end of the wire so to change communication with a TDS2020F to a different baud rate go through this two-stage process, taking the example of a requested 1200 baud:


1.       Type 1200 BAUD return to change the remote computer speed. You may now see the error message 'Serial error' because the speed of the TDS2020F does not match that of the PC at this point.

2.       Select the Interactive window, 'Options', 'Baud rate' then '1200' to change the speed of the PC.


Do a few returns to clear out any corrupt characters produced during the changeover.

The default baud rate at power-up on both the PC and remote computer is 9600 so if you change the link speed and then reset either the PC or the TDS computer they will not communicate. You will need to restart both ends.


Change the PC serial port from the 'Options' on the Interactive Window menu. When TDS-PC for Windows is first used it opens each communications port (COM1 to COM9) in turn until it does not receive an error message. It then assumes that this is the port you'll be using to communicate with a TDS2020F or TDS9092. For instance if you have two ports and COM1 is used for a mouse then COM2 will be automatically configured. If you want to use a different port from that automatically selected check the one you require. It will be stored for use next time.


On 'Options' on the Interactive Window menu this selection is checked by default. It ensures that when you enter TDS-PC for Windows your keyboard is put into the capitals lock mode (character keys produce upper case, not lower case). This is usually the most useful since standard Forth words are upper case. If you remove the check the keyboard mode will be left unchanged on entry to the software.


All three main windows, Interactive, Source code editor and Compilation report use the same font characteristics. 'Font' on an 'Options' window selects the size of each character on the screen in points (units of 1/72 inch). The default font is 10pt but since some fonts are only available in a limited number of sizes (sometimes only one) the characters on your screen may not appear to change when you select a new size.

The default font type is 'Courier New'. It is non-proportional-allowing you to produce source code neatly indented with vertical features. If you prefer a proportional font it can be used but you'll receive a warning of this when you make the selection.


Both background and text colours can be set for each of the three main window types. They are remembered when you finish work with TDS-PC for Windows so you will always see a colour scheme you are comfortable with. You need to access three option menus in turn, one in each window. First select the window (e.g. by clicking in it) then the 'Options' menu to gain access to the colour option for that window.


Pre-written software modules can form the major part of your application program for TDS2020F. Locate the ones you need with a separate Applications Software datasheet, available on request.

Library file names indicate for which card computer they were written:


q       $ TDS2020 Fig-Forth ver 2.13 or before

q       # TDS2020F ANS Forth versions 4.00 or above

q       _ TDS9092 8-bit Forth Computer


All library files end in .TDS . For example file #DOSHD.TDS is a library file for a TDS2020F card computer running Flash Forth.

Go to Triangle Digital Support Home Page Go to top   Next page