Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!lll-crg!nike!ucbcad!ucbvax!CORY.BERKELEY.EDU!dillon From: dillon@CORY.BERKELEY.EDU (Matt Dillon) Newsgroups: net.micro.mac Subject: Re: Ease of programming, Mac, Amiga Message-ID: <8609182050.AA24515@cory.Berkeley.EDU> Date: Thu, 18-Sep-86 16:50:40 EDT Article-I.D.: cory.8609182050.AA24515 Posted: Thu Sep 18 16:50:40 1986 Date-Received: Sat, 20-Sep-86 01:48:08 EDT Sender: daemon@ucbvax.BERKELEY.EDU Organization: University of California at Berkeley Lines: 57 Bruce Horn, Carnegie Mellon CSD WRITES: >6) Multitasking doesn't help your turnaround time. If you have other >things to do, then it's great (I like multitasking A LOT). Otherwise, you >are still going to be waiting for the compiler and linker. Any memory hacks >you can do on the Amiga you can do on the Mac as well ("With a 1Meg Amiga, >you could keep the entire compiler and editor in memory..."). I still think >LightspeedC wins big--fast compiling is fast, period. You'll still be >waiting for "Deep Thought." Well, I can't say I know a whole lot about the mac, so I thank your corrections. I agree that LightSpeedC wins big, but I don't agree on your point about multi-tasking. You actually CAN have both an editor and a compiler on the MAC at the same time, but can only have one running at a time. So the advantage of the Multi-tasking is simply that you can run both the editor and compiler at the same time (that is, be editing something while the comiler is compiling something else). This does not slow the compiler down in the least, since your keystrokes into the editor couldn't be taking more than 5% of the CPU. I run my terminal program over the modem from my amiga all the time. When I want to compile (or do something else) on the amiga, I don't have to freeze the terminal program. In fact, while the compiler is running I might be reading my mail on ucbvax. Again, the modem program is mainly passive so other processes run at full speed. ** The point here is that multi-tasking gives you a practical working enviroment just by existing, and that should be taken into account whenever you compare the two machines or those comparisons will be moot. Notes on graphics managment: Since you can have multiple processes (that don't know about each other), the window managing system necessarily must be able to handle X process writing to X possibly overlapping windows. Thus, if your going to open your window on the workbench screen, you must follow the rules. Any graphics calls (plot/line/circle/blitting/etc....) automatically follow the rules. This is not a limitation, however. If you want FULL control, you can simply open your own custom screen with it's own width, height, depth, video modes, color map.. and do your own managing (or even opt to have intuition manage your custom screen). The level that handles the windows is called the layers library, and utilizes rectangular cliptrects. Text/graphics which are placed in hidden areas are automatically placed in other memory so a window move can 'reveal' stuff under it without the program having to do anything. The reason the layers library handles only rectangular cliping regions is simply... for speed. If you want arbitrary clipping regions you have to do it yourself on the Amiga, but it isn't difficult. One blitter pass on the rectangular area surrounding the oddly shaped cliptrec with a stencil would work very well. The blitter, after all, has an effective transfer rate of about 12Mbyte/sec, faster if you use 'blitter nasty' mode (~6Mwords/sec = 12Mbytes/sec.), which means you can do at-least 180 passes/sec on a 320x200 bitmap).. These values are lower bounds by the way... in fact, if you calculate it out it looks like I'm wayyy too low. I'll do some tests tonight and give you better figures. -Matt