[Oberon] Hardware driver construction 'capacity building' [3D Acc.]

eas-lab at absamail.co.za eas-lab at absamail.co.za
Tue Jan 21 22:04:51 CET 2003


> > > As for the specs of graphics cards not 
> > > being available, that's only partially true.  
> > > Thanks to Linux the source code for many 
> > > advanced graphics cards such as the NVidia 
> > > chips are freely available.  Now the problem 
> > > is you have to wade through thousands of lines 
> > > of ugly C code just to figure out what could 
> > > have likely been documented in a few pages of 
> > > plane text.  I've downloaded the NVidia code 
> > > myself, but I haven't taken the time
> > > yet to seriously look at it.  Is anyone else
> > > interested?  If BlueBottle had drivers for 
> > > NVidia and ATI chips it would be well 
> > > positioned in the 3D graphics arena.
> > 
> > Thomas Frey wrote:
> > Yes. Currently there are almost only these two 
> > cards around. But writing the driver based
> > on "really ugly" C code can be
> > very arduous. I have no time for this in
> > the foreseeable future.
> 
> John M. Drake wrote:
> I realize that it would be a difficult task and
> I wasn't suggesting you take it on by yourself
> or even at all.  What I meant when I said
> "Is anyone else interested" is "is anyone else
> interesting in joining in the effort as an 
> open source project."  It could be hosted at
> SourceForge.  I would be willing to spearhead
> such a project if there's enough interest.

Well yes, it's uncomfortable translating C code;
but I'm still waiting to hear if it's only me who has pain in
translating between:

Clear Bits 0,1 of s
s -> Port(61H)

   and this monster:

s := s - {0, 1};
SYSTEM.PORTOUT (61H, SYSTEM.VAL(CHAR, s)) 

This is terribly unintuitive !

Also, 
SYSTEM.PORTIN (61H, SYSTEM.VAL(CHAR, s));
seems absurd, since by conventional (and also n-o) syntax,
  SYSTEM.VAL(CHAR, s) must execute before:
SYSTEM.PORTIN (61H, <byte>).

I.e. the 'value' must be converted to 'CHAR type', 
*before* it is obtained/available ?!

Is there a gentle tutorial to introduce this strange syntax.

A colaborative project to 'write hardware drivers in general'
rather than just 3D Acc. is needed.

  Chris Glur.




More information about the Oberon mailing list