Index: [thread] [date] [subject] [author]
  From: Hartmut Niemann <niemann@cip.e-technik.uni-erlangen.de>
  To  : ggi-develop@eskimo.com
  Date: Mon, 22 Feb 1999 12:37:57 +0100 (MEZ)

Re: RFC: Abstract register handling in KGI

Hi!
This new scheme looks very interesting. Some random comments:

1) Registers need to be flagged 'volatile', if necessary,
and IMHO all registers that won't change under you should never be
read outs, but shadowed in RAM and only written. 

2) IIRC correctly, the Millennium and friends can be switched between 
little and big endian, correct?
Does that hold true for all recent adapters that are used on LE and BE machines?
In this case, we should assume machine byte order for speed reasons.
Registers that have reverse byte order are treated like virtual registers.

3) Many VGA registers (e.g. dots per line) are spread out over
several physical register (bits 0..6 are bits 1..7 of 0x345, bits
7..8 are bits 4 and 5 of 0x365 ... you know it). This is so common 
in the VGA, that we should represent it in the data structure, and not
write custom write and read functions. Bigendian registers on little endian
systems can be treated like this as well. AFIAK this is normally not
speed critical, as this part of the VGA engine is used for mode setting only.
--  
Hartmut Niemann   --   niemann(a)cip.e-technik.uni-erlangen.de
http://cip2.e-technik.uni-erlangen.de:8080/hyplan/niemann/index_en.html [/ggi]

Index: [thread] [date] [subject] [author]