X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fmodex16.c;h=3bf65ee40fa12bc96c404d3b1b7cfb21bd26e38f;hb=2bc6e98511fbe156f4ec68b1b7dbc7c8c03f866f;hp=2988f27d0a0b6819d5394b9c03ff6e887d757a53;hpb=11c259b8eefaa17c296f661da98d042162e5c57d;p=16.git diff --git a/src/lib/modex16.c b/src/lib/modex16.c index 2988f27d..3bf65ee4 100644 --- a/src/lib/modex16.c +++ b/src/lib/modex16.c @@ -1,3 +1,25 @@ +/* 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. + * + */ + #include #include #include @@ -6,14 +28,7 @@ #include #include "src/lib/modex16.h" - byte far* VGA=(byte far*) 0xA0000000; /* this points to video memory. */ -/*word text_mask[16] = { - 0x0002, 0x0102, 0x0202, 0x0302, - 0x0402, 0x0502, 0x0602, 0x0702, - 0x0802, 0x0902, 0x0A02, 0x0B02, - 0x0C02, 0x0D02, 0x0E02, 0x0F02 -};*/ static void fadePalette(sbyte fade, sbyte start, word iter, byte *palette); static byte tmppal[PAL_SIZE]; @@ -162,7 +177,7 @@ modexShowPage(page_t *page) { outp(CRTC_DATA, crtcOffset); /* wait for one retrace */ - while (!(inp(INPUT_STATUS_1) & VRETRACE)); + while (!(inp(INPUT_STATUS_1) & VRETRACE)); /* do PEL panning here */ outp(AC_INDEX, 0x33); @@ -299,7 +314,7 @@ modexDrawBmpRegion(page_t *page, int x, int y, ;-- begin plane painting MOV AX, height ; start the row counter - MOV rowCounter, AX ; + MOV rowCounter, AX ; MOV DI, poffset ; go to the first pixel MOV SI, bmpOffset ; go to the bmp pixel ROW_LOOP: @@ -379,7 +394,7 @@ modexDrawSpriteRegion(page_t *page, int x, int y, ;-- begin plane painting MOV AX, height ; start the row counter - MOV rowCounter, AX ; + MOV rowCounter, AX ; MOV DI, poffset ; go to the first pixel MOV SI, bmpOffset ; go to the bmp pixel ROW_LOOP: @@ -937,67 +952,3 @@ modexWaitBorder() { /* spin */ } } - -/***************************************************************************** -find 8x8 font in VGA BIOS ROM -*****************************************************************************/ -byte far *bios_8x8_font(void) -{ - byte far *font; - regs_t regs; - -/* use BIOS INT 10h AX=1130h to find font #3 (8x8) in ROM */ - memset(®s, 0, sizeof(regs)); /* for Watcom C */ - regs.w.ax = 0x1130; - regs.w.bx = 0x0300; - intr(0x10, ®s); - font = (byte far *)MK_FP(regs.w.es, regs.w.bp); - return font; -} - -/***************************************************************************** -*****************************************************************************/ -void bputs(page_t *pee, int x, int y, const byte far *s) -{ - //int i, skip; - byte far *font; - byte far *font_pntr; - //byte c, temp; - - font = bios_8x8_font(); - //skip = 2 - ((pee->width/4) << 3); - //printf("font=%Fp\n", font); - for(; *s != '\0'; s++) - { - //src.raster = font + 8 * (*s); - //BLOODY!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!111111111111!!!11!!11!111!11!!1111!!111!11!!1!!!11!11!!1!!111!11!! -// (*(bmp->data)) = (*(font + 8 * (*s))); - font_pntr = font + 8 * (*s); -// font_pntr = font + (c << 3); -// i=8; -// while (i--) { -// temp = *font_pntr++; -// outpw(SC_INDEX, text_mask[temp & 0x0F]); - //*vga_ptr++ = color; - -// outpw(SC_INDEX, text_mask[temp >> 4]); - //*vga_ptr-- = color; - //vga_ptr += widthBytes; -// } - - //printf("fontoffset=%Fp\n", font + 8 * (*s)); - //printf("*fontoffset=%s\n", *(font + 8 * (*s))); - //printf("w.data=%Fp\n", (w.data)); - //printf("*w.data=%s\n", *(w.data)); - //blit1(&src, bmp, x, y); -// modexDrawSprite(page, x, y, bmp); -// modexDrawBmp(page, x, y, bmp); -// printf("%x\n", (*(font + 8 * (*s)))); - //_fmemset(VGA, *(font + 8 * (*s)), _msize(font)); - //draw text?!?! wwww - - modexClearRegion(pee, x, y, 8, 8, 4); -// x += 8; - } -// printf("\n"); -}