The I/O port access is done by the inport and outport functions. It's not necessary to use these functions but it makes life easier. Free Pascal doesn't support the PORT array, as under Turbo Pascal.