You can emulate that in std_logic with a single driver
driving an "H"
 (the "pull-up"), and everyone else drives either "0" or
"Z". 
 Yes. You can write that. But the synthesis tool - if it eats that -
 will generate
 many ORs... So avoid it. In the company I have worked a bit for, MANY
 constructs
 were simply forbidden. Thinks like Z, H, L in std_logic are suspicious
 :-) 
 
 What you say is true for FPGA-internal signals but the output drivers
 _can_ be switched to high-impedance.
 The open-collector driver you were asking about originally can be
 emulated by assigning "Z" directly to the IOB, switching it to high-z.
 That will only work if the signal you use is routed directly to the IOB
 => use only in top level entity to be sure. 
 Yes, of course... IOBs can also be
controlled "manually" using the output enable...
The discussion was about the on-chip (!!) wiring of the OMNIBUS. the original OMNIBUS is
an
open collector thing.
Ph :-)
--