1 /* 2 * UAE - The Un*x Amiga Emulator 3 * 4 * Interface to the Tcl/Tk GUI 5 * 6 * Copyright 1996 Bernd Schmidt 7 */ 8 9 extern int gui_init (void); 10 extern int gui_update (void); 11 extern void gui_exit (void); 12 extern void gui_led (int, int); 13 extern void gui_handle_events (void); 14 extern void gui_filename (int, const TCHAR *); 15 extern void gui_fps (int fps, int idle, int color); 16 extern void gui_changesettings (void); 17 extern void gui_lock (void); 18 extern void gui_unlock (void); 19 extern void gui_flicker_led (int, int, int); 20 extern void gui_disk_image_change (int, const TCHAR *, bool writeprotected); 21 extern unsigned int gui_ledstate; 22 extern void gui_display (int shortcut); 23 24 extern void gui_gameport_button_change (int port, int button, int onoff); 25 extern void gui_gameport_axis_change (int port, int axis, int state, int max); 26 27 extern bool no_gui, quit_to_gui; 28 29 #define LED_CD_ACTIVE 1 30 #define LED_CD_ACTIVE2 2 31 #define LED_CD_AUDIO 4 32 33 #define LED_POWER 0 34 #define LED_DF0 1 35 #define LED_DF1 2 36 #define LED_DF2 3 37 #define LED_DF3 4 38 #define LED_HD 5 39 #define LED_CD 6 40 #define LED_FPS 7 41 #define LED_CPU 8 42 #define LED_SND 9 43 #define LED_MD 10 44 #define LED_NET 11 45 #define LED_MAX 12 46 47 struct gui_info 48 { 49 bool drive_motor[4]; /* motor on off */ 50 uae_u8 drive_track[4]; /* rw-head track */ 51 bool drive_writing[4]; /* drive is writing */ 52 bool drive_disabled[4]; /* drive is disabled */ 53 bool powerled; /* state of power led */ 54 uae_u8 powerled_brightness; /* 0 to 255 */ 55 uae_s8 drive_side; /* floppy side */ 56 uae_s8 hd; /* harddrive */ 57 uae_s8 cd; /* CD */ 58 uae_s8 md; /* CD32 or CDTV internal storage */ 59 uae_s8 net; /* network */ 60 int cpu_halted; 61 int fps, idle; 62 int fps_color; 63 int sndbuf, sndbuf_status; 64 bool sndbuf_avail; 65 TCHAR df[4][256]; /* inserted image */ 66 uae_u32 crc32[4]; /* crc32 of image */ 67 }; 68 #define NUM_LEDS (LED_MAX) 69 #define VISIBLE_LEDS (LED_MAX - 1) 70 71 extern struct gui_info gui_data; 72 73 /* Functions to be called when prefs are changed by non-gui code. */ 74 extern void gui_update_gfx (void); 75 76 #define notify_user gui_message 77 #define NUMSG_NEEDEXT2 "The software uses a non-standard floppy disk format. You may need to use a custom floppy disk image file instead of a standard one. This message will not appear again." 78 #define NUMSG_NOROMKEY "Could not find system ROM key file." 79 #define NUMSG_KSROMCRCERROR "System ROM checksum incorrect. The system ROM image file may be corrupt." 80 #define NUMSG_KSROMREADERROR "Error while reading system ROM." 81 #define NUMSG_NOEXTROM "No extended ROM found." 82 #define NUMSG_MODRIP_NOTFOUND "No music modules or packed data found." 83 #define NUMSG_MODRIP_FINISHED "Scan finished.\n" 84 #define NUMSG_MODRIP_SAVE "Module/packed data found\n%s\nStart address %08.8X, Size %d bytes\nWould you like to save it?" 85 #define NUMSG_KS68020 "The selected system ROM requires a 68020 with 32-bit addressing or 68030 or higher CPU." 86 #define NUMSG_ROMNEED "One of the following system ROMs is required:\n\n%s\n\nCheck the System ROM path in the Paths panel and click Rescan ROMs." 87 #define NUMSG_STATEHD "WARNING: Current configuration is not fully compatible with state saves.\nThis message will not appear again." 88 #define NUMSG_NOCAPS "Selected disk image needs the SPS plugin\nwhich is available from\nhttp//www.softpres.org/" 89 #define NUMSG_OLDCAPS "You need an updated SPS plugin\nwhich is available from\nhttp//www.softpres.org/" 90 #define NUMSG_KS68EC020 "The selected system ROM requires a 68020 with 24-bit addressing or higher CPU." 91 #define NUMSG_KICKREP "You need to have a floppy disk (image file) in DF0: to use the system ROM replacement." 92 #define NUMSG_KICKREPNO "The floppy disk (image file) in DF0: is not compatible with the system ROM replacement functionality." 93 #define NUMSG_NOROM "Could not load system ROM, trying system ROM replacement.\n" 94 #define NUMSG_EXPROMNEED "One of the following expansion boot ROMs is required:\n\n%s\n\nCheck the System ROM path in the Paths panel and click Rescan ROMs." 95 #define NUMSG_KS68030 "The selected system ROM requires a 68030 CPU." 96 #define NUMSG_KS68030PLUS "The selected system ROM requires a 68030 or higher CPU." 97 98