--- trunk/src/include/devices.h 2007/10/08 16:18:11 6 +++ trunk/src/include/devices.h 2007/10/08 16:18:38 12 @@ -28,7 +28,7 @@ * SUCH DAMAGE. * * - * $Id: devices.h,v 1.167 2005/05/22 20:05:40 debug Exp $ + * $Id: devices.h,v 1.176 2005/08/05 09:11:49 debug Exp $ * * Memory mapped devices. * @@ -137,11 +137,10 @@ #define DEV_CONS_LENGTH 0x0000000000000020 #define DEV_CONS_PUTGETCHAR 0x0000 #define DEV_CONS_HALT 0x0010 -int dev_cons_access(struct cpu *cpu, struct memory *mem, - uint64_t relative_addr, unsigned char *data, size_t len, - int writeflag, void *); -int dev_cons_init(struct machine *machine, struct memory *mem, - uint64_t baseaddr, char *name, int irq_nr); +struct cons_data { + int console_handle; + int irq_nr; +}; /* dev_colorplanemask.c: */ #define DEV_COLORPLANEMASK_LENGTH 0x0000000000000010 @@ -178,14 +177,24 @@ int dev_decxmi_access(struct cpu *cpu, struct memory *mem, uint64_t relative_addr, unsigned char *data, size_t len, int writeflag, void *); void dev_decxmi_init(struct memory *mem, uint64_t baseaddr); +/* dev_disk.c: */ +#define DEV_DISK_ADDRESS 0x13000000 + +/* dev_ether.c: */ +#define DEV_ETHER_ADDRESS 0x14000000 +#define DEV_ETHER_LENGTH 0x8000 + /* dev_fb.c: */ -#define DEV_FB_LENGTH 0x3c0000 /* 3c0000 to not colide with turbochannel rom, otherwise size = (4*1024*1024) */ -#define VFB_GENERIC 0 -#define VFB_HPCMIPS 1 -#define VFB_DEC_VFB01 2 -#define VFB_DEC_VFB02 3 -#define VFB_DEC_MAXINE 4 -#define VFB_PLAYSTATION2 5 +#define DEV_FB_ADDRESS 0x12000000 /* Default for testmips */ +#define DEV_FB_LENGTH 0x3c0000 /* 3c0000 to not colide with */ + /* turbochannel rom, */ + /* otherwise size = 4MB */ +#define VFB_GENERIC 0 +#define VFB_HPCMIPS 1 +#define VFB_DEC_VFB01 2 +#define VFB_DEC_VFB02 3 +#define VFB_DEC_MAXINE 4 +#define VFB_PLAYSTATION2 5 struct vfb_data { int vfb_type; @@ -194,7 +203,8 @@ int xsize; int ysize; int bit_depth; - int color32k; + int color32k; /* hack for 16-bit HPCmips */ + int psp_15bit; /* plastation portable hack */ unsigned char color_plane_mask; @@ -227,14 +237,18 @@ int fill_g, int fill_b, int x1, int y1, int x2, int y2, int from_x, int from_y); void dev_fb_tick(struct cpu *, void *); -int dev_fb_access(struct cpu *cpu, struct memory *mem, uint64_t relative_addr, unsigned char *data, size_t len, int writeflag, void *); -struct vfb_data *dev_fb_init(struct machine *machine, struct memory *mem, uint64_t baseaddr, int vfb_type, - int visible_xsize, int visible_ysize, int xsize, int ysize, int bit_depth, char *name, int logo); +int dev_fb_access(struct cpu *cpu, struct memory *mem, uint64_t relative_addr, + unsigned char *data, size_t len, int writeflag, void *); +struct vfb_data *dev_fb_init(struct machine *machine, struct memory *mem, + uint64_t baseaddr, int vfb_type, int visible_xsize, int visible_ysize, + int xsize, int ysize, int bit_depth, char *name); /* dev_gt.c: */ -#define DEV_GT_LENGTH 0x0000000000001000 -int dev_gt_access(struct cpu *cpu, struct memory *mem, uint64_t relative_addr, unsigned char *data, size_t len, int writeflag, void *); -struct pci_data *dev_gt_init(struct machine *machine, struct memory *mem, uint64_t baseaddr, int irq_nr, int pciirq); +#define DEV_GT_LENGTH 0x1000 +int dev_gt_access(struct cpu *cpu, struct memory *mem, uint64_t relative_addr, + unsigned char *data, size_t len, int writeflag, void *); +struct pci_data *dev_gt_init(struct machine *machine, struct memory *mem, + uint64_t baseaddr, int irq_nr, int pciirq, int type); /* dev_jazz.c: */ #define DEV_JAZZ_LENGTH 0x280 @@ -325,14 +339,14 @@ void dev_m700_fb_init(struct machine *machine, struct memory *mem, uint64_t baseaddr, uint64_t baseaddr2); -/* dev_ns16550.c: */ -#define DEV_NS16550_LENGTH 0x0000000000000008 -/* see comreg.h and ns16550reg.h for more info */ -int dev_ns16550_access(struct cpu *cpu, struct memory *mem, - uint64_t relative_addr, unsigned char *data, size_t len, - int writeflag, void *); -int dev_ns16550_init(struct machine *machine, struct memory *mem, - uint64_t baseaddr, int irq_nr, int addrmult, int in_use, char *name); +/* dev_malta.c: */ +struct malta_data { + uint8_t assert_lo; + uint8_t assert_hi; + uint8_t disable_lo; + uint8_t disable_hi; + int poll_mode; +}; /* dev_mc146818.c: */ #define DEV_MC146818_LENGTH 0x0000000000000100