unit at a time
[platform/upstream/binutils.git] / sim / arm / dbg_hif.h
1 /*  dbg_hif.h -- ARMulator debug interface:  ARM6 Instruction Emulator.
2     Copyright (C) 1994 Advanced RISC Machines Ltd.
3  
4     This program is free software; you can redistribute it and/or modify
5     it under the terms of the GNU General Public License as published by
6     the Free Software Foundation; either version 3 of the License, or
7     (at your option) any later version.
8  
9     This program is distributed in the hope that it will be useful,
10     but WITHOUT ANY WARRANTY; without even the implied warranty of
11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12     GNU General Public License for more details.
13  
14     You should have received a copy of the GNU General Public License
15     along with this program; if not, see <http://www.gnu.org/licenses/>. */
16
17 #ifdef __STDC__
18 #  include <stdarg.h>
19 #else
20 #  include <varargs.h>
21 #endif
22
23 typedef void Hif_DbgPrint (void *arg, const char *format, va_list ap);
24 typedef void Hif_DbgPause (void *arg);
25
26 typedef void Hif_WriteC (void *arg, int c);
27 typedef int Hif_ReadC (void *arg);
28 typedef int Hif_Write (void *arg, char const *buffer, int len);
29 typedef char *Hif_GetS (void *arg, char *buffer, int len);
30
31 typedef void Hif_RDIResetProc (void *arg);
32
33 struct Dbg_HostosInterface
34 {
35   Hif_DbgPrint *dbgprint;
36   Hif_DbgPause *dbgpause;
37   void *dbgarg;
38
39   Hif_WriteC *writec;
40   Hif_ReadC *readc;
41   Hif_Write *write;
42   Hif_GetS *gets;
43   void *hostosarg;
44
45   Hif_RDIResetProc *reset;
46   void *resetarg;
47 };