[comp.sys.mac] 'Virtual Monitors'

alien@cpoint.UUCP (Alien Wells) (01/04/90)

In article <9191@cbmvax.commodore.com> daveh@cbmvax.commodore.com (Dave Haynie) writes:
>...  The Amiga's Intuition interface has a feature that's more
>like what I'd think of as virtual monitors -- it can support any number of
>separate monitor displays on a single monitor, via kind of a superwindow
>called a Screen.  Any number of windows live on each screen; screens don't
>overlap each other, windows do.  This is really useful for avoiding excessive 
>numbers of windows on the single screen most WIMP interfaces provide (even if 
>that single screen can spread across multiple physical monitors).  Does the 
>Mac OS allow anything like this under Multifinder?  It probably should.

Actually, the main 'reason' for amiga screens is the fact that if you want to 
control the color registers or screen resolution you have to have your own 
area of the monitor which is vertically tiled (ie: doesn't overlap horizontally
with anyone with a different color register set or screen resolution mode).  
This seems much more applicable to PC systems with their CGA/EGA/VGA/8514A 
graphics cards than the mac which concentrates on the pixel plane depth.

I will grant you that separate screens can give you a certain organization 
and functional grouping of your windows, but amiga screens are a cludgy way
to implement it.  If I wanted to do something similar for the mac, I would
make a type of desktop-window that contained a desktop.  Clicking on the 
desktop-window would activate that desktop.  The desktop-window would be a 
scrollable, sizeable window on the desktop (and thus eliminate screen-size 
restrictions on the desktop).  You could then have as many desktops as you 
want, and size/place/overlap them to your heart's content.
-- 
--------|	Rest assured that a walk through the ocean of most souls
Alien   |   		would scarcely get your feet wet.	- Deteriorata
--------|     decvax!frog!cpoint!alien      bu-cs!mirror!frog!cpoint!alien

uzun@pnet01.cts.com (Roger Uzun) (01/05/90)

>>Amigas way of organizing screens/windows is kludgey, I would create
>>a desktop window that...

Having developed several commercial applications on both the Amiga and
Mac II computers, I must say that the amigas way of doing things is
MUCH more flexible and, in my opinion, preferable to setting up a desktop
window as the last poster eluded too.  You CAN do this on the Amiga no
problem, what you cannot do on the Mac II is create custom screens with
your preferred resolution (up to about 710X490).  For the programmer, the
amigas way of doing this is MUCH more flexible.  For one it allows you to save
a lot of memory on systems with less memory equipped, since you can choose a
lower resolution screen in this case.  Admittedly for the mac II audience,
this is not much of a problem since everyone is assumed to have a lot of
memory, but at least the Amiga gives the developer a choice.
 

UUCP: {hplabs!hp-sdd ucsd nosc}!crash!pnet01!uzun
ARPA: crash!pnet01!uzun@nosc.mil
INET: uzun@pnet01.cts.com

lsr@Apple.COM (Larry Rosenstein) (01/05/90)

In article <1086@crash.cts.com> uzun@pnet01.cts.com (Roger Uzun) writes:

> your preferred resolution (up to about 710X490).  For the programmer, the
> amigas way of doing this is MUCH more flexible.  For one it allows you 
to save
>a lot of memory on systems with less memory equipped, since you can 
choose a
>lower resolution screen in this case.  Admittedly for the mac II audience,

It turns out that the Macintosh architecture doesn't really waste any RAM 
(except on the Mac IIci).  That's because the video RAM is on the graphics 
card, and isn't used for program storage.  The Mac IIci is the first 
machine which can use program RAM for video, and if a user is using the 
builtin video then s/he can save RAM by using a smaller screen depth.

Also, your statement implies that the program chooses the display mode for 
its windows, while the Macintosh puts that capability under the user's 
control.  (Where it belongs IMHO.)  

For the most part applications don't have to worry about what screen depth 
the user has, because Color QuickDraw automatically handles it.  To me, 
that seems easier for the programmer.

Larry Rosenstein, Apple Computer, Inc.
Object Specialist

Internet: lsr@Apple.com   UUCP: {nsc, sun}!apple!lsr
AppleLink: Rosenstein1

portuesi@tweezers.esd.sgi.com (Michael Portuesi) (01/05/90)

>>>>> On 5 Jan 90 16:59:39 GMT, matthews@eleazar.dartmouth.edu (Jim Matthews) said:

