Return to the Home Page...
Features on BBC BASIC programming...
Your questions and answers...
Buy or Sell an NC...
The NC200 manual and data sheets for BBC BASIC...
Information about BBC BASIC on the NC...
Free software for you to download...
Full index to software...
Novelty programs...
Odds 'n' Ends...

Tim's Amstrad NC Users' Site

Applications Software to Download


OAccounts Keep track of your income and expenditure
OBookFinder Book indexing system
OCalculator Scientific calculator
OCard Compiler Business card design
ODraw 2000 Simple drawing package
OFood for Thought Information on E additives in food
OGrapher Simple graphing program
OLogic Gates Simulation System Simple simulation of logic systems
OMusic Star Music indexing system
ONational Lottery Number Recorder Various lottery number functions
ONC-Tools File viewing and management tools
ONewton Raphson Curve Root Finder Solves equations
OPCB CAD Simple printed circuit board design
OProgram Autoloader Displays a menu of programs upon entering BBC BASIC
OResistor Colour Code Identifies resistors by their colours
OSliding Conversion Scales Convert one quantity into another
OTimeCalc Solves calculations involving times and prices
OTurtle 'Logo' graphics system

Programs marked 'From ANUW' are taken from Mark Ray's Amstrad Notepad Users Web.


Written by: Peter Hopkins

For: NC200 Windows

ACCOUNTS.ZIP ... Main Program, Archive Viewer, and Accounts File Converter ... 15kb
ACCOUNTSWIN.ZIP ... Windows version ... 55kb


I wrote this program to look after my own expenses on my current account so it only deals with one credit card which is paid off at the end of the month.

As the program uses the date in its functions it is advisable to keep the NC200 time/date relatively accurate.

Pressing Stop in any option returns to the main menu.

Mostly in any option if no data is entered when asked the program will return to the main menu.

When first run the program loads in a file called Money.dat which initially won't exist and the program will stop with an error. When this occurs just enter


and then enter 'y' when asked to save the file.  It will start to save but will also produce an error. After it has, just RUN the program again and it should now run ok and produce a menu.  The options are explained below:

(0) Reload Data and (1) Save Data
Loads and saves the data respectively.  If you have made a change to the data then option (1) will be highlighted as a reminder. When you do save, it overwrites the old file

(2) View/Alter Current Account
This shows the last 20 transactions in the current account in 2 steps of 10. If you enter no data it will return to the main menu.  You enter a text description and then the value. A '-' means a debit but no sign means a credit.  Although only 46 characters are displayed for the text descriptive part, all of what you have entered will actually be saved. See (E).  As transactions are made they work themselves from the bottom to the top and then "fall off" but before they fall off the program automatically creates an archive file so no data is actually lost.  All transactions are automatically date stamped.

(3) Find Item in the Current Account
A small search search and find routine on the current account and is case sensitive.

(4) Graph of Current Account
Produces a graph of the current account and is auto scaling. If you run this with no data you will get a division by zero error.

(5) View/Alter Credit Card
A bit like the current account but you first have to enter a line number and then the data.

(6) Pay Credit Card
To pay off the credit card.  Once you have entered the the cheque number the program automatically makes an entry into the current account and clears all the old credit card entries.  If the credit card value is zero then the program will see this and exit this option automatically.

The program displays the information on who to pay the cheque to. This data is held in a variable called date$(0).  To enter this data, return to the main menu. Press the 3 keys Control, Symbol and Q together at the same time. This breaks into the program and clears the screen. Now enter date$(0)="put the info on whom to pay your credit card between these quotes"

Now enter


and enter 'y' when asked and then enter RUN.  You need only do this once as the program now remembers the details

(7) View/Alter Direct Debits
First select a line number, then some descriptive text, then the value, then the day of the month it is payable, then a "Y" if it is seen to have been paid for the current month.  If you select a line with existing data it allows you to enter new data, however if you just press RETURN it will ask you if you want to delete it.

(8) Pay Direct Debits
This pays the direct debits.  If a debit has a tick on the left it means it has already been paid this month and so won't be offered this time. If the debit is payable on the current day a beep will be heard. When the Accounts program is run, it looks to see if any debts are payable on the current day and if so runs this option.  Any debits which are paid will automatically be entered into the current account.  If there are no debits or they have all been paid then the program will see this and exit this option automatically.

