-dispaddress(valuep, mode)
- numberp valuep;
- u_char mode;
-{
- int regnumber = OC_REGEXT(mode);
-
- switch(OC_AMEXT(mode)){
- case OC_BDISP:
- case OC_DBDISP:
- case OC_WDISP:
- case OC_DWDISP:
- case OC_LDISP:
- case OC_DLDISP:
- if (regnumber == R_PC){
- /* PC offset addressing */
- valuep->num_ulong[0] += inkdot(incp);
- }
- }
-#ifdef ADB
- if (regnumber == R_PC)
- psymoff(valuep->num_ulong[0], type, &insoutfmt[0]);
- else { /* } */
- printf(LPRMODE, valuep->num_ulong[0]);
- printf(insoutfmt);
-#endif ADB
-#ifdef SDB
- if(psymoff(valuep->num_ulong[0], regnumber, &insoutfmt[0])
- && (regnumber != R_PC)){
-#endif SDB
- printf("(%s)", insregname(regnumber));
- }
- savevar((long)valuep->num_ulong[0]);
-}
-/*
- * get a register name
- */
-char *insregname(regnumber)
- int regnumber;
-{
- char *r;
- r = regname[regnumber];
-#ifdef SDB
- if ( (insoutfmt[0] == 'i')
- && (regnumber >= 6)
- && (regnumber <= 11)
- && (adrtoregvar(regnumber, procp) != -1)) {
- r = sl_name;