jim> In article <1086@crash.cts.com> uzun@pnet01.cts.com (Roger Uzun) writes:
>  You CAN do this on the Amiga no
>problem, what you cannot do on the Mac II is create custom screens with
>your preferred resolution (up to about 710X490).  For the programmer, the
>amigas way of doing this is MUCH more flexible.

jim> This flexibility violates the spirit of a multitasking OS.  A program
jim> shouldn't be able to unilaterally modify the appearance of another
jim> program's window.  Allowing programs to change resolution or screen
jim> depth means that they can monopolize a shared resource, namely the
jim> screen.

On the Amiga, application programs do not change resolution or depth
of the display.  Rather, they request their own "virtual screen" with
a custom color palette, display depth, mode settings, etc.  Intuition
(the Amiga windowing interface) manages each one of these virtual
screens separately, and allows the user to move and stack them on the
physical screen in real time, much like sliding chalkboards in a
lecture hall.  The end result is that each application gets the screen
display they want to have without disturbing other concurrent
applications, which is in the spirit of a multitasking OS.

This is not meant to be a "my computer is better than your computer"
flame.  It is meant solely to correct misinformation.

				--M
-- 
__
\/  Michael Portuesi	Silicon Graphics Computer Systems, Inc.
    portuesi@SGI.COM	Entry Systems Division -- Engineering

matthews@eleazar.dartmouth.edu (Jim Matthews) (01/06/90)

In article <1086@crash.cts.com> uzun@pnet01.cts.com (Roger Uzun) writes:
>  You CAN do this on the Amiga no
>problem, what you cannot do on the Mac II is create custom screens with
>your preferred resolution (up to about 710X490).  For the programmer, the
>amigas way of doing this is MUCH more flexible.

This flexibility violates the spirit of a multitasking OS.  A program
shouldn't be able to unilaterally modify the appearance of another
program's window.  Allowing programs to change resolution or screen
depth means that they can monopolize a shared resource, namely the
screen.

The Mac has one problem in this regard, in that programs can change the
color palette for a screen.  This problem will disappear when true
color is affordable and fast enough for programs to dispense with color
lookup tables.

Jim Matthews
Dartmouth Software Development

uzun@pnet01.cts.com (Roger Uzun) (01/06/90)

>> Larry Rosenstein writes:
>> Also your statement implies the program chooses the display mode for
>> its windows...
Well in a way tha is true, but programs allow the user to pick the resoltion
and screen depth when applicable.  
But basically you are correct, in some ways it is better to have the OS
arbitrate the screen for you and all programs work in the resolution
that the OS has chosen.  The disadvantage is some loss in performance
(seen any 60 Frame per second, INTERACTIVE, arcade animation on a mac ii?)
and some lack of control by thr programmer.  

For many applications, having the OS choose the resolution is a good idea.
for others it is not.

-Roger
/

UUCP: {hplabs!hp-sdd ucsd nosc}!crash!pnet01!uzun
ARPA: crash!pnet01!uzun@nosc.mil
INET: uzun@pnet01.cts.com

lsr@Apple.COM (Larry Rosenstein) (01/06/90)

In article <1093@crash.cts.com> uzun@pnet01.cts.com (Roger Uzun) writes:
> Well in a way tha is true, but programs allow the user to pick the 
resoltion
> and screen depth when applicable.  

Well it seems that this puts extra burden on the programmer to provide a 
way to select the screen depth, while on the Macintosh it is built into 
the system.

> that the OS has chosen.  The disadvantage is some loss in performance
> (seen any 60 Frame per second, INTERACTIVE, arcade animation on a mac 
ii?)

You are right about the performance.  The Macintosh model is to put the 
choice directly in the user's hands.  The user can choose a 1-bit screen 
for maximum performance a 32-bit screen for the maximum number of colors, 
or something in between.

Larry Rosenstein, Apple Computer, Inc.
Object Specialist

Internet: lsr@Apple.com   UUCP: {nsc, sun}!apple!lsr
AppleLink: Rosenstein1

sho@maxwell.physics.purdue.edu (Sho Kuwamoto) (01/06/90)

In article <18316@dartvax.Dartmouth.EDU> matthews@eleazar.dartmouth.edu (Jim Matthews) writes:
>The Mac has one problem in this regard, in that programs can change the
>color palette for a screen.  This problem will disappear when true
>color is affordable and fast enough for programs to dispense with color
>lookup tables.

Is this how it works on today's 24bit boards?  What if you want to
cycle colors, or use the lookup tables for animation?

-Sho
--
sho@physics.purdue.edu

uzun@pnet01.cts.com (Roger Uzun) (01/06/90)

