About us RCL 20 Projects Colour Selector Library
Paola Kathuria
Frank Wales
Clients with several projects
Oxford University Press (1997-2005)
Redesign of OED Online
Redesign of OED marketing site
General & technical consultancy
Redesign of OED Online Help
OED Online Tour
OED marketing site
OED Online prototype
@ Limitless Innovations (2000-2003)
Berry Bros. & Rudd
One World Telecom
Scott Morrison Photography
Gratis & personal projects
Paolability Jewellery
Windsor Half Marathon
Psychology of Programming Interest Group
InetUK Usenet FAQ
Other sites by Paola
@ Limitless (1995-1999)
SilverPlatter Health & Safety Publishing
Institute of Physics Publishing
EU & UK ISP surveys
New Millennium Experience
Moorfields Eye Hospital
Ace Records
Embassy of Japan
Reuters Insurance Information Services
IBM Global Networks
Barclays Bank BarclayNet
Sainsbury's Wine Direct
@ Zengrange (1984-1990)
HP-41 Emulator for HP-48
Technical services

Technical services ~ Zengrange

Frank Wales @ Zengrange


Zengrange projects

Zenrom advanced programmers' module for the HP-41


HP-41 debugger

Serial communications system

HP-41CV emulator

Technical infrastructure

Zengrange specialised in customised hand-held computer systems, or larger systems based around mobile computing. They originally adapted HP hand-held computers, but eventually branched out into custom computer design for many customers.

Frank Wales worked in various software-development roles while at Zengrange, and also co-managed the company's computer infrastructure. Frank not only developed different systems and solutions for customers, usually in a team, but also designed or implemented many of the internal software tools that the other development staff used.

[Front cover]

Interested in HP calculators?

See RCL 20: People, Dreams & HP Calculators

Much of the work Zengrange did was for mobile or embedded systems, often for demanding customers, and many of the projects Frank worked on were at the assembly language level.

In total, Frank designed or implemented fifteen different products and systems for major corporate and government customers. He also developed many tools and systems for software development. These include:

  • a ballistic calculation system in assembler to MoD standards, with a test harness on Unix to verify it
  • a bar code printing system for a portable computer
  • a client simulator for a DHSS document tracking system
  • a proof-of-concept RAF flight-planning system
  • a military encryption system in assembler, and associated dictionary management tools on Unix
  • Unix-based data-exchange protocols and software for a custom-built portable computer, including comms device drivers

Many of the projects developed by Zengrange were based around (sometimes heavily modified) HP-41 handheld computers.

Frank co-invented the module's so-called direct-key synthetics feature, which represented a breakthrough in ease-of-use for advanced programmers; he wrote the module's RAM-editing system, and wrote the first half of the Zenrom User's Manual, which ended up becoming a key reference work cited by HP for advanced development on the HP-41 platform.


SDS was Zengrange's internal software development system for HP-41 programming.

After re-writing HP's existing tool set (implemented in various dialects of HP BASIC) in order to migrate it to a new hardware platform, Frank completely re-designed the build system, which compiled and assembled HP-41 programs into application modules, for re-implementation in C on Unix, allowing proper integration with the Unix tool set.

In the process, he added many requested capabilities, and chose algorithms and data structures that favoured run-time performance.

Frank also designed Zengrange's unique HP-41 debugger, which gave Zengrange's development staff previously unavailable insight into how their code was executing. These tools helped Zengrange's development staff to build more advanced and capable systems than other independent software vendors, and contributed to Zengrange's reputation with both customers, and with HP themselves.

On these projects, he worked closely with the software developer Julian Perry, presaging their later collaboration in Limitless.

Several of the other projects Frank worked on were classified. One that wasn't was a serial communications system to allow hundreds of custom-built mobile computers to communicate efficiently over the public telephone network with Unix systems for daily data exchange, at a time when 2,400 bits per second was difficult to achieve reliably.

Frank designed the protocols, and implemented the system in C such that the same source code could be compiled for both an embedded environment (for the mobile computer) and HP's Unix (used for the central systems). He also implemented software on the Unix systems to manage the flow of data to and from the remote machines.

Frank's final project was to design, and lead the implementation of, the HP-41CV emulator for the HP-48SX, developed under contract to Hewlett-Packard's calculator division.

There is a separate case study for this project.

In addition to his development responsibilities, Frank was also jointly responsible, and eventually in charge of, managing the technical infrastructure of the company. This was based mainly on a network of HP 9000 Unix systems, although PCs based on DOS or early versions of Windows were introduced towards the end of his time there.

As well as porting many freely available programs to HP-UX, Frank also worked to maintain communications links with the outside world, for e-mail and Usenet news, at a time before direct connection to the Internet was possible for UK-based companies.