[Vector, GridPro, DrawPlus]  
Open Source RiscOS Software:
Vector, GridPro, DrawPlus

Licence Terms
System Requirements
Source/Building
Downloads
Further Information
 

Open Source RiscOS Software

Although I've not had the time or other resources to work on these applications for some time, there seems to still be demand for them. The previously-released versions work well, and continue to do so, on the older Acorn hardware.

The sources available for download here have been converted to produce a 32-bit application which will run on the latest available ARM hardware. The conversion was performed by Spellings Computer Services; ready-compiled versions (for a nominal charge) are available from them.

The applications would also benefit from some maintenance and upgrades for the benefit of those still-faithful users. Since the source is now available under the GNU GPL, it's up to you...

 

Licence Terms

This is now resolved; these were my original thoughts on the subject.

In order to avoid any possible confusion with previous commercial products, I'd suggest that any applications built from these sources (whether for 26-bit or 32-bit systems, and whether unchanged, ported or extended) should not be released under the names "Vector" or "GridPro". The names in the source archives are a suggestion.

 

System Requirements

The source code compiles into a 26-bit RiscOS application under RiscOS 4.02 with Acorn/Norcroft C version 5.06, on a StrongARM RiscPC. Building a 32-bit application, or a 26/32-bit neutral application, requires appropriate versions of the compiler and associated tools under a suitable OS. If you have these then, of course, you will know exactly what is required.

It does not require any other libraries or utilities, apart from those provided with the Desktop C development system.

The source currently includes a set of makefiles written for GNU Make, which is available from the Unix Porting Project and possibly other places as well. You are welcome to try to adapt the build system to use AMU, or whatever is provided now, although the last time I looked that was simply not powerful or versatile enough to support a complex project like this (especially the common shared source area). The build also uses some other utilities, which are included.


 

Source Organisation and Build Instructions

 

The two library source archive files, the common application source archive, and whichever of the application source archives you wish to work on, need to be unpacked into the same location - obviously it would be best to create a new empty directory first. Having done so, the directory structure should be as shown here.

The utils directory contains utilities which are used for building all of the rest of the libraries and applications. Some of these are wrappers for the compilers and linkers provided with Desktop C, providing filename translation and a more sensible argument syntax so that they can be used with GNU Make. Others are used to build message and template files. A make or equivalent in this directory needs to be done first of all; after that, either do make install to install the programs in the library directory, or add this directory to Run$Path.

The lib directory contains the library sources. Subdirectories asm, make, messages and templates contain components which are used and will be found automatically by others; nothing needs to be done here.

The sys subdirectory contains the low-level parts of the former RiscOS Library, mostly system call wrappers written in assembler with corresponding C header files.

The riscos subdirectory is the remainder of the former RiscOS Library, mainly the C parts with some optimisations in assembler. It uses the 'sys' library, of course.

The draw subdirectory is the Draw-related parts extracted from the former RiscOS Library, again mainly in C with some optimisations in assembler. It also includes the compressed Draw file loading and saving code originally provided from 4Mation, much of which is unused now (see the source comments for why). It uses the 'sys' and 'riscos' libraries.

The jjm subdirectory contains system and user interface routines written by myself (obviously...). As well as a library to be linked with the applications, it produces the VectorUtil module (from the vectutil.s source file) which is used by the applications for pointer shape management, keyboard handling and some other functions. This module needs to be loaded when running the applications (it will automatically unload itself when no longer needed).

To build the libraries, do a make (or equivalent) in the directories in this order: sys, riscos, draw and finally jjm. No subsequent installation or copying is needed.

Once the libraries are available, the applications can be built. The common directory contains source files which are used by more than one of the applications, sometimes with conditional parts to implement the different facilities or code organisation of the applications. These are located automatically using the VPATH facility (this is why GNU Make is required to use the makefiles as supplied); they do not need to be built directly.

To build an application, do a make (or equivalent) in the corresponding application directory. This will compile the sources (both the application-specific parts here, and the required files from the common source), and link it with the libraries to produce the final !RunImage. It will also produce resource files (templates and messages) as required.

Having done that, the application can be run in place.


 

Downloads

The "Spark" and "Tar" source archives contain exactly the same files. The two formats are provided here to ease downloading and unpacking on other systems; if you are using a RiscOS system throughout it would be better to download the "Spark" format files, as they will preserve the RiscOS file type information when unpacked. If the file types should be lost, there is a SETTYPES file in each directory (where required); running this file, after setting its type to Obey if necessary, will reset the file types.

 
The library sources and the common application source are required to build any of the applications. Library Source part 1
Version 2.1 (GPL 32-bit), 345Kb Spark archive
Library Source part 2
Version 2.1 (GPL 32-bit), 804Kb Spark archive
Common Application Source
Version 2.1 (GPL 32-bit), 384Kb Spark archive
 
Library Source part 1
Version 2.1 (GPL 32-bit), 168Kb Compressed Tar file
Library Source part 2
Version 2.1 (GPL 32-bit), 345Kb Compressed Tar file
Common Application Source
Version 2.1 (GPL 32-bit), 207Kb Compressed Tar file
 
 
The application sources are required to build that application only. "Vector" application
Version 2.1 (GPL 32-bit), 283Kb Spark archive
"GridPro" application
Version 2.1 (GPL 32-bit), 181Kb Spark archive
"DrawPlus" application
Version 2.1 (GPL 32-bit), 170Kb Spark archive
 
"Vector" application
Version 2.1 (GPL 32-bit), 168Kb Compressed Tar file
"GridPro" application
Version 2.1 (GPL 32-bit), 96Kb Compressed Tar file
"DrawPlus" application
Version 2.1 (GPL 32-bit), 101Kb Compressed Tar file
 
 
These document files are additional notes for the upgraded versions of Vector; they should be read in conjunction with the original manual which would have been supplied with purchased copies from 4Mation.

There have been no updates to the GridPro application or manual.

The DrawPlus manual is still available from its original download page.

Vector 1.10 (1993)
253K PostScript
Vector 1.10 (1993)
57K PDF
Vector 1.10 (1993)
43K Impression Spark archive
 
Vector 1.30 (1996)
443K PostScript
Vector 1.30 (1996)
114K PDF
Vector 1.30 (1996)
78K Impression Spark archive
 
Vector 1.50 (1999)
242K PostScript
Vector 1.50 (1999)
84K PDF
Vector 1.50 (1999)
51K Impression Spark archive


 

Further Information

There isn't much else at the moment, apart from the source itself which is fairly well commented. If there is any more technical information that you need or queries that you have, then please feel free to mail me; I will try to answer to the best of my knowledge or assist in any other way possible.

Many thanks to Spellings Computer Services for their 32-bit port; I hope that these applications, as well as the RiscOS system itself of course, will continue to be useful well into the future.


[Home Page] Home         [Mail Me] Mail Page by Jonathan Marten
Last modified: Sat Dec 13 14:48:42 GMT 2008