>> This flexibility violates the spirit of a multitasking OS
You seem to have misunderstood the concept of virtual screens,
An application sets up the screen size, resolution, depth as
it sees fit, and many give a number of choices, there are MANY 
screens available at any time, the can be depth arranged and can have
windows attached.  It DOES NOT violate the spirit of multitasking,
indeed the amiga is a TRUE multitasking machine and the screen
is a resource, that is virtual screens are.  One program cannot
legally affect the aspects of anothers screens.

Having worked extensively with MultiFinder and AMigas OS,
I much prefer the Amiga approach, most who have tried both
also prefer this aspect of the Amiga exec.

-Roger

UUCP: {hplabs!hp-sdd ucsd nosc}!crash!pnet01!uzun
ARPA: crash!pnet01!uzun@nosc.mil
INET: uzun@pnet01.cts.com

krag@cup.portal.com (Kevin Ray Grotjohn) (01/07/90)

>Drivel about wierd screen widths violating the spirit of a multitasking os.
>Also about how the MAC has a slight problem with color pallettes when running
>multiple programs.
 
The amiga has slidable screens that can have different resolutions and color
palletes and depth.  This avoids the problem entirely.  You can have an editor
on a 1 bit screen for performance while running a 4096 color paint program on
another screen.  Look at the Amiga WorkBench sometime, notice the gadgets in
the corner? Those are screen front/back gadgets.  I'd hate to use a 
wordprocessor on a "True color" 32bit deep screen.

mitchell@cbmvax.commodore.com (Fred Mitchell - PA) (01/09/90)

In article <1093@crash.cts.com> uzun@pnet01.cts.com (Roger Uzun) writes:
>>> Larry Rosenstein writes:
>>> Also your statement implies the program chooses the display mode for
>>> its windows...
>Well in a way tha is true, but programs allow the user to pick the resoltion
>and screen depth when applicable.  
>But basically you are correct, in some ways it is better to have the OS
>arbitrate the screen for you and all programs work in the resolution
>that the OS has chosen.

Once again, on the Amiga, you have the CHOICE of letting your application
run from its own custom screen, or the Workbench. And remember that the
screens co-exist. That is, the custom screen appears in front of, or behind,
or overlaps the other screens and the workbench. This is a hard concept to
grasp for Mac- and IBM- only people to fully grasp until you have seen it!
(There is no equivalent mode for the Mac & IBM Machines, unfortunatly.)


>-Roger

	-Mitchell

6600pete@hub.UUCP (Pete Gontier) (01/10/90)

> Once again, on the Amiga, you have the CHOICE of letting your application
> run from its own custom screen, or the Workbench. And remember that the
> screens co-exist. That is, the custom screen appears in front of, or behind,
> or overlaps the other screens and the workbench. This is a hard concept to
> grasp for Mac- and IBM- only people to fully grasp until you have seen it!
> (There is no equivalent mode for the Mac & IBM Machines, unfortunatly.)

Is this anything like the confusing OS/2 "screen groups"?

Why would you want this?
------------------------------------------------------------------------------
Pete Gontier   | InterNet: 6600pete@ucsbuxa.ucsb.edu, BitNet: 6600pete@ucsbuxa
Editor, Macker | Online Macintosh Programming Journal; mail for subscription
Hire this kid  | Mac, DOS, C, Pascal, asm, excellent communication skills

mitchell@cbmvax.commodore.com (Fred Mitchell - PA) (01/19/90)

In article <3511@hub.UUCP> 6600pete@hub.UUCP (Pete Gontier) writes:
>> Once again, on the Amiga, you have the CHOICE of letting your application
>> run from its own custom screen, or the Workbench. And remember that the
>> screens co-exist. That is, the custom screen appears in front of, or behind,
>> or overlaps the other screens and the workbench. This is a hard concept to
>> grasp for Mac- and IBM- only people to fully grasp until you have seen it!
>> (There is no equivalent mode for the Mac & IBM Machines, unfortunatly.)
>
>Is this anything like the confusing OS/2 "screen groups"?
>
>Why would you want this?

I don't know anything about OS/2. But I'm sure OS/2 has nothing in common 
with this, because Amiga's Screens are partly hardware-controlled. You
would want them for the following reasons:

1) To keep your Workbench from becomming cluttered- If every application
   opened up its 'work area' on Workbench (Desktop to you Mac types),
   you would wind up with alot of unnecessary clutter (remember, this is a
   multitasking machine, and you could potentially have lots of programs 
   running!

2) To allow the application to take on its own color palette and resolution
   modes and number of bit-planes, so as to not interfere with other programs.

