M-Pro icon

An unofficial site for the Masterfile Professional (M-Pro) relational database program

Sections on this page

Masterfile Professional - Summary
Masterfile Professional now
Masterfile Professional User Group (MPUG)
Features of Masterfile
How Masterfile works
History of Masterfile
Tips for M-Pro users
Database solutions
More database solutions
Free utilities
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: contact24 % masterfilepro.info (omit spaces and replace % with @).

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

Overall 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
- Adjourn/warm-start
- Sorted and filtered directories with tree-climbing
- Generic central printer driver, spooled output
- Clipboard
- Pop-up calculator
- 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 alarms

Database Features

- 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 translation tables
- Up to 16MB per data file, about 200,000 names/addresses
- All records are date-stamped on creation and at last change
- Up to 9 key-indexes per file, up to 6 fields per index
- Re-generate any/all indexes on demand
- Two system-generated formats per file
- Up to 60 user-designed formats per file
- Formats can be up to 500 columns wide
- Each record can display from 1 to 200+ lines
- Textual data can be re-wrapped to any width
- Variety of date and number presentation styles
- Headers, Footers, Pagination
- Include external text, for example mail-merge letter
- Totals and sub-totals, logical page-breaks
- Print directly or to disk, multi-copy options
- Print multiple (labels) across
- Rapid search on any field, multiple criteria
- Search library
- File macro library
- File memo/help system
- File analysis for numeric summaries
- Powerful programming language (DPL)
- Retrieve from and update relational files
- Import/Export ASCII data or dBase files
- Selective file copy
- Data file merge
- Serialised field (invoice numbering for example)
- Zoom into another format and out again
- Place-marks
- Display all/selected/un-selected records
- File encryption option
- Record freeze/un-freeze functions
- Passwords for file access
- Passwords for critical functions
- Bar-chart presentations
- Network edition allows file-sharing between several users

Text/WP Features

- 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
- Text headers, footers, margins, tabs
- Word-wrap and paragraph re-format
- Dynamic page boundaries
- Spot colours
- Line-drawing
- Special characters and accents
- Block functions, cut-and-paste
- Find and Find/Replace with fwd/bwd repeat
- Page numbering

How Masterfile works

Files and Tasks

M-PRO handles three kinds of file :
- Simple Text
- Indexed Document
- Data

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 texts.
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.)

Task-switching 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 warm-start.

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 tested.

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 automatically.

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 seconds.

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.

Extended DPL

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 specialised terms.

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.

General Discussion

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 option.

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 share.

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

Database solutions

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 longer exists.

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 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 operate.

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.

Features include:

- Up to 10 lines of text per memo/appointment
- Smooth vertical scrolling through variable-depth entries
- Go to any day, any month, any year
- Find anything, find next/previous, find by tick char
- 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 countries).


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.

Campbell 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 single-key un-select.

All colours can be individually adjusted to taste, without having to tackle the source code of the program.

CONTACTS is supplied with the DPL source code, as well as in compiled form, so you are welcome to inspect our work and adapt it.

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 'phone.

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.

Money 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.

We 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 help?

Free utilities

Click to see the separate page of utility programs/databases for use with Masterfile Professional:
Utilities page.

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 very small.

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, unzipped.


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 prepared.


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.

A versatile clipboard enables a field, word, line, document etc to be copied and pasted in another place or in another data or text file.

Database solutions can be created to be clear and straightforward for the ultimate user, with menu options tailored to the user's needs.

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 selection.


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.

To enable 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
M-Pro Forum.
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 run.