(9) View projected Data for End of Month
Shows the balances the debits and shows how much will be left.  The number in the top right shows how many current account transactions before an archive save.

(A) Reset Direct Debits
At the start of a new month all the debits are automatically reset to unpaid but you can do the same at any time here

(B) Re-sort Direct Debits
To keep all the Debits day payable's in numerical order.

(C) Cash for End of the Month
An option I created for me.  Now, being salaried I take out money per week and to keep track of how much I have at the end of the month I use this to help me.  It makes an entry into line 20 in option 5.

(D) Banks Difference
I use this to keep a track of the actual balance from the bank to what this program calculates.

(E) Create Text File of All Data
This writes all the information you see displayed from all the various options to a Protext text file. You can select the file name or it will create one called Accxxx.Txt.  It duplicates all the text descriptions in case any were shortened.

(Q) Quit
Ends the program.  If it jumps to the Save routine then it means you have made changes without saving. Entering 'y' here will save the data then exit the program or you can hit the Stop key to abort the exit.


This program reads the the Archive file.  the archives are called MON_ and the program will ask for the filename. Just enter the number (it assumes MON_) and press return.  This program is really a cut down version of Accounts.txt and I tend to use it mostly for option (P) to create a text version which I then transfer to a word processor. If the archive file is MON_00.DAT then the text file generated will be MON_00.TXT.

The author accepts no liability for any damages arising through the use of this program.

Book Finder

Written by: Tim Surtell

For: NC200

BOOKFIND.TXT ... 6.7kb

This simple database program allows you to record details of books in your collection and search for a book using a simple search routine using INSTR. Fields included are : Title, Author, Publisher, Date, Catalogue number, and ISBN. Details are stored in a file called 'BOOKS.BF'.



Written by: John Blackburn

For: NC100

CALC14.ZIP ... 16kb

This is an improved calculator for the NC100, and it includes both formula and number memories in addition to scientific functions.  To run the program, copy all of the files inside the zip archive to your NC100 and run the file "CALC14.BBC".

Card Compiler Version 3.5

Written by: Tim Surtell

For: NC200

... 27.6kb

My longest program!
Card Compiler makes it easy to create your own business cards, complete with logos, it's main feature being the same sort of user-friendly graphics as the other NC200 software.
You can use any font on your printer provided you know the codes.

Screen Shot of the Card Compiler main menu
Draw 2000

Written by: Tim Surtell

For: NC200

DRAW2000.TXT ... 12.1kb

The original (and best) version of this is for the BBC Microcomputer, but the NC version is roughly the same, although it takes ages to save, load and print.

Food for Thought

Written by: Chris Nixon

For: NC100 NC200

FOOD1.TXT ... NC100 Version ... 9kb
FOOD2.TXT ... NC200 Version ... 9kb

Enter an 'E number' additive into this program and it will tell you what it is used for and if it has any side effects.

Visit Robin's homepage at

From ANUWGrapher

Written by: Mark Ray

For: NC100 NC200

GRAPHER1.TXT ... NC100 Version ... 1kb
GRAPHER2.TXT ... NC200 Version ... 1kb

Simple graph plotting program. Type in an equation using standard BASIC commands and one variable 'X'.

Logic Gates Simulation System

Written by: Tim Surtell

For: NC200

LOGSS.TXT ... 22.5kb

The LOGSS program lets you test out simple logic circuits using gates.
Use the cursor keys to move around the screen, SHIFT and cursor keys to move around the menu. Press ENTER to place an object. Every system must have an input(s) and an output(s) -- these are the objects with the small circles. Before processing the circuit you must set these inputs by placing the cursor over each one and pressing 1 or 0. Once this is done press P to start processing. This may take a while. Connections that are logic 1 stay solid, connections that are logic 0 become dotted. Up to nine circuits can be saved -- press S and then a number from 1 to 9. Press L and the same number to re-load the circuit.
I have included some example files :

