28 |
* SUCH DAMAGE. |
* SUCH DAMAGE. |
29 |
* |
* |
30 |
* |
* |
31 |
* $Id: machine.h,v 1.128 2006/08/14 17:45:47 debug Exp $ |
* $Id: machine.h,v 1.136 2006/10/25 09:24:06 debug Exp $ |
32 |
*/ |
*/ |
33 |
|
|
34 |
#include <sys/types.h> |
#include <sys/types.h> |
55 |
struct fb_window; |
struct fb_window; |
56 |
struct memory; |
struct memory; |
57 |
struct of_data; |
struct of_data; |
58 |
|
struct settings; |
59 |
|
|
60 |
/* Ugly: */ |
/* Ugly: */ |
61 |
struct kn230_csr; |
struct kn230_csr; |
73 |
struct sgi_ip20_data; |
struct sgi_ip20_data; |
74 |
struct sgi_ip22_data; |
struct sgi_ip22_data; |
75 |
struct sgi_ip30_data; |
struct sgi_ip30_data; |
76 |
|
|
77 |
struct isa_pic_data { |
struct isa_pic_data { |
78 |
struct pic8259_data *pic1; |
struct pic8259_data *pic1; |
79 |
struct pic8259_data *pic2; |
struct pic8259_data *pic2; |
80 |
|
|
81 |
|
int *pending_timer_interrupts; |
82 |
int last_int; |
int last_int; |
83 |
|
|
84 |
int native_irq; |
int native_irq; |
85 |
int native_secondary_irq; |
int native_secondary_irq; |
86 |
uint8_t secondary_mask1; |
uint8_t secondary_mask1; |
101 |
/* Pointer back to the emul struct we are in: */ |
/* Pointer back to the emul struct we are in: */ |
102 |
struct emul *emul; |
struct emul *emul; |
103 |
|
|
104 |
|
/* Settings: */ |
105 |
|
struct settings *settings; |
106 |
|
|
107 |
/* Name as choosen by the user: */ |
/* Name as choosen by the user: */ |
108 |
char *name; |
char *name; |
109 |
|
|
218 |
uint64_t file_loaded_end_addr; |
uint64_t file_loaded_end_addr; |
219 |
char *boot_kernel_filename; |
char *boot_kernel_filename; |
220 |
char *boot_string_argument; |
char *boot_string_argument; |
|
int automatic_clock_adjustment; |
|
221 |
int exit_without_entering_debugger; |
int exit_without_entering_debugger; |
222 |
int n_gfx_cards; |
int n_gfx_cards; |
223 |
|
|
301 |
#define ARCH_I960 11 |
#define ARCH_I960 11 |
302 |
#define ARCH_AVR 12 |
#define ARCH_AVR 12 |
303 |
#define ARCH_TRANSPUTER 13 |
#define ARCH_TRANSPUTER 13 |
304 |
|
#define ARCH_RCA180X 14 |
305 |
|
#define ARCH_AVR32 15 |
306 |
|
|
307 |
/* MIPS: */ |
/* MIPS: */ |
308 |
#define MACHINE_BAREMIPS 1000 |
#define MACHINE_BAREMIPS 1000 |
357 |
#define MACHINE_IQ80321 6007 |
#define MACHINE_IQ80321 6007 |
358 |
#define MACHINE_IYONIX 6008 |
#define MACHINE_IYONIX 6008 |
359 |
#define MACHINE_TS7200 6009 |
#define MACHINE_TS7200 6009 |
360 |
|
#define MACHINE_QEMU_ARM 6010 |
361 |
|
|
362 |
/* IA64: */ |
/* IA64: */ |
363 |
#define MACHINE_BAREIA64 7000 |
#define MACHINE_BAREIA64 7000 |
389 |
/* TRANSPUTER: */ |
/* TRANSPUTER: */ |
390 |
#define MACHINE_BARETRANSPUTER 13000 |
#define MACHINE_BARETRANSPUTER 13000 |
391 |
|
|
392 |
|
/* ARCH_RCA180X: */ |
393 |
|
#define MACHINE_BARE180X 14000 |
394 |
|
#define MACHINE_CHIP8 14001 |
395 |
|
|
396 |
|
/* AVR32: */ |
397 |
|
#define MACHINE_BAREAVR32 15000 |
398 |
|
#define MACHINE_TESTAVR32 15001 |
399 |
|
|
400 |
/* Other "pseudo"-machines: */ |
/* Other "pseudo"-machines: */ |
401 |
#define MACHINE_NONE 0 |
#define MACHINE_NONE 0 |
402 |
#define MACHINE_USERLAND 100000 |
#define MACHINE_USERLAND 100000 |
525 |
|
|
526 |
/* machine.c: */ |
/* machine.c: */ |
527 |
struct machine *machine_new(char *name, struct emul *emul); |
struct machine *machine_new(char *name, struct emul *emul); |
528 |
|
void machine_destroy(struct machine *machine); |
529 |
int machine_name_to_type(char *stype, char *ssubtype, |
int machine_name_to_type(char *stype, char *ssubtype, |
530 |
int *type, int *subtype, int *arch); |
int *type, int *subtype, int *arch); |
531 |
void machine_add_tickfunction(struct machine *machine, |
void machine_add_tickfunction(struct machine *machine, |
545 |
uint64_t data32); |
uint64_t data32); |
546 |
void store_16bit_word_in_host(struct cpu *cpu, unsigned char *data, |
void store_16bit_word_in_host(struct cpu *cpu, unsigned char *data, |
547 |
uint16_t data16); |
uint16_t data16); |
548 |
|
uint64_t load_64bit_word(struct cpu *cpu, uint64_t addr); |
549 |
uint32_t load_32bit_word(struct cpu *cpu, uint64_t addr); |
uint32_t load_32bit_word(struct cpu *cpu, uint64_t addr); |
550 |
uint16_t load_16bit_word(struct cpu *cpu, uint64_t addr); |
uint16_t load_16bit_word(struct cpu *cpu, uint64_t addr); |
551 |
void store_buf(struct cpu *cpu, uint64_t addr, char *s, size_t len); |
void store_buf(struct cpu *cpu, uint64_t addr, char *s, size_t len); |