+
+void _OutByte(tUHCI_Controller *Host, int Reg, Uint8 Value)
+{
+ if( Host->MemIOMap )
+ ((Uint8*)Host->MemIOMap)[Reg] = Value;
+ else
+ outb(Host->IOBase + Reg, Value);
+}
+
+void _OutWord(tUHCI_Controller *Host, int Reg, Uint16 Value)
+{
+ if( Host->MemIOMap )
+ Host->MemIOMap[Reg/2] = Value;
+ else
+ outw(Host->IOBase + Reg, Value);
+}
+
+void _OutDWord(tUHCI_Controller *Host, int Reg, Uint32 Value)
+{
+ if( Host->MemIOMap )
+ ((Uint32*)Host->MemIOMap)[Reg/4] = Value;
+ else
+ outd(Host->IOBase + Reg, Value);
+}
+
+Uint16 _InWord(tUHCI_Controller *Host, int Reg)
+{
+ if( Host->MemIOMap )
+ return Host->MemIOMap[Reg/2];
+ else
+ return inw(Host->IOBase + Reg);
+}
+