# $Id$ # find traps where wafertest 56 reported DMEM errors but returned 0 (good chip) { xmlout = sprintf("%s_new", FILENAME); print $0 >xmlout; print $0; while ((getline aline > 0)) { #print aline; where = match(aline, //); if (where !=0) { dmem_end = 0; print aline >xmlout; readcount = getline aline print aline >xmlout; while ((readcount != 0) && (dmem_end == 0)) { where = match(aline, /
/); if (where != 0) { dmem_err = 1; dmem_end = 1; } where = match(aline, /<\/DMEM>/); if (where != 0) { dmem_end = 1; } readcount = getline aline print aline >xmlout; } } else { where = match(aline, // ); if (where != 0) { if (dmem_err == 1) { if (match(aline, /0<\/RETCODE>/) !=0) { aline = "16"; } } print aline >xmlout; } else { print aline >xmlout; } } } }