X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fmodex16.c;h=4717b444a39eaf1a9459d5a7a8ed317ede1102ef;hb=d45a99ed2ea331a9d2f19b20494fec509fc0efb5;hp=2988f27d0a0b6819d5394b9c03ff6e887d757a53;hpb=11c259b8eefaa17c296f661da98d042162e5c57d;p=16.git
diff --git a/src/lib/modex16.c b/src/lib/modex16.c
index 2988f27d..4717b444 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:
@@ -927,6 +942,23 @@ no... wait.... no wwww
free(pal);
}
+void bputs(/*bmp_t *bmp, */unsigned x, unsigned y, const char *s)
+{
+ byte far *font;
+ //bmp_t src;
+
+ //font = bios_8x8_font();
+ //src.wd = 8;
+ //src.ht = 8;
+ //src.ops = &g_ops1;
+ for(; *s != '\0'; s++)
+ {
+ //src.raster = font + 8 * (*s);
+ //blit1(&src, bmp, x, y);
+ x += 8;
+ }
+}
+
void
modexWaitBorder() {
while(inp(INPUT_STATUS_1) & 8) {
@@ -937,67 +969,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");
-}