Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The following pages will describe all the structures available to implement application cards that can hold one or more types as listed above. 

 Limitations and conventions

There are some limitations and conventions regarding menu topics and help; the limitations are:

  1. Diamond sequences should consist of no more than 5 characters, although these may be special characters like arrow keys and Delete.
  2. The first possible match will be selected, so if a diamond sequence 'AB' exists, there is no point having 'ABC' as it cannot be selected.
  3. No command code should be zero, as two zeroes from 'OS_In' are used to represent NUL. Note also that the <SPACE>, <TAB>, <ENTER> and the arrow keys all return command codes and you must make sure you do not clash with these. See "Input and the Keyboard Decoder" for details of these codes.
  4. There should be no more than 7 topics per application and no more than 24 commands per topic. Each command name should consist of no more than 25 characters.
  5. If any commands in a topic have help, then it is strongly recommended that all the topics have help, even if this is just a blank page (set the help pointer to point to a NUL) and the topic itself must have help. 

The conventions, we recommend you subscribe to, are:

    1. Make the first letter of a diamond sequence the first letter of the topic name (eg. PipeDream has BNEW in the Blocks topic).
    2. If topic names coincide with the internal ones, then the order should be the same, eg. 'CURSOR' before 'FILES'.
    3. Commands associated with the arrow keys should be in the order: Right, Left, Up and Down. 

Bad Applications

An application can be made 'bad' (or a popdown 'ugly') if it requires a large area of continuous memory since the Z88 cannot allocate more than 256 bytes to an application at any time. Although this appears to be very restrictive, most programs can be made to work under this regime. All the internal applications, bar BBC BASIC, are 'good', and BBC BASIC is only bad because it was not written for the Z88 but simply imported. If, however, you are simply unable to write an application without large continuous areas, you may have to make your application bad. Similarly if your application is intended to be the only one running on the Z88, there is no problem with it being bad.

...