MASTERFILE PROFESSIONAL (M-PRO)
An unofficial site for the Masterfile Professional (M-Pro) relational database program
Sections on this page
Masterfile Professional -
Masterfile Professional now
Masterfile Professional User Group (MPUG)
Features of Masterfile
How Masterfile works
History of Masterfile
Tips for M-Pro users
More database solutions
Advantages and disadvantages
This site started: 25th May 2007. Last updated: 7th May 2011.
Most users can change the size of the text by turning the
scroll button of the mouse while holding down the 'Ctrl' key.
Masterfile Professional - Summary
MASTERFILE Professional ("M-Pro") is a flexible general-purpose, programmable, relational database and text file manager for use on
virtually any PC.
The text handling includes a WP capability and a large spell-check dictionary.
The main power of M-Pro lies
in its database functions. Data files allow many fields, including variable-length text up to 4K in one field. Several multi-level indexes
can be created for any file. Data presentation offers a huge number of options. Data files can refer to each other in a relational manner.
The user can define and use macros, menus, and library functions. File processing, data entry, and data display functions can be further
enhanced using a powerful built-in programming language.
The system allows several files to be open at the same time, with any
mixture of text and data files, either related or otherwise.
The author has retired, his business no longer exists, and the program
is no longer commercially available. However, there are still keen users who appreciate the program's many virtues.
Most of the
information here describing M-Pro and its features has been taken from the program's online manual.
Masterfile Professional now
M-Pro has keen users who find it very useful and full of thoughtful features. There are many other database programs but few as
satisfying. The fact that it is a DOS program must put off many. While being a DOS program can cause some problems (depending mainly on the
computer and printer used), they can be largely overcome.
M-Pro runs happily under Windows XP. However, it cannot print directly
using a USB connection since DOS needs in practice a parallel connection (although people not connected with M-Pro have tried to remedy this
and a solution might yet emerge), or to a "brainless" printer that has no in-built fonts. In these cases M-Pro should be used create a file
that can be opened and printed using a Windows program. Although M-Pro has no inherent knowledge of HTML or RTF, it can be used to create
Web pages and RTF files.
As a compactly written program, M-Pro can run on almost any PC, and it runs very fast on modern PCs. Unlike
most Windows programs, as a DOS program M-Pro is self-contained and can be installed on, and run from, a flash drive, making it very
portable. You can then use the program with any Windows computer that has a free USB port.
Paradoxically, the USB port is both a
potential problem (unless there is also a parallel port) and a potential convenience for using M-PRO!
Masterfile Professional User Group (MPUG)
It is proposed here that the Masterfile Professional User Group (MPUG) be revived, on an informal basis, for the mutual benefit of the
program's users. If you use M-Pro please register your interest. There is no commitment and no subscription.
If sufficient interest
is shown, in due course we can start a forum to discuss ideas, problems and opportunities. If you have any suggestions in this regard, or
can help, please write. Please say whether or not your comments and suggestions may be quoted on this site, with your name given as,
for example, "John L." or "Peter M.", sufficient for reference here.
In any event, let us know that you are an M-Pro user by writing
to this address: email@example.com (this address will be changed if spammers use it, so please check it here shortly before
It would be helpful if you give some indication of how much you use the program and whether you can help in any way with a
user group, but don't be put off from registering even if you cannot help - we need to know how many M-Pro users there are. Thank you.
Features of Masterfile
List of Features
- Pop-up on-line manual/reference charts
User pop-up Help/Memo system
- Several tasks can be open simultaneously
- Split-screen / re-sizeable window option
High-resolution display option (up to 50 lines)
- Pull-down menus with lower screen descriptions
Sorted and filtered directories with tree-climbing
- Generic central printer driver, spooled output
- Mouse support (best disabled when running under Windows)
- Uses up to 2MB of EMS for buffers
- Customiser for
colours, menu style, key rate, etc.
- User global macro library
- Screen saver when idle
- Multiple date/time-triggered
- Variable-length data fields up to 4K
- Up to 200 fields per record
Character, Date, Numeric and Time field types
- Each field can have its own data entry memo or menu
- Data look-up tables and
- Up to 16MB per data file, about 200,000 names/addresses
- All records are date-stamped on creation and at
- Up to 9 key-indexes per file, up to 6 fields per index
- Re-generate any/all indexes on demand
system-generated formats per file
- Up to 60 user-designed formats per file
- Formats can be up to 500 columns wide
record can display from 1 to 200+ lines
- Textual data can be re-wrapped to any width
- Variety of date and number presentation
- Headers, Footers, Pagination
- Include external text, for example mail-merge letter
- Totals and sub-totals, logical
- Print directly or to disk, multi-copy options
- Print multiple (labels) across
- Rapid search on any field,
- Search library
- File macro library
- File memo/help system
- File analysis for numeric
- Powerful programming language (DPL)
- Retrieve from and update relational files
- Import/Export ASCII data or
- Selective file copy
- Data file merge
- Serialised field (invoice numbering for example)
- Zoom into
another format and out again
- Display all/selected/un-selected records
- File encryption option
- Passwords for file access
- Passwords for critical functions
- Bar-chart presentations
Network edition allows file-sharing between several users
- Direct ASCII files
- Indexed document files (IDF's)
- 64K per
document, 16MB per IDF
- Encryption and Password options for IDF's
- Spelling checker with updateable dictionary
headers, footers, margins, tabs
- Word-wrap and paragraph re-format
- Dynamic page boundaries
- Spot colours
- Special characters and accents
- Block functions, cut-and-paste
- Find and Find/Replace with fwd/bwd
- Page numbering
How Masterfile works
Files and Tasks
M-PRO handles three kinds of file :
- Simple Text
- Indexed Document
A Simple Text file is a discrete ASCII text file, such as a DOS batch file. M-PRO can manage these in much the same way as can
other text editors.
An Indexed Document file, or IDF, is one in which many documents can be maintained, each indexed with a name of
up to 30 characters. There are many advantages to storing documents in an IDF. They are efficient on disk storage, they are easy to
recognise, and they can be manipulated in groups. Although to DOS an IDF is a single file, in some respects it can be thought of as many
files (documents) accessed through an index analogous to a disk directory. An IDF offers a very tidy way of storing and maintaining
Note: Junior/budget edition of M-PRO does not allow IDFs.
A Data file is a structured file containing information organised
into records and fields which can be searched and displayed in many different ways. Each data file can have several indexes, each presenting
records in a particular order, and allowing relational linkage to other data files. Each data file has an associated service file, which
holds all the data file's specifications.
When a data file or document is being presented or worked on, we call it a task. M-PRO
allows several tasks to be open at the same time, and the user can switch effortlessly between tasks. Tasks can be presented full-screen or
in a "window". A clipboard systems permits text to be copied from one task, document, record or field to another.
M-PRO has an
adjourn option which allows the program to be shut down in such a way that it will automatically warm-start the next time it is used.
Warm-start reinstates all tasks which were open at the last adjournment, and resumes at the adjourned position. (Exception: with the network
version, shared data file tasks are not always warm-started since other users may have changed the file meanwhile.)
and adjourn/warm-start allow the user to leave one job, do another, and then return to the first job (or any other) where it was left off,
without the need to close or open or re-position within files.
You can be writing a letter and in mid-paragraph find a need to refer
to a data file before continuing with the letter. With M-PRO this is easy. You open the data file and work on it, then touch a key to return
to the letter with the cursor flashing right where you left it. If you have left the data file open, another key-press takes you back to it.
You can "lift" information from one task and copy it into another using the clipboard.
Just two key-presses adjourns your session, to
be resumed at the next run of M-PRO when it will warm-start automatically. At the end of your work session, rather than closing down all
tasks and quitting M-PRO, you may find it more convenient just to adjourn. Re-booting and disk re-organisation will not hinder the next
Data File Concepts
A data file is designed by numbering and naming its constituent fields in a data
specification document. This document can include validation rules, presentation rules, pop-up data menus, and is interpreted dynamically.
This means that there is no compilation phase and changes may be made and tested in seconds.
A data file is presented and operated
through one or more formats, which are documents describing which fields to show, where and how to show them, as well as headings,
narratives, line-drawing. As with the data specifications, formats require no compilation and they are instantly and easily modified and
Formats not only display the data, they are also used for data entry and data modification, and for printed output. Over
sixty formats can be built into a file, and they may be modified at any time. Two of them, which we call system formats, are built
Even greater power and flexibility is available through M-PRO's data language, called DPL. Using DPL a sequence of
processing steps (called a program) can be written to calculate and display derived information. DPL also provides the means to retrieve
data from other files to augment the immediate file. Files thus connected are said to be relational. DPL is written directly into a format
in order to display relational and derived data. It may also be written into other parts of the service file from where it can be used to
perform other processing both automatically and on demand. There is no visible compilation stage and the change/test cycle is a matter of
The data proper is stored in a file which has a relatively simple and robust design. Indexes are used to sequence the
records and are maintained in separate files which can be erased and re-generated at will.
The secret to M-PRO's file design
flexibility is the concept of the service file. Every data file has an associated service file in which reside all the specifications,
formats, programs, and other user-edited effects. A service file has the same structure as an IDF; it can even be accessed like an IDF
although this is not usually necessary.
For advanced applications, DPL programs can be written in an Extended or External form,
called EDPL. EDPL programs allow M-PRO to be run
in a highly tailored manner, and are written and compiled independently of
any data files.
One EDPL program can be made resident, which means that it can be
invoked on demand to call other programs
or to open or switch to other files/tasks.
Note: Junior/budget edition of M-PRO does not allow EDPL.
Other Main Concepts
Central to all M-PRO's text processing is its editor, used for all data entry and
text handling. The editor offers most of the expected WP functions, including a spell-checker (except budget/junior edition of M-PRO). The
spelling dictionary includes place names, common UK surnames, forenames, and abbreviations, and may be updated in use with the user's
A central printer driver serves all files for the purpose of special effects such as underline, double-strike etc.
Several printer drivers are provided, addressing the main classes of printer: matrix, ink-jet, and laser. The user may adapt these and
create other drivers.
The program allows three levels of pop-up help. There is the on-line manual [from which most of this is
taken]. Two other levels are set up and maintained by the application designer or the user. One is for global use, i.e. task-independent;
the other is specific to a data file and is accessible while working in that task.
A sequence of key-strokes can be stored as a
macro ready for re-use.
You may set up both global macros and file-specific macros. Most macros will be file-specific.
M-PRO is primarily menu-driven. Most of the time there is either a menu on
screen, or a list of topics from which a menu may be summoned. Most of the standard menus also offer further explanatory notes (at
the bottom of the screen) coupled to the menu bar.
Whilst in theory M-PRO could have designed so that every function is invoked
from a menu, it would have been cumbersome to use this way. Instead, most of the often-used data and editing functions are summoned
using direct controls which must therefore be learned by the user. For example, to delete a line of text while using the editor, we use
. There is no menu option to delete a line, so you must commit functions such as to memory.
Of course, the
on-line manual tells you everything you need to know, so the only control key you really must commit to memory at the outset is which
shows the manual on screen.
There are opportunities for the designer to build choices into the system, such as display styles,
search patterns, and functional macros. In all such cases, M-PRO provides the means of giving a descriptive label to every option.
Thus the burden on the user's memory is minimised since the system always presents a menu of these descriptions.
While you are
viewing your data the screen is kept reasonably uncluttered. One does not want the screen to be over-crowded with unimportant
information, but one does expect certain reminders on screen, such as the date and time (at top) and something telling you where the
cursor or the highlight bar is (at bottom). In addition, since M-PRO allows several tasks to be open at a time, one needs to know what
task or file one is looking at (task caption). However, even these screen effects can be switched off if you prefer.
History of Masterfile
The MASTERFILE filing system first appeared in 1982, on computers built around the Z80 micro-processor. The first "PC" edition for
IBM-compatibles appeared in 1987. All editions were menu-driven and offered variable-length data and multiple user-designed data
presentations. Most editions allowed data files to link relationally. In 1989 the third PC edition introduced a text processing
The fourth PC edition of Masterfile was a total re-design, with the aim of combining the ease of use of the earlier editions
with greater capacity, and more flexibility than before. The differences between third and fourth editions became so great that it seemed
no longer appropriate to refer to the new system simply as the fourth edition. Instead, the word "Professional" was added to give the name
it now bears. For brevity in the program is often referred to as "M-PRO".
Masterfile Professional was first used in late 1991, and
many features were added over the years until March 2000. There was no version numbering since development was continuous. Each copy of the
program was dated.
There are, however, several versions of M-Pro in another sense of the word "version". A cheaper "junior" or budget
version omitted some features, while a network version allows several people to use the program to access and even edit data which they
The program's author, John Cambell, retired at about the beginning of 2004. It seems unlikely that anyone else will develop
the program further, and users can only hope for a pleasant surprise. However, the program is well developed and in most respects can be
regarded as complete anyway. There are ways around the few inadequacies that, for some purposes, remain.
Various ready-made database
solutions, using M-Pro, were offered, either free or for separate purchase, by John Campbell and by others.
Tips for M-Pro users
This section, on a separate page, includes information on the difference between the character sets used by DOS and
Windows, alternative ways of printing from M-Pro, and a little about creating Web pages.
Tips for users
Various ready-made database solutions or structures, using M-Pro, have been offered by Campbell Systems and by others. Here are some of
them (there might well be others).
These databases show some of the things M-Pro can do and how versatile it is. However, the prices
quoted are purely of historical interest in the case of the programs formerly offered by Campbell Systems as unfortunately the business no
If there is no longer any commercial interest in the sale of these databases, perhaps they could be put on this site
for download by those M-Pro users who are interested?
The M-PRO DIARY
The M-PRO DIARY is a compiled EDPL application which provides a way to keep track of
memos, appointments, birthdays and other anniversaries, presented as a variable-depth day-by-day diary. You can make it open automatically
when M-PRO is run for the first time each day, and at any time when M-PRO is running at the touch of two keys. It could not be simpler to
The entire display can be colour-customised during use, so there is no need to get involved with the DPL source code. The
source is provided, however, for your interest.
- Up to 10 lines of text per memo/appointment
vertical scrolling through variable-depth entries
- Go to any day, any month, any year
- Find anything, find next/previous, find by
- Print day, week, month, birthdays/anniversaries, found texts
- Customise all colours
- Optional dividers between
events in a day (yes in fig.)
- Optional week nos. and day nos. (yes in fig.)
- Insert memo, appointment, birthday, anniversary
- Alter memo or appointment
- Nudge memo/appt up or down within day
- Move memo or appointment to another day
- Replicate memo
or appointment daily, weekly, monthly etc.
- Highlight memo or appointment in any colour
- Tick or un-tick memo or appointment
Delete any entry
- Pop-up calendar
- Pop-up help
- Post memo or appointment into M-PRO Alarm-clock list.
- Pop-up memo sheet
for up to 60 lines of "misc" text.
- Pop-up address-book, which overlays the diary thus :
- The address-book can be called and
used independently of the diary system. It has its own colour customiser and pop-up help. Text can be transferred from diary to
address-book and vice versa.
Campbell Systems' DIARY was priced at £20 + VAT (UK, EEC) or £20 + £2 P&P (Other
M-PRO DPL Tutor
The way to get the most out of M-PRO is to make use of the built-in language, DPL.
When M-PRO was first launched, DPL offered sixty or so statement types. Now, DPL boasts nearly 200 statements and many of the original
statements have been improved.
Also, DPL can now be written outside the data file environment, to control tasks and files, and to
process files directly. The author's own DIARY system is written in DPL which processes its data file without you ever needing to see the
file in the traditional or "native" manner.
Whilst DPL is fully documented in the OLM, some M-PRO users remain uncertain about what
DPL can do or they lack the confidence to "give it a go". The DPL tutor is an IDF containing 26 lessons, each in the form of a document to
be read on screen. The lessons include in total about 260 DPL programs, each of which can be run on the spot! All you have to do is to
steer the cursor to a program and press . The program runs without appearing to leave your lesson document task, which is therefore an
interactive tutor. Any of the programs in the text can be altered and re-run to explore the effects of the changes made.
Systems' DPL TUTOR was priced at £15 + VAT (UK, EEC) or £15 + £2 P&P (Other countries).
Here is the author's description:
As an M-PRO user, you will almost
certainly have a data file listing your business and/or social contacts. After we had made one for our own use at Campbell Systems,
visitors expressed how handy it looked and so we decided to make it available to all MPRO users. Our CONTACTS Database holds not only the
obvious data such as name, company, address, telephone, fax nos., but other fields by which to categorise : status, keywords, type of
business, reference, markers. Use them any way you wish, even change their captions.
A major feature is a large scrollable
"Notes/Info" field into which you can place up to about 65 lines of text. Not only can you edit the notes/info as a whole, you can also
append a date-stamped entry.
The search functions are pre-programmed for most fields, and you can also do global searches and
All colours can be individually adjusted to taste, without having to tackle the source code of the
CONTACTS is supplied with the DPL source code, as well as in compiled form, so you are welcome to inspect our work and
Campbell Systems' CONTACTS was priced at £15 + VAT (UK, EEC) or £15 + £2 P&P (Other countries).
BANK Account Manager
Here is the author's description:
BANK is designed for use by private
individuals and small traders. It models one or more bank accounts, providing a means of checking statements, displaying current balance,
and displaying useful reports and bar-charts.
The main account view resembles a bank statement, but with some extra columns - such as
category, folio, goods, VAT, etc.
Up to ten accounts can be managed. Each account can be customised in respect of whether
categories and certain business functions, etc. are required.
Each account can operate up to one hundred automatic transactions, such
as regular standing orders, direct debits, transfers. An automatic transaction can be monthly, quarterly, six-monthly, or annual, and is
generated as soon as its month is reached.
One of the display columns shows a tick for reconciled items, i.e. those matched with the
bank statement. Each account therefore can show not only the balance as per statement, it also gives the balance in respect of transactions
not yet shown on the statement. It is like having an instant statement on demand, without having to visit the bank or use the
A useful feature is that expenditures can be entered which are not real withdrawals. For example, when a business expense is
paid using a personal credit card, it can be recorded in a current account as a withdrawal without affecting the balance. The payment
method tells the system that it is a "dummy" transaction. Why is this useful ? Because such items still contribute to searches and
analysis. The account database exists not just to model the current account, it also serves to model the business outgoings.
can be transferred from one account to another using a single transaction.
Both deposits and withdrawals can be categorised for the
purpose of later analysis. The user defines the categories, each comprising a two-character code and a short descriptive text.
wrote BANK to be used as a "stand-alone" system, complete with its own cut-down M-PRO and OLM-style manual. You can use it that way, or you
can instead call it from your resident or EDPL program if you prefer to stay in your own M-PRO.
Campbell Systems' BANK was priced at
£25 + VAT (UK, EEC) or £25 + £2 P&P (Other countries).
A database by Wes Halton for bird watchers. Unfortunately, no reply has been received from
the author despite an attempt to contact him in connection with the webpage www.northwesternswanstudy.org.uk/old/swanstud.htm. Can anyone
Click to see the separate page of utility programs/databases for use with Masterfile Professional:
The utilities described there, and available there or here, are in compressed "zip"
form and need to be "unzipped". The resulting files are listed below. This means downloading several files instead of one, but they are all
This contains two files: calc.dpl and calc.txt.
This contains five files: DPL.DPL, DPL.DAT, DPL.DAS, DPL.DA0, DPL.DA1.
This contains two files: EDITOR.DPL and EDITOR.TXT.
This contains three files: fonebook.dat, fonebook.das, fonebook.da0.
This contains two files: FRONTEND.DPL, FRONTEND.TXT
This contains two files: module.dpl, module.olm
This contains two files: smartcal.dpl (the calendar utility itself) and smartcal.txt (the help file
which can either be read directly using M-Pro or consulted using a menu option within the utility).
Click to go to the separate page for games:
Games page. For tictac, here's the one file,
Advantages & disadvantages
Every program has advantages and disadvantages, strengths and weaknesses. M-Pro is not ideal for the casual user, but it is rewarding for
anyone who explores its possibilities, and it can be very convenient for use with a database solution that someone has already
The contents of a field can vary in length up to about 4000 characters. A single field can contain an
address or several paragraphs of text.
M-Pro is a relational database program (one database can draw on the contents of other
databases), and much more capable and efficient than a "flat-file" database program.
It has a powerful data processing language
(DPL), providing the ability to cope with a wide variety of needs.
There is a comprehensive on-line indexed manual available at all
times. Users can have a help file of personal notes, and each database can have its own help section. Each of these types of help can be
accessed with a single key press (F1, F2 or F3).
The program is compact and fast, can run on almost any PC, and can even be run from
a portable USB flash memory device.
Macros enable one or two key presses to replace a series of menu choices etc, so that even
relatively complicated things that need to be done often can be done quickly and easily. There is also a facility to record a series of key
strokes for re-use as a temporary or permanent macro.
The program can optionally be "adjourned" so that, the next time it is used,
the same files are open again, and the same screen is shown so that work can quickly be resumed at the same place.
clipboard enables a field, word, line, document etc to be copied and pasted in another place or in another data or text
Database solutions can be created to be clear and straightforward for the ultimate user, with menu options tailored to the
Data can be "exported" in the form of files that can be used by other database programs, so data can be shared with
other people. Data can also be copied to files that can be read by word processors or Web browsers.
A basic text editor / word
processor is included. A number of text documents can be kept in a single file, providing convenient
It is not widely used and is no longer being developed.
It is a DOS program without a Windows
graphical interface, and it cannot display scalable Windows fonts or images.
If the computer lacks a parallel port, or if the printer
cannot be connected to the computer's parallel port, an extra program or an indirect method needs to be used for printing.
more than fairly basic use (using the menus), it requires either study of the manual, or for someone who is familiar with the program to set
up a database with additional menu options.
Ian Simpson's site for Masterfile Professional Users is at
Thanks to him
much of the material it offers is now also available here, but see his site for the rest.
A free, award-winning Windows text editor
which can usefully be used alongside M-Pro is NoteTab Light. Like M-Pro, it has the convenient optional
feature of all the files which you were using when the program was last shut down being automatically opened the next time the program is