1 /* 2 * Copyright (c) 1980 Regents of the University of California. 3 * All rights reserved. The Berkeley software License Agreement 4 * specifies the terms and conditions for redistribution. 5 */ 6 7 #ifndef lint 8 static char sccsid[] = "@(#)printnews.c 5.1 (Berkeley) 06/05/85"; 9 #endif not lint 10 11 /* 12 * Print out news during single step tracing. 13 * 14 * We have to handle all the single stepping possibilities, 15 * including combinations. A combination of single stepping 16 * by line and by instruction causes "curline" to be 0 but 17 * "ss_lines" to be TRUE. We avoid trying to print lines in this case. 18 */ 19 20 #include "defs.h" 21 #include "breakpoint.h" 22 #include "sym.h" 23 #include "source.h" 24 #include "object.h" 25 #include "mappings.h" 26 #include "machine.h" 27 28 printnews() 29 { 30 if (ss_variables) { 31 prvarnews(); 32 } 33 if (trcond()) { 34 if (ss_lines && curline > 0) { 35 skimsource(srcfilename(pc)); 36 printf("trace: "); 37 printlines(curline, curline); 38 } 39 if (ss_instructions) { 40 printf("inst trace: "); 41 printinst(pc, pc); 42 } 43 } 44 bpact(); 45 if (stopcond()) { 46 isstopped = TRUE; 47 curline = srcline(pc); 48 printstatus(); 49 } 50 } 51