|
|
1.1 ! root 1: /* @(#) Hstdobj version 1.3 updated 85/02/15 */ ! 2: /* ! 3: * Sydney C Compiler. ! 4: * ! 5: * Copyright 1984, Bruce Ellis. ! 6: * ! 7: * Unauthorised possesion, sale or use prohibited. ! 8: */ ! 9: ! 10: #include "obj_version.h" ! 11: ! 12: #define TIME_SEP '@' ! 13: ! 14: #ifdef STD_OBJ ! 15: #define CMD_SZ 12 ! 16: #define CMD {'#','!','/','b','i','n','/','e','c','h','o',' '} ! 17: #define MAC_SZ 12 ! 18: #ifndef MAC ! 19: #define MAC {'v','a','x','\n','\0'} ! 20: #endif ! 21: ! 22: typedef struct ! 23: { ! 24: char hd_cmd[CMD_SZ]; ! 25: char hd_mac[MAC_SZ]; ! 26: long hd_str_off; ! 27: long hd_str_size; ! 28: long hd_type_size; ! 29: long hd_var_size; ! 30: } ! 31: header; ! 32: ! 33: typedef enum ! 34: { ! 35: i_data, ! 36: i_lib, ! 37: i_src, ! 38: i_string, ! 39: i_type, ! 40: i_var, ! 41: } ! 42: obj_items; ! 43: ! 44: typedef enum ! 45: { ! 46: d_addr, ! 47: d_bytes, ! 48: d_end, ! 49: d_istring, ! 50: d_irstring, ! 51: d_space, ! 52: d_string, ! 53: d_reloc, ! 54: d_rstring, ! 55: } ! 56: obj_datas; ! 57: ! 58: typedef enum ! 59: { ! 60: t_arrayof, ! 61: t_basetype, ! 62: t_bitfield, ! 63: t_dimless, ! 64: t_elaboration, ! 65: t_enum, ! 66: t_ftnreturning, ! 67: t_ptrto, ! 68: t_structof, ! 69: t_unionof, ! 70: ! 71: t_types, ! 72: } ! 73: obj_types; ! 74: ! 75: typedef enum ! 76: { ! 77: v_arglist, ! 78: v_array_size, ! 79: v_auto, ! 80: v_block_static, ! 81: v_call, ! 82: v_formal, ! 83: v_function, ! 84: v_global, ! 85: v_implicit_function, ! 86: v_static, ! 87: v_varargs, ! 88: } ! 89: obj_vars; ! 90: ! 91: #define obj_code(a, b) (((int)(a) << 4) | (int)(b)) ! 92: ! 93: #define MAX_ITEM 15 ! 94: #define obj_item(c) (((c) >> 4) & 0xF) ! 95: #define obj_id(c) ((c) & 0xF) ! 96: #endif STD_OBJ
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.