Annotation of 43BSDTahoe/old/sdb/head.h, revision 1.1

1.1     ! root        1: /* "@(#)head.h 4.3 8/17/82" */
        !             2: #include <sys/vm.h>
        !             3: #define        PAGSIZ  (CLSIZE*NBPG)
        !             4: #include <stdio.h>
        !             5: #include <setjmp.h>
        !             6: #include <sgtty.h>
        !             7: #include "old.h"
        !             8: #include "defs.h"
        !             9: 
        !            10: /* input line decoding */
        !            11: char   proc[30];       /* procedure name */
        !            12: int    integ;          /* count or number in input */
        !            13: char   cmd;            /* command letter */
        !            14: char   re[128];        /* regular expression */
        !            15: char   args[128];      /* arguments */
        !            16: char   *argsp;         /* pointer to args */
        !            17: char   var[60];        /* variable name */
        !            18: int    scallf;         /* set to 1 iff procedure call */
        !            19: int    reflag;         /* set to 1 iff re */
        !            20: int    redir;          /* set to 1 iff forward search */
        !            21: int    colonflag;      /* set to 1 iff colon typed */
        !            22: int    ncolonflag;     /* set to 1 iff colon typed after number */
        !            23: int    percentflag;    /* set to 1 iff percent symbol typed */
        !            24: 
        !            25: /* source file i/o */
        !            26: char   curfile[120];   /* name of file being edited */
        !            27: int    fline;          /* line number in file */
        !            28: char   fbuf[BUFSIZ];   /* current line from file */
        !            29: char   filework[128];  /* place to put filename */
        !            30: char   *fp;            /* pointer to it */
        !            31: int    nolines;        /* set to 1 iff no lines in file */
        !            32: #ifdef FLEXNAMES
        !            33: off_t  gstart;         /* start of string table in a.out */
        !            34: char   *strtab;        /* string table from a.out * (in core!) */
        !            35: long   ssiz;           /* size of string table (for range checks) */
        !            36: #endif
        !            37: 
        !            38: /* returned by slookup */
        !            39: #ifndef FLEXNAMES
        !            40: char   sl_name[8];
        !            41: #else
        !            42: char   *sl_name;
        !            43: #endif
        !            44: u_char sl_class;
        !            45: short  sl_type;
        !            46: int    sl_size, sl_addr;
        !            47: int    subflag;
        !            48: 
        !            49: /* procedure call information */
        !            50: int scallx;                    /* procedure call in progress */
        !            51: ADDR fps, aps, pcs;            /* old stack frame */
        !            52: BKPTR bkpts;                   /* old breakpoint */
        !            53: int flagss;                    /*  and its flags */
        !            54: char dschar;                   /* '/' if value should be displayed */
        !            55: 
        !            56: /* symbol table info */
        !            57: long   ststart;                /* offset of symbol table in a.out */
        !            58: #ifndef VMUNIX
        !            59: struct brbuf sbuf;             /* buffer for symbol table */
        !            60: #endif
        !            61: long   extstart;               /* offset of first external in a.out */
        !            62: 
        !            63: /* address info */
        !            64: ADDR   dot;                    /* current address */
        !            65: ADDR   callpc, frame, argp;    /* current stack frame */
        !            66: 
        !            67: /* other */
        !            68: char   odesc[10];              /* descriptor of last displayed variable */
        !            69: ADDR   oaddr;                  /* address of last displayed variable */
        !            70: char   otype;                  /* type of last displayed variable */
        !            71: u_char oclass;                 /* class of last displayed variable */
        !            72: char   oincr;                  /* size of last displayed variable */
        !            73: struct sgttyb sdbttym, userttym;
        !            74:                                /* tty modes for sdb and user */
        !            75: char   oldargs[128];
        !            76: char prname[50];               /* print name used by outvar */
        !            77: jmp_buf        env;                    /* environment for setjmp, longjmp */
        !            78: int    debug;                  /* toggled by Y command */
        !            79: time_t symtime;                /* modification time of symfil */
        !            80: char   *symfil;
        !            81: char   *corfil;
        !            82: ADDR   exactaddr, lnfaddr;     /* set by adrtolineno() */
        !            83: ADDR   firstdata;              /* lowest address of data */
        !            84: 
        !            85: #define        STABMASK        0376
        !            86: #define        WINDOW  10              /* window size for display commands */
        !            87: #define        COMMANDS        "\004\"+-=!/BCDMQRSTXabcdegklmpqrstwxzVXY"
        !            88:                                /* each sdb command must appear here */
        !            89: #define NUMARGS 16             /* number of args allowed in sub call */
        !            90: #define SUBSTSP 512            /* length of space for sub args and strings */
        !            91: #define WORDSIZE 4             /* wordsize in bytes on this machine */
        !            92: 
        !            93: #define BIGNUM 0x7fffffff
        !            94: #define MAXADDR 1L<<30
        !            95: 
        !            96: struct filet {
        !            97: #ifndef FLEXNAMES
        !            98:        char    sfilename[31];  /* source file name */
        !            99: #else
        !           100:        char    *sfilename;
        !           101: #endif
        !           102:        char    lineflag;       /* set iff this is a '#line' file */
        !           103:        ADDR    faddr;          /* address in core */
        !           104:        long    stf_offset;     /* offset in a.out */
        !           105: } *files, *badfile;
        !           106: 
        !           107: struct proct {
        !           108: #ifndef FLEXNAMES
        !           109:        char    pname[8];       /* procedure name */
        !           110: #else
        !           111:        char    *pname;
        !           112: #endif
        !           113:        ADDR    paddr;          /* address in core */
        !           114:        long    st_offset;      /* offset in a.out */
        !           115:        struct filet  *sfptr;   /* source file name pointer */
        !           116:        int     lineno;         /* line number in source file */
        !           117:        char    entrypt;        /* 1 iff a F77 entry */
        !           118: } *procs, *badproc;
        !           119: 
        !           120: 
        !           121: #define PROCINCR 20
        !           122: #define FILEINCR 10
        !           123: 
        !           124: #define varchar(x)     ((x>='A' && x<='Z') || (x>='a' &&  x<='z') || x == '_' || x == '.' || x == '[' || x == ']' || x == '-' || x == '>' || x == '*' || x == '?')
        !           125: #define number(x)      (x >= '0' && x <= '9')
        !           126: 
        !           127: char *readline(), readchar(), rdc();
        !           128: char *cpname();
        !           129: char *cpstr(), *cpall();
        !           130: char *sbrk();
        !           131: char *typetodesc();
        !           132: int octdigit(), decdigit(); hexdigit();
        !           133: int octconv(), decconv(); hexconv();
        !           134: long readint(), rint();
        !           135: long adrtostoffset();
        !           136: long getval(), argvalue();
        !           137: long slookup(), globallookup();
        !           138: ADDR varaddr(), dispvar();
        !           139: ADDR extaddr(), formaddr(), stackreg();
        !           140: struct proct *curproc();
        !           141: struct proct *findproc();
        !           142: struct proct *adrtoprocp();
        !           143: struct proct *initframe(), *nextframe();
        !           144: struct filet *findfile(), *adrtofilep();

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.