KdpSysWriteIoSpace

NTSTATUS __stdcall KdpSysWriteIoSpace(
        INTERFACE_TYPE InterfaceType,
        UINT64 BusNumber,
        UINT64 AddressSpace,
        UINT64 Address,
        PVOID Buffer,
        UINT64 Request,
        UINT64 *Actual){
  NTSTATUS v7; 
  v7 = 0;
  if( InterfaceType == Isa && !(_DWORD)BusNumber && (_DWORD)AddressSpace == 1 )
  {
    switch( (_DWORD)Request )
    {
      case 1:
        __outbyte(Address, *(_BYTE *)Buffer);
        *(_DWORD *)Actual = 1;
        return v7;
      case 2:
        if( (Address & 1) == 0 )
        {
          __outword(Address, *(_WORD *)Buffer);
          *(_DWORD *)Actual = 2;
          return v7;
        }
        break;
      case 4:
        if( (Address & 3) == 0 )
        {
          __outdword(Address, *(_DWORD *)Buffer);
          *(_DWORD *)Actual = 4;
          return v7;
        }
        break;
      default:
        v7 = -1073741811;
        *(_DWORD *)Actual = 0;
        return v7;
    }
    return -2147483646;
  }
  *(_DWORD *)Actual = 0;
  return -1073741823;
}

Referenced by:

KdSystemDebugControl
KdpSendWaitContinue