Schema 2

Schema 2 is the big brother to the spreadsheet found in Acorn’s Advance integrated package. It provides a user interface that complies with the standards set by Acorn Advance. The resulting package is much faster, more economical on memory and easier to use. It is the result of extensive discussions with many users of all spreadsheets on the Acorn machines. Features include:

Multiple sheets up to 30,000 by 30,000 cells
A large and powerful set of 78 standard functions including Matrix operations
A flexible macro language closely modelled on BBC BASIC
Functions can be added to menu via Macros
Upward compatibility with Advance from Acorn
Compatibility with Schema, Advance, Lotus 123 & SID files
An extendable system of graphics include pie charts, histograms, pictograms,linear bar charts, 3D graphs, scatter graphs etc

A Schema screen shot

A separate but integrated macro compiler, leading to further economies of space and speed of loading
Easy data transfer through a clipboard with all other applications which conform to the Acorn Advance standard
A configurable interface which allows you to link important operations directly to icons on an icon ribbon
A manual with a large tutorial section.
Definition of ‘BIG’ cells capable of holding multi line text and graphs
Graphs can be embedded in cells and linked to ‘live’ data if required
Cells can hold imported graphics
Compatible with Virtualise – our virtual memory system

Version 1.06 now available

Version 1.06 has now been released. It has the following changes from previous versions.

There is a new function CHANGENAMEFULL. This acts like CHANGENAME except that it also changes the leafname of the file.

