Ignore:
Timestamp:
Sep 4, 2000, 1:53:19 AM (25 years ago)
Author:
bird
Message:

More features.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/win32k/utils/Win32kCC.c

    r4164 r4178  
    1 /* $Id: Win32kCC.c,v 1.2 2000-09-02 21:08:22 bird Exp $
     1/* $Id: Win32kCC.c,v 1.3 2000-09-03 23:53:18 bird Exp $
    22 *
    33 * Win32CC - Win32k Control Center.
     
    8484PCSZ                getLastErrorMsg(HAB hab);
    8585PSZ                 getMessage(ULONG id);
     86int                 GetFixpackDesc(ULONG ulBuild, ULONG flKernel, PSZ pszBuffer);
    8687
    8788
     
    361362        {
    362363            APIRET  rc;
    363             CHAR    szNumber[16];
     364            CHAR    szNumber[32];
     365            CHAR    szBuffer[100];
    364366
    365367
     
    384386             * Set the controls.
    385387             */
     388            /* win32k */
     389            sprintf(szBuffer, "%d.%d", 0, pThis->Status.ulVersion);
     390            WinSetDlgItemText(hwnd, TX_W32K_VERSION_VAL,        szBuffer);
     391            sprintf(szBuffer, "%s %s", pThis->Status.szBuildTime, pThis->Status.szBuildDate);
     392            WinSetDlgItemText(hwnd, TX_W32K_BUILD_DATETIME_VAL, szBuffer);
     393            WinSetDlgItemText(hwnd, TX_W32K_SYMBOLFILE_VAL,     pThis->Status.szSymFile);
     394            sprintf(szBuffer, "%d - ", pThis->Status.ulBuild);
     395            if (GetFixpackDesc(pThis->Status.ulBuild, pThis->Status.fKernel, szBuffer + strlen(szBuffer)))
     396                sprintf(szBuffer, "%d", pThis->Status.ulBuild);
     397            WinSetDlgItemText(hwnd, TX_W32K_KERNELBUILD_VAL,    szBuffer);
     398
    386399            /* logging */
    387400            WinSendDlgItemMsg(hwnd, CB_LOGGING_ENABLED,     BM_SETCHECK,    (MPARAM)(pThis->Options.fLogging),                  NULL);
     
    399412            WinSendDlgItemMsg(hwnd, RB_LDR_PE_NOT,          BM_SETCHECK,    (MPARAM)(pThis->Options.fPE == FLAGS_PE_NOT),       NULL);
    400413            WinSendDlgItemMsg(hwnd, SB_LDR_PE_INFOLEVEL,    SPBM_SETCURRENTVALUE, (MPARAM)(pThis->Options.ulInfoLevel),         NULL); /* FIXME to be changed */
     414            sprintf(szNumber, "%d", pThis->Status.cPe2LxModules);
     415            WinSetDlgItemText(hwnd, TX_LDR_PE_MODULES_VAL, szNumber);
    401416            /* Elf */
    402417            WinSendDlgItemMsg(hwnd, CB_LDR_ELF_ENABLED,     BM_SETCHECK,    (MPARAM)(pThis->Options.fElf),                      NULL);
    403418            WinSendDlgItemMsg(hwnd, SB_LDR_ELF_INFOLEVEL,   SPBM_SETCURRENTVALUE, (MPARAM)(pThis->Options.ulInfoLevel),         NULL); /* FIXME to be changed */
     419            sprintf(szNumber, "%d", pThis->Status.cElf2LxModules);
     420            WinSetDlgItemText(hwnd, TX_LDR_ELF_MODULES_VAL, szNumber);
    404421            /* UNIX Shell Scripts */
    405422            WinSendDlgItemMsg(hwnd, CB_LDR_SHELL_SCRIPTS,   BM_SETCHECK,    (MPARAM)(pThis->Options.fUNIXScript),               NULL);
     
    414431            sprintf(szNumber, "%d", pThis->Status.cbResHeapInit / 1024);
    415432            WinSetDlgItemText(hwnd, TX_HEAP_RES_INIT_VAL,   szNumber);
     433            sprintf(szNumber, "%d", pThis->Status.cbResHeapSize / 1024);
     434            WinSetDlgItemText(hwnd, TX_HEAP_RES_SIZE_VAL,   szNumber);
    416435            sprintf(szNumber, "%d", pThis->Status.cbResHeapUsed / 1024);
    417436            WinSetDlgItemText(hwnd, TX_HEAP_RES_USED_VAL,   szNumber);
     437            sprintf(szNumber, "%d", pThis->Status.cbResHeapFree / 1024);
     438            WinSetDlgItemText(hwnd, TX_HEAP_RES_FREE_VAL,   szNumber);
     439            sprintf(szNumber, "%d", pThis->Status.cResBlocksUsed);
     440            WinSetDlgItemText(hwnd, TX_HEAP_RES_USED_BLOCKS_VAL,   szNumber);
     441            sprintf(szNumber, "%d", pThis->Status.cResBlocksFree);
     442            WinSetDlgItemText(hwnd, TX_HEAP_RES_FREE_BLOCKS_VAL,   szNumber);
    418443            /* Swappable */
    419444            WinSendDlgItemMsg(hwnd, SB_HEAP_SWP_MAX,        SPBM_SETCURRENTVALUE, (MPARAM)(pThis->Options.cbSwpHeapMax / 1024), NULL);
    420445            sprintf(szNumber, "%d", pThis->Status.cbSwpHeapInit / 1024);
    421446            WinSetDlgItemText(hwnd, TX_HEAP_SWP_INIT_VAL,   szNumber);
     447            sprintf(szNumber, "%d", pThis->Status.cbSwpHeapSize / 1024);
     448            WinSetDlgItemText(hwnd, TX_HEAP_SWP_SIZE_VAL,   szNumber);
    422449            sprintf(szNumber, "%d", pThis->Status.cbSwpHeapUsed / 1024);
    423450            WinSetDlgItemText(hwnd, TX_HEAP_SWP_USED_VAL,   szNumber);
     451            sprintf(szNumber, "%d", pThis->Status.cbSwpHeapFree / 1024);
     452            WinSetDlgItemText(hwnd, TX_HEAP_SWP_FREE_VAL,   szNumber);
     453            sprintf(szNumber, "%d", pThis->Status.cSwpBlocksUsed);
     454            WinSetDlgItemText(hwnd, TX_HEAP_SWP_USED_BLOCKS_VAL,   szNumber);
     455            sprintf(szNumber, "%d", pThis->Status.cSwpBlocksFree);
     456            WinSetDlgItemText(hwnd, TX_HEAP_SWP_FREE_BLOCKS_VAL,   szNumber);
    424457
    425458            pThis->fDirty = FALSE;
     
    664697
    665698
     699/**
     700 * Determin the fixpack+kernel description from build no. and kernel flags.
     701 * @returns     0 on success. Description i szBuffer.
     702 *              -1 on error.
     703 * @param       ulBuild     Kernel build no.
     704 * @param       flKernel    Win32k kernel flags.
     705 * @param       szBuffer    Pointer to buffer
     706 */
     707int GetFixpackDesc(ULONG ulBuild, ULONG flKernel, PSZ pszBuffer)
     708{
     709
     710    pszBuffer[0] = '\0';
     711    if (ulBuild == 9023)
     712        strcpy(pszBuffer, "Warp 4 GA");
     713    else if (ulBuild > 9023 && ulBuild <= 9036)
     714        sprintf(pszBuffer, "Warp 4 FP %d", ulBuild - 9024);
     715    else if (ulBuild == 14039)
     716        strcpy(pszBuffer, "WS4eB GA");
     717    else if (ulBuild == 14040)
     718        strcpy(pszBuffer, flKernel & KF_W4 ? "Warp 4 FP13" : "WS4eB FP1");
     719    else if (ulBuild >= 14041 && ulBuild <= 14046)
     720        strcpy(pszBuffer, "Warp 4 FP14");
     721    else if (ulBuild >= 14048)
     722    {
     723        if (flKernel & KF_W4)
     724            sprintf(pszBuffer, "Warp 4 FP%d", ulBuild - 14049 + 15); //???
     725        else
     726            sprintf(pszBuffer, "WS4eB FP%d", ulBuild - 14048 + 2); //???
     727    }
     728    else if (ulBuild >= 8255 && ulBuild <= 8270)
     729        sprintf(pszBuffer, "Warp 3 FP%d", ulBuild - 8255 + 32);
     730    else
     731        return -1;
     732
     733    /*
     734     * Check type.
     735     */
     736    if (pszBuffer[0] != '\0')
     737    {
     738        char *pszAdd;
     739
     740        if (flKernel & KF_SMP)
     741            pszAdd = "SMP ";
     742        else
     743            pszAdd = " ";
     744        strcpy(pszBuffer + strlen(pszBuffer), pszAdd);
     745
     746        if (flKernel & KF_DEBUG)
     747        {
     748            if (flKernel & KF_HAS_DEBUGTYPE)
     749                pszAdd = (flKernel & KF_ALLSTRICT) ? "(Allstrict)" : "(Halfstrict)";
     750            else
     751                pszAdd = "(Debug)";
     752        }
     753        else
     754            pszAdd = "(Retail)";
     755        strcpy(pszBuffer + strlen(pszBuffer), pszAdd);
     756    }
     757
     758    return 0;
     759}
Note: See TracChangeset for help on using the changeset viewer.