t3x.org / t3x / t3x-manual / 373.html
 
T3X - A Minimum Procedural Language
Version 8.1.5, Online Edition
Copyright(C) 1996-2004
Nils M Holm
 
Previous:
3.7.2 TCODE Instructions
TOC | Index | Back Next:
3.8 RTCODE -- Tcode Instruction Lookup

3.7.3 Tcode Instruction Format

The following constants are used to extract specific parts of Tcode instructions:

TCODE.IOPMASK is a mask that is used to extract the opcode part of an instruction:

opcode := instruction & TCODE.IOPMASK;

The remaining bit masks and offsets operate on the Tcode flags field which is the most significant byte of a 16-bit word:

Flags := instruction >> 8;
Class constant Description
TCODE.IL1MASK argument 1 length mask
TCODE.IL2MASK argument 2 length mask
TCODE.ISTFLAG string flag
TCODE.IARMASK argument count mask
TCODE.IARFLAG argument flag
TCODE.IL1OFF argument 1 length offset
TCODE.IL2OFF argument 2 length offset
TCODE.ISFOFF string flag offset
TCODE.IAMOFF argument mask offset
TCODE.IAROFF argument flag offset

The individual fields of a Tcode flags field are extracted as follows:

Argument_flag     := Flags & TCODE.IARFLAG >> TCODE.IAROFF;
Argument_count    := Flags & TCODE.IARMASK >> TCODE.IAMOFF;
Argument_1_len    := Flags & TCODE.IL1MASK >> TCODE.IL1OFF;
Argument_2_len    := Flags & TCODE.IL2MASK >> TCODE.IL2OFF;
Argument_str_flag := Flags & TCODE.ISTFLAG >> TCODE.ISFOFF;
Previous:
3.7.2 TCODE Instructions
TOC | Index | Back Next:
3.8 RTCODE -- Tcode Instruction Lookup