31 #include <sys/types.h> 76 void (**
f)(
struct cpu *,
void *);
195 #define DEVICE_TICK(x) void dev_ ## x ## _tick(struct cpu *cpu, void *extra) 202 #define ARCH_NOARCH 0 211 #define MACHINE_BAREMIPS 1000 212 #define MACHINE_TESTMIPS 1001 213 #define MACHINE_PMAX 1002 214 #define MACHINE_COBALT 1003 215 #define MACHINE_HPCMIPS 1004 216 #define MACHINE_PS2 1005 217 #define MACHINE_SGI 1006 218 #define MACHINE_ARC 1007 219 #define MACHINE_EVBMIPS 1008 220 #define MACHINE_ALGOR 1009 221 #define MACHINE_QEMU_MIPS 1010 222 #define MACHINE_VOCORE 1011 225 #define MACHINE_BAREPPC 2000 226 #define MACHINE_TESTPPC 2001 227 #define MACHINE_PMPPC 2002 228 #define MACHINE_PREP 2003 229 #define MACHINE_MACPPC 2004 230 #define MACHINE_MVMEPPC 2005 233 #define MACHINE_BAREALPHA 4000 234 #define MACHINE_TESTALPHA 4001 235 #define MACHINE_ALPHA 4002 238 #define MACHINE_BAREARM 5000 239 #define MACHINE_TESTARM 5001 240 #define MACHINE_CATS 5002 241 #define MACHINE_HPCARM 5003 242 #define MACHINE_NETWINDER 5004 243 #define MACHINE_IQ80321 5005 244 #define MACHINE_IYONIX 5006 245 #define MACHINE_QEMU_ARM 5007 246 #define MACHINE_RPI 5008 249 #define MACHINE_BARESH 6000 250 #define MACHINE_TESTSH 6001 251 #define MACHINE_HPCSH 6002 252 #define MACHINE_DREAMCAST 6003 253 #define MACHINE_LANDISK 6004 256 #define MACHINE_BAREM88K 7000 257 #define MACHINE_TESTM88K 7001 258 #define MACHINE_MVME88K 7002 259 #define MACHINE_LUNA88K 7003 262 #define MACHINE_NONE 0 265 #define MACHINE_DEC_PMAX_3100 1 266 #define MACHINE_DEC_3MAX_5000 2 267 #define MACHINE_DEC_3MIN_5000 3 268 #define MACHINE_DEC_3MAXPLUS_5000 4 269 #define MACHINE_DEC_5800 5 270 #define MACHINE_DEC_5400 6 271 #define MACHINE_DEC_MAXINE_5000 7 272 #define MACHINE_DEC_5500 11 273 #define MACHINE_DEC_MIPSMATE_5100 12 275 #define DEC_PROM_CALLBACK_STRUCT 0xffffffffbfc04000ULL 276 #define DEC_PROM_EMULATION 0xffffffffbfc08000ULL 277 #define DEC_PROM_INITIAL_ARGV (INITIAL_STACK_POINTER + 0x80) 278 #define DEC_PROM_STRINGS 0xffffffffbfc20000ULL 279 #define DEC_PROM_TCINFO 0xffffffffbfc2c000ULL 280 #define DEC_MEMMAP_ADDR 0xffffffffbfc30000ULL 283 #define MACHINE_HPCMIPS_CASIO_BE300 1 284 #define MACHINE_HPCMIPS_CASIO_E105 2 285 #define MACHINE_HPCMIPS_NEC_MOBILEPRO_770 3 286 #define MACHINE_HPCMIPS_NEC_MOBILEPRO_780 4 287 #define MACHINE_HPCMIPS_NEC_MOBILEPRO_800 5 288 #define MACHINE_HPCMIPS_NEC_MOBILEPRO_880 6 289 #define MACHINE_HPCMIPS_AGENDA_VR3 7 290 #define MACHINE_HPCMIPS_IBM_WORKPAD_Z50 8 293 #define MACHINE_HPCARM_IPAQ 1 294 #define MACHINE_HPCARM_JORNADA720 2 295 #define MACHINE_HPCARM_JORNADA728 3 298 #define MACHINE_HPCSH_JORNADA680 1 299 #define MACHINE_HPCSH_JORNADA690 2 302 #define MACHINE_ARC_JAZZ_PICA 1 303 #define MACHINE_ARC_JAZZ_MAGNUM 2 306 #define MACHINE_ALGOR_P4032 1 307 #define MACHINE_ALGOR_P5064 2 310 #define MACHINE_EVBMIPS_MALTA 1 311 #define MACHINE_EVBMIPS_MALTA_BE 2 314 #define MACHINE_PREP_IBM6050 1 315 #define MACHINE_PREP_MVME2400 2 318 #define MACHINE_MACPPC_G3 1 319 #define MACHINE_MACPPC_G4 2 320 #define MACHINE_MACPPC_G5 3 323 #define MACHINE_MVMEPPC_1600 1 324 #define MACHINE_MVMEPPC_2100 2 325 #define MACHINE_MVMEPPC_5500 3 328 #define MACHINE_MVME88K_187 1 329 #define MACHINE_MVME88K_188 2 330 #define MACHINE_MVME88K_197 3 333 #define MACHINE_LUNA_88K 1 334 #define MACHINE_LUNA_88K2 2 364 #define MACHINE_SETUP_TYPE(n) void (*n)(struct machine *, struct cpu *) 365 #define MACHINE_SETUP(x) void machine_setup_ ## x(struct machine *machine, \ 367 #define MACHINE_DEFAULT_CPU(x) void machine_default_cpu_ ## x(struct machine *machine) 368 #define MACHINE_DEFAULT_RAM(x) void machine_default_ram_ ## x(struct machine *machine) 369 #define MACHINE_REGISTER(x) void machine_register_ ## x(void) 370 #define MR_DEFAULT(x,name,arch,type) struct machine_entry \ 371 *me = machine_entry_new(name,arch,type); \ 372 me->setup = machine_setup_ ## x; \ 373 me->set_default_cpu = machine_default_cpu_ ## x; \ 374 machine_entry_register(me, arch); 382 int *type,
int *subtype,
int *
arch);
385 void (*func)(
struct cpu *,
void *),
void *extra,
int clockshift);
395 int arch,
int oldstyle_type);
398 int oldstyle_subtype, ...);
void machine_memsize_fix(struct machine *)
void(* setup)(struct machine *, struct cpu *)
int * pending_timer_interrupts
void machine_register(char *name, MACHINE_SETUP_TYPE(setup))
void f(int s, int func, int only_name)
int slow_serial_interrupts_hack_for_linux
int current_display_name_nr
int machine_run(struct machine *machine)
struct machine_arcbios * arc
int exit_without_entering_debugger
struct machine_entry_subtype ** subtype
char * boot_string_argument
#define MACHINE_SETUP_TYPE(n)
struct diskimage * first_diskimage
char * boot_kernel_filename
struct pic8259_data * pic1
void machine_setup(struct machine *)
void machine_entry_register(struct machine_entry *me, int arch)
void machine_entry_add_subtype(struct machine_entry *me, const char *name, int oldstyle_subtype,...)
void machine_destroy(struct machine *machine)
void machine_entry_add_alias(struct machine_entry *me, const char *name)
void machine_default_cputype(struct machine *)
int machine_name_to_type(char *stype, char *ssubtype, int *type, int *subtype, int *arch)
void machine_list_available_types_and_cpus(void)
int halt_on_nonexistant_memaccess
struct machine * machine_new(char *name, struct emul *emul, int id)
struct settings * settings
struct fb_window ** fb_windows
struct machine_entry * next
void machine_add_breakpoint_string(struct machine *machine, char *str)
int allow_instruction_combinations
struct pic8259_data * pic2
void machine_statistics_init(struct machine *, char *fname)
uint64_t file_loaded_end_addr
void machine_add_tickfunction(struct machine *machine, void(*func)(struct cpu *, void *), void *extra, int clockshift)
struct machine_entry * machine_entry_new(const char *name, int arch, int oldstyle_type)
void automachine_init(void)
struct machine_pmax * pmax
void machine_dumpinfo(struct machine *)
int show_nr_of_instructions
int use_random_bootstrap_cpu
struct cpu_family * cpu_family
const char * machine_name