Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!watcgl!fdfishman From: fdfishman@watcgl.UUCP Newsgroups: comp.sys.amiga Subject: Rapid Stimulus Displaying on the Amiga Help Message-ID: <912@watcgl.UUCP> Date: Sat, 18-Apr-87 12:27:42 EST Article-I.D.: watcgl.912 Posted: Sat Apr 18 12:27:42 1987 Date-Received: Sun, 19-Apr-87 02:54:43 EST Distribution: comp Organization: U of Waterloo, Ontario Lines: 60 Keywords: Fast, Screen, Window, RastPort, etc displays Hi, It is me again. I am still doing some work creating psychology experiments for the university, as part of the experiments I have several questions. 1)In most of the experiments we want to be able to display multiple stimulus "instantly" (by instantly I mean that the image is presented in one screen refresh, 16 milliseconds). We were originally drawing the stimulus on different screens (the stimulus is generally 4 bits) and then doing a ScreenToFront() and this appears to work fine, however, we did some timing experiments and noticed that of we started a timer, did a ScreenToFront(Scr), and then recorded the time we got variable times. i.e. for (loop = 0; loop < 100; loop++) { Start8520Timer(); ScreenToFront(Scr); Time[loop] = Get8520Time(); Stop8520Timer(); } The times were something like 0, 16 (acceptable), 21, 42, and sometimes really large numbers. On further testing we noticed that if we replace the ScreenToFront() with WaitTOF() we get the same results (makes sense since ScreenToFront() calls WaitTOF() ) but we noticed that if we did a WaitBOVP(Scr) we got a nice constant 0 or 16 ms (which is good). Further we tried using both the 8520A and the 8520B chips to do the timing (we require a ms grain). Now my question is, what is not working, the timer routine or WaitTOF() and can either be fixed. 2)We also tried to use the WindowToFront(), but this does not appear to be "Instant", since we could see each plane get copied, and we get a fade in effect (I actually like the effect but for an experiment it does not work), I figured that I could solve this problem by defining the windows as SuperBitMap windows, but alas, it works for small windows, but for larger windows we still see see the fade in (It might be noted that I still have free chipmemory after opening all the windows). So my question is, is it possible to make a Window raise "instantly"? Also on this note I noticed that when you do a WindowToFront it returns within a ms, is this because a WindowToFront is done in the background? 3)Something else we played with was to exchange pointers, so we tried exchanging, bitmaps, rasterports, viewports, of screens and windows, but could not seem to get the displayed data to change, is it possible to do a screen to front in this manner? And if so how? As a note: we tried putting Forbids() and Disables() all through the code with not changed results. -The timer is the same one I posted to the net half a year ago. ----------------------------------------------------------------------------- Now on a personal note, Leo posted a program called ing to the net awhile ago which required a program heapmem.o to compile, what is heapmem and where could I find a copy of it. And since I am here anyways, I would like to thank everyone on the net for the information and the toys that have been posted on the net. -- FDFISHMAN (Flynn D. Fishman) @ WATCGL (but you can call me Flynn) UUCP : ...!{decvax|ihnp4|clyde|allegra|utzoo}!watmath!watcgl!fdfishman ARPA : fdfishman%watcgl%waterloo.csnet@csnet-relay.arpa2 CSNET : fdfishman%watcgl@waterloo.csnet