
Input/Output Systems and
Peripheral Devices
Laboratory Sessions (2024/2025)
No. |
Week | Topic | Documentation |
1 | 24.02 - 28.02 | Serial Port (I) |
![]() |
2 | 03.03 - 07.03 | Serial Port (II) |
![]() |
3 | 10.03 - 14.03 | PCI Express Bus (I) | |
4 | 17.03 - 21.03 | PCI Express Bus (II) | |
5 | 24.03 - 28.03 | System Management Bus (I) | |
6 | 31.03 - 04.04 | System Management Bus (II) | |
7 | 07.04 - 11.04 | Universal Serial Bus (I) | |
8 | 14.04 - 18.04 | Universal Serial Bus (II) | |
9 | 28.04 - 02.05 | Printers | |
10 | 05.05 - 09.05 | Small Computer System Interface | |
11 | 12.05 - 16.05 | ATA Interface | |
12 | 19.05 - 23.05 | Compact Discs. ATA Packet Interface (I) | |
13 | 26.05 - 30.05 | Compact Discs. ATA Packet Interface (II) | |
14 | 02.06 - 06.06 | Laboratory Colloquy | |
Resources for the Laboratory
General Resources
TestCom1DT-e: Example Windows application for testing the existence of the COM1 serial port; the DrawText function is used for displaying the contents of the application window ![]() |
TestCom1TO-e: Example Windows application for testing the existence of the COM1 serial port; the TextOut function is used for displaying the contents of the application window ![]() |
AppScroll-e: Example Windows application with vertical scroll bar; the TextOut function is used for displaying the contents of the application window ![]() |
Menu-e: Example Windows application with menus![]() |
Dialog-e: Example Windows application with menus and dialog boxes![]() |
GetText-e: Example for reading the text from an editing window![]() |
The WinIo v3.0 driver for accessing I/O ports under the Windows operating systems (Yariv Kaplan, 2010, http://www.internals.com) ![]() |
TestPort-e: Example application to illustrate I/O port accesses under the Windows operating systems ![]() |
PortAccess-e: Example to illustrate access to ports by setting the I/O permission bitmap![]() |
Serial Port
ComDef-e.h: Definition file for the serial port![]() |
Craig Peacock, Interfacing the Serial / RS232 Port, V5.0, Beyond Logic, 2005![]() ![]() ![]() |
PCI Express Bus
PCI-e.zip: The PCI-e.h, PCI-vendor-dev.h, and PciBaseAddressUEFI-e.cpp files for the PCIe bus![]() |
pci.ids: PCI IDs of vendors, devices, and subsystems (© The PCI ID Repository)![]() |
System Management Bus
SMBus-e.zip: The SMBus-e.h file for the System Management Bus![]() |
SPD-e.zip: The SPD-e.h file for decoding the contents of an SPD memory, version 1.0 (for the laboratory computers) ![]() |
SPDv12-e.zip: The SPDv12-e.h file for decoding the contents of an SPD memory, version 1.2![]() |
Universal Serial Bus
HID8.1.zip: Files from the Windows Driver Kit (WDK) package, version 8.1![]() |
Printers
Printers.zip: Header files and LIB file for the printer applications ![]() |
Small Computer System Interface
Adaptec, Inc., ASPI for Win32 Technical Reference, 2001,
http://www.zianet.com/jgray/dat/files/ASPI32.pdf.![]() |
WNASPI32.zip: The wnaspi32.dll library and definition files for the ASPI programming interface![]() |
American National Standard of X3T10 Technical Committee of Accredited Standards Committee X3, SCSI-3 Primary Commands, X3T10 995D, Revision 10, 1996. ![]() |
American National Standard of X3T10 Technical Committee of Accredited Standards Committee X3, Information Technology - SCSI-3 Multimedia Commands, X3T10 1048D, Revision 10A, 1997. ![]() |
ATA/ATAPI Interface
ATA-ATAPI-e.zip: The ATA-ATAPI.h and PciBaseAddressUEFI-e.cpp files for the ATA and ATAPI interfaces![]() |
American National Standard of Accredited Standards Committee INCITS, AT Attachment with Packet Interface - 7, Volume 1 - Register Delivered Command Set, Logical Register Set, T13 Project 1532D Volume 1, Revision 4b, 2004, http://www.t10.org/t13/docs2004/d1532v1r4b-ATA-ATAPI-7.pdf . ![]() |
American National Standard of Accredited Standards Committee INCITS, AT Attachment with Packet Interface - 7, Volume 2 - Parallel Transport Protocols and Physical Interconnect, T13 Project 1532D Volume 2, Revision 4b, 2004, http://www.t10.org/t13/docs2004/d1532v2r4b-ATA-ATAPI-7.pdf . ![]() |
American National Standard of Accredited Standards Committee INCITS, AT Attachment with Packet Interface - 7, Volume 3 - Serial Transport Protocols and Physical Interconnect, T13 Project 1532D Volume 3, Revision 4b, 2004, http://www.t10.org/t13/docs2004/d1532v3r4b-ATA-ATAPI-7.pdf . ![]() |
Parallel Port
LptDef-e.h: Definitions file for the parallel port![]() |
Craig Peacock, Interfacing the Standard Parallel Port, Beyond Logic, 2005![]() ![]() |
Craig Peacock, Interfacing the Enhanced Parallel Port, Beyond Logic, 2005![]() ![]() |
Craig Peacock, Interfacing the Extended Capabilities Port, Beyond Logic, 2005![]() ![]() |
Specifications of the ECP port, version 1.06, Microsoft Corp., 1995![]() |
Keyboard
Adam Chapweske, The PS/2 Keyboard Interface, 2003, http://www.computer-engineering.org/ps2keyboard/ ![]() |
Adam Chapweske, The PS/2 Mouse/Keyboard Protocol, 2003, http://www.computer-engineering.org/ps2protocol/ |
Adam Chapweske, Keyboard Scan Codes: Set 1, |
Adam Chapweske, Keyboard Scan Codes: Set 2, http://www.computer-engineering.org/ps2keyboard/scancodes2.html ![]() |
Updated: February 21, 2025