home *** CD-ROM | disk | FTP | other *** search
-
- /* from Jim Mackraz' ucop/cop.c -- fuck with copper list */
-
- #define HLINESTART (0L)
-
- #include <graphics/gfxmacros.h>
- #include <graphics/view.h>
- #include <intuition/intuition.h>
- #include <intuition/intuitionbase.h>
- #include "jiff.h"
- #include "vcomp.h"
- #include "playriff.h"
-
-
- extern struct IntuitionBase *IntuitionBase;
-
- extern WORD colors;
- WORD mid_width; /* height of middle slice of color if any */
-
- qput_cmap(cmap)
- register UWORD *cmap;
- {
- register UWORD *cl;
- register WORD i;
- register struct View *ViewLord;
- WORD damn;
-
- ViewLord = &IntuitionBase->ViewLord;
- i = colors;
- damn = 0;
- Forbid();
- cl = ViewLord->LOFCprList->start + 2;
- for (i=0x180; i< 0x180+colors*2; i+=2)
- {
- if (*cl != i)
- {
- damn = 1;
- break;
- }
- cl += 2;
- }
- if (damn)
- {
- Permit();
- LoadRGB4(&demo_screen->ViewPort, cmap, (long)colors); /* slow way*/
- }
- else
- {
- cl = ViewLord->LOFCprList->start + 3;
- i = colors;
- while (--i >= 0)
- {
- *cl = *cmap++;
- cl += 2;
- }
- Permit();
- LoadView(ViewLord);
- }
- }
-
-