🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.ti.explorer
Article #170

various low-level grunging about

#170
From: Jamie Zawinski
Date: Sun, 10 Dec 1989 08:16
36 lines
2175 bytes
Is there any way to do real double-buffering on the Explorer?

I could draw on an array and then blit it to the window, but without a
hardware blitter, this is a real lose.  Screen-arrays are displaced to a 
physical address so that writing into a screen-array writes to NuBus, where 
I assume the display hardware loops for each scanline.  What I want is to
change the address from which the display hardware reads (hopefully in synch
with vertical blanking).  Any chance?  Any chance at all..?


Ok, now try not to gag, but...  I want to walk through paged-in memory.  
So I want to do something like

	(dotimes (page-frame-number (1- (pages-of-physical-memory)))
	  (without-interrupts
	    (let* ((vpn (%virtual-page-number page-frame-number)))
	      ( ...iterate over region-ids on this page...
	        (map-objects-in-region ... )))))

How do I find out what regions are in a page?  I realize this is a horribly
evil thing to want to do, but I'm playing with this extremely unportable but
quite entertaining graphics hack which relies on pulling random strings out of
memory.  I'd rather pick them out of paged-in memory than all of vmem, because
picking a random area and then a random region in it (the way it does it now) 
causes it to thrash rather heroically.

(I'm also being confounded by the fact that map-objects sometimes gets an
error, because GC occasionally leaves cdr-error's before the free-pointer.
And more recently I've discovered that %structure-size-safe can illop even
when called only on things returned by %find-structure-header-safe.  Not
an error, mind you, which I'm prepared to ignore; it goes belly up.)

"What good's a program that can't modify itself?"

		#.Jamie
Technical Details
Message-ID: <20522@pasteur.Berkeley.EDU>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!cs.utexas.edu!usc!apple!genbank!ames!pasteur!jwz@teak.berkeley.edu

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!cs.utexas.edu!usc!apple!genbank!ames!pasteur!jwz@teak.berkeley.edu
From: jwz@teak.berkeley.edu (Jamie Zawinski)
Newsgroups: comp.sys.ti.explorer
Subject: various low-level grunging about
Message-ID: <20522@pasteur.Berkeley.EDU>
Date: 10 Dec 89 08:16:00 GMT
Sender: news@pasteur.Berkeley.EDU
Organization: University of California at Berkeley
Lines: 36