1 /* 2 * Copyright (C) 1990 Regents of the University of California. 3 * 4 * Permission to use, copy, modify, distribute, and sell this software and 5 * its documentation for any purpose is hereby granted without fee, 6 * provided that the above copyright notice appear in all copies and that 7 * both that copyright notice and this permission notice appear in 8 * supporting documentation, and that the name of the University of 9 * California not be used in advertising or publicity pertaining to 10 * distribution of the software without specific, written prior 11 * permission. the University of California makes no representations 12 * about the suitability of this software for any purpose. It is provided 13 * "as is" without express or implied warranty. 14 */ 15 16 #include "version.h" 17 #include "patchlevel.h" 18 19 /* shorthand */ 20 # define rootwin(x) RootWindow(XtDisplay(x), XtWindow(x)) 21 22 /* 23 * number of milliseconds to sleep between 24 * checking to see what the current track 25 * is. 26 */ 27 # define TIMER_PERIOD ((unsigned long) 250) 28 29 # define BACKWARDS -1 30 # define FORWARDS 1 31 32 extern Widget top_setup(); 33 extern Widget main_setup(); 34 35 extern void cb_cdrom_play(); 36 extern void cb_cdrom_pause(); 37 extern void cb_cdrom_stop(); 38 extern void cb_cdrom_previous(); 39 extern void cb_cdrom_next(); 40 extern void cb_cdrom_eject(); 41 #ifdef sgi 42 extern void cb_cdrom_audio(); 43 #endif 44 extern void cb_cdrom_cycle(); 45 extern void cb_cdrom_quit(); 46 extern void cb_cdrom_shuffle(); 47 extern void cb_cdrom_rewind(); 48 extern void cb_cdrom_ff(); 49 extern void cb_cdrom_program(); 50 51 extern int cdrom_get_curtime(); 52 extern void cdrom_timer_on(); 53 extern void cdrom_timer_off(); 54 extern int cdrom_play(); 55 extern void cdrom_reset(); 56 extern void cdrom_rewind(); 57 extern void cdrom_ff(); 58 59 extern void logo_setup(); 60 extern void track_button_update(); 61 extern void track_button_set(); 62 extern void track_button_reset(); 63 extern void timer_button_update(); 64 extern void timer_button_set(); 65 extern void timer_button_reset(); 66 67 extern void button_setup(); 68 extern void top_start(); 69 extern void update_status(); 70 extern void play_button_set(); 71 extern void play_button_reset(); 72 extern void pause_button_reset(); 73 extern void eject_button_reset(); 74 extern void shuffle_button_set(); 75 extern void shuffle_button_reset(); 76 extern void pgm_button_set(); 77 extern void pgm_button_reset(); 78 extern void update_title(); 79 80 81 extern void leds_stop(); 82 extern void leds_update(); 83 84 extern void shuffle_setup(); 85 extern unsigned char shuffle_next_track(); 86 extern unsigned char shuffle_prev_track(); 87 88 extern void program_form_setup(); 89 extern void popup_program_form(); 90 extern int program_time_remaining(); 91 extern unsigned char program_resume(); 92 extern unsigned char program_goto_next_track(); 93 extern unsigned char program_goto_prev_track(); 94 extern unsigned char program_next_track(); 95 extern unsigned char program_prev_track(); 96 extern void program_add_track(); 97 extern void program_cancel(); 98 99 extern int cdrom_open(); 100 extern int cdrom_init(); 101 102 extern XtAppContext appc; 103 104 #include "app.h" 105 106 extern char info_filename[]; 107 extern char *disc_title; 108 extern unsigned int timer_fsecs; 109