3) To allow direct writes to the bitmap for extra speed- somthing you CANNOT 
   do in a single-screen environment without taking over the machine.

Since I've been working in the Amiga environment, this seems totally natural
and I have come to expect this of other computers as well. I always feel
cramped when I do anything on a PC, and odd on the Mac. Ah yes, I know-
I've been spoiled. Can you blame me? :-)

Like I said, drop in your local Amiga dealer and check it out. Seeing is
believing!

>Pete Gontier   | InterNet: 6600pete@ucsbuxa.ucsb.edu, BitNet: 6600pete@ucsbuxa

	Mitchell
	mitchell@cbmvax.UUCP
	"More power than a steaming locomotive!"

datta@cpsc.ucalgary.ca (Slarti) (01/21/90)

In article <9383@cbmvax.commodore.com> mitchell@cbmvax.commodore.com (Fred Mitchell - PA) writes:
>1) To keep your Workbench from becomming cluttered- If every application
>   opened up its 'work area' on Workbench (Desktop to you Mac types),
>   you would wind up with alot of unnecessary clutter (remember, this is a
>   multitasking machine, and you could potentially have lots of programs 
>   running!
>
There are two versions of MultiFinder.  The developers version adds the
"put away" option that hides all windows belonging to an application and puts
it in the background, yielding a similar effect.  Hopefully, newer versions
of the standard MultiFinder (or Sys 7) will have this feature.

>2) To allow the application to take on its own color palette and resolution
>   modes and number of bit-planes, so as to not interfere with other programs.
>
The palette manager and color manager take care of this in a far better
fashion.  Each window can have it's own palette.  The palette of the
foreground window is active, and the OS automaticially renders the background
windows as well as possible with the current palette.  Macs only work in
HIGH resolution mode.

>3) To allow direct writes to the bitmap for extra speed- somthing you CANNOT 
>   do in a single-screen environment without taking over the machine.
>

Macs are already fast, this isn't necessary :-).  Actually, there are safe
ways to write directly to the screen, since you can easily get the location
in memory of a window's bitmap. It seems many people don't know how to do
this, however.

All an application has to do to more or less emulate the Amiga's screen
environment is open up a full screen sized window and hide it when sent into
the background.

mitchell@cbmvax.cbm.commodore.com.commodore.com (Fred Mitchell - PA) (01/23/90)

In article <2377@cs-spool.calgary.UUCP> datta@cs-sun-fsb.UUCP (Slarti) writes:
>In article <9383@cbmvax.commodore.com> mitchell@cbmvax.commodore.com (Fred Mitchell - PA) writes:
>>1) To keep your Workbench from becomming cluttered- If every application
>>   opened up its 'work area' on Workbench (Desktop to you Mac types),
>>   you would wind up with alot of unnecessary clutter (remember, this is a
>>   multitasking machine, and you could potentially have lots of programs 
>>   running!
>>
>There are two versions of MultiFinder.  The developers version adds the
>"put away" option that hides all windows belonging to an application and puts
>it in the background, yielding a similar effect.  Hopefully, newer versions
>of the standard MultiFinder (or Sys 7) will have this feature.
>
>>2) To allow the application to take on its own color palette and resolution
>>   modes and number of bit-planes, so as to not interfere with other programs.
>>
>The palette manager and color manager take care of this in a far better
>fashion.  Each window can have it's own palette.  The palette of the
>foreground window is active, and the OS automaticially renders the background
>windows as well as possible with the current palette.  Macs only work in
>HIGH resolution mode.

I fail to see how this is 'far better'. On the Amiga, I can drag a screen down
mid-way to see the one behind it, so that both are visible simultaneously,
AND USING THEIR OWN COLOR PALETTE SIMULTANEOUSLY!!!

Also, since moving a screen to front is extremely fast, I can do double-
buffering of screens, by rendering to the hidden screen, poping it to front
during the vertical retrace (WaitTOF()), render on the now out-of-sight
screen, pop that to front, etc. to acheive full-screen smooth animation.
Now I KNOW you can't do that with windows! TOO SLOW! :-)

>All an application has to do to more or less emulate the Amiga's screen
>environment is open up a full screen sized window and hide it when sent into
>the background.

It's not the same, not by a long shot. And you forget- I can have multiple
windows within one screen! Can you have windows within windows on the Mac?

Oh yes, I forgot- The Amiga can even emulate a Mac if I ever want it to!
(As well as IBM) I like having the best of 3 worlds. 3 in 1, that is!

	Mitchell
	mitchell@cbmvax.UUCP
	Having you cake and...