CIRCUIT1.LOG -- 4 bit control gate
CIRCUIT2.LOG -- 1 of 4 decoder
CIRCUIT3.LOG -- Half adder
CIRCUIT4.LOG -- Full adder
CIRCUIT5.LOG -- Exclusive-OR gate

Music Star

Written by: Tim Surtell

For: NC200

Screen Shot of a CD catalogue search in Music StarMSTAR2.TXT ... 14kb

This program is a database for your music collection. The database is held in four files :

CD_IND.MS -- Compact discs
TAP_IND.MS -- Cassette tapes
RECS_IND.MS -- Single records
RECA_IND.MS -- Album records

Separate files are used because if you have a large collection, a single file may not fit in the Notebook's memory.
If none of the files are in the memory when the program is run, they are created.

The program allows you to search for a word in the title or artiste fields, or view the entire contents of the catalogue. There is also a sorting routine.

National Lottery Number Recorder and Selector

Written by: Peter Hopkins

For: NC200

A screen shot of the National Lottery Recorder and SelectorLOTTERY.ZIP ... 5kb

Using this program you can record the UK National Lottery (Lotto) results for both Wednesday and Saturday draws.  You can then get a graph showing how many times each ball has appeared and get the program to choose some numbers for you.

The LOTTERY.ZIP file contains the program as a text file and the lottery numbers to January 2003 can be found in the LOTTNUMS.DAT file which must be transferred to the NC200 in binary format and cannot be opened in the Word Processor.

NC-Tools Version 2.01

Written by: Hans Bohling

For: NC100/150/200

A screen shot of NC-Tools Version 2.01NCTOOLS.ZIP ... 20kb

NCTREAD.TXT ... Original Read-Me File ... 7kb

NC-Tools is a file management program for the Amstrad Notepad Computers NC100, NC150 and NC200. It offers you the possibility of file operations using a single keystroke and comfortable BBC BASIC program development using the built-in full screen file editor.

NC-Tools gives you the following facilities:

A -- Append the selected file to another file.
B -- BBC BASIC command line.
C -- Copy a file.*
D -- Delete a file.*
E -- Mark a file for editing when extension is "LIS" or "TXT".
F -- Sends a file out to the RS232 port.*
G -- Receive a file from the RS232 Port.
H -- Show the hexdump of a file.*
L -- List a file on the screen.*
P -- Sends a file out to the printer port.*
Q -- Quit the programme.
R -- Rename a file.*
S -- Sort the directory by name, extension, size or date.
U -- Unmark all selected files.
Space -- Select a file and move the file selector to the next.
Enter -- files will be loaded based on their extension:

A file with the extension "BAS" (BASIC) will be run.
A file with the extension "LIS" (listing) or "TXT" (text) will be listed on the screen.
A file with the extension "SCN" (screendump) will be loaded to the screen memory. 
A file with the extension "PIC" (picture) will be shown on the screen.

Red -- Move the file selector to the top of the list.
Green -- Move the file selector to the end of the list.
Up --  Move the file selector up.
Down -- Move the file selector down.

(* Multiple file operation possible)

Easy editing of BBC BASIC programs

Put the file selector on a file with extension "LIS" (must be in upper case!) and press E. Press Yellow and Red. Editing the listing and when finish don't press Stop, press Yellow and B.  If you give NC-Tools the name "AUTO", it starts automatically. You don't have to wait until the file listing appears, simply press B and the BBC BASIC command line is ready. Press Symbol and X and the file will be loaded via "*EXEC FILENAME.LIS". Press Symbol and S and "SAVE FILENAME.BAS" will appear. When you press Yellow and Red you will be in the editor again, just at the line you leave it.  In BBC BASIC you can use the following keys:

Symbol and E -- EDIT
Symbol and I -- LIST
Symbol and L -- LOAD "
Symbol and N -- RENUMBER (Enter)
Symbol and O -- *SPOOL
Symbol and R -- RUN (Enter)
Symbol and S -- SAVE "FILENAME.BAS"
Symbol and X -- *EXEC "FILENAME.LIS"

From ANUWNewton Raphson Curve Root Finder

Written by: Mark Ray

For: NC100 NC200

