/* main start for Arnold CPC emulator for linux */ int main(int argc, char *argv[]) { configInit(); //FIXME: disabled for debug /* print welcome message */ printf("Arnold Emulator (c) Kevin Thacker\n"); printf("Linux Port maintained by Andreas Micklei\n"); roms_init(); //printrom(); if (!CPCEmulation_CheckEndianness()) { printf("%s", Messages[72]); exit(1); } // /* check display */ // if (!XWindows_CheckDisplay()) // { // printf("Failed to open display. Or display depth is 8-bit\n"); // exit(-1); // } /* initialise cpc hardware */ CPC_Initialise(); Multiface_Install(); /* done before parsing command line args. Command line args will take priority */ loadConfigFile(); //FIXME: disabled for debug init_main(argc, argv); CPC_Finish(); Multiface_DeInstall(); //printf("heello"); saveConfigFile(); //FIXME: disabled for debug configFree(); //FIXME: disabled for debug exit(0); return 0; /* Never reached */ }
static INT_PTR CALLBACK roms_proc( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam ) { HWND hedit; switch( uMsg ) { case WM_INITDIALOG: roms_init( hwndDlg, lParam ); /* save callback_info in userdata of this dialog */ SetWindowLong( hwndDlg, GWL_USERDATA, ( LONG ) lParam ); return FALSE; case WM_COMMAND: switch( LOWORD( wParam ) ) { case IDOK: roms_done( hwndDlg, GetWindowLong( ( HWND ) hwndDlg, GWL_USERDATA ) ); EndDialog( hwndDlg, 0 ); return 0; case IDCANCEL: EndDialog( hwndDlg, 0 ); return 0; default: if( HIWORD( wParam ) == BN_CLICKED ) { hedit = ( HWND ) GetWindowLong( ( HWND ) lParam, GWL_USERDATA ); if( hedit > 0 ) { select_new_rom( hedit ); return 0; } } break; } break; case WM_CLOSE: EndDialog( hwndDlg, 0 ); return 0; } return FALSE; }