[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: accessing video cards
- To: allenb@cs.uoregon.edu
- Subject: Re: accessing video cards
- From: Bill St. Clair <bill>
- Date: Wed, 06 Mar 91 15:27:19 -0500
- Cc: info-macl@cambridge.apple.com
- In-reply-to: Your message of Wed, 06 Mar 91 10:27:50 -0800. <9103061827.AA28147@comix.cs.uoregon.edu.cs.uoregon.edu>
Date: Wed, 6 Mar 91 10:27:50 PST
From: allenb@cs.uoregon.edu
To: info-macl@cambridge.apple.com
Subject: accessing video cards
I am trying to write directly into video memory from lisp. When I
get the baseaddr from the gdevice record it returns a large negative
number rather than a pointer. I presume that this is because Lisp
does not recognize 32 bit addresses. Does anyone know how to coerce
this number into an address that will allow me to do block moves to
the video card?
Fixnums in MCL 1.3 are the only Lisp objects with the sign bit set.
Hence, an address in the upper half of the Mac's address space appears
to Lisp to be a fixnum. If you ignore this fact and use the apparent
fixnum as an address all should be well. Very little, if any, type
checking is done on arguments to traps or %GET-PTR and friends.