/* * UAE - The Un*x Amiga Emulator * * Interface to the Tcl/Tk GUI * * Copyright 1996 Bernd Schmidt */ #ifndef UAE_GUI_H #define UAE_GUI_H #include "uae/types.h" extern int gui_init (void); extern int gui_update (void); extern void gui_exit (void); extern void gui_led (int, int, int); extern void gui_handle_events (void); extern void gui_filename (int, const TCHAR *); extern void gui_fps (int fps, int idle, int color); extern void gui_changesettings (void); extern void gui_lock (void); extern void gui_unlock (void); extern void gui_flicker_led (int, int, int); extern void gui_disk_image_change (int, const TCHAR *, bool writeprotected); extern unsigned int gui_ledstate; extern void gui_display (int shortcut); extern void gui_gameport_button_change (int port, int button, int onoff); extern void gui_gameport_axis_change (int port, int axis, int state, int max); extern bool no_gui, quit_to_gui; #define LED_CD_ACTIVE 1 #define LED_CD_ACTIVE2 2 #define LED_CD_AUDIO 4 #define LED_POWER 0 #define LED_DF0 1 #define LED_DF1 2 #define LED_DF2 3 #define LED_DF3 4 #define LED_HD 5 #define LED_CD 6 #define LED_FPS 7 #define LED_CPU 8 #define LED_SND 9 #define LED_MD 10 #define LED_MAX 11 struct gui_info { bool drive_motor[4]; /* motor on off */ uae_u8 drive_track[4]; /* rw-head track */ bool drive_writing[4]; /* drive is writing */ bool drive_disabled[4]; /* drive is disabled */ bool powerled; /* state of power led */ uae_u8 powerled_brightness; /* 0 to 255 */ uae_s8 drive_side; /* floppy side */ uae_s8 hd; /* harddrive */ uae_s8 cd; /* CD */ uae_s8 md; /* CD32 or CDTV internal storage */ int cpu_halted; int fps, idle; int fps_color; int sndbuf, sndbuf_status; TCHAR df[4][256]; /* inserted image */ uae_u32 crc32[4]; /* crc32 of image */ }; #define NUM_LEDS (LED_MAX) #define VISIBLE_LEDS (LED_MAX - 1) extern struct gui_info gui_data; /* Functions to be called when prefs are changed by non-gui code. */ extern void gui_update_gfx (void); void notify_user (int msg); void notify_user_parms (int msg, const TCHAR *parms, ...); int translate_message (int msg, TCHAR *out); typedef enum { NUMSG_NEEDEXT2, // 0 NUMSG_NOROM, NUMSG_NOROMKEY, NUMSG_KSROMCRCERROR, NUMSG_KSROMREADERROR, NUMSG_NOEXTROM, // 5 NUMSG_MODRIP_NOTFOUND, NUMSG_MODRIP_FINISHED, NUMSG_MODRIP_SAVE, NUMSG_KS68EC020, NUMSG_KS68020, // 10 NUMSG_KS68030, NUMSG_ROMNEED, NUMSG_EXPROMNEED, NUMSG_NOZLIB, NUMSG_STATEHD, // 15 NUMSG_NOCAPS, NUMSG_OLDCAPS, NUMSG_KICKREP, NUMSG_KICKREPNO, NUMSG_KS68030PLUS, // 20 NUMSG_NO_PPC, NUMSG_UAEBOOTROM_PPC, NUMSG_LAST } notify_user_msg; #endif /* UAE_GUI_H */