Date: Fri, 21 Aug 92 06:46:47 PDT From: dmp3592 AT icdfs DOT boeing DOT com (Dean M. Phillips) To: djgpp AT sun DOT soe DOT clarkson DOT edu, ljo AT r2d2 DOT eeap DOT cwru DOT edu Subject: Re: device memory access speed Your observations concerning speed are not surprising and, in fact, to be expected given the way that the expansion bus is implemented. The ISA (Industry Standard Architecture) expansion bus is a 16 bit bus carried forward from the IBM PC-AT (TM). This bus is generally designed for an effective clock rate of 10MHz. In addition, there is at least one extra set of bus buffers between the processor and the memory on an expansion device (usually about 6nS propagation delay, if I remember right). The fact that it is a 16 bit channel means that a 'long' access requires two 'short' accesses. This is why your implementation using long pointers made no difference. The main RAM in your system is located on the motherboard. It is designed for high speed access. Typical effective clock rates are on the order of 20MHz (this due to the access time of the dynamic RAM plus address decode time plus bus buffers, etc.). In addition, it has a 32 bit data path. Newer bus architectures (like micro channel and EISA) provide for a 32 bit data path to the expansion cards and higher speed operation. My system suffers from the same "brain damage" that yours does. It is the price we pay to use standard expansion cards. ---------------------------------------------------------------------- #include Dean M. Phillips (206) 965-4477 Boeing Commercial Airplane Group dmp3592 AT icdfs DOT boeing DOT com