PACKET konvert DEFINES (* Copyright (C) 1986 *) (* Frank Klapper *) (* 28.10.86 *) high byte, low byte, word, change low byte, change high byte, dint, high word, low word: INT PROC high byte (INT CONST value): TEXT VAR x := " "; replace (x, 1, value); code (x SUB 2) END PROC high byte; INT PROC low byte (INT CONST value): TEXT VAR x := " "; replace (x, 1, value); code (x SUB 1) END PROC low byte; INT PROC word (INT CONST low byte, high byte): TEXT CONST x :: code (low byte) + code (high byte); x ISUB 1 END PROC word; PROC change low byte (INT VAR word, INT CONST low byte): TEXT VAR x := " "; replace (x, 1, word); replace (x, 1, code (low byte)); word := x ISUB 1 END PROC change low byte; PROC change high byte (INT VAR word, INT CONST high byte): TEXT VAR x := " "; replace (x, 1, word); replace (x, 2, code (high byte)); word := x ISUB 1 END PROC change high byte; REAL PROC dint (INT CONST low word, high word): real low word + 65536.0 * real high word. real low word: real (low byte (low word)) + 256.0 * real (high byte (low word)). real high word: real (low byte (high word)) + 256.0 * real (high byte (high word)). END PROC dint; INT PROC high word (REAL CONST double precission int): int (double precission int / 65536.0) END PROC high word; INT PROC low word (REAL CONST double precission int): string of low bytes ISUB 1. string of low bytes: code (int (double precission int MOD 256.0)) + code (int ((double precission int MOD 65536.0) / 256.0)). END PROC low word; END PACKET konvert;