//#include "lib/16text.h"\r
#include "lib/modex16.h"\r
\r
+#include <hw/cpu/cpu.h>\r
+#include <hw/dos/dos.h>\r
+#include <hw/vga/vga.h>\r
+#include <hw/vga/vgatty.h>\r
+\r
global_game_variables_t gvar;\r
\r
void main(int argc, char near *argv[])\r
,'___...---~~~\n\\r
";\r
// static byte *rosa;\r
- static word chx;//, chy, colpee;\r
+// static word chx;//, chy, colpee;\r
+ static word z;\r
// textInit();\r
+\r
+ // DOSLIB: check our environment\r
+ probe_dos();\r
+\r
+ // DOSLIB: what CPU are we using?\r
+ // NTS: I can see from the makefile Sparky4 intends this to run on 8088 by the -0 switch in CFLAGS.\r
+ // So this code by itself shouldn't care too much what CPU it's running on. Except that other\r
+ // parts of this project (DOSLIB itself) rely on CPU detection to know what is appropriate for\r
+ // the CPU to carry out tasks. --J.C.\r
+ cpu_probe();\r
+\r
+ // DOSLIB: check for VGA\r
+ if (!probe_vga()) {\r
+ printf("VGA probe failed\n");\r
+ return;\r
+ }\r
+ // hardware must be VGA or higher!\r
+ if (!(vga_state.vga_flags & VGA_IS_VGA)) {\r
+ printf("This program requires VGA or higher graphics hardware\n");\r
+ return;\r
+ }\r
VGAmodeX(1, 1, &gvar);\r
+// __asm{\r
+// mov ax,1112h ; load 8x8 character set into RAM\r
+// mov bl,0\r
+// int 10h\r
+// }\r
/* setup camera and screen~ */\r
gvar.video.page[0] = modexDefaultPage(&gvar.video.page[0]);\r
//gvar.video.page[0].width += (16*2);\r
//++++ modexShowPage(&gvar.video.page[0]);\r
//modexprint(16, 16, 1, 15, "wwww");\r
//getch();\r
- chx=0;\r
+// chx=0;\r
// chy=0;\r
// colpee=32;\r
+ bios_cls();\r
/* position the cursor to home */\r
vga_moveto(0,0);\r
vga_sync_bios_cursor();\r
- for(e=0x00; e<=0xFE; e++)\r
+ for(e=0x00, z=0; e<=0xFE; e++, z++)\r
{\r
- if(chx+8>(gvar.video.page[0].width/2))\r
+ //if(chx+8>(gvar.video.page[0].width/2))\r
+ if((z)+1>16)\r
{\r
- chx=0;\r
- printf("\n");\r
+// chx=0;\r
// chy+=8;\r
// sprintf(pee,"%u", colpee);\r
// modexprint(&gvar.video.page[0], 200, 200, 1, 47, 0, &pee, 1);\r
+ z=0;\r
+ printf("\n");\r
//getch();\r
}\r
- printf("%c", e);\r
+ //printf("%zc", e);\r
// modexprint(&gvar.video.page[0], chx, chy, 1, 0, colpee, &e, 1);\r
- chx+=9;\r
+// chx+=9;\r
// colpee++;\r
// if(colpee>=32+24) colpee=32;\r
}\r