X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fplanar.h;h=4cd7365b36d48245d9b1f0df3f2c9875c73198e1;hb=d50eae35f5e87d5c2fe4483badbafd25878612a6;hp=6aa8e2608f3b3c520901320ade22f64ea0d20e9f;hpb=2fe35c053f6f106895e87ee646ec00eea32b605a;p=16.git diff --git a/src/lib/planar.h b/src/lib/planar.h old mode 100644 new mode 100755 index 6aa8e260..4cd7365b --- a/src/lib/planar.h +++ b/src/lib/planar.h @@ -1,31 +1,60 @@ +/* Project 16 Source Code~ + * Copyright (C) 2012-2015 sparky4 & pngwen & andrius4669 + * + * This file is part of Project 16. + * + * Project 16 is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * Project 16 is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see , or + * write to the Free Software Foundation, Inc., 51 Franklin Street, + * Fifth Floor, Boston, MA 02110-1301 USA. + * + */ /* - * Functions and types for a planar image buffer. + * Functions and types for a planar image buffer. * This is meant to be able to load into video memory faster. */ -#include "bitmap.h" - #ifndef PLANAR_H #define PLANAR_H + +#include "src/lib/bitmap.h" +#include "src/lib/16_ca.h" +#include "src/lib/16_mm.h" +#include "src/lib/16_hc.h" + +extern byte *modexNewPal(); + typedef struct { - byte *plane[4]; /* 4 planes of image data */ - word width; /* width of the image (spread across 4 planes) */ - word height; /* height of the image (spread across 4 planes) */ - word pwidth; /* the number of bytes in each plane */ + byte huge *plane[4]; /* 4 planes of image data */ + word width; /* width of the image (spread across 4 planes) */ + word height; /* height of the image (spread across 4 planes) */ + word pwidth; /* the number of bytes in each plane */ + byte *palette; } planar_buf_t; - /* creates a planar buffer from the bitmap data. The planar buffer is dynamically allocated, and should be destroyed with the planar_buf_free function when no longer needed. */ -planar_buf_t *planar_buf_from_bitmap(bitmap_t *b); - +planar_buf_t huge *planar_buf_from_bitmap(bitmap_t *b); /* allocates a planar buffer with specified dimensions */ -planar_buf_t *planar_buf_alloc(word width, word height); - +planar_buf_t huge *planar_buf_alloc(word width, word height); /* deallocates a planar buffer */ void planar_buf_free(planar_buf_t *p); + +/* non pointer version~ */ +planar_buf_t planar_buf_from_bitmap0(bitmap_t *b); + #endif