,ll 6.6
,cs 10
,pl 66
,lm 0.2,0.5
,pn 1
,ju
,hd
,ce
OmegaSoft 6809 Cross Pascal Language Handbook (V1.0)
,,
,ft

,ce 1
4-##
,,
,ce
OmegaSoft 6809 Cross Pascal Language Handbook (V1.0)

,ce
INTRODUCTION

OmegaSoft Pascal is an extended implementation of the ISO standard Pascal language. This language is designed for industrial control and related real-time applications and features the following extensions :
,in .4

* Additional data types including longinteger, longhex, hex, string, and user-defined device.

* Logical operators for 1, 2, and 4 byte types.

* Shift operator for 1, 2, and 4 byte types.

* Loop exit and program halt.

* Hex and binary constants.

* Easy interface to assembly language procedures, functions, and variables.

* Else clause and subrange constants for case statement.

* ADDR and SIZEOF functions.

* Arithmetic operators for one byte values.

* Include files.

* Structured constants.

* Modular compilation.
,in 0

Features in the ISO standard not supported in this compiler are packed variables (and associated procedures) and procedures and functions as formal parameters to procedures and functions.

SYNTAX NOTATION USED IN THIS MANUAL

Modified Backus-Naur form is used as the primary syntax in this manual. Note that terminal symbols (reserved words, special symbols) are in boldface print.

       Meta-Symbol            Meaning                        

       =                      shall be defined to be
       |                      alternatively
       [x]                    zero or one instance of x
       {x}                    zero or more repetitions of x
       (x|y|..|z)             grouping: any one of x,y,..,z
       xyz                    the terminal symbol xyz
       anything-else          a non-terminal symbol

For more complex constructions pictorial syntax diagrams are also provided.

,in 1.4
Ovals are used to represent reserved words, predefined identifiers, and symbols. These appear in the program as shown and are not expanded out into further syntax. The items within the ovals are in boldface print to correspond with the Backus-Naur form outlined above.
,in 0

,ce
INTRODUCTION - SYNTAX NOTATION

,in 1.4 
A rectangle contains syntax elements that are defined elsewhere in their own diagram. These can be either user defined identifiers or parts of the syntax that can be expanded out into its basic components.
 
Lines and arrows indicate authorized paths and are used to show the acceptable sequence of elements in the syntax diagram.

,in 0
There are four basic types of syntax diagrams, all the syntax in this manual are formed from these four basic types. A SEQUENCE shows that something must be done in a fixed order, such as

   while          boolean expression         do      statement

An ALTERNATE shows that there is more than one option, such as :

   variable identifier
                            :=      expression
     function return

An OPTION shows that something can be left out, such as :

  if    expression    then   statement    else   statement

A REPETITION shows that something can be done more than once, such as :

     begin        statement          end

