Path: utzoo!utgpu!news-server.csri.toronto.edu!rutgers!ucsd!ucbvax!UTCVM.BITNET!MQUINN From: MQUINN@UTCVM.BITNET Newsgroups: comp.sys.apple2 Subject: Re: DMA, SCSI and $C1 filetypes questions Message-ID: <9010191555.AA09514@apple.com> Date: 19 Oct 90 15:16:46 GMT References: Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 60 On Thu, 18 Oct 90 19:33:21 GMT said: >In article <1990Oct18.171229.15406@uokmax.ecn.uoknor.edu> > cmparris@uokmax.ecn.uoknor.edu (Chris Michae Parrish) writes: > >>Lastly I was wondering if anyone could tell me the format of $C1 type >pictures. >>Like for insstance where is the palette infomation, and where is this > information supposed to be placed if you where to bypass the toolbox and put > the picture >>driectly into screen memory. And speaking of screen memory, is the shadowing >>of banks 00 and 01 always on, or is it neccesary to activate it somehow? > >The internal format of the $C1 type pictures is contained in an Apple >File Type Note, named "ftn.c1.xxxx". "xxxx" is the auxtype designation for >the particular format (DeluxePaint uses its own format). It's available >via anonymous FTP from apple.com. It's in the /pub/dts/aii/ftn directory. Type $C1 pictures are nothing more than a memory dump. Just load it directly to $E1/2000 and everything falls into place... including the pallete(s). DeluxePaint Saves pictures as $C0 (compressed) and can be used by anything else that loads that type of picture. You could make your own $C1 pictures 'manually' if you wanted, like this: (assuming a picture is already in memory. CREATE PICTURE,T$C1 CALL-151 0/1000I assume you mean having QuickDraw draw directly to the FAST (2.8MHz) >side of memory, and having the hardware shadow your writes to slow memory, >thus making graphics manipulation faster. Start up QuickDraw with the normal >resolution descriptor, plus $8000 (I don't remember off the top of my head what >the standard values are). When you load something into RAM that is being shadowed to banks $E0 or $E1, the CPU has to slow down to the speed of the slowest bank being accessed (1Mhz for $E0 and $E1). The only way, that I know of, to make write to bank $E1 any faster is to declare the stack in bank $00 (of course) at $2000 and PUSH everything to the stack and having shadowing from bank $00 to bank $01 to bank $E1. I don't know how to decalre the stack at $00/2000 (I think you also have to declare it's size) but, from what I've been told, this works. Also, I don't think this would be any faster for loading a picture from disk, because you'll still have to wait for the picture to be loaded, then you'll PUSH the whole thing to the stack, but if you already had one in memory and wanted to display it, this would be faster... it also works for animation (I've been told). >-- >Jawaid Bazyar | Blondes in big black cars look better wearing >Senior/Computer Engineering | their dark sunglasses at night. (unk. wierdo) >jb10320@uxa.cso.uiuc.edu | The gin, the gin, glows in the Dark! > Apple II Forever! | (B O'Cult) >Comp.Sys.Apple2- Home of the Unofficial Apple II Developer Support Team (DST) ____________________________________________________________________ | | | | This is your brain... | BITNET-- mquinn@utcvm | | This is your brain on drugs... | pro-line: | | This is your brain on whole wheat.| mquinn@pro-gsplus.cts.com | |____________________________________|_______________________________|