void SetupTLBWindow (HWND hDlg) { LV_COLUMN col; DWORD X, Y; col.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM; col.fmt = LVCFMT_LEFT; col.pszText = "Index"; col.cx = 40; col.iSubItem = 0; ListView_InsertColumn ( GetDlgItem(hDlg,IDC_LIST), 0, &col); col.pszText = "Page Mask"; col.cx = 90; col.iSubItem = 1; ListView_InsertColumn ( GetDlgItem(hDlg,IDC_LIST), 1, &col); col.pszText = "Entry Hi"; col.cx = 90; col.iSubItem = 2; ListView_InsertColumn ( GetDlgItem(hDlg,IDC_LIST), 2, &col); col.pszText = "Entry Lo0"; col.cx = 90; col.iSubItem = 3; ListView_InsertColumn ( GetDlgItem(hDlg,IDC_LIST), 3, &col); col.pszText = "Entry Lo1"; col.cx = 90; col.iSubItem = 4; ListView_InsertColumn ( GetDlgItem(hDlg,IDC_LIST), 4, &col); col.pszText = "Index"; col.cx = 40; col.iSubItem = 0; ListView_InsertColumn ( GetDlgItem(hDlg,IDC_LIST2), 0, &col); col.pszText = "Valid"; col.cx = 40; col.iSubItem = 1; ListView_InsertColumn ( GetDlgItem(hDlg,IDC_LIST2), 1, &col); col.pszText = "Dirty"; col.cx = 40; col.iSubItem = 2; ListView_InsertColumn ( GetDlgItem(hDlg,IDC_LIST2), 2, &col); col.pszText = "Rule"; col.cx = 280; col.iSubItem = 3; ListView_InsertColumn ( GetDlgItem(hDlg,IDC_LIST2), 3, &col); RefreshTLBWindow(); SendMessage(GetDlgItem(hDlg,IDC_TLB_ENTRIES),BM_SETCHECK, BST_CHECKED,0); if (GetStoredWinPos( "TLB Window", &X, &Y )) { SetWindowPos(hDlg,NULL,X,Y,0,0, SWP_NOZORDER | SWP_NOSIZE | SWP_SHOWWINDOW); } }
void SetupRSP_RegistersMain (HWND hDlg) { #define WindowWidth 630 #define WindowHeight 325 DWORD X, Y; hTab = CreateWindowEx(0,WC_TABCONTROL,"", WS_TABSTOP | WS_CHILD | WS_VISIBLE,5,6,616,290, hDlg,(HMENU)IDC_TAB_CONTROL,hinstDLL,NULL ); if ( hTab ) { TC_ITEM item; SendMessage(hTab, WM_SETFONT, (WPARAM)GetStockObject( DEFAULT_GUI_FONT ), 0); item.mask = TCIF_TEXT | TCIF_PARAM; item.pszText = " General Purpose "; item.lParam = GeneralPurpose; TabCtrl_InsertItem( hTab,0, &item); item.lParam = ControlProcessor0; item.pszText = " Control Processor 0 "; TabCtrl_InsertItem( hTab,1, &item); item.lParam = HiddenRegisters; item.pszText = " Hidden Registers "; TabCtrl_InsertItem( hTab,2, &item); item.lParam = Vector1; item.pszText = " RSP Vectors $v0 - $v15 "; TabCtrl_InsertItem( hTab,3, &item); item.lParam = Vector2; item.pszText = " RSP Vectors $v16 - $v31 "; TabCtrl_InsertItem( hTab,4, &item); } SetupRSP_HiddenPanel ( hDlg ); SetupRSP_CP0Panel ( hDlg ); SetupRSP_GPRPanel ( hDlg ); SetupRSP_Vect1Panel ( hDlg ); SetupRSP_Vect2Panel ( hDlg ); hStatic = CreateWindowEx(0,"STATIC","", WS_CHILD|WS_VISIBLE, 5,6,616,290,hDlg,0,hinstDLL,NULL ); RefreshProc = (FARPROC)SetWindowLong( hStatic,GWL_WNDPROC,(long)RefreshRSP_RegProc); UpdateRSPRegistersScreen (); ShowRSP_RegisterPanel ( GeneralPurpose ); SetWindowText(hDlg," RSP Registers"); if ( !GetStoredWinPos( "RSP Registers", &X, &Y ) ) { X = (GetSystemMetrics( SM_CXSCREEN ) - WindowWidth) / 2; Y = (GetSystemMetrics( SM_CYSCREEN ) - WindowHeight) / 2; } SetWindowPos(hDlg,NULL,X,Y,WindowWidth,WindowHeight, SWP_NOZORDER | SWP_SHOWWINDOW); }