/** ** ram32l.c ---- the 16M color padded system RAM frame driver (low) ** ** Copyright (c) 1995 Csaba Biegl, 820 Stirrup Dr, Nashville, TN 37221 ** [e-mail: csaba@vuse.vanderbilt.edu]. ** ** This file is part of the GRX graphics library. ** ** The GRX graphics library is free software; you can redistribute it ** and/or modify it under some conditions; see the "copying.grx" file ** for details. ** ** This library 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. ** ** Contributions by: (See "doc/credits.doc" for details) ** Hartmut Schirmer (hsc@techfak.uni-kiel.de) ** **/ #define PIX2COL(col) ((col)&0xFFFFFF) #define COL2PIX(col) ((col)&0xFFFFFF) #include "fdrivers/driver32.h" GrFrameDriver _GrFrameDriverRAM32L = { GR_frameRAM32L, /* frame mode */ GR_frameUndef, /* compatible RAM frame mode */ FALSE, /* onscreen */ 4, /* scan line width alignment */ 1, /* number of planes */ 32, /* bits per pixel */ #ifdef __TURBOC__ 65520L, /* max plane size the code can handle */ #else 32*16*1024L*1024L, /* max plane size the code can handle */ #endif NULL, readpixel, drawpixel, drawline, drawhline, drawvline, drawblock, drawbitmap, drawpattern, bitblt, NULL, NULL, _GrFrDrvGenericGetIndexedScanline, _GrFrDrvGenericPutScanline }; /* some systems map LFB in normal user space (eg. Linux/svgalib) */ /* near pointer stuff is equal to ram stuff :) */ #ifdef LFB_BY_NEAR_POINTER /* always do RAM to RAM blit. May result in ** ** bottom first blits but this shouldn't matter */ GrFrameDriver _GrFrameDriverSVGA32L_LFB = { GR_frameSVGA32L_LFB, /* frame mode */ GR_frameRAM32L, /* compatible RAM frame mode */ TRUE, /* onscreen */ 4, /* line width alignment */ 1, /* number of planes */ 32, /* bits per pixel */ 32*16*1024L*1024L, /* max plane size the code can handle */ NULL, readpixel, drawpixel, drawline, drawhline, drawvline, drawblock, drawbitmap, drawpattern, bitblt, bitblt, bitblt, _GrFrDrvGenericGetIndexedScanline, _GrFrDrvGenericPutScanline }; #endif