There is a new function FINDFROM which is like FIND, but takes an extra parameter specifying the start position for the search. This is like INSTR( in BASIC.

The rarely used replicate facility used to have a limit of 20 rows/columns This is now controllable via a message tag ‘maxreps’.

There is a new function GENERATEERROR for use in a macro. This takes one parameter which is the number of the error you wish to generate. The error numbers are defined in the messages file.

Related to the above is a new feature in WorkSpaces. A new block type exists starting with LM. This consists of a filename which is a additional messages file. The syntax is

LM<filename>

The usual use for this is

LM<Workspace$Dir>.messages

to allow a set of extra errors to be provided with a workspace.

Two new CELL attributes added. CELLCONTENTSHEIGHT and CELLCONTENTSWIDTH report the height and width of the contents of a cell.

It is now possible to get hex output in a format using the %x string.

If you try to load a sheet with the same name as an existing sheet, you now get the chance to allow it to overwrite the old one.

There is a new attribute to the CELL function.

=CELL(block,”CellContents”)

will return

1 if the cell contains an integer

2 if the cell contains a real

3 if the cell contains a string

5 if the cell is empty

8 if the cell contains an expression.

The main purpose of this is to distinguish between a cell which contains an expression and one which contains a literal number.

There are new trace functions available. The main utilities menu has two new option ‘Start Trace’ and ‘End Trace’. When tracing is in operation, debug info is sent to the file <Schema2$dir>.log.

You can send your own info to the file using the TRACE(string) command.

There is a new version of the PUTBLOCK command called PUTBLOCKX This has exactly the same syntax as PUTBLOCK, but evaluates at level 0 instead of level 1. THIS CAN BE DANGEROUS AND CAN LEAD TO INFINITE LOOPS, but can be useful in some circumstances.

There are two new sheet attributes called SheetHeight and SheetWidth, provide the sheet height and width.

There is a new function available in macros called Sheets(). This returns the number of sheets loaded.

A new function called FindSheetname(n) will return the name of a loaded sheet, where n is in integer in the range 0 – Sheets()-1.

There is a new picture format available for custom formats. %pc is similar to the percent format in Excel and multiplies the number by 100 and put a % sign after it.

There is a new function MAKEBLOCK which converts a string into a block reference. E.g. b=MAKEBLOCK(“a3:b10″)

A new function CHANGEDSHEET has been added to return the name of a modified sheet.

Two new functions added. SAVEFILEDB and PARTSAVEFILEDB are like their non-DB counterparts, except that they don’t take a filename and instead open up a SaveAs dialogue box for the user to drag.

They both return a spreadsheet block, from which you can determine the new name of the sheet (if any, as there’s no guarantee that the sheet will actually have been saved).

A new function has been added. EXPRESSION takes two parameters. The first is a block. The second is an expression. The expression is evaluated as if it were in the top left cell of block specified.

For example

res=EXPRESSION(A3:A3,”6+SIN(A6)/7″)

A new item ‘Discard All’ has been added to the main iconbar menu.

If a macro called __quitschema exists, it is called in place of the standard routine when Schema2 quits with unsaved sheets. The macro takes no parameters. It returns a string. If the return string is STOP then schema 2 is not quit.

Macro error handling has been improved.

Text printing has been improved somewhat.

If a macro called __preprint exists, it is called before the printer dialogue box is displayed. The macro has one parameter, which is the spreadsheet to be printed.

If a macro called __print exists, it is called before printing begins. The macro has one parameter, which is the spreadsheet to be printed.

If a macro called __postprint exists, it is called after printing finishes. The macro has one parameter, which is the spreadsheet which has been printed.

The concept of the default print area has been introduced. This is an area which can be defined as the most commonly printed area. The print dialogue box now offers three choices; All,Selection,Print Area. There are also macros and a sheet variable to use with the print area if you wish to control it from your own macros.

Virtualise

The Virtualise system provides a general purpose virtual memory system for RiscPC & A7000 dynamic areas. It is composed of two parts: A module which actually provides the virtual memory, and a front-end which provides an easy to use interface to most of the features.

What is virtual memory ?
Normally, you are limited by the amount of RAM (Random Access Memory) in your computer. Virtual memory allows programs to use hard disc space to supplement the memory available. Virtualise allows the use of up to 256Mb per application. The cost of that much RAM would be prohibitive, whereas Virtualise costs a mere £24.95

A Virtualise screenshot
How does it work ?
Virtualise works with most applications which use dynamic areas on the Risc Pc. We provide a front end so you can choose which applications you want to use virtual memory, and control its use. It isn’t necessary for an application to be specially written to take advantage of Virtualise. Of course an application that is written to specifically make use of Virtualise will have performance and interface gains.

What does it work with?
We are compiling a list of Virtualise compatible software. Click *HERE* for the latest list. Naturally, our own graphics software for the Risc Pc supports Virtualise.

The main features are:

  •     Simple to use WIMP front-end application to control virtual memory.
  •     The memory usage can be controlled using the bar in the Task Manager.
  •     Any number of virtual dynamic areas can be created and managed.
  •     Can create virtual dynamic areas larger than the amount of physical memory.
  •     Any dynamic area can be converted to/from virtual memory at any time.
  •     Supports draggable virtual dynamic areas and those with handlers.
  •     Intercepts OS SWIs to minimize changes required to existing applications.
  •     Supports memory accesses from USR26 and SVC26 modes.
  •     Pages may be locked to allow access from interrupt routines.
  •     Parameters for file operations are automatically locked and unlocked.
  •     File accesses transparently split to allow operations larger than memory.
  •     Handles all processor instructions, including coprocessor data transfer.
  •     Does not affect other programs that use processor hardware vectors.
  •     Global page allocation policy across all virtual dynamic areas.
  •     Choice of page replacement policies: NFU with ageing, FIFO or random.
  •     Whole WIMP tasks can be suspended and swapped to disc.
  •     Versions 1.10 onwards are StrongArm compatible.
  •     Option to purge the swap file directory upon loading
  •     No need to load the front end as module holds configuration

Wimp Basic 2

What is Wimp Basic ?

Wimp Basic is a total programming environment. It enables you to write WIMP applications without having to understand how the RISC OS windows environment works. Wimp Basic handles it all for you. And, it enables you to write applications quickly.

Is it compatible with ordinary Basic ?

Yes and no. Because Wimp Basic deals with so many areas for you, many commands, particularly those associated with windows and menus, are not present or are much simpler. The general algorithms used in Basic programs can be used but you will probably need to re-write the routines. Wimp Basic procedures are typically much smaller than their Basic equivalent. For example to open a window in Basic you have to setup blocks and a polling routine with bits all over your application. In Wimp Basic it takes one line eg OPEN Window$.
Who is Wimp Basic aimed at ?

Wimp Basic is aimed at the BASIC programmer who has not had the time or inclination to get to grips with the WIMP environment. It is aimed at those who want to write reasonably small applications in the shortest possible time. It is NOT aimed at those who want to write a major application such as a spreadsheet, DTP etc. No doubt someone will prove us wrong but that is not the market we are aiming Wimp Basic at.

What do I get ?

Wimp Basic is supplied as the editing environment (detailed below), WBModules (which contains the run time module that is required for your applications – 105k), a range of WB files to be used as tutorials (some producing useful applications) and an on line manual for quick and easy access of all information.

How do I write an application ?

The hardest part is having the idea. Using the supplied tutorials you will write your first application in 30 minutes !

Wimp Basic has various component parts. The Main window is shown below.

WB Main window

The Icon Bar sprite is selected from a menu and that is all you have to do.
The Icon Bar menu is attached from a list of available menus.
The Select procedure is what happens when you click on the Icon Bar sprite and the procedure is selected from a list of available procedures.

A typical Select procedure might be:

DefProcOpenWindow
Rem Called when user clicks on iconbar icon
Open HelloWorld
EndProc

That is all you type. WB handles everything else and when you click on the Icon Bar icon the window called ‘HelloWorld’ is opened on the screen.

The Quit function is equivalent to the normal pre Quit function. It enables you to do things like save data before quitting your application.
The Load Procedure is selected in the same way. This can be very simple or a bit more complex depending upon the file to be loaded.
The Startup procedure is usually used to set up parameters such as global variables.

The Window Creator

Windows are created graphically. In this instance Window refers to windows, dialogue boxes, error boxes etc. You create the window as you want to see it and give it a name, just like a variable. This name is used to manipulate the window, open it, move it etc.

In addition to creating windows this is where you create icons. These can be text icons, graphical icons or writable icons. Button types are assigned to the icon. For example, you might want an action to take place when an icon is clicked on, so you set Button type to Click and select a procedure to be actioned. Simple.

The Menu Creator

Menus are also created graphically. A menu entry can then have a sub menu or a procedure attached to it. Keyboard short cuts can also be added. See below. The menu was created by clicking into the header and typing the menu name. The two menu entries were also just type in and the sub menu selected from the list of menus available. Likewise the Procedure was selected from a list.

WB Menu creator

The Variables Editor

This is a list of global variables, defined in Groups. By default it contains a set of System variables dealing with the screen, printer and some other necessary variables. New groups and variables are added using a simple dialogue. Local variables are defined in each procedure.

The Code Editor

This is very similar to Edit and will be familiar to anyone who has used Edit. The main differences are that the WB Editor automatically colour codes your code to distinguish keywords, variables, REM statements etc.

If you write several procedures in the same Editor window they are automatically split into individual procedures so that they can be selected from a list. One other useful addition is the ability to search all procedures using the Search and Replace.

One advantage of the way you write code in WB is that procedures and functions can be complete units of re-usable code. These can be filed in a Library directory and re-used in other applications. The same applies to Windows and Menus. For example, you will probably only ever need one Program Info window, one Quit procedure, one Icon Bar menu will do for many applications etc.

The Sprite Viewer

This simply lists the available sprites and provides information. Paint or another editor is used to edit sprites and icons.

The Raw Event Handlers

This is for those who want to delve a little deeper. It enables you to assign procedures that are actioned when a particular Raw Event happens. Perhaps the most common Raw Event that most people will use is the Null event. If it means nothing to you don’t worry as you don’t have to use it.

What’s new in WimpBasic 2?

There are many new keywords and facilities. These include :-

  •     You can now define separate procedures for Select and Adjust on the iconbar.
  •     You can now specify the font to be used by PRINT statements.
  •     You can easily create a font menu for the user to select which font to use.
  •     Pane windows are supported with built in keywords.
  •     An optimise option is available to create faster applications.
  •     The window designer now has a grid lock facility.
  •     New keywords dealing with files and directories.
  •     New keywords to load, plot, scale and remove Draw files.
  •     A new automatic method for setting which filetypes your application will accept.

Fervour

Fervour is a fast action platform game from Clares. Be warned – it’s addictive !

The year is 2100 and you, professor Skitz-Patrick, are returning from a mission in search of a planet suitable for human habitation. Earth is being destroyed by ecological disasters brought on by the human race. On returning to Earth you are unable to make radio contact with anyone. All radio frequencies are jammed with the following message which repeats every minute, “Take shelter immediately, leave pets behind as they use valuable oxygen, and close your radioactive shelter …”

Your mission is to recover oxygen from the planet Fervour and to do this you build a droid to help you. However, control is quite difficult and many dangers lay in your path.

A Fervour screen shot

Fervour is supplied with 100 inbuilt levels but we also supply you with a multi tasking level editor so that you can create your own levels to tax your friends and because you can password protect each level you are in control.

Internet packages

Free Internet Connection

Well almost. We have managed to secure a limited supply of internal modems for Acorn RiscPC computers. These fit in the normal podule slot in the backplane. They are a V.34 modem and take a couple of minutes to fit. You then connect the modem to your telephone socket using the supplied cable – we even give you a phone doubler so that you can plug the modem and a phone into the same socket.

All hardware & software supplied

This unique package comes ready with all the software you require for browsing the World Wide Web, sending and receiving email and accessing Newsgroups. A Newsgroup is a messaging area that deals with one subject area and is populated by like minded people who offer help and advice or ask questions of you – it’s a self help group. There are areas for Acorn applications, hardware, miscellaneous etc set up ready for you to download.

For those who wish to know, you get: WebsterXL, the RComp browser that is under active development and this includes updates via email direct to your computer – so make sure that you register (The new Oregano browser is available as an option). You also get Socketeer (the dialler), Popstar (Mail transport), NewsHound (News transport), NewsBase (News Manager), Messenger (Email & News Client), SysLog (Logging application). All sounds complicated doesn’t it. Don’t worry, we have done all the worrying for you – as usual. The only thing you need is a CDROM drive to read the CD supplied – we can supply a drive if required; see our CDROM page for details.

We have written an installer, using WimpBasic 2 of course, to take care of loading everything to the correct place on your hard drive so you never even have to see all of these applications. Once installed you just run our own front end program that takes care of loading all of the required applications.

What about setting it up & registering

This is the area most fraught with problems and which takes the most time and causes most problems, but… we will do it all for you. Just give us a ring, we will take your order details and run through the registration for you. You just provide your details. In a couple of minutes you will have your internet account set up ready to go. Your log on details are printed on a sheet of paper and passed to the despatch department. You install the modem, run our front end, enter the details off the sheet as requested and away you go – it couldn’t be any simpler. It should all take no longer than 30 minutes to fit the modem and get on line.

Is it really free ?

All that you pay is the telephone call charges. Freeserve use an 0845 number, which is charged by BT at local call rates. If you don’t use BT, please check with your phone company how they charge 0845 numbers. If you limit your web browsing to weekends and you add the Freeserve number to your BT Friends & Family list then it will cost less than 1p ex VAT per minute – 60p for a full hour ! Email and News can be collected each night when off peak charges apply. Depending on how much mail you receive and how many newsgroups you subscribe to, you may find you rarely need to spend more that the BT minimum call charge of 4.2p ex VAT.

You can also buy a Surftime package from BT which gives you a 100% discount on off peak calls to Freeserve (i.e. free, BT prefers to call it 100% discount rather than free calls). Freeserve are also offering a similar package for peak time users too. See Freeserve’s page for details.

The Freeserve service is a full internet service just like Demon etc. You can even create your own web personal web site and tell the world about your hobbies or anything else. The uses are endless. Freeserve make their money by getting a cut of the telephone call charges. This is an offer you cannot afford to miss. We have chosen the setup that we have because we know it works well, and it’s what we use. Most of the applications are public domain, except for WebsterXL and Oregano, but we have obtained permission from the authors as a matter of courtesy. Although the applications are PD, I’m sure the authors would not complain if you were to send them some token of your appreciation. Note: PD does not mean poor quality, we just think these are the best. WebsterXL is actively supported and developed by RComp who provide technical support.

would all be delivered to your machine. Newsbase can filter these into individual mailboxes.

Will the internal modem work with the PC card?

No. The internal modem is for use by Risc OS software only. You can’t access it from Windows or DOS.

What if I want a 56K modem?

We have thought of that. The package is also available with an external 56K modem.

What about ISDN?

We’ve thought of that too. We can supply a package including an ISDN terminal adaptor. Please contact us for further details.

What if I already have a modem?

Needless to say, we’ve though of that. We can set up the account and provide the CD for those who already have a modem.

Web pages

Once you have an internet account, you will be able to create a website for yourself. If you are not sure how to do this, or you would rather someone set up a site for you, why not get it touch with us and we can create a site for you? Whether you want a site which looks similar to this one, or something completely different, we will be able to either advise you how to set up your site, or set one up for you. You would need to supply the basic material – text, logos etc, and let us do the rest.

How much this will cost will depend on how large the site is and how many pages there are. For a simple personal home page we hope to be able quote a very reasonable price. A larger site, for a small company or club page, will cost more but still will be at a competitive rate.

RhythmBed

Rhythm-Bed is a program which allows you to create percussion tracks for controlling drum machines directly, for export to sequencers, such as Serenade or for use with your computer’s own internal voices.

Percussion tracks are built up using a simple yet powerful grid-editing technique. Rhythm-Bed is primarily a MIDI package for use as a drum machine but it can also access up to eight separate internal voices. RhythmBed is also ideal for primary schools as it allows children to quickly experiment with creating percussion tracks.

A RhythmBed screen shot

  •     MIDI compatible with a range of keyboards and drum machines supported
  •     Can use computer’s own Internal sounds
  •     Very easy to use grid based entry method
  •     Data can be saved as MIDI file for export to packages such as Rhapsody and Serenade
  •     Sequencing facility so you can build up a long rhythm from short patterns
  •     Full editing facilities (cut/copy/insert/add etc etc)

Serenade

Serenade is a desktop MIDI sequencer for the entire range of Acorn RISC OS machines. A great deal of effort has gone into creating a user interface that gives access to the power of Serenade without making it complex to use. No knowledge of musical notation is required – just connect a MIDI keyboard to your computer via a MIDI card and play. Serenade captures the music ready for editing.

A Serenade screen

  •     Multi tasking 16 track MIDI sequencer
  •     Intuitive interface
  •     Audition feature allows undo of most functions
  •     Guitar chord input
  •     Full editing facilities
  •     Accurate keyboard capture
  •     Automatic quantization
  •     Real time parameters including Transpose, Quantize etc
  •     Transfer scores to Rhapsody via Standard MIDI files
  •     Accepts Standard MIDI files
  •     Editable instrument names are used to select instruments
  •     Real Time MIDI Events enabling real time mixing, panning, etc
  •     Event list editing
  •     Track locking to prevent accidental erasure
  •     MIDI input and output filters allow selective recording of MIDI data
  •     Remote control triggering via MIDI keyboard
  •     Sync to external source of MIDI Time Clock
  •     Auto start and sync with Rhythm-Bed

Serenade excels. It is powerful, overflowing with functions and represents a leap forward in interfaces.

Rhapsody 4

Rhapsody 4 is the latest of the Rhapsody series of music notation applications for playing, recording and printing music. Music can be input manually by dragging notes onto staves or with the addition of a MIDI card and MIDI keyboard you can play a tune and Rhapsody will capture it and place the notes on the staves automatically.

A Rhapsody screen

Just take a look at the features:

  •     Guitar chords
  •     Quick edit panel
  •     Wide range of symbols including, rehearsal letters, da capo, tremolo, grace notes, spread chords etc
  •     Hairpins and phrasing
  •     Outline font used for all display and printing
  •     Different note styles – cue parts, percussion etc
  •     Automatic bar checking
  •     Different individual stave sizes and types
  •     Sophisticated transcribe options
  •     Formatting of selected staves
  •     Save pages as Draw files
  •     Can load and save Midi files (type 0 or 1)
  •     Supports bank change messsages
  •     You can insert Midi commands in the score
  •     Requires 4Mb and preferable at least ARM 3

Since Rhapsody 4 uses Fonts and Draw object to display and print, you no longer need to buy the ScoreDraw application which used to be necessary with earlier versions of Rhapsody, if you wanted high quality output or Draw file export.

The Midi facilities are more sophisticated than the earlier versions. You are no longer limited to 128 Midi voices and you can add controller or other Midi information anywhere in the score.

Render Bender II

Render Bender is the generic name for this package which consists of four applications. These are:

Illuminator – a graphical front end to Render Bender which enables you to create Render Bender files using a graphics program similar to Draw.

Render Bender itself which is the Ray Tracing part of the package. It takes a file from Illuminator and generates a ray traced image.

Animator – is an application that takes a sequence of screens, usually Render Bender but optionally any screens saved as sprites and delta compresses them to produce an animated sequence.

Converter – converts a compressed screen into a sprite file and also enables you to extract individual screens from an animation file.

This whole package forms a powerful 3D animation system that enables you to construct scenes using three dimensional objects and advanced ray tracing algorithms.

A sample ray traced image
Part of a Newton’s Cradle animation.

Using Illuminator you create your initial scene by building the image from supplied primitives or by drawing your own objects in the sweep and outline functions. Once you have your first image you can create a series of frames ready for animation. You can do this in several ways. You can create each frame manually by moving the objects to the new positions required in each frame or you can give objects a start point in one frame followed by an end point in another frame and tell the program to generate the frames in between. Another method enables you to assign formulae to objects so that you can move objects at a steady rate or even send them off in a sine wave. You can even get an outline preview of the animation in Illuminator to check that it will do what you intended.

Having created your outline frames using Illuminator you transfer the file to Render Bender where it is ray traced in whatever 256 colour mode you want. If you have a series of frames to be traced ready for animating then this can be done automatically and saved to disc as each one is completed. Once the screens have been generated with Render Bender you can animate them using Animator to produce startling animated sequences. These sequences can be saved as stand alone applications that can be passed on to other users. Animator can also be used on any screen sprites so that you can do cell animation very easily.

Note:
Render Bender II is NOT a current product and is restricted to 256 colour modes
It does work (and fast too) on a RiscPC
The price has been substantially reduced to reflect its age

Illusionist

Illusionist is a powerful 3-dimensional graphics package that enables you to create any object, of any colour and texture, illuminate it with coloured lights or spot lights, and render it in any 256 colour screen mode. A special colour mixing algorithm enables Illusionist to display an ‘infinite’ number of colours, giving the impression of very expensive graphics hardware! The result is stunning quality graphics on your own Archimedes. It’s even better when used with the Serial Port’s Graphics Enhancer card.

You can map any full screen sprites onto any object in a scene – you can even wrap it around a sphere. The objects can then be given a texture or surface varying from matt to metallic.

A Van Gogh image
This is a replica of a Van Gogh image created with Illusionist. The whole of Van Gogh’s bedroom was recreated in Illusionist allowing you to view the room from any angle – even those never painted by the artist

An Illusionist image
An Escher inspired image created with Illusionist

Features include:

Compatible with all RISC OS machines 1Mb and over
Powerful 3D editor
Materials editor
Picture and environment mapping
Anti aliasing and best fit algorithms
Saving in Compressed or Clear formats
Compressed screens compatible with Render Bender 2 and Titler

Note:
Illusionist is NOT a current product and is restricted to 256 colour modes
It does work (and fast too) on a RiscPC
The price has been substantially reduced to reflect its age