コード例 #1
0
ファイル: TLBDisplay.cpp プロジェクト: open-develop/project64
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);
	}
}
コード例 #2
0
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);
}