#ifndef smgdef_h #define smgdef_h #define SMG$K_TRM_NULL_CHAR 0 #define SMG$K_TRM_CTRLA 1 #define SMG$K_TRM_CTRLB 2 #define SMG$K_TRM_CTRLC 3 #define SMG$K_TRM_CTRLD 4 #define SMG$K_TRM_CTRLE 5 #define SMG$K_TRM_CTRLF 6 #define SMG$K_TRM_CTRLG 7 #define SMG$K_TRM_CTRLH 8 #define SMG$K_TRM_CTRLI 9 #define SMG$K_TRM_CTRLJ 10 #define SMG$K_TRM_CTRLK 11 #define SMG$K_TRM_CTRLL 12 #define SMG$K_TRM_CTRLM 13 #define SMG$K_TRM_CTRLN 14 #define SMG$K_TRM_CTRLO 15 #define SMG$K_TRM_CTRLP 16 #define SMG$K_TRM_CTRLQ 17 #define SMG$K_TRM_CTRLR 18 #define SMG$K_TRM_CTRLS 19 #define SMG$K_TRM_CTRLT 20 #define SMG$K_TRM_CTRLU 21 #define SMG$K_TRM_CTRLV 22 #define SMG$K_TRM_CTRLW 23 #define SMG$K_TRM_CTRLX 24 #define SMG$K_TRM_CTRLY 25 #define SMG$K_TRM_CTRLZ 26 #define SMG$K_TRM_ESCAPE 27 #define SMG$K_TRM_FS 28 #define SMG$K_TRM_GS 29 #define SMG$K_TRM_RS 30 #define SMG$K_TRM_US 31 #define SMG$K_TRM_SPACE 32 #define SMG$K_TRM_EXCLAMATION_POINT 33 #define SMG$K_TRM_DOUBLE_QUOTE 34 #define SMG$K_TRM_NUMBER_SIGN 35 #define SMG$K_TRM_DOLLAR_SIGN 36 #define SMG$K_TRM_PERCENT_SIGN 37 #define SMG$K_TRM_AMPERSAND 38 #define SMG$K_TRM_QUOTE 39 #define SMG$K_TRM_LEFT_PAREN 40 #define SMG$K_TRM_RIGHT_PAREN 41 #define SMG$K_TRM_ASTERISK 42 #define SMG$K_TRM_PLUS_SIGN 43 #define SMG$K_TRM_COMMA_CHAR 44 #define SMG$K_TRM_DASH 45 #define SMG$K_TRM_DOT 46 #define SMG$K_TRM_SLASH 47 #define SMG$K_TRM_ZERO 48 #define SMG$K_TRM_ONE 49 #define SMG$K_TRM_TWO 50 #define SMG$K_TRM_THREE 51 #define SMG$K_TRM_FOUR 52 #define SMG$K_TRM_FIVE 53 #define SMG$K_TRM_SIX 54 #define SMG$K_TRM_SEVEN 55 #define SMG$K_TRM_EIGHT 56 #define SMG$K_TRM_NINE 57 #define SMG$K_TRM_COLON 58 #define SMG$K_TRM_SEMICOLON 59 #define SMG$K_TRM_LESS_THAN 60 #define SMG$K_TRM_EQUAL 61 #define SMG$K_TRM_GREATER_THAN 62 #define SMG$K_TRM_QUESTION_MARK 63 #define SMG$K_TRM_AT_SIGN 64 #define SMG$K_TRM_UPPERCASE_A 65 #define SMG$K_TRM_UPPERCASE_B 66 #define SMG$K_TRM_UPPERCASE_C 67 #define SMG$K_TRM_UPPERCASE_D 68 #define SMG$K_TRM_UPPERCASE_E 69 #define SMG$K_TRM_UPPERCASE_F 70 #define SMG$K_TRM_UPPERCASE_G 71 #define SMG$K_TRM_UPPERCASE_H 72 #define SMG$K_TRM_UPPERCASE_I 73 #define SMG$K_TRM_UPPERCASE_J 74 #define SMG$K_TRM_UPPERCASE_K 75 #define SMG$K_TRM_UPPERCASE_L 76 #define SMG$K_TRM_UPPERCASE_M 77 #define SMG$K_TRM_UPPERCASE_N 78 #define SMG$K_TRM_UPPERCASE_O 79 #define SMG$K_TRM_UPPERCASE_P 80 #define SMG$K_TRM_UPPERCASE_Q 81 #define SMG$K_TRM_UPPERCASE_R 82 #define SMG$K_TRM_UPPERCASE_S 83 #define SMG$K_TRM_UPPERCASE_T 84 #define SMG$K_TRM_UPPERCASE_U 85 #define SMG$K_TRM_UPPERCASE_V 86 #define SMG$K_TRM_UPPERCASE_W 87 #define SMG$K_TRM_UPPERCASE_X 88 #define SMG$K_TRM_UPPERCASE_Y 89 #define SMG$K_TRM_UPPERCASE_Z 90 #define SMG$K_TRM_LEFT_BRACKET 91 #define SMG$K_TRM_BACKSLASH 92 #define SMG$K_TRM_RIGHT_BRACKET 93 #define SMG$K_TRM_CARET 94 #define SMG$K_TRM_UNDERLINE 95 #define SMG$K_TRM_GRAVE_ACCENT 96 #define SMG$K_TRM_LOWERCASE_A 97 #define SMG$K_TRM_LOWERCASE_B 98 #define SMG$K_TRM_LOWERCASE_C 99 #define SMG$K_TRM_LOWERCASE_D 100 #define SMG$K_TRM_LOWERCASE_E 101 #define SMG$K_TRM_LOWERCASE_F 102 #define SMG$K_TRM_LOWERCASE_G 103 #define SMG$K_TRM_LOWERCASE_H 104 #define SMG$K_TRM_LOWERCASE_I 105 #define SMG$K_TRM_LOWERCASE_J 106 #define SMG$K_TRM_LOWERCASE_K 107 #define SMG$K_TRM_LOWERCASE_L 108 #define SMG$K_TRM_LOWERCASE_M 109 #define SMG$K_TRM_LOWERCASE_N 110 #define SMG$K_TRM_LOWERCASE_O 111 #define SMG$K_TRM_LOWERCASE_P 112 #define SMG$K_TRM_LOWERCASE_Q 113 #define SMG$K_TRM_LOWERCASE_R 114 #define SMG$K_TRM_LOWERCASE_S 115 #define SMG$K_TRM_LOWERCASE_T 116 #define SMG$K_TRM_LOWERCASE_U 117 #define SMG$K_TRM_LOWERCASE_V 118 #define SMG$K_TRM_LOWERCASE_W 119 #define SMG$K_TRM_LOWERCASE_X 120 #define SMG$K_TRM_LOWERCASE_Y 121 #define SMG$K_TRM_LOWERCASE_Z 122 #define SMG$K_TRM_LEFT_BRACE 123 #define SMG$K_TRM_VERTICAL_LINE 124 #define SMG$K_TRM_RIGHT_BRACE 125 #define SMG$K_TRM_TILDE 126 #define SMG$K_TRM_DELETE 127 #define SMG$K_TRM_BS 8 #define SMG$K_TRM_HT 9 #define SMG$K_TRM_LF 10 #define SMG$K_TRM_VT 11 #define SMG$K_TRM_FF 12 #define SMG$K_TRM_CR 13 #define SMG$K_TRM_PF1 256 #define SMG$K_TRM_PF2 257 #define SMG$K_TRM_PF3 258 #define SMG$K_TRM_PF4 259 #define SMG$K_TRM_KP0 260 #define SMG$K_TRM_KP1 261 #define SMG$K_TRM_KP2 262 #define SMG$K_TRM_KP3 263 #define SMG$K_TRM_KP4 264 #define SMG$K_TRM_KP5 265 #define SMG$K_TRM_KP6 266 #define SMG$K_TRM_KP7 267 #define SMG$K_TRM_KP8 268 #define SMG$K_TRM_KP9 269 #define SMG$K_TRM_ENTER 270 #define SMG$K_TRM_MINUS 271 #define SMG$K_TRM_COMMA 272 #define SMG$K_TRM_PERIOD 273 #define SMG$K_TRM_UP 274 #define SMG$K_TRM_DOWN 275 #define SMG$K_TRM_LEFT 276 #define SMG$K_TRM_RIGHT 277 #define SMG$K_TRM_F1 281 #define SMG$K_TRM_F2 282 #define SMG$K_TRM_F3 283 #define SMG$K_TRM_F4 284 #define SMG$K_TRM_F5 285 #define SMG$K_TRM_F6 286 #define SMG$K_TRM_F7 287 #define SMG$K_TRM_F8 288 #define SMG$K_TRM_F9 289 #define SMG$K_TRM_F10 290 #define SMG$K_TRM_F11 291 #define SMG$K_TRM_F12 292 #define SMG$K_TRM_F13 293 #define SMG$K_TRM_F14 294 #define SMG$K_TRM_F15 295 #define SMG$K_TRM_F16 296 #define SMG$K_TRM_F17 297 #define SMG$K_TRM_F18 298 #define SMG$K_TRM_F19 299 #define SMG$K_TRM_F20 300 #define SMG$K_TRM_HELP 295 #define SMG$K_TRM_DO 296 #define SMG$K_TRM_E1 311 #define SMG$K_TRM_E2 312 #define SMG$K_TRM_E3 313 #define SMG$K_TRM_E4 314 #define SMG$K_TRM_E5 315 #define SMG$K_TRM_E6 316 #define SMG$K_TRM_FIND 311 #define SMG$K_TRM_INSERT_HERE 312 #define SMG$K_TRM_REMOVE 313 #define SMG$K_TRM_SELECT 314 #define SMG$K_TRM_PREV_SCREEN 315 #define SMG$K_TRM_NEXT_SCREEN 316 #define SMG$K_TRM_FIRST_DOWN 321 #define SMG$K_TRM_SECOND_DOWN 322 #define SMG$K_TRM_THIRD_DOWN 323 #define SMG$K_TRM_FOURTH_DOWN 324 #define SMG$K_TRM_FIRST_UP 325 #define SMG$K_TRM_SECOND_UP 326 #define SMG$K_TRM_THIRD_UP 327 #define SMG$K_TRM_FOURTH_UP 328 #define SMG$K_TRM_CANCELLED 508 #define SMG$K_TRM_TIMEOUT 509 #define SMG$K_TRM_BUFFER_FULL 510 #define SMG$K_TRM_UNKNOWN 511 #define SMG$C_CHANGE_RENDITION 10 #define SMG$C_DELETE_CHARS 11 #define SMG$C_ERASE_DISPLAY 12 #define SMG$C_ERASE_LINE 13 #define SMG$C_HOME_CURSOR 14 #define SMG$C_INSERT_CHARS 15 #define SMG$C_INSERT_LINE 16 #define SMG$C_PUT_CHARS 17 #define SMG$C_PUT_LINE 18 #define SMG$C_PUT_DISPLAY_ENCODED 19 #define SMG$C_RETURN_CURSOR_POS 20 #define SMG$C_PUT_WITH_SCROLL 21 #define SMG$C_SET_CURSOR_ABS 22 #define SMG$C_SET_CURSOR_REL 23 #define SMG$C_DELETE_LINE 24 #define SMG$C_ERASE_CHARS 25 #define SMG$C_SCROLL_DISPLAY_AREA 26 #define SMG$C_CHANGE_VIRTUAL_DISPLAY 27 #define SMG$C_LABEL_BORDER 28 #define SMG$C_END_DISPLAY_UPDATE 29 #define SMG$C_MOVE_TEXT 30 #define SMG$C_UNITED_KINGDOM 0 #define SMG$C_ASCII 1 #define SMG$C_SPEC_GRAPHICS 2 #define SMG$C_ALT_CHAR 3 #define SMG$C_ALT_GRAPHICS 4 #define SMG$C_UNKNOWN 5 #define SMG$C_SUPPLEMENTAL 6 #define SMG$C_JIS_ROMAN 7 #define SMG$C_JIS_KANA 8 #define SMG$C_KANJI 9 #define SMG$C_HANZI 10 #define SMG$C_HANYU 11 #define SMG$C_HANGUL 12 #define SMG$C_KS_ROMAN 13 #define SMG$C_UPPER_LEFT 0 #define SMG$C_LOWER_LEFT 1 #define SMG$C_UPPER_RIGHT 2 #define SMG$C_LOWER_RIGHT 3 #define SMG$K_TOP 0 #define SMG$K_BOTTOM 1 #define SMG$K_LEFT 2 #define SMG$K_RIGHT 3 #define SMG$K_BLOCK 0 #define SMG$K_VERTICAL 1 #define SMG$K_HORIZONTAL 2 #define SMG$C_COLOR_UNKNOWN 0 #define SMG$C_COLOR_WHITE 1 #define SMG$C_COLOR_BLACK 2 #define SMG$C_COLOR_BLUE 3 #define SMG$C_COLOR_CYAN 4 #define SMG$C_COLOR_GREEN 5 #define SMG$C_COLOR_MAGENTA 6 #define SMG$C_COLOR_RED 7 #define SMG$C_COLOR_YELLOW 8 #define SMG$C_COLOR_LIGHT 9 #define SMG$C_COLOR_DARK 10 #define SMG$C_COLOR_USER1 11 #define SMG$C_COLOR_USER2 12 #define SMG$C_COLOR_USER3 13 #define SMG$C_COLOR_USER4 14 #define SMG$C_COLOR_USER5 15 #define SMG$C_COLOR_USER6 16 #define SMG$C_COLOR_USER7 17 #define SMG$C_COLOR_USER8 18 #define SMG$K_UNKNOWN 0 #define SMG$K_VT05 1 #define SMG$K_VT52 2 #define SMG$K_VT100 3 #define SMG$K_VTFOREIGN 4 #define SMG$K_HARDCOPY 5 #define SMG$K_VTTERMTABLE 6 #define SMG$K_FIRST_PRIV_TYPE 191 #define SMG$K_BUF_ENABLED 0 #define SMG$K_MINUPD 1 #define SMG$K_CLEAR_SCREEN 2 #define SMG$K_NOTABS 3 #define SMG$K_PROTECT 4 #define SMG$K_IGNORE 5 #define SMG$K_RELEASE_PBD 6 #define SMG$M_BUF_ENABLED 0x1 #define SMG$M_MINUPD 0x2 #define SMG$M_CLEAR_SCREEN 0x4 #define SMG$M_NOTABS 0x8 #define SMG$M_PROTECT 0x10 #define SMG$M_IGNORE 0x20 #define SMG$M_RELEASE_PBD 0x40 #define SMG$M_SPARE15 0xFFFFFF80 struct _smgmode_bits { unsigned smg$v_buf_enabled : 1; unsigned smg$v_minupd : 1; unsigned smg$v_clear_screen : 1; unsigned smg$v_notabs : 1; unsigned smg$v_protect : 1; unsigned smg$v_ignore : 1; unsigned smg$v_release_pbd : 1; unsigned smg$v_spare15 : 25; }; #define SMG$M_KEY_NOECHO 0x1 #define SMG$M_KEY_TERMINATE 0x2 #define SMG$M_KEY_LOCK 0x4 #define SMG$M_KEY_PROTECTED 0x8 #define SMG$M_KEY_SETSTATE 0x10 #define SMG$M_SPARE18 0xFFFFFFE0 struct _smg$r_key_def_attr { unsigned smg$v_key_noecho : 1; unsigned smg$v_key_terminate : 1; unsigned smg$v_key_lock : 1; unsigned smg$v_key_protected : 1; unsigned smg$v_key_setstate : 1; unsigned smg$v_spare18 : 27; }; #define SMG$M_BOLD 0x1 #define SMG$M_REVERSE 0x2 #define SMG$M_BLINK 0x4 #define SMG$M_UNDERLINE 0x8 #define SMG$M_INVISIBLE 0x10 #define SMG$M_USER1 0x100 #define SMG$M_USER2 0x200 #define SMG$M_USER3 0x400 #define SMG$M_USER4 0x800 #define SMG$M_USER5 0x1000 #define SMG$M_USER6 0x2000 #define SMG$M_USER7 0x4000 #define SMG$M_USER8 0x8000 #define SMG$M_SPARE14 0xFFFF0000 struct _smgdef_bits { unsigned smg$v_bold : 1; unsigned smg$v_reverse : 1; unsigned smg$v_blink : 1; unsigned smg$v_underline : 1; unsigned smg$v_invisible : 1; unsigned smg$v_fill1 : 3; unsigned smg$v_user1 : 1; unsigned smg$v_user2 : 1; unsigned smg$v_user3 : 1; unsigned smg$v_user4 : 1; unsigned smg$v_user5 : 1; unsigned smg$v_user6 : 1; unsigned smg$v_user7 : 1; unsigned smg$v_user8 : 1; unsigned smg$v_spare14 : 16; }; #define SMG$M_BORDER 0x1 #define SMG$M_TRUNC_ICON 0x2 #define SMG$M_DISPLAY_CONTROLS 0x4 #define SMG$M_USER_DISPLAY 0x8 #define SMG$M_BLOCK_BORDER 0x10 #define SMG$M_PROTECT_DISPLAY 0x20 #define SMG$M_SPARE12 0xFFFFFFC0 struct _display_attributes { unsigned smg$v_border : 1; unsigned smg$v_trunc_icon : 1; unsigned smg$v_display_controls : 1; unsigned smg$v_user_display : 1; unsigned smg$v_block_border : 1; unsigned smg$v_protect_display : 1; unsigned smg$v_spare12 : 26; }; #define SMG$M_TRUSTED 0x1 #define SMG$M_AUTHPRIV 0x2 #define SMG$M_SUBSYSTEM 0x4 #define SMG$M_SPARE20 0xFFFFFFF8 struct _smg$r_create_subprocess_flags { unsigned smg$v_trusted : 1; unsigned smg$v_authpriv : 1; unsigned smg$v_subsystem : 1; unsigned smg$v_spare20 : 29; }; #define SMG$M_DATA_FOLLOWS 0x1 #define SMG$M_SEND_EOF 0x2 #define SMG$M_NO_PRINT 0x4 #define SMG$M_SPARE11 0xFFFFFFF8 struct _smg$r_subprocess_flags { unsigned smg$v_data_follows : 1; unsigned smg$v_send_eof : 1; unsigned smg$v_no_print : 1; unsigned smg$v_spare11 : 29; }; #define SMG$M_ERASE_PBD 0x1 #define SMG$M_IGNORE_BATCHED 0x2 #define SMG$M_SPARE10 0xFFFFFFFC struct _smg$r_delete_pbd_flags { unsigned smg$v_erase_pbd : 1; unsigned smg$v_ignore_batched : 1; unsigned smg$v_spare10 : 30; }; #define SMG$M_KEEP_CONTENTS 0x1 #define SMG$M_WORKSTATION 0x2 #define SMG$M_SPARE9 0xFFFFFFFC struct _smg$r_create_pbd_flags { unsigned smg$v_keep_contents : 1; unsigned smg$v_workstation : 1; unsigned smg$v_spare9 : 30; }; #define SMG$M_FUNC_KEYS 0x1 #define SMG$M_NOKEEP 0x2 #define SMG$M_NORECALL 0x4 #define SMG$M_SPARE8 0xFFFFFFF8 struct _smg$r_read_flags { unsigned smg$v_func_keys : 1; unsigned smg$v_nokeep : 1; unsigned smg$v_norecall : 1; unsigned smg$v_spare8 : 29; }; #define SMG$M_CURSOR_OFF 0x1 #define SMG$M_CURSOR_ON 0x2 #define SMG$M_SCROLL_JUMP 0x4 #define SMG$M_SCROLL_SMOOTH 0x8 #define SMG$M_SPARE16 0xFFFFFFF0 struct _smg$r_set_cursor_flags { unsigned smg$v_cursor_off : 1; unsigned smg$v_cursor_on : 1; unsigned smg$v_scroll_jump : 1; unsigned smg$v_scroll_smooth : 1; unsigned smg$v_spare16 : 28; }; #define SMG$M_VIEWPORT 0x1 #define SMG$M_SUBPROCESS 0x2 #define SMG$M_MENU 0x4 #define SMG$M_SPARE7 0xFFFFFFF8 struct _smg$r_get_display_flags { unsigned smg$v_viewport : 1; unsigned smg$v_subprocess : 1; unsigned smg$v_menu : 1; unsigned smg$v_spare7 : 29; }; #define SMG$M_ERASE_LINE 0x1 #define SMG$M_ERASE_TO_EOL 0x2 #define SMG$M_SPARE6 0xFFFFFFFC struct _smg$r_put_chars_flags { unsigned smg$v_erase_line : 1; unsigned smg$v_erase_to_eol : 1; unsigned smg$v_spare6 : 30; }; #define SMG$M_TEXT_SAVE 0x1 #define SMG$M_TEXT_ONLY 0x2 #define SMG$M_SPARE17 0xFFFFFFFC struct _smg$r_move_text_flags { unsigned smg$v_text_save : 1; unsigned smg$v_text_only : 1; unsigned smg$v_spare17 : 30; }; #define SMG$M_FORM_FEED 0x1 #define SMG$M_SPARE5 0xFFFFFFFE struct _smg$r_snapshot_flags { unsigned smg$v_form_feed : 1; unsigned smg$v_spare5 : 31; }; #define SMG$M_WRAP_CHAR 0x1 #define SMG$M_WRAP_WORD 0x2 #define SMG$M_SPARE4 0xFFFFFFFC struct _smg$r_put_line_flags { unsigned smg$v_wrap_char : 1; unsigned smg$v_wrap_word : 1; unsigned smg$v_spare4 : 30; }; #define SMG$M_KEYPAD_APPLICATION 0x1 #define SMG$M_KEYPAD_NUMERIC 0x2 #define SMG$M_SPARE3 0xFFFFFFFC struct _smg$r_keypad_modes { unsigned smg$v_keypad_application : 1; unsigned smg$v_keypad_numeric : 1; unsigned smg$v_spare3 : 30; }; #define SMG$M_DISPLAY_PASTED 0x1 #define SMG$M_SPARE19 0xFFFFFFFE struct _smg$r_pasting_info_flags { unsigned smg$v_display_pasted : 1; unsigned smg$v_spare19 : 31; }; #define SMG$M_REMOVE_ITEM 0x1 #define SMG$M_FIXED_FORMAT 0x2 #define SMG$M_DOUBLE_SPACE 0x4 #define SMG$M_RETURN_IMMED 0x8 #define SMG$M_ERASE_MENU 0x10 #define SMG$M_WIDE_MENU 0x20 #define SMG$M_WRAP_MENU 0x40 #define SMG$M_FULL_FIELD 0x80 #define SMG$M_SPARE2 0xFFFFFF00 struct _smg$r_menu_flags { unsigned smg$v_remove_item : 1; unsigned smg$v_fixed_format : 1; unsigned smg$v_double_space : 1; unsigned smg$v_return_immed : 1; unsigned smg$v_erase_menu : 1; unsigned smg$v_wide_menu : 1; unsigned smg$v_wrap_menu : 1; unsigned smg$v_full_field : 1; unsigned smg$v_spare2 : 24; }; #define SMG$M_UP 0x1 #define SMG$M_DOWN 0x2 #define SMG$M_RIGHT 0x4 #define SMG$M_LEFT 0x8 #define SMG$M_SPARE1 0xFFFFFFF0 struct _scroll_dirs { unsigned smg$v_up : 1; unsigned smg$v_down : 1; unsigned smg$v_right : 1; unsigned smg$v_left : 1; unsigned smg$v_spare1 : 28; }; #define SMG$C_BAND_INFORMATION_TABLE 12 #define SMG$C_PASTEBOARD_INFO_BLOCK 36 #define SMG$C_KEYBOARD_INFO_BLOCK 36 union _smgdef { struct { unsigned int smg$l_pasteboard_id; unsigned int smg$l_arg; union { unsigned char smg$b_character; unsigned int smg$l_character; }; }; struct { unsigned int smg$l_devchar; unsigned int smg$l_devdepend; unsigned int smg$l_devdepend2; unsigned char smg$b_devclass; unsigned char smg$b_smg_devtype; unsigned char smg$b_phy_devtype; unsigned char smg$b_rows; unsigned short int smg$w_width; unsigned char smg$b_color; unsigned char smg$b_parity; unsigned short int smg$w_speed; unsigned short int smg$w_fill; unsigned short int smg$w_cursor_row; unsigned short int smg$w_cursor_col; unsigned int smg$l_cursor_did; unsigned int smg$l_devdepend3; }; struct { unsigned int smg$l_fill1; unsigned int smg$l_fill2; unsigned int smg$l_fill3; unsigned char smg$b_fill4; unsigned char smg$b_recall_size; unsigned char smg$b_fill5; unsigned char smg$b_typeahead_char; unsigned short int smg$w_fill6; unsigned short int smg$w_typeahead_count; unsigned int smg$l_fill7; unsigned int smg$l_fill8; unsigned int smg$l_fill9; unsigned int smg$l_fill10; }; }; struct _smg$r_out_of_band_table { unsigned int smg$l_pbd_id; unsigned int smg$l_user_arg; union { unsigned char smg$b_char; unsigned int smg$l_char; }; }; #define SMG$C_OUT_OF_BAND_TABLE 12 struct _smg$r_subprocess_info_table { unsigned int smg$l_disp_id; unsigned int smg$l_usr_arg; unsigned int smg$l_status; }; #define SMG$C_SUBPROCESS_INFO_TABLE 12 struct _smg$r_attribute_info_block { unsigned int smg$l_dev_char; unsigned int smg$l_dev_depend; unsigned int smg$l_dev_depend2; unsigned char smg$b_dev_class; union { unsigned char smg$b_pbd_type; unsigned char smg$b_recall_num; }; unsigned char smg$b_dev_type; union { unsigned char smg$b_num_rows; unsigned char smg$b_typeahd_char; }; unsigned short int smg$w_num_columns; union { unsigned short int smg$w_typeahd_cnt; struct { unsigned char smg$b_pbd_color; unsigned char smg$b_dev_parity; }; }; unsigned short int smg$w_dev_speed; unsigned short int smg$w_dev_fill; unsigned short int smg$w_phys_cursor_row; unsigned short int smg$w_phys_cursor_col; unsigned int smg$l_display_id; unsigned int smg$l_dev_depend3; }; #endif