Annotation of uae/macgui.c, revision 1.1

1.1     ! root        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: #include <stdio.h>
        !            10: #include <stdlib.h>
        !            11: #include <string.h>
        !            12: #ifdef __unix
        !            13: #include <sys/types.h>
        !            14: #include <sys/stat.h>
        !            15: #include <sys/time.h>
        !            16: #endif
        !            17: #include <fcntl.h>
        !            18: #include <unistd.h>
        !            19: #include <signal.h>
        !            20: #include <SIOUX.h>
        !            21: 
        !            22: #include "config.h"
        !            23: #include "amiga.h"
        !            24: #include "options.h"
        !            25: #include "memory.h"
        !            26: #include "custom.h"
        !            27: #include "newcpu.h"
        !            28: #include "disk.h"
        !            29: #include "gui.h"
        !            30: 
        !            31: #define kAppleMenuID   128
        !            32: #define kFileMenuID            129
        !            33: #define        kEditMenuID             130
        !            34: #define        kDrivesMenuID   131
        !            35: #define        kMemoryMenuID   132
        !            36: #define        kResMenuID              135
        !            37: #define        kRateMenuID             134
        !            38: #define        kVideoMenuID    133
        !            39: 
        !            40: MenuHandle     resMenu,rateMenu;
        !            41: static int macLedState[5];
        !            42: int quit_program;
        !            43: extern int use_quickdraw;
        !            44: static Rect    powerRect, driveDf0Rect, driveDf1Rect, driveDf2Rect, driveDf3Rect;
        !            45: 
        !            46: static void sigchldhandler(int foo)
        !            47: {
        !            48: }
        !            49: 
        !            50: static void InitToolbox(void)
        !            51: {
        !            52:        InitGraf (&qd.thePort);
        !            53:        InitFonts ();
        !            54:        FlushEvents (everyEvent,0);
        !            55:        InitWindows ();
        !            56:        InitMenus ();
        !            57:        TEInit ();
        !            58:        InitDialogs (nil);
        !            59:        InitCursor ();
        !            60: }
        !            61: 
        !            62: #define kPrefStrRsrc 130
        !            63: 
        !            64: int gui_init(void)
        !            65: {      char pathString[1024];
        !            66:        Handle menuBar;
        !            67:        
        !            68:        InitToolbox();
        !            69: 
        !            70:        SIOUXSettings.initializeTB=false;
        !            71:        SIOUXSettings.standalone=false;
        !            72:        SIOUXSettings.setupmenus=false;
        !            73:        SIOUXSettings.autocloseonquit=true;
        !            74:        SIOUXSettings.asktosaveonclose=false;
        !            75:        SIOUXSettings.showstatusline=false;
        !            76:        SIOUXSettings.rows=11;
        !            77:        SIOUXSettings.toppixel=350;
        !            78:        SIOUXSettings.leftpixel=0;
        !            79:        fprintf(stderr,"Starting up the GUI�\n");
        !            80:        SIOUXSetTitle("\pInfo Window");
        !            81:        
        !            82:        if (ReadPrefs(pathString))
        !            83:        {       if (*pathString != 0) add_filesys_unit("HD0", (char *)pathString, false);
        !            84:        }
        !            85:        else
        !            86:        {       if (*pathString == 0)
        !            87:                {       CreatePrefs();
        !            88:                        WritePrefs(0);
        !            89:                }
        !            90:        }
        !            91:        
        !            92:        menuBar=GetNewMBar(128);
        !            93:        SetMenuBar(menuBar);
        !            94:        DisposeHandle(menuBar);
        !            95:        
        !            96:        AddResMenu(GetMenuHandle(kAppleMenuID), 'DRVR');
        !            97: 
        !            98:        if (screen_res != 4) DisableItem (GetMenuHandle(kFileMenuID), 3);
        !            99:        if (use_quickdraw) CheckItem(GetMenuHandle(kVideoMenuID),5,true);
        !           100:     if (use_gfxlib) CheckItem(GetMenuHandle(kVideoMenuID),7,true);
        !           101:     if (use_slow_mem) SetMenuItemText(GetMenuHandle(kMemoryMenuID), 1, "\pDisable 1 Mb (SlowMem)" );
        !           102:     if (!automount_uaedev) CheckItem(GetMenuHandle(kDrivesMenuID),7,true);
        !           103:     if (produce_sound) SetMenuItemText(GetMenuHandle(kFileMenuID), 9, "\pTurn Sound Off");
        !           104:        else SetMenuItemText(GetMenuHandle(kFileMenuID), 9, "\pTurn Sound On");
        !           105:     if (fake_joystick) SetMenuItemText(GetMenuHandle(kFileMenuID), 11, "\pTurn Joystick Off");
        !           106:        else SetMenuItemText(GetMenuHandle(kFileMenuID), 11, "\pTurn Joystick On");
        !           107:     
        !           108:     rateMenu=GetMenu(kRateMenuID);
        !           109:        InsertMenu(rateMenu, -1);
        !           110:        if (framerate == 1) CheckItem(rateMenu,1,true);
        !           111:        if (framerate == 3) CheckItem(rateMenu,2,true);
        !           112:        if (framerate == 5) CheckItem(rateMenu,3,true);
        !           113:        if (framerate == 7) CheckItem(rateMenu,4,true);
        !           114:     
        !           115:     resMenu=GetMenu(kResMenuID);
        !           116:        InsertMenu(resMenu, -1);
        !           117:        CheckItem(resMenu,(unsigned char)screen_res+1,true);
        !           118:     
        !           119:     DrawMenuBar();
        !           120:     
        !           121:     macLedState[0]=false;
        !           122:     macLedState[1]=false;
        !           123:     macLedState[2]=false;
        !           124:     macLedState[3]=false;
        !           125:     macLedState[4]=false;
        !           126:     
        !           127:     quit_program = 0;
        !           128: }
        !           129: 
        !           130: void gui_exit(void)
        !           131: {
        !           132:        DeleteMenu(kAppleMenuID);
        !           133:        DeleteMenu(kFileMenuID);
        !           134:        DeleteMenu(kEditMenuID);
        !           135:        DeleteMenu(kDrivesMenuID);
        !           136:        DeleteMenu(kMemoryMenuID);
        !           137:        DeleteMenu(kResMenuID);
        !           138:        DeleteMenu(kRateMenuID);
        !           139:        DeleteMenu(kVideoMenuID);
        !           140: }
        !           141: 
        !           142: void gui_prepare_leds(long screenV)
        !           143: {      
        !           144:        if (screen_res >= 3)
        !           145:        {       SetRect(&powerRect,70,(short)screenV+1,110,(short)screenV+11);
        !           146:                SetRect(&driveDf0Rect,220,(short)screenV+1,260,(short)screenV+11);
        !           147:                SetRect(&driveDf1Rect,292,(short)screenV+1,332,(short)screenV+11);
        !           148:                SetRect(&driveDf2Rect,365,(short)screenV+1,405,(short)screenV+11);
        !           149:                SetRect(&driveDf3Rect,436,(short)screenV+1,476,(short)screenV+11);
        !           150:        }
        !           151:        else
        !           152:        {       SetRect(&powerRect,46,(short)screenV+1,76,(short)screenV+11);
        !           153:                SetRect(&driveDf0Rect,106,(short)screenV+1,136,(short)screenV+11);
        !           154:                SetRect(&driveDf1Rect,166,(short)screenV+1,196,(short)screenV+11);
        !           155:                SetRect(&driveDf2Rect,226,(short)screenV+1,256,(short)screenV+11);
        !           156:                SetRect(&driveDf3Rect,286,(short)screenV+1,316,(short)screenV+11);
        !           157:        }
        !           158: }
        !           159: 
        !           160: void gui_update_leds(void)
        !           161: {      int i;
        !           162: 
        !           163:        for(i=0;i<=4;i++) gui_led(i,macLedState[i]);
        !           164: }
        !           165: 
        !           166: void gui_led(int led, int on)
        !           167: {      
        !           168:        macLedState[led]=on;
        !           169:        if (dont_want_aspect || screen_res == 2)
        !           170:        {       if (led == 0)
        !           171:                {       if (on)
        !           172:                        {       ForeColor(redColor);
        !           173:                                PaintRect(&powerRect);
        !           174:                        }
        !           175:                        else
        !           176:                        {       ForeColor(whiteColor);
        !           177:                                PaintRect(&powerRect);
        !           178:                        }
        !           179:                }
        !           180:                else
        !           181:                {       switch (led)
        !           182:                        {       case 1:
        !           183:                                        if (on)
        !           184:                                        {       ForeColor(greenColor);
        !           185:                                                PaintRect(&driveDf0Rect);
        !           186:                                        }
        !           187:                                        else
        !           188:                                        {       ForeColor(whiteColor);
        !           189:                                                PaintRect(&driveDf0Rect);
        !           190:                                        }
        !           191:                                break;
        !           192:                                
        !           193:                                case 2:
        !           194:                                        if (on)
        !           195:                                        {       ForeColor(greenColor);
        !           196:                                                PaintRect(&driveDf1Rect);
        !           197:                                        }
        !           198:                                        else
        !           199:                                        {       ForeColor(whiteColor);
        !           200:                                                PaintRect(&driveDf1Rect);
        !           201:                                        }
        !           202:                                break;
        !           203:                                
        !           204:                                case 3:
        !           205:                                        if (on)
        !           206:                                        {       ForeColor(greenColor);
        !           207:                                                PaintRect(&driveDf2Rect);
        !           208:                                        }
        !           209:                                        else
        !           210:                                        {       ForeColor(whiteColor);
        !           211:                                                PaintRect(&driveDf2Rect);
        !           212:                                        }
        !           213:                                break;
        !           214:                                
        !           215:                                case 4:
        !           216:                                        if (on)
        !           217:                                        {       ForeColor(greenColor);
        !           218:                                                PaintRect(&driveDf3Rect);
        !           219:                                        }
        !           220:                                        else
        !           221:                                        {       ForeColor(whiteColor);
        !           222:                                                PaintRect(&driveDf3Rect);
        !           223:                                        }
        !           224:                                break;
        !           225:                        }
        !           226:                }
        !           227:        ForeColor(blackColor);
        !           228:        }
        !           229: }
        !           230: 
        !           231: void gui_filename(int num, char *name)
        !           232: {
        !           233: }
        !           234: 
        !           235: static void getline(char *p)
        !           236: {
        !           237: }
        !           238: 
        !           239: void gui_handle_events(void)
        !           240: {      
        !           241: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.