VirtualBox

Ignore:
Timestamp:
Mar 10, 2009 10:14:15 AM (16 years ago)
Author:
vboxsync
Message:

HGSMI for the graphics device: the windows guest display driver prototype code.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Display/enable.c

    r16615 r17610  
    130130        ULONG ret = 0;
    131131
     132#ifndef VBOX_WITH_HGSMI
    132133        if (ppdev && ppdev->pInfo && vboxHwBufferBeginUpdate (ppdev))
    133134        {
     
    142143        else
    143144            DISPDBG((0, "VBOXESC_ISVRDPACTIVE -> 0\n"));
     145#else
     146        if (ppdev && ppdev->pVBVA)
     147        {
     148            if (ppdev->pVBVA->u32HostEvents & VBVA_F_MODE_VRDP)
     149            {
     150                ret = 1;
     151            }
     152            DISPDBG((0, "VBOXESC_ISVRDPACTIVE -> %d (%x)\n", ret, ppdev->pVBVA->u32HostEvents));
     153        }
     154        else
     155            DISPDBG((0, "VBOXESC_ISVRDPACTIVE -> 0\n"));
     156#endif  /* VBOX_WITH_HGSMI */
    144157        return ret;
    145158    }
     
    274287    {   INDEX_DrvStrokePath,            (PFN) DrvStrokePath         },  // 14 0xe
    275288    {   INDEX_DrvFillPath,              (PFN) DrvFillPath           },  // 15 0xf
     289//    {   INDEX_DrvStrokeAndFillPath,     (PFN) DrvStrokeAndFillPath  },        // 16 0x10
    276290    {   INDEX_DrvPaint,                 (PFN) DrvPaint              },  // 17 0x11
    277291    {   INDEX_DrvBitBlt,                (PFN) DrvBitBlt             },  // 18 0x12
     
    316330#define HOOKS_BMF32BPP gflHooks
    317331
     332#ifndef VBOX_WITH_HGSMI
    318333HSEMAPHORE ghsemHwBuffer = 0;
     334#endif /* !VBOX_WITH_HGSMI */
    319335
    320336/******************************Public*Routine******************************\
     
    336352    // Set up hook flags to intercept all functions which can generate VRDP orders
    337353    gflHooks = HOOK_BITBLT | HOOK_TEXTOUT | HOOK_FILLPATH |
    338                HOOK_COPYBITS | HOOK_STROKEPATH | HOOK_LINETO |
     354               HOOK_COPYBITS | HOOK_STROKEPATH | HOOK_LINETO | /* HOOK_STROKEANDFILLPATH | */
    339355#ifdef VBOX_NEW_SURFACE_CODE
    340356               HOOK_PAINT | HOOK_STRETCHBLT | HOOK_SYNCHRONIZE;
     
    367383            DDI_DRIVER_VERSION_NT4;
    368384
     385#ifndef VBOX_WITH_HGSMI
    369386    if (!ghsemHwBuffer)
    370387    {
    371388        ghsemHwBuffer = EngCreateSemaphore ();
    372389    }
     390#endif /* !VBOX_WITH_HGSMI */
    373391
    374392    return(TRUE);
     
    387405    DISPDBG((0, "VBoxDisp::DrvDisableDriver called.\n"));
    388406
     407#ifndef VBOX_WITH_HGSMI
    389408    if (ghsemHwBuffer)
    390409    {
     
    392411        ghsemHwBuffer = NULL;
    393412    }
     413#endif /* !VBOX_WITH_HGSMI */
    394414
    395415    return;
     
    11281148        case DN_DEVICE_ORIGIN:
    11291149            ppdev->ptlDevOrg = *(PPOINTL)pvData;
     1150#ifndef VBOX_WITH_HGSMI
    11301151            DISPDBG((3, "DN_DEVICE_ORIGIN: %d, %d (PSO = %p, pInfo = %p)\n", ppdev->ptlDevOrg.x,
    11311152                     ppdev->ptlDevOrg.y, pso, ppdev->pInfo));
     
    11361157                VBoxProcessDisplayInfo(ppdev);
    11371158            }
     1159#else
     1160            DISPDBG((3, "DN_DEVICE_ORIGIN: %d, %d (PSO = %p)\n", ppdev->ptlDevOrg.x,
     1161                     ppdev->ptlDevOrg.y, pso));
     1162            if (ppdev->bHGSMISupported)
     1163            {
     1164                VBoxProcessDisplayInfo(ppdev);
     1165            }
     1166#endif /* VBOX_WITH_HGSMI */
    11381167            break;
    11391168        case DN_DRAWING_BEGIN:
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette