/* Project 16 Source Code~\r
- * Copyright (C) 2012-2015 sparky4 & pngwen & andrius4669\r
+ * Copyright (C) 2012-2016 sparky4 & pngwen & andrius4669 & joncampbell123\r
*\r
* This file is part of Project 16.\r
*\r
#include <stdio.h>\r
#include <conio.h>\r
#include "lib/types.h"\r
-#include "lib/16text.h"
+#include "lib/16text.h"\r
#include "lib/modex16.h"\r
\r
+global_game_variables_t gvar;\r
+\r
void main(int argc, char near *argv[])\r
{\r
- int i;\r
+ int i, xp;\r
int j;\r
char l[16];\r
- char c;\r
+ char c,ct;\r
word s, o, t, w;\r
- word addr = (word) l;
- byte *pal, *pal2, fond;
- bitmap_t fontdata;
+ word addr = (word) l;\r
+ //byte *pal, *pal2, fond;\r
+ //bitmap_t fontdata;\r
page_t page;\r
textInit();\r
\r
printf("%d: %x:%x\n", i, romFonts[i].seg, romFonts[i].off);\r
}\r
\r
- printf("*argv[1]=%d\n", *argv[1]);\r
+// printf("*argv[1]=%d\n", *argv[1]);\r
+\r
+ printf("Font type: ");\r
+ gets(&ct);\r
\r
- printf("Character: ");\r
- scanf("%c", &c);\r
+ printf("Character: ");\r
+ gets(&c);\r
\r
- if(*argv[1]!=1)\r
- switch(*argv[1])\r
+ if(ct!=1)\r
+ switch(ct)\r
{\r
case 48:\r
+ printf("type 0\n");\r
t=0;\r
w=14;\r
break;\r
case 49:\r
+ printf("type 1\n");\r
t=1;\r
w=8;\r
break;\r
case 50:\r
+ printf("type 2\n");\r
t=2;\r
w=8;\r
break;\r
case 51:\r
+ printf("type 3\n");\r
t=3;\r
w=16;\r
break;\r
default:\r
+ printf("type 3\n");\r
t=3;\r
w=16;\r
break;\r
}\r
else\r
{\r
+ printf("type 3\n");\r
t=3;\r
- w=16; \r
+ w=16;\r
}\r
\r
\r
INC DI\r
DEC CX\r
JNZ L1\r
- }
-
+ }\r
+\r
//load our palette\r
- modexLoadPalFile("data/default.pal", &pal2);
-
- fontdata.width=8;
- fontdata.height=w;
- fontdata.palette=pal2;
-
- fontdata.data=malloc(256);
-
- for(i=0; i<w; i++)
+ //modexLoadPalFile("data/default.pal", &pal2);\r
+\r
+ /*fontdata.width=8;\r
+ fontdata.height=w;\r
+ fontdata.palette=pal2;\r
+\r
+ fontdata.data=malloc(256);\r
+\r
+ for(i=0; i<w; i++)\r
{\r
j=1<<8;\r
- while(j)
- {
- fond=(byte)l[i] & j;
- fontdata.data=&(fond);
+ while(j)\r
+ {\r
+ fond=(byte)l[i] & j ? '1':'0';\r
+ fontdata.data=&(fond);\r
printf("%02x ", *(fontdata.data));\r
j>>=1;\r
- }
+ }\r
printf("\n");\r
- }
-
- printf("\n\nok hit a key~\n");
+ }\r
+\r
+ printf("\n\nok hit a key~\n");\r
while(!getch())\r
{\r
//DrawPBuf(&page, 0, 0, p, 0);\r
- }\r
+ }*/\r
\r
// save the palette\r
- pal = modexNewPal();\r
+ /*pal = modexNewPal();\r
modexPalSave(pal);\r
modexFadeOff(4, pal);\r
modexPalBlack();\r
-\r
- modexEnter();\r
- modexPalBlack();\r
+*/\r
+ VGAmodeX(1, &gvar);\r
+/* modexPalBlack();*/\r
\r
// set up the page, but with 16 pixels on all borders in offscreen mem\r
page=modexDefaultPage();\r
//page.width += 32;\r
- //page.height += 32;
- modexShowPage(&page);
- modexClearRegion(&page, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 1);
+ //page.height += 32;\r
+ modexShowPage(&page);\r
+ modexClearRegion(&page, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 1);\r
// fade in\r
- modexFadeOn(4, pal2);
-
+ //modexFadeOn(4, pal2);\r
+\r
//render the letter in ascii art\r
- /*for(i=0; i<w; i++) {\r
- j=1<<8;\r
- while(j)
- {
- //printf("j=%d\n", j);\r
- //printf("%c", l[i] & j ? '*':' ');
- //====printf("%02x ", l[i] & j);
- modexClearRegion(&page, 120, 120, 1, 1, l[i] & j);\r
- j>>=1;
- dcount++;\r
+ for(i=0; i<w; i++)\r
+ {\r
+ j=1<<8;\r
+ xp=0;\r
+ while(j)\r
+ {\r
+ //printf("j=%d\n", j);\r
+ //printf("%c", l[i] & j ? '*':' ');\r
+ //====printf("%02x ", l[i] & j);\r
+ //printf("l[i]=%d ", l[i]);\r
+ //printf("j=%d ", j);\r
+ //printf("%02x\n", l[i] & j);\r
+ //modexPutPixel(xp, i, l[i] & j ? 15:0);\r
+ //modexpixelwr(xp, i, 0, l[i] & j ? 15:0);\r
+ modexputPixel(&page, xp, i, l[i] & j ? 15:0);\r
+ //modexClearRegion(&page, xp*4, i*4, 4, 4, l[i] & j ? 15:0);\r
+//while(!getch());\r
+ xp++;\r
+ j>>=1;\r
+ }\r
+ //====\r
+ //printf("\n");\r
}\r
- //====printf("\n");
- dcount++;\r
- }*/
- modexDrawSprite(&page, 0, 0, &fontdata);
+ //modexDrawSprite(&page, 0, 0, &fontdata);\r
while(!getch())\r
{\r
//DrawPBuf(&page, 0, 0, p, 0);\r
- }
-
+ }\r
+\r
// fade back to text mode\r
- modexFadeOff(4, pal2);\r
- modexPalBlack();\r
- modexLeave();\r
- modexPalBlack();\r
- modexFadeOn(4, pal);
-
+ /*modexFadeOff(4, pal2);\r
+ modexPalBlack();*/\r
+ VGAmodeX(0, &gvar);\r
+ /*modexPalBlack();\r
+ modexFadeOn(4, pal);*/\r
+ //render the letter in ascii art\r
+ for(i=0; i<w; i++)\r
+ {\r
+ j=1<<8;\r
+ while(j)\r
+ {\r
+ printf("%c", l[i] & j ? '*':' ');\r
+ //====printf("%02x ", l[i] & j);\r
+//while(!getch());\r
+ j>>=1;\r
+ }\r
+ printf("\n");\r
+ }\r
+ printf("\ni=%d\n", i);\r
+ printf("j=%d\n", j);\r
+\r
}\r