1 /* sim.h: prototype
2  * $Id: sim.h,v 1.1.1.1 2003/08/26 16:57:02 varfar Exp $
3  */
4 #ifndef SIM_H
5 #define SIM_H
6 
7 #include "pspace.h"
8 
9 insn_t *sim_alloc_bufs( unsigned int nwar, unsigned int coresize,
10 			unsigned int processes, unsigned int cycles );
11 
12 insn_t *sim_alloc_bufs2( unsigned int nwar, unsigned int coresize,
13 			 unsigned int processes, unsigned int cycles,
14 			 unsigned int pspace );
15 
16 void sim_free_bufs();
17 
18 void sim_clear_core(void);
19 
20 
21 pspace_t **sim_get_pspaces(void);
22 
23 pspace_t *sim_get_pspace(unsigned int war_id);
24 
25 void sim_clear_pspaces(void);
26 
27 void sim_reset_pspaces(void);
28 
29 int sim_load_warrior(unsigned int pos, insn_t const *code, unsigned int len);
30 
31 unsigned long long get_opcode_count(const char in);
32 unsigned get_exec_trail_checksum();
33 unsigned get_exec_trail_length();
34 unsigned char get_exec_trail(unsigned i);
35 
36 int sim( int nwar_arg, field_t w1_start, field_t w2_start,
37 	 unsigned int cycles, void **ptr_result );
38 
39 int sim_mw( unsigned int nwar, const field_t *war_pos_tab,
40 	    unsigned int *death_tab );
41 
42 #endif /* SIM_H */
43