/*	Simulator input/output (standard)		*/

#ifndef MAC
#include "foreign.h"
#endif
#include "sim.h"

short init_sim();

void reset(m6811 *state, byte memory[], short breaks[]);
char * mem_dump(m6811 *state,byte *memory, word add,short n);
char * multi_disassemble(m6811 *state,byte *memory, word add,long n);
char * show_breaks();
void show_state(m6811 *state, byte memory[], short breaks[]);
long load_code(char *buf, byte *memory, char *fname);
short multi_step(short n, m6811 *state, byte memory[], short breaks[]);
short check_break(m6811 *state, short breaks[]);

short next_goes_into_subroutine(short *oplen);	/* by Mark Coniglio (troika@panix.com) */

Boolean hexScan(char *str,short *val);
Boolean longHexScan(char *s,long *val);

extern m6811	state;
extern byte *	memory;
extern short * breaks;

extern Boolean Loaded;
extern long caught_signal;

extern long n_chars;
extern char *msg;