NEWTON.TXT ... 1kb

Type in an equation using standard BASIC commands and the program will solve it using the Newton Raphson method.


Written by: Tim Surtell

For: NC200

PCBCAD.TXT ... Old version ... 19kb
PCB351.TXT ... New version ... 24kb
PCBHELP.HLP ... Help file ... 6kb

PCB CAD is a program for drawing Printed Circuit Boards. The new version (version 3.51) allows you to use a mouse to control the placement to objects. For more information about the new version take this link.

Program Autoloader

Written by: Peter Hopkins

For: NC200

AUTO.TXT ... 3.2kb

When you enter Basic, if it exists a Basic program called Auto (not Auto.txt) will Auto-matically run. This version of Auto runs a small menu allowing you to run your other basic programs off it.  It also has the Full Date program incorporated within.

Your program names as displayed in the menu screen need to be held as data statements in lines 460 to 480 and the actual program names which will be CHAINed should be put in lines 580 to 690.

Not displayed in the menu:

  • 0 Goes Into Basic
  • Q Returns to the desktop
  • Control Symbol Q breaks into the program as does Stop
Resistor Colour Code

Written by: Tim Surtell

For: NC200

RESCODE2.TXT ... 3kb

A program to work out the value of resistors from their colours. Simply enter the three-band code using the cursor keys and the value is displayed.
You can also use the template that fits over the keys so that a resistor value can be found after two key-presses.

Sliding Conversion Scales

Written by: Chris Nixon

For: NC100 NC200

SCALES1.TXT ... 5kb
SCALES2.TXT ... 5kb

This handy program converts from one quantity into another.  Simply enter a number and use the cursor keys to select the two quantities that you need (e.g. inches and centimeters).  The number you have entered will appear converted from one quantity into the other, and vice versa.  For the inches and centimeters example, entering 1 will result in a conversion from inches to centimeters (2.54cm) and a conversion from centimeters to inches (0.394").

Visit Robin's homepage at


Written by: Jameel Siddiq

For: NC100 NC200


TimeCalc is a simple calculator which utilises the power of the BBC BASIC 'EVAL' command to perform time calculations.

Time can be input as decimal, or hours and minutes.  So, for example, two-and-a-half hours could be input as either 2.5 hours or 2:30 (which represents 2 hours and 30 minutes).

Output can be either decimal, obviously needed where a price or cost is the final output, or hours and minutes where the final output relates to time. The default output is decimal but time output can be requested by terminating your input with a colon (:).  Small decimal answers may be expressed in exponential form.


Below are three examples:-

  1. I want to calculate my pay for one day at the rate of 4.10 per hour.  I started work at 09:45 and stopped for lunch at 12:15 and then resumed at 13:10 and worked through till 17:10.


    ((12:15 - 09:45) + (17:10 - 13:10)) * 4.10

    Ans = 26.65
  2. I have 4 hours 15 minutes left on a long play video, how many complete 25 minute episodes of a serial can I record? 


    int(4:15 / 0:25)

    Ans = 10
  3. Following on from example 2, how much time will be left on my tape after recording the 10 episodes?  As the answer relates to time we have to terminate our input with a colon (:)


    4:15 - (10 * 0:25) :

    Ans = 5 Minutes

Please note that answers less than 10 minutes will be expressed as minutes but bigger answers will be expressed in hour and minute form (i.e. 1:10 for 1 hour and 10 minutes, and 0:15 for 15 minutes).

The program will allow you to do more than one calculation and when you want to quit just press RETURN all by itself in response to the 'Timecalc : ?' prompt.

Finally, please feel free to modify/improve the program and feedback any significant improvements to Tim.

Jameel Siddiq
6 November 2000


Written by: Tim Surtell

For: NC200

TURTLE2.TXT ... 15.1kb

My version of the popular drawing program. Type 'help' at the prompt to display the commands that can be used.

Programs marked 'From ANUW' are taken from Mark Ray's Amstrad Notepad Users Web.

1997 – 2024 Tim Surtell

Tim's Amstrad NC Users' Site

Return to top of page...

| Home | Features | Data Sheets | Questions | BBC BASIC | Software |