Index
CEF32 differences from the specification
CEF32 provides all of the features of the CEF specification, except as described in this section. Additional capabilities are also described here.
The Master assembler Add_Reference and Add_Reference_Ex methods only support bit ranges that reside entirely within a single byte.
Bases from 37 through 49, inclusive, are supported in addition to the CEF standard 2 through 36.
The Media Manager will automatically construct and pass a TTape_Media object to any tape Presenter that it requests. The Presenter can safely cast the TMedia to a TTape_Media.
CEF32 supports localized text. By default, it uses English for all text. You can specify replacement text via a language file. CEF32 will uses the language indicated in the CEF32.ini file (if present in the same folder as CEF32.exe), after the line starting with "LANGUAGE=". It will look in the "languages" subfolder for a file with the specified language name, and no extension. For instance, if CEF32.ini contains a line that is "LANGUAGE=French", the program will look for the file "Languages\French." If found, it will load the text from that file use it in place of the default English text. Language files are simple text files, with one line per replacement text. The first line corresponds to text item 0, the second line to text item 1, etc. Look at _TextStrs.inc in the source files for a list of all the current English text items. Pay attention to the order specified by the ID_* constants. If the file has less text than required, all missing text will be supplied in English.
CEF32 supports additional features in expressions. The following additional operators are available:
Operator

Description

!

Factorial (do a factorial of the previous value)

%

Percentage (divide the previous value by 100)

MOD

Division remainder only

MIN

Return left side value if greater than the right side value, otherwise, return the right side value

MAX

Return left side value if less than the right side value, otherwise, return the right side value

SHR

Shift value right (value interpreted as a signed 2s complement integer)

SHL

Shift value left (value interpreted as a signed 2s complement integer)

AND

Bitwise and (value interpreted as a signed 2s complement integer)

OR

Bitwise or (value interpreted as a signed 2s complement integer)

XOR

Bitwise exclusiveor (value interpreted as a signed 2s complement integer)

&

Bitwise and (synonym of AND)



Bitwise or (synonym of OR)

<<

Shift value left (Synonym of SHL).

>>

Shift value right (Synonym of SHR).

PI is a predefined constant equal to 3.14159265...
Functions have the form:
FUNCTION(expression)
where expression is the value to perform the function on. Available trigonometric functions are:
Function

Description

TAN

Tangent

SIN

Sine

COS

Cosine

SEC

Secant

COT

Cotangent

CSC

Cosecant

ARC and Hyperbolic functions are available by prefixing the trigonometric function name with "ARC", "HYP", or "HYPARC" (eg ARCTAN and HYPARCSEC). Other functions available:
Function

Description

RAD

Degree to radian conversion

DEG

Radian to degree conversion

ABS

Absolute value

EXP

Constant E raised to the specified power

INT

Integer

LOG

Natural logarithm

LOG10

Common logarithm

SQR

Square root

SGN

Sign (returns 1 if negative, 1 if positive, or 0 if 0).

FIB

Fibonacci sequence
