// -------------------------------------------------------------------------- // customised address output void idaapi out_data(ea_t ea) { // if addres is valid, use normal output function if (isLoaded(ea)) { intel_data(ea); } else { MakeLine(COLSTR("; db ?", SCOLOR_SYMBOL)); } }
void i51_data(ea_t ea) { gl_name = 1; // the kernel's standard routine which outputs the data knows nothing // about "equ" directives. So we do the following: // - try to output an "equ" directive // - if we succeed, then ok // - otherwise let the standard data output routine, intel_data() // do all the job if ( !out_equ(ea) ) intel_data(ea); }
//-------------------------------------------------------------------------- void idaapi z8_data(ea_t ea) { segment_t *s = getseg(ea); if ( s != NULL && s->type == SEG_IMEM ) { char nbuf[MAXSTR]; char *name = get_name(BADADDR, ea, nbuf, sizeof(nbuf)); if ( name != NULL ) out_equ(name, ash.a_equ, uint16(ea - get_segm_base(s))); } else intel_data(ea); }
//-------------------------------------------------------------------------- void idaapi C39_data(ea_t ea) { #if IDP_INTERFACE_VERSION > 37 refinfo_t ri; // micro bug-fix if(get_refinfo(ea, 0, &ri)){ if(ri.flags==REF_OFF16){ set_refinfo(ea, 0, REF_OFF32, ri.target, ri.base, ri.tdelta); msg("Exec OFF16 Fix AT:%a Flags=%lx, Target=%lx, Base=%lx, Delta=%lx\n",ea, ri.flags,ri.target,ri.base,ri.tdelta); } } #endif gl_name = 1; // попробуем вывести, как equ // if (out_equ(ea)) return; // не получилось - выводим данными intel_data(ea); }
//-------------------------------------------------------------------------- void idaapi kr1878_data(ea_t ea) { intel_data(ea); }
//-------------------------------------------------------------------------- void N78K_data(ea_t ea) { gl_name =1; intel_data(ea); }
//-------------------------------------------------------------------------- void idaapi N78K_data(ea_t ea) { gl_name =1; intel_data(ea); }
//-------------------------------------------------------------------------- void oakdsp_data(ea_t ea) { intel_data(ea); }