List of DevHlp Functions
Appearance
DevHlp function names with request code
| Function Name | Code | Description | Notes |
|---|---|---|---|
| DevHlp_SchedClock | 0x0 | Called each timer tick | |
| DevHlp_DevDone | 0x1 | Device I/O complete | |
| DevHlp_Yield | 0x2 | Yield CPU if resched set | |
| DevHlp_TCYield | 0x3 | Yield to time critical task | |
| DevHlp_ProcBlock | 0x4 | Block on event | |
| DevHlp_ProcRun | 0x5 | Unblock process | |
| DevHlp_SemRequest | 0x6 | Claim a semaphore | |
| DevHlp_SemClear | 0x7 | Release a semaphore | |
| DevHlp_SemHandle | 0x8 | Obtain a semaphore handle | |
| DevHlp_PushRequest | 0x9 | Push the request | |
| DevHlp_PullRequest | 0xA | Pull next request from Q | |
| DevHlp_PullParticular | 0xB | Pull a specific request | |
| DevHlp_SortRequest | 0xC | Push request in sorted order | |
| DevHlp_AllocReqPacket | 0xD | Allocate request packet | |
| DevHlp_FreeReqPacket | 0xE | free request packet | |
| DevHlp_QueueInit | 0xF | Init/Clear char queue | |
| DevHlp_QueueFlush | 0x10 | flush queue | |
| DevHlp_QueueWrite | 0x11 | Put a char in the queue | |
| DevHlp_QueueRead | 0x12 | Get a char from the queue | |
| DevHlp_Lock | 0x13 | Lock segment | |
| DevHlp_Unlock | 0x14 | Unlock segment | |
| DevHlp_PhysToVirt | 0x15 | Convert physical address to virtual | |
| DevHlp_VirtToPhys | 0x16 | Convert virtual address to physical | |
| DevHlp_PhysToUVirt | 0x17 | Convert physical to LDT | |
| DevHlp_AllocPhys | 0x18 | Allocate physical memory | |
| DevHlp_FreePhys | 0x19 | Free physical memory | |
| DevHlp_SetROMVector | 0x1A | Set a ROM service routine vector | |
| DevHlp_SetIRQ | 0x1B | Set an IRQ interrupt | |
| DevHlp_UnSetIRQ | 0x1C | Unset an IRQ interrupt | |
| DevHlp_SetTimer | 0x1D | Set timer request handler | |
| DevHlp_ResetTimer | 0x1E | Unset timer request handler | |
| DevHlp_MonitorCreate | 0x1F | Create a monitor | |
| DevHlp_Register | 0x20 | Install a monitor | |
| DevHlp_DeRegister | 0x21 | Remove a monitor | |
| DevHlp_MonWrite | 0x22 | pass data records to monitor | |
| DevHlp_MonFlush | 0x23 | remove all data from stream | |
| DevHlp_GetDOSVar | 0x24 | Return pointer to DOS variable | |
| DevHlp_SendEvent | 0x25 | an event occurred | |
| DevHlp_ROMCritSection | 0x26 | ROM Critical Section | |
| DevHlp_VerifyAccess | 0x27 | Verify access to memory | |
| DevHlp_RAS | 0x28 | Put info in RAS trace buffer | |
| DevHlp_ABIOSGetParms | 0x29 | Get ABIOS Calling Parameters | |
| DevHlp_AttachDD | 0x2A | Attach to a device driver | |
| DevHlp_InternalError | 0x2B | Signal an internal error | |
| DevHlp_ModifyPriority | 0x2C | Undocumented (used by PM) | |
| DevHlp_AllocGDTSelector | 0x2D | Allocate GDT Selectors | |
| DevHlp_PhysToGDTSelector | 0x2E | Convert physical address to GDT selector | |
| DevHlp_RealToProt | 0x2F | Change from real to protected mode | |
| DevHlp_ProtToReal | 0x30 | Change from protected to real mode | |
| DevHlp_EOI | 0x31 | Send EOI to PIC | |
| DevHlp_UnPhysToVirt | 0x32 | Mark completion of PhysToVirt | |
| DevHlp_TickCount | 0x33 | Modify timer | |
| DevHlp_GetLIDEntry | 0x34 | Obtain Logical ID | |
| DevHlp_FreeLIDEntry | 0x35 | Release Logical ID | |
| DevHlp_ABIOSCall | 0x36 | Call ABIOS | |
| DevHlp_ABIOSCommonEntry | 0x37 | Invoke Common Entry Point | |
| DevHlp_GetDeviceBlock | 0x38 | Get ABIOS Device Block | |
| DevHlp_RegisterStackUsag | 0x3A | Register for stack usage | |
| DevHlp_LogEntry | 0x3B | Place data in log buffer | |
| DevHlp_VideoPause | 0x3C | Video pause on/off | |
| DevHlp_Save_Message | 0x3D | Save message in SysInit Message Table | |
| DevHlp_SegRealloc | 0x3E | Realloc DD protect mode segment | |
| DevHlp_PutWaitingQueue | 0x3F | Put I/O request on waiting queue | |
| DevHlp_GetWaitingQueue | 0x40 | Get I/O request from waiting queue | |
| DevHlp_PhysToSys | 0x41 | Address conversion for the AOX | |
| DevHlp_PhysToSysHook | 0x42 | Address conversion for the AOX | |
| DevHlp_RegisterDeviceClass | 0x43 | Register DC entry point | |
| DevHlp_Sec | 0x44 | Register Security table | |
| DevHlp_PerfSysTrace | 0x45 | Put info in performance trace buffer | |
| DevHlp_RegisterPDD | 0x50 | Register PDD entry point with VDM manager for later PDD-VDD communication | |
| DevHlp_RegisterBeep | 0x51 | register PTD beep service entry point with kernel | |
| DevHlp_Beep | 0x52 | preempt beep service via PTD | |
| DevHlp_FreeGDTSelector | 0x53 | Free allocated GDT selector | |
| DevHlp_PhysToGDTSel | 0x54 | Convert Phys Addr to GDT sel with given access | |
| DevHlp_VMLock | 0x55 | Lock linear address range | |
| DevHlp_VMUnlock | 0x56 | Unlock address range | |
| DevHlp_VMAlloc | 0x56 | Allocate memory | |
| DevHlp_VMFree | 0x58 | Free memory or mapping | |
| DevHlp_VMProcessToGlobal | 0x59 | Create global mapping to process memory | |
| DevHlp_VMGlobalToProcess | 0x5A | Create process mapping to global memory | |
| DevHlp_VirtToLin | 0x5B | Convert virtual address to linear | |
| DevHlp_LinToGDTSelector | 0x5C | Convert linear address to virtual | |
| DevHlp_GetDescInfo | 0x5D | Return descriptor information | |
| DevHlp_LinToPageList | 0x5E | build pagelist array from linear address | |
| DevHlp_PageListToLin | 0x5F | map page list array to linear address | |
| DevHlp_PageListToGDTSelector | 0x60 | map page list array to GDT selector | |
| DevHlp_RegisterTmrDD | 0x61 | Register TMR Device Driver | |
| DevHlp_RegisterPerfCtrs | 0x62 | Register device driver perf. ctrs (PVW) | |
| DevHlp_AllocateCtxHook | 0x63 | Allocate a context hook | |
| DevHlp_FreeCtxHook | 0x64 | Free a context hook | |
| DevHlp_ArmCtxHook | 0x65 | Arm a context hook | |
| DevHlp_VMSetMem | 0x66 | commit/decommit memory | |
| DevHlp_OpenEventSem | 0x67 | Open an event semaphore | |
| DevHlp_CloseEventSem | 0x68 | Close an event semaphore | |
| DevHlp_PostEventSem | 0x69 | post an event semaphore | |
| DevHlp_ResetEventSem | 0x6A | Reset an event semaphore | |
| DevHlp_RegisterFreq | 0x6B | Register PTD freq service entry point with kernel | |
| DevHlp_DynamicAPI | 0x6C | Add a dynamic API | |
| DevHlp_ProcRun2 | 0x6D | Unblock process via procrun2 | |
| DevHlp_CreateInt13VDM | 0x6E | Create Int13 VDM (Internal Only) OEMINT13 | |
| DevHlp_RegisterKrnlExit | 0x6F | Used to capture Kernel Exits F78693 | |
| DevHlp_PMPostEventSem | 0x70 | PM Post Event Semaphore | |
| DevHlp_AcquireSpinLock | 0x71 | acquire Spin Lock | SMP only |
| DevHlp_ReleaseSpinLock | 0x72 | release Spin Lock | SMP only |
| DevHlp_InitIntMouseCursorData | 0x73 | Initialize Mouse/Cursor Data | SMP only |
| DevHlp_StartIntMouseCursor | 0x74 | Start Int Time Mouse/Cursor | SMP only |
| DevHlp_EndIntMouseCursor | 0x75 | End Int Time Mouse/Cursor | SMP only |
| DevHlp_Port_IO | 0x76 | Port I/O | SMP only |
| DevHlp_SetIRQMask | 0x77 | Set/Unset an IRQ Mask | SMP only |
| DevHlp_GetIRQMask | 0x78 | Retrieve an IRQ Mask state | SMP only |
| DevHlp_CreateSpinLock | 0x79 | Create Spin Lock | SMP only |
| DevHlp_FreeSpinLock | 0x7A | Free Spin Lock | SMP only |
| DevHlp_KillProc | 0x7D | Kill Proc | |
| DevHlp_QSysState | 0x7E | Query System State | |
| DevHlp_OpenFile | 0x7F | Ring-0 File system Write | |
| DevHlp_CloseFile | 0x80 | Ring-0 File system Seek | |
| DevHlp_ReadFile | 0x81 | Ring-0 File system Read | |
| DevHlp_ReadFileAt | 0x82 | File system Read at (seek) | |
| DevHlp_RegisterKDD | 0x83 | Register driver with kernel debugger |