Trailing-Edge
-
PDP-10 Archives
-
bb-h138f-bm
-
7-sources/keypad.bli
There are 10 other files named keypad.bli in the archive. Click here to see a list.
%TITLE 'KEYPAD - keypad definitions'
MODULE KEYPAD ( ! Keypad definitions
IDENT = '3-001' ! File: KEYPAD.BLI Edit: GB3001
) =
BEGIN
!COPYRIGHT (c) DIGITAL EQUIPMENT CORPORATION 1981, 1988. ALL RIGHTS RESERVED.
!
!THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED ONLY
!IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION OF
!THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THEREOF MAY
!NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON. NO TITLE
!TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
!
!THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE AND
!SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT CORPORATION.
!
!DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
!SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY DIGITAL.
!
!
!++
! FACILITY: EDT -- The DEC Standard Editor
!
! ABSTRACT:
!
! This routine will contain the routines to initialize the keypad
! translation table. It also contains the default definitions for
! for the keys.
!
! ENVIRONMENT: Used in all EDT configurations.
!
! AUTHOR: T. Mitchell
!
! MODIFIED BY:
!
! Dan Szymanski, 30-JUL-80, 01
!
! Tables modified so that the default definitions
! for GOLD A, D, E, T, U, W, and Z are the same as corresponding
! CONTROL char. Definitions for accent and grave removed.
!
! 2-002 - Regularized the module and routine headers. JBS 13-Feb-1981
! 2-003 - Extraneous definitions for accent and grave deleted. Default
! keypad definitions for GOLD <- and GOLD -> (for VT100) deleted.
! DJS 17-Feb-1981
! 2-004 - Corrected a minor error in the header. JBS 25-Feb-1981
! 2-005 - Fix module name. JBS 10-Mar-1981
! 2-006 - Don't make keypad text global. JBS 30-Mar-1981
! 2-007 - Use the new message codes. JBS 04-Aug-1981
! 2-008 - Add documentation for HELP indices. SMB 19-Nov-1981
! 2-009 - EDT$DEFK returns a status. JBS 18-May-1982
! 2-010 - Change call to OUT_MSG to MSG_BELL. SMB 17-Jun-1982
! 2-011 - Correct the ident. JBS 01-Jul-1982
! 2-012 - Take extra spaces out of GOLD 7 key definition. SMB 22-Jul-1982
! 2-013 - Add GOLD and revise the format of the tables for the new
! implementation of defined keys. JBS 13-Aug-1982
! 2-014 - Make GOLD GOLD = GOLD, for compatibility. JBS 18-Aug-1982
! 2-015 - Make ESC insert an escape, for compatibility. JBS 03-Sep-1982
! 2-016 - Add conditional for VT220 support. JBS 11-Feb-1983
! 3-001 - Modify for Tops10/20 version. GB 02-Jun-1983
!--
%SBTTL 'Declarations'
!
! TABLE OF CONTENTS:
!
REQUIRE 'EDTSRC:TRAROUNAM';
FORWARD ROUTINE
EDT$$DEF_DFLTK; ! Define a lot of keys
!
! INCLUDE FILES:
!
REQUIRE 'EDTSRC:EDTREQ';
LIBRARY 'EDTSRC:KEYPADDEF';
LIBRARY 'EDTSRC:SUPPORTS';
!
! MACROS:
!
! NONE
!
! EQUATED SYMBOLS:
!
! NONE
!
! OWN STORAGE:
!
! NONE
!
! EXTERNAL REFERENCES:
!
! In the routine
!<BLF/PAGE>
!+
! Define the default translations for the editing keys.
!-
BIND
T_GOLD = UPLIT (%STRING (%CHAR (4), 'GOLD')),
T_WORD = UPLIT (%STRING (%CHAR (2), 'W.')),
T_BL = UPLIT (%STRING (%CHAR (3), 'BL.')),
T_EOL = UPLIT (%STRING (%CHAR (3), 'EL.')),
T_LINE = UPLIT (%STRING (%CHAR (2), 'L.')),
T_CHAR = UPLIT (%STRING (%CHAR (2), 'C.')),
T_UNDC = UPLIT (%STRING (%CHAR (5), 'UNDC.')),
T_UNDW = UPLIT (%STRING (%CHAR (5), 'UNDW.')),
T_UNDL = UPLIT (%STRING (%CHAR (5), 'UNDL.')),
T_EXIT = UPLIT (%STRING (%CHAR (3), 'EX.')),
T_BR = UPLIT (%STRING (%CHAR (3), 'BR.')),
T_ER = UPLIT (%STRING (%CHAR (3), 'ER.')),
T_CUT = UPLIT (%STRING (%CHAR (6), 'CUTSR.')),
T_PASTE = UPLIT (%STRING (%CHAR (6), 'PASTE.')),
T_REPLACE = UPLIT (%STRING (%CHAR (19), 'CUTSR=DELETE PASTE.')),
T_APPEND = UPLIT (%STRING (%CHAR (9), 'APPENDSR.')),
T_FIND = UPLIT (%STRING (%CHAR (18), %CHAR (0), '?''Search for: ''',
%CHAR (0), '.')),
T_NEXT = UPLIT (%STRING (%CHAR (3), '"".')),
T_ADV = UPLIT (%STRING (%CHAR (4), 'ADV.')),
T_BACK = UPLIT (%STRING (%CHAR (5), 'BACK.')),
T_UP = UPLIT (%STRING (%CHAR (3), '-V.')),
T_DOWN = UPLIT (%STRING (%CHAR (3), '+V.')),
T_RIGHT = UPLIT (%STRING (%CHAR (3), '+C.')),
T_LEFT = UPLIT (%STRING (%CHAR (3), '-C.')),
T_SEL = UPLIT (%STRING (%CHAR (4), 'SEL.')),
T_DEL = UPLIT (%STRING (%CHAR (5), 'D+NL.')),
T_DELW = UPLIT (%STRING (%CHAR (4), 'DEW.')),
T_DELC = UPLIT (%STRING (%CHAR (4), 'D+C.')),
T_OPEN = UPLIT (%STRING (%CHAR (7), '(^M-C).')),
T_DEOL = UPLIT (%STRING (%CHAR (5), 'D+EL.')),
T_DBL = UPLIT (%STRING (%CHAR (4), 'DBL.')),
T_DBW = UPLIT (%STRING (%CHAR (4), 'DBW.')),
T_PAGE = UPLIT (%STRING (%CHAR (8), 'PAGETOP.')),
T_SECT = UPLIT (%STRING (%CHAR (6), '(16L).')),
T_RUBC = UPLIT (%STRING (%CHAR (4), 'D-C.')),
T_ITAB = UPLIT (%STRING (%CHAR (4), 'TAB.')),
T_TD = UPLIT (%STRING (%CHAR (3), 'TD.')),
T_TI = UPLIT (%STRING (%CHAR (3), 'TI.')),
T_TC = UPLIT (%STRING (%CHAR (3), 'TC.')),
T_ICR = UPLIT (%STRING (%CHAR (3), '^M.')),
T_IFF = UPLIT (%STRING (%CHAR (3), '^L.')),
T_COM = UPLIT (%STRING (%CHAR (17), 'EXT ?''Command: ''.')),
T_REF = UPLIT (%STRING (%CHAR (4), 'REF.')),
T_SUBS = UPLIT (%STRING (%CHAR (25), '(CUTSR=DELETE PASTEKS"").')),
T_RESET = UPLIT (%STRING (%CHAR (5), 'RESET')),
T_ENTER = UPLIT (%STRING (%CHAR (1), '.')),
T_ASC = UPLIT (%STRING (%CHAR (4), 'ASC.')),
T_CHGC = UPLIT (%STRING (%CHAR (7), 'CHGCSR.')),
T_HELP = UPLIT (%STRING (%CHAR (5), 'HELP.')),
T_SHR = UPLIT (%STRING (%CHAR (4), 'SHR.')),
T_SHL = UPLIT (%STRING (%CHAR (4), 'SHL.')),
T_FILL = UPLIT (%STRING (%CHAR (7), 'FILLSR.')),
T_DEF = UPLIT (%STRING (%CHAR (5), 'DEFK.')),
T_TADJ = UPLIT (%STRING (%CHAR (7), 'TADJSR.')),
%IF SUPPORT_VT220
%THEN
T_PREV_SCR = UPLIT (%STRING (%CHAR (7), '(-16L).')),
T_NEXT_SCR = UPLIT (%STRING (%CHAR (7), '(+16L).')),
%FI
T_ESC = UPLIT (%STRING (%CHAR (8), '(27ASC).'));
!<BLF/PAGE>
!+
! These are the default keypad definitions for the VT100. (#) = index into
! help file
!-
BIND
VT100_TABLE = UPLIT ( !
ASC_K_DEL, T_RUBC - T_GOLD, ! (127) DEL key
K_KPAD_BASE + 0, T_LINE - T_GOLD, ! (300) 0
K_KPAD_BASE + 1, T_WORD - T_GOLD, ! (301) 1
K_KPAD_BASE + 2, T_EOL - T_GOLD, ! (302) 2
K_KPAD_BASE + 3, T_CHAR - T_GOLD, ! (303) 3
K_KPAD_BASE + 4, T_ADV - T_GOLD, ! (304) 4
K_KPAD_BASE + 5, T_BACK - T_GOLD, ! (305) 5
K_KPAD_BASE + 6, T_CUT - T_GOLD, ! (306) 6
K_KPAD_BASE + 7, T_PAGE - T_GOLD, ! (307) 7
K_KPAD_BASE + 8, T_SECT - T_GOLD, ! (308) 8
K_KPAD_BASE + 9, T_APPEND - T_GOLD, ! (309) 9
K_KPAD_BASE + 10, T_HELP - T_GOLD, ! (310) PF2
K_KPAD_BASE + 11, T_NEXT - T_GOLD, ! (311) PF3
K_KPAD_BASE + 12, T_UP - T_GOLD, ! (312) UP ARROW
K_KPAD_BASE + 13, T_DOWN - T_GOLD, ! (313) DOWN ARROW
K_KPAD_BASE + 14, T_RIGHT - T_GOLD, ! (314) RIGHT ARROW
K_KPAD_BASE + 15, T_LEFT - T_GOLD, ! (315) LEFT ARROW
K_KPAD_BASE + 16, T_SEL - T_GOLD, ! (316) .
K_KPAD_BASE + 17, T_DEL - T_GOLD, ! (317) PF4
K_KPAD_BASE + 18, T_DELW - T_GOLD, ! (318) -
K_KPAD_BASE + 19, T_DELC - T_GOLD, ! (319) ,
K_KPAD_BASE + 20, T_GOLD - T_GOLD, ! (320) PF1
K_KPAD_BASE + 21, T_ENTER - T_GOLD, ! (321) ENTER
K_KPAD_BASE + K_GOLD_BASE + 0, T_OPEN - T_GOLD, ! (800) GOLD 0
K_KPAD_BASE + K_GOLD_BASE + 1, T_CHGC - T_GOLD, ! (801) GOLD 1
K_KPAD_BASE + K_GOLD_BASE + 2, T_DEOL - T_GOLD, ! (802) GOLD 2
K_KPAD_BASE + K_GOLD_BASE + 3, T_ASC - T_GOLD, ! (803) GOLD 3
K_KPAD_BASE + K_GOLD_BASE + 4, T_ER - T_GOLD, ! (804) GOLD 4
K_KPAD_BASE + K_GOLD_BASE + 5, T_BR - T_GOLD, ! (805) GOLD 5
K_KPAD_BASE + K_GOLD_BASE + 6, T_PASTE - T_GOLD, ! (806) GOLD 6
K_KPAD_BASE + K_GOLD_BASE + 7, T_COM - T_GOLD, ! (807) GOLD 7
K_KPAD_BASE + K_GOLD_BASE + 8, T_FILL - T_GOLD, ! (808) GOLD 8
K_KPAD_BASE + K_GOLD_BASE + 9, T_REPLACE - T_GOLD, ! (809) GOLD 9
K_KPAD_BASE + K_GOLD_BASE + 10, T_HELP - T_GOLD, ! (810) GOLD PF2
K_KPAD_BASE + K_GOLD_BASE + 11, T_FIND - T_GOLD, ! (811) GOLD PF3
K_KPAD_BASE + K_GOLD_BASE + 16, T_RESET - T_GOLD, ! (816) GOLD .
K_KPAD_BASE + K_GOLD_BASE + 17, T_UNDL - T_GOLD, ! (817) GOLD PF4
K_KPAD_BASE + K_GOLD_BASE + 18, T_UNDW - T_GOLD, ! (818) GOLD -
K_KPAD_BASE + K_GOLD_BASE + 19, T_UNDC - T_GOLD, ! (819) GOLD ,
K_KPAD_BASE + K_GOLD_BASE + 20, T_GOLD - T_GOLD, ! (820) GOLD PF1
K_KPAD_BASE + K_GOLD_BASE + 21, T_SUBS - T_GOLD, ! (821) GOLD ENTER
%C'A' - 64, T_TC - T_GOLD, ! (1) CNTRL A
%C'D' - 64, T_TD - T_GOLD, ! (4) CNTRL D
%C'E' - 64, T_TI - T_GOLD, ! (5) CNTRL E
ASC_K_BS, T_BL - T_GOLD, ! (8) CNTRL H
ASC_K_TAB, T_ITAB - T_GOLD, ! (9) CNTRL I
ASC_K_LF, T_DBW - T_GOLD, ! (10) CNTRL J
ASC_K_CTRL_K, T_DEF - T_GOLD, ! (11) CNTRL K
ASC_K_FF, T_IFF - T_GOLD, ! (12) CNTRL L
ASC_K_CR, T_ICR - T_GOLD, ! (13) CNTRL M
%C'R' - 64, T_REF - T_GOLD, ! (18) CNTRL R
%C'T' - 64, T_TADJ - T_GOLD, ! (19) CNTRL T
ASC_K_CTRL_U, T_DBL - T_GOLD, ! (20) CNTRL U
%C'W' - 64, T_REF - T_GOLD, ! (22) CNTRL W
ASC_K_CTRL_Z, T_EXIT - T_GOLD, ! (25) CNTRL Z
ASC_K_ESC, T_ESC - T_GOLD, ! (27) ESC
K_GOLD_BASE + %C'A', T_TC - T_GOLD, ! (565) GOLD A
K_GOLD_BASE + %C'D', T_TD - T_GOLD, ! (568) GOLD D
K_GOLD_BASE + %C'E', T_TI - T_GOLD, ! (569) GOLD E
K_GOLD_BASE + %C'R', T_REF - T_GOLD, ! (582) GOLD R
K_GOLD_BASE + %C'T', T_TADJ - T_GOLD, ! (584) GOLD T
K_GOLD_BASE + %C'U', T_DBL - T_GOLD, ! (585) GOLD U
K_GOLD_BASE + %C'W', T_REF - T_GOLD, ! (587) GOLD W
K_GOLD_BASE + %C'Z', T_EXIT - T_GOLD, ! (590) GOLD Z
%IF SUPPORT_VT220 %THEN
K_FUN_BASE + 28, T_HELP - T_GOLD, ! (428) HELP
K_FUN_BASE + 29, T_ENTER - T_GOLD, ! (429) DO
K_FUN_BASE + 1, T_FIND - T_GOLD, ! (401) FIND
K_FUN_BASE + 2, T_PASTE - T_GOLD, ! (402) INSERT HERE
K_FUN_BASE + 3, T_CUT - T_GOLD, ! (403) REMOVE
K_FUN_BASE + 4, T_SEL - T_GOLD, ! (404) SELECT
K_FUN_BASE + 5, T_PREV_SCR - T_GOLD, ! (405) PREV SCREEN
K_FUN_BASE + 6, T_NEXT_SCR - T_GOLD, ! (406) NEXT SCREEN
K_FUN_BASE + 24, T_BL - T_GOLD, ! (424) F12 (used as BS)
K_FUN_BASE + 25, T_DBW - T_GOLD, ! (425) F13 (used as LF)
%FI
K_KEY_MAX + 1) : VECTOR [];
!<BLF/PAGE>
!+
! Default key definitions for VT52.
!-
BIND
VT52_TABLE = UPLIT ( !
ASC_K_DEL, T_RUBC - T_GOLD, ! (127) DEL key
K_KPAD_BASE + 0, T_LINE - T_GOLD, ! (300) 0
K_KPAD_BASE + 1, T_WORD - T_GOLD, ! (301) 1
K_KPAD_BASE + 2, T_EOL - T_GOLD, ! (302) 2
K_KPAD_BASE + 3, T_CUT - T_GOLD, ! (303) 3
K_KPAD_BASE + 4, T_ADV - T_GOLD, ! (304) 4
K_KPAD_BASE + 5, T_BACK - T_GOLD, ! (305) 5
K_KPAD_BASE + 6, T_DELC - T_GOLD, ! (306) 6
K_KPAD_BASE + 7, T_PAGE - T_GOLD, ! (307) 7
K_KPAD_BASE + 8, T_NEXT - T_GOLD, ! (308) 8
K_KPAD_BASE + 9, T_DELW - T_GOLD, ! (309) 9
K_KPAD_BASE + 10, T_HELP - T_GOLD, ! (310) PF2 (RED)
K_KPAD_BASE + 11, T_DEL - T_GOLD, ! (311) PF3 (GREY)
K_KPAD_BASE + 12, T_UP - T_GOLD, ! (312) UP ARROW
K_KPAD_BASE + 13, T_DOWN - T_GOLD, ! (313) DOWN ARROW
K_KPAD_BASE + 14, T_RIGHT - T_GOLD, ! (314) RIGHT ARROW
K_KPAD_BASE + 15, T_LEFT - T_GOLD, ! (315) LEFT ARROW
K_KPAD_BASE + 16, T_SEL - T_GOLD, ! (316) .
K_KPAD_BASE + 20, T_GOLD - T_GOLD, ! (320) PF1 (BLUE)
K_KPAD_BASE + 21, T_ENTER - T_GOLD, ! (321) ENTER
K_KPAD_BASE + K_GOLD_BASE + 0, T_OPEN - T_GOLD, ! (800) GOLD 0
K_KPAD_BASE + K_GOLD_BASE + 1, T_CHGC - T_GOLD, ! (801) GOLD 1
K_KPAD_BASE + K_GOLD_BASE + 2, T_DEOL - T_GOLD, ! (802) GOLD 2
K_KPAD_BASE + K_GOLD_BASE + 3, T_PASTE - T_GOLD, ! (803) GOLD 3
K_KPAD_BASE + K_GOLD_BASE + 4, T_ER - T_GOLD, ! (804) GOLD 4
K_KPAD_BASE + K_GOLD_BASE + 5, T_BR - T_GOLD, ! (805) GOLD 5
K_KPAD_BASE + K_GOLD_BASE + 6, T_UNDC - T_GOLD, ! (806) GOLD 6
K_KPAD_BASE + K_GOLD_BASE + 7, T_COM - T_GOLD, ! (807) GOLD 7
K_KPAD_BASE + K_GOLD_BASE + 8, T_FIND - T_GOLD, ! (808) GOLD 8
K_KPAD_BASE + K_GOLD_BASE + 9, T_UNDW - T_GOLD, ! (809) GOLD 9
K_KPAD_BASE + K_GOLD_BASE + 10, T_HELP - T_GOLD, ! (810) GOLD PF2 (RED)
K_KPAD_BASE + K_GOLD_BASE + 11, T_UNDL - T_GOLD, ! (811) GOLD PF3 (GREY)
K_KPAD_BASE + K_GOLD_BASE + 12, T_REPLACE - T_GOLD, ! (812) GOLD UP
K_KPAD_BASE + K_GOLD_BASE + 13, T_SECT - T_GOLD, ! (813) GOLD DOWN
K_KPAD_BASE + K_GOLD_BASE + 14, T_ASC - T_GOLD, ! (814) GOLD RIGHT
K_KPAD_BASE + K_GOLD_BASE + 15, T_APPEND - T_GOLD, ! (815) GOLD LEFT
K_KPAD_BASE + K_GOLD_BASE + 16, T_RESET - T_GOLD, ! (816) GOLD .
K_KPAD_BASE + K_GOLD_BASE + 20, T_GOLD - T_GOLD, ! (820) GOLD PF1 (BLUER
K_KPAD_BASE + K_GOLD_BASE + 21, T_SUBS - T_GOLD, ! (821) GOLD ENTER
%C'A' - 64, T_TC - T_GOLD, ! (1) CNTRL A
%C'D' - 64, T_TD - T_GOLD, ! (4) CNTRL D
%C'E' - 64, T_TI - T_GOLD, ! (5) CNTRL E
%C'F' - 64, T_FILL - T_GOLD, ! (6) CNTRL F
ASC_K_BS, T_BL - T_GOLD, ! (8) CNTRL H
ASC_K_TAB, T_ITAB - T_GOLD, ! (9) CNTRL I
ASC_K_LF, T_DBW - T_GOLD, ! (10) CNTRL J
ASC_K_CTRL_K, T_DEF - T_GOLD, ! (11) CNTRL K
ASC_K_FF, T_IFF - T_GOLD, ! (12) CNTRL L
ASC_K_CR, T_ICR - T_GOLD, ! (13) CNTRL M
%C'R' - 64, T_REF - T_GOLD, ! (18) CNTRL R
%C'S' - 64, T_TADJ - T_GOLD, ! (20) CNTRL T
ASC_K_CTRL_U, T_DBL - T_GOLD, ! (21) CNTRL U
%C'W' - 64, T_REF - T_GOLD, ! (23) CNTRL W
ASC_K_CTRL_Z, T_EXIT - T_GOLD, ! (26) CNTRL Z
ASC_K_ESC, T_ESC - T_GOLD, ! (27) ESC
K_GOLD_BASE + %C'A', T_TC - T_GOLD, ! (565) GOLD A
K_GOLD_BASE + %C'D', T_TD - T_GOLD, ! (568) GOLD D
K_GOLD_BASE + %C'E', T_TI - T_GOLD, ! (569) GOLD E
K_GOLD_BASE + %C'F', T_FILL - T_GOLD, ! (570) GOLD F
K_GOLD_BASE + %C'R', T_REF - T_GOLD, ! (582) GOLD R
K_GOLD_BASE + %C'T', T_TADJ - T_GOLD, ! (584) GOLD T
K_GOLD_BASE + %C'U', T_DBL - T_GOLD, ! (585) GOLD U
K_GOLD_BASE + %C'W', T_REF - T_GOLD, ! (587) GOLD W
K_GOLD_BASE + %C'Z', T_EXIT - T_GOLD, ! (590) GOLD Z
K_KEY_MAX + 1) : VECTOR [];
%SBTTL 'EDT$$DEF_DFLTK - Define the default keypad'
GLOBAL ROUTINE EDT$$DEF_DFLTK ! Define the default keypad
=
!+
! FUNCTIONAL DESCRIPTION:
!
! Define the default keypad, for either the VT100 or the VT52. Any keys
! already defined are left alone.
!
! FORMAL PARAMETERS:
!
! NONE
!
! IMPLICIT INPUTS:
!
! NONE
!
! IMPLICIT OUTPUTS:
!
! TRN_TBLINIT Set to 1 to indicate that the table is initialized
!
! ROUTINE VALUE:
!
! 1 = success, even value = an error from EDT$$DEFK
!
! SIDE EFFECTS:
!
! NONE
!
!-
BEGIN
EXTERNAL ROUTINE
EDT$$DEFK, ! Define a key
EDT$$FIND_KEY; ! Find the definition of a key
EXTERNAL
TRN_TBLINIT, ! Set to 1 after the table is initialized
TI_TYP; ! The type of terminal
LOCAL
TABLE : REF VECTOR [],
I;
!+
! Point to the proper table.
!-
SELECTONE .TI_TYP OF
SET
[TERM_VT52] :
TABLE = VT52_TABLE;
[TERM_VT100] :
TABLE = VT100_TABLE;
[OTHERWISE] :
RETURN (1); ! Don't mark the table initialized until we have a scope
TES;
I = 0;
WHILE (.TABLE [.I] NEQ K_KEY_MAX + 1) DO
BEGIN
LOCAL
STATUS,
TEXT_PTR,
KEY_PTR : REF BLOCK [ ] FIELD (KEY_DEF_FIELD);
IF ( NOT EDT$$FIND_KEY (.TABLE [.I], KEY_PTR))
THEN
BEGIN
TEXT_PTR = CH$PTR (T_GOLD + .TABLE [.I + 1]);
STATUS = EDT$$DEFK (.TABLE [.I], CH$PLUS (.TEXT_PTR, 1), CH$RCHAR (.TEXT_PTR));
IF ( NOT .STATUS) THEN RETURN (.STATUS);
END;
I = .I + 2;
END;
TRN_TBLINIT = 1;
RETURN (1);
END; ! of routine EDT$$DEF_DFLTK
!<BLF/PAGE>
END ! of module EDT$KEYPAD
ELUDOM