mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-25 04:30:02 +00:00
f7680a5593
everything needed to run SDL on a framebuffer device in the userspace emulator Signed-off-by: Ulrich Hecht <uli@suse.de> Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
168 lines
5.4 KiB
C
168 lines
5.4 KiB
C
STRUCT_SPECIAL(termios)
|
|
|
|
STRUCT(winsize,
|
|
TYPE_SHORT, TYPE_SHORT, TYPE_SHORT, TYPE_SHORT)
|
|
|
|
STRUCT(serial_multiport_struct,
|
|
TYPE_INT, TYPE_INT, TYPE_CHAR, TYPE_CHAR, TYPE_INT, TYPE_CHAR, TYPE_CHAR,
|
|
TYPE_INT, TYPE_CHAR, TYPE_CHAR, TYPE_INT, TYPE_CHAR, TYPE_CHAR, TYPE_INT,
|
|
MK_ARRAY(TYPE_INT, 32))
|
|
|
|
STRUCT(serial_icounter_struct,
|
|
TYPE_INT, TYPE_INT, TYPE_INT, TYPE_INT, MK_ARRAY(TYPE_INT, 16))
|
|
|
|
STRUCT(sockaddr,
|
|
TYPE_SHORT, MK_ARRAY(TYPE_CHAR, 14))
|
|
|
|
STRUCT(rtentry,
|
|
TYPE_ULONG, MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr),
|
|
TYPE_SHORT, TYPE_SHORT, TYPE_ULONG, TYPE_PTRVOID, TYPE_SHORT, TYPE_PTRVOID,
|
|
TYPE_ULONG, TYPE_ULONG, TYPE_SHORT)
|
|
|
|
STRUCT(ifmap,
|
|
TYPE_ULONG, TYPE_ULONG, TYPE_SHORT, TYPE_CHAR, TYPE_CHAR, TYPE_CHAR,
|
|
/* Spare 3 bytes */
|
|
TYPE_CHAR, TYPE_CHAR, TYPE_CHAR)
|
|
|
|
/* The *_ifreq_list arrays deal with the fact that struct ifreq has unions */
|
|
|
|
STRUCT(sockaddr_ifreq,
|
|
MK_ARRAY(TYPE_CHAR, IFNAMSIZ), MK_STRUCT(STRUCT_sockaddr))
|
|
|
|
STRUCT(short_ifreq,
|
|
MK_ARRAY(TYPE_CHAR, IFNAMSIZ), TYPE_SHORT)
|
|
|
|
STRUCT(int_ifreq,
|
|
MK_ARRAY(TYPE_CHAR, IFNAMSIZ), TYPE_INT)
|
|
|
|
STRUCT(ifmap_ifreq,
|
|
MK_ARRAY(TYPE_CHAR, IFNAMSIZ), MK_STRUCT(STRUCT_ifmap))
|
|
|
|
STRUCT(char_ifreq,
|
|
MK_ARRAY(TYPE_CHAR, IFNAMSIZ),
|
|
MK_ARRAY(TYPE_CHAR, IFNAMSIZ))
|
|
|
|
STRUCT(ptr_ifreq,
|
|
MK_ARRAY(TYPE_CHAR, IFNAMSIZ), TYPE_PTRVOID)
|
|
|
|
STRUCT(ifconf,
|
|
TYPE_INT, TYPE_PTRVOID)
|
|
|
|
STRUCT(arpreq,
|
|
MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), TYPE_INT, MK_STRUCT(STRUCT_sockaddr),
|
|
MK_ARRAY(TYPE_CHAR, 16))
|
|
|
|
STRUCT(arpreq_old,
|
|
MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), TYPE_INT, MK_STRUCT(STRUCT_sockaddr))
|
|
|
|
STRUCT(cdrom_read_audio,
|
|
TYPE_CHAR, TYPE_CHAR, TYPE_CHAR, TYPE_CHAR, TYPE_CHAR, TYPE_INT, TYPE_PTRVOID,
|
|
TYPE_NULL)
|
|
|
|
STRUCT(hd_geometry,
|
|
TYPE_CHAR, TYPE_CHAR, TYPE_SHORT, TYPE_ULONG)
|
|
|
|
STRUCT(dirent,
|
|
TYPE_LONG, TYPE_LONG, TYPE_SHORT, MK_ARRAY(TYPE_CHAR, 256))
|
|
|
|
STRUCT(kbentry,
|
|
TYPE_CHAR, TYPE_CHAR, TYPE_SHORT)
|
|
|
|
STRUCT(kbsentry,
|
|
TYPE_CHAR, MK_ARRAY(TYPE_CHAR, 512))
|
|
|
|
STRUCT(audio_buf_info,
|
|
TYPE_INT, TYPE_INT, TYPE_INT, TYPE_INT)
|
|
|
|
STRUCT(count_info,
|
|
TYPE_INT, TYPE_INT, TYPE_INT)
|
|
|
|
STRUCT(mixer_info,
|
|
MK_ARRAY(TYPE_CHAR, 16), MK_ARRAY(TYPE_CHAR, 32), TYPE_INT, MK_ARRAY(TYPE_INT, 10))
|
|
|
|
/* loop device ioctls */
|
|
STRUCT(loop_info,
|
|
TYPE_INT, /* lo_number */
|
|
TYPE_SHORT, /* lo_device */
|
|
TYPE_ULONG, /* lo_inode */
|
|
TYPE_SHORT, /* lo_rdevice */
|
|
TYPE_INT, /* lo_offset */
|
|
TYPE_INT, /* lo_encrypt_type */
|
|
TYPE_INT, /* lo_encrypt_key_size */
|
|
TYPE_INT, /* lo_flags */
|
|
MK_ARRAY(TYPE_CHAR, 64), /* lo_name */
|
|
MK_ARRAY(TYPE_CHAR, 32), /* lo_encrypt_key */
|
|
MK_ARRAY(TYPE_ULONG, 2), /* lo_init */
|
|
MK_ARRAY(TYPE_CHAR, 4)) /* reserved */
|
|
|
|
STRUCT(loop_info64,
|
|
TYPE_ULONGLONG, /* lo_device */
|
|
TYPE_ULONGLONG, /* lo_inode */
|
|
TYPE_ULONGLONG, /* lo_rdevice */
|
|
TYPE_ULONGLONG, /* lo_offset */
|
|
TYPE_ULONG, /* lo_number */
|
|
TYPE_ULONG, /* lo_encrypt_type */
|
|
TYPE_ULONG, /* lo_encrypt_key_size */
|
|
TYPE_ULONG, /* lo_flags */
|
|
MK_ARRAY(TYPE_CHAR, 64), /* lo_name */
|
|
MK_ARRAY(TYPE_CHAR, 64), /* lo_crypt_name */
|
|
MK_ARRAY(TYPE_CHAR, 32), /* lo_encrypt_key */
|
|
MK_ARRAY(TYPE_ULONGLONG, 2)) /* lo_init */
|
|
|
|
/* mag tape ioctls */
|
|
STRUCT(mtop, TYPE_SHORT, TYPE_INT)
|
|
STRUCT(mtget, TYPE_LONG, TYPE_LONG, TYPE_LONG, TYPE_LONG, TYPE_LONG,
|
|
TYPE_INT, TYPE_INT)
|
|
STRUCT(mtpos, TYPE_LONG)
|
|
|
|
STRUCT(fb_fix_screeninfo,
|
|
MK_ARRAY(TYPE_CHAR, 16), /* id */
|
|
TYPE_ULONG, /* smem_start */
|
|
TYPE_INT, /* smem_len */
|
|
TYPE_INT, /* type */
|
|
TYPE_INT, /* type_aux */
|
|
TYPE_INT, /* visual */
|
|
TYPE_SHORT, /* xpanstep */
|
|
TYPE_SHORT, /* ypanstep */
|
|
TYPE_SHORT, /* ywrapstep */
|
|
TYPE_INT, /* line_length */
|
|
TYPE_ULONG, /* mmio_start */
|
|
TYPE_INT, /* mmio_len */
|
|
TYPE_INT, /* accel */
|
|
MK_ARRAY(TYPE_CHAR, 3)) /* reserved */
|
|
|
|
STRUCT(fb_var_screeninfo,
|
|
TYPE_INT, /* xres */
|
|
TYPE_INT, /* yres */
|
|
TYPE_INT, /* xres_virtual */
|
|
TYPE_INT, /* yres_virtual */
|
|
TYPE_INT, /* xoffset */
|
|
TYPE_INT, /* yoffset */
|
|
TYPE_INT, /* bits_per_pixel */
|
|
TYPE_INT, /* grayscale */
|
|
MK_ARRAY(TYPE_INT, 3), /* red */
|
|
MK_ARRAY(TYPE_INT, 3), /* green */
|
|
MK_ARRAY(TYPE_INT, 3), /* blue */
|
|
MK_ARRAY(TYPE_INT, 3), /* transp */
|
|
TYPE_INT, /* nonstd */
|
|
TYPE_INT, /* activate */
|
|
TYPE_INT, /* height */
|
|
TYPE_INT, /* width */
|
|
TYPE_INT, /* accel_flags */
|
|
TYPE_INT, /* pixclock */
|
|
TYPE_INT, /* left_margin */
|
|
TYPE_INT, /* right_margin */
|
|
TYPE_INT, /* upper_margin */
|
|
TYPE_INT, /* lower_margin */
|
|
TYPE_INT, /* hsync_len */
|
|
TYPE_INT, /* vsync_len */
|
|
TYPE_INT, /* sync */
|
|
TYPE_INT, /* vmode */
|
|
TYPE_INT, /* rotate */
|
|
MK_ARRAY(TYPE_INT, 5)) /* reserved */
|
|
|
|
STRUCT(vt_stat,
|
|
TYPE_SHORT, /* v_active */
|
|
TYPE_SHORT, /* v_signal */
|
|
TYPE_SHORT) /* v_state */
|