Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uunet!cs.utexas.edu!usc!sdsu!ucsd!helios.ee.lbl.gov!pasteur!cory.Berkeley.EDU!soohoo From: soohoo@cory.Berkeley.EDU (Ken "nmi" Soohoo) Newsgroups: comp.sys.atari.st Subject: Re: Physbase vs Logbase Keywords: VDI, Logbase Message-ID: <21054@pasteur.Berkeley.EDU> Date: 9 Jan 90 16:18:02 GMT References: <19900107151543.2.JRD@CORD.SCRC.Symbolics.COM> Sender: news@pasteur.Berkeley.EDU Reply-To: soohoo@cory.Berkeley.EDU.UUCP (Ken "nmi" Soohoo) Organization: University of California, Berkeley Lines: 31 In article <19900107151543.2.JRD@CORD.SCRC.Symbolics.COM> jrd@STONY-BROOK.SCRC.SYMBOLICS.COM (John R. Dunning) writes: >Can anyone tell me what's the difference between Physbase() and >Logbase()? When can I expect them to be the same/different? > >Thanks in advance... jrd, These are the same under normal operation, but they _mean_ the following: char *Physbase() returns the actual location of the screen in memory, where the display hardware goes looking for screen data when it wants to draw the screen. Note that you can set the Physbase with certain alignment restrictions on the ST, but in the STE and TT these restrictions (page boundries I believe) have been lifted. char *Logbase() returns what the VDI thinks is the screen location in memory, which, under normal operation, will be exactly the same as Physbase. It's useful to change Physbase so that you can build your screen on the side (without the user seeing the drawing in action), and then flip the screens to show the user a completely new screen. So, for page flipping for animation, you'd be using Setscreen(log,phy,res) with res set to -1 to indicate no change, and log and phy set appropriately to draw to one virtual screen, and look at another, and look at a new one and draw to the old... Hope this helps! --Kenneth "kens" Soohoo (soohoo@cory.Berkeley.Edu) Atari Hacker (Atari's Hacker...) "It could be worse, you could get hit by a bus..." My opinions are my OWN, _not_ necessarily Atari's. But "hey", who knows?