| 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 | * @(#)machine.h 5.3 (Berkeley) %G% |
| 7 | */ |
| 8 | |
| 9 | /* |
| 10 | * Definitions for the machine module. |
| 11 | * |
| 12 | * This module has the low level machine interface. This consists |
| 13 | * mostly of dealing with machine instructions and also setting |
| 14 | * and unsetting breakpoints. |
| 15 | */ |
| 16 | |
| 17 | ADDRESS pc; /* current program counter */ |
| 18 | LINENO curline; /* line number associated with pc */ |
| 19 | SYM *curfunc; /* pointer to active function symbol */ |
| 20 | |
| 21 | int setbp(); /* set a breakpoint */ |
| 22 | int unsetbp(); /* unset a breakpoint */ |
| 23 | BOOLEAN isbperr(); /* test if a breakpoint has occurred */ |
| 24 | int printerror(); /* print out an execution error message */ |
| 25 | ADDRESS nextaddr(); /* address of next line to be executed */ |
| 26 | BOOLEAN isendofproc(); /* test if address is at end of procedure */ |
| 27 | int printinst(), printninst(); /* print the instruction at a given address */ |
| 28 | int printdata(), printndata(); /* print the contents of a given data address */ |