[comp.sys.amiga.tech] How do you restore the CList vector...

pochron@gumby.cs.wisc.edu (David Pochron) (12/01/89)

All this talk reminded me of a question I have had for a while...
I was doing some experimenting with the Copper list and wanted to create
a whole new Copper list (like in the Hardware ref. guide.) That was no
problem, however, when I tried to restore the screen to the original display,
it never came back!  ReThinkDisplay(), et al. doesn't seem to do it, even
opening a new screen doesn't seem to work once I have written directly to
the Copper list vectors.  Does anyone know what structs (and fields) the
lowest-level copper list vectors are stored by the OS which eventually get
written to the hardware copper vectors? It seems the only way to get the
display back is to just re-write them manually after I'm done stealing the
chips.


       -- David M. Pochron  | "Life's a blit,
                            |  and then you VBI."
 pochron@gumby.cs.wisc.edu  |

rogers@iris.ucdavis.edu (Brewski Rogers) (12/01/89)

In article <3909@puff.cs.wisc.edu> pochron@gumby.cs.wisc.edu (David Pochron) writes:
>the Copper list vectors.  Does anyone know what structs (and fields) the
>lowest-level copper list vectors are stored by the OS which eventually get
>written to the hardware copper vectors? It seems the only way to get the
>display back is to just re-write them manually after I'm done stealing the
>chips.
> pochron@gumby.cs.wisc.edu  |

I *think* the right way to do it is:
oldview=GfxBase->ActiView;
...
screw with copper lists...
...
LoadView(oldview);

That's the way I do it, anyhow.


------------------------------------------------------          Quantum _\/_
2727 Eel                   Bruce (6502 RULES!) Rogers        |\  Duck  ( 0 0)
Davis, Ca 95616            Quantum Duck Software,           |\ \______/ / \\\
916-756-2684               rogers@iris.ucdavis.edu         |\ <  <     |   \/
"It's better to be the real thing than the right thing."     \________/  Quark!

userBARD@mts.ucs.UAlberta.CA (Barry Ard) (12/07/89)

In article <6124@ucdavis.ucdavis.edu>, rogers@iris.ucdavis.edu (Brewski Rogers) writes:
>In article <3909@puff.cs.wisc.edu> pochron@gumby.cs.wisc.edu (David Pochron) writes:
>>the Copper list vectors.  Does anyone know what structs (and fields) the
>>lowest-level copper list vectors are stored by the OS which eventually get
>>written to the hardware copper vectors? It seems the only way to get the
>>display back is to just re-write them manually after I'm done stealing the
>>chips.
>> pochron@gumby.cs.wisc.edu  |
>
>I *think* the right way to do it is:
>oldview=GfxBase->ActiView;
>...
>screw with copper lists...
>...
>LoadView(oldview);
>
>That's the way I do it, anyhow.
>
>
>------------------------------------------------------          Quantum _\/_
>2727 Eel                   Bruce (6502 RULES!) Rogers        |\  Duck  ( 0 0)
>Davis, Ca 95616            Quantum Duck Software,           |\ \______/ / \\\
>916-756-2684               rogers@iris.ucdavis.edu         |\ <  <     |   \/
>"It's better to be the real thing than the right thing."     \________/  Quark!
 
I remember doing that but if I hit the AMIGA-m or AMIGA-n key to go
to the Workbench screen I couldn't get back to my screen.
Is there something else that should be done?
--------------------------------------------------------------------------
Barry Ard                     |     usenet:   ..!alberta!uqv-mts!userbard
University Computing Systems  |     inet:     userbard@mts.ucs.ualberta.ca
University of Alberta         |     bitnet:   userbard@ualtamts.bitnet
Edmonton, Alberta             |               bard@ualtavm

rogers@iris.ucdavis.edu (Brewski Rogers) (12/07/89)

In article <681@mts.ucs.UAlberta.CA> userBARD@mts.ucs.UAlberta.CA (Barry Ard) writes:
>In article <6124@ucdavis.ucdavis.edu>, rogers@iris.ucdavis.edu (Brewski Rogers) writes:
>>I *think* the right way to do it is:
>>oldview=GfxBase->ActiView;
>>...
>to the Workbench screen I couldn't get back to my screen.
>Is there something else that should be done?
>--------------------------------------------------------------------------
>Barry Ard                     |     usenet:   ..!alberta!uqv-mts!userbard
>University Computing Systems  |     inet:     userbard@mts.ucs.ualberta.ca
>University of Alberta         |     bitnet:   userbard@ualtamts.bitnet
>Edmonton, Alberta             |               bard@ualtavm

Well, it starts to get kind of pesky at that point. What I do to
keep the screen where it should be is set up a input device handler
and trap AmigaM/N keypresses. 

I wonder if its possible to have a semi-fake screen structure that can't
be dragged, then supplant its copper list with your own. That would
be a slightly easier fix to the AmigaM/N problem. Has anyone tried it?

------------------------------------------------------          Quantum _\/_
2727 Eel                   Bruce (6502 RULES!) Rogers        |\  Duck  ( 0 0)
Davis, Ca 95616            Quantum Duck Software,           |\ \______/ / \\\
916-756-2684               rogers@iris.ucdavis.edu         |\ <  <     |   \/
"I'd hit you, but it wouldn't be senseless enough!"          \________/  Quark!