default: // init the video\r
if(gv->video.VL_Started)\r
return;\r
+ if(!gv->video.VL_Initiated)\r
+ TL_VidInit(gv);\r
+ // get old video mode\r
+ //in.h.ah = 0xf;\r
+ //int86(0x10, &in, &out);\r
+ gv->video.old_mode = vgaGetMode();//out.h.al;\r
// enter mode\r
modexEnter(vq, cmem, gv);\r
break;\r
}\r
break;\r
}\r
- VL_SetLineWidth (cm.offset, &gv->video.ofs);\r
+// VL_SetLineWidth (cm.offset, &gv->video.ofs);\r
gv->video.VL_Started=1;\r
}\r
\r
vgaSetMode(TEXT_MODE);\r
}\r
\r
-/*\r
-====================\r
-=\r
-= VL_SetLineWidth\r
-=\r
-= Line witdh is in WORDS, 40 words is normal width for vgaplanegr\r
-=\r
-====================\r
-*/\r
-\r
-void VL_SetLineWidth (unsigned width, ofs_t *ofs)\r
-{\r
- int i,offset;\r
-\r
-//\r
-// set wide virtual screen\r
-//\r
- outport (CRTC_INDEX,CRTC_OFFSET+width*256);\r
-\r
-//\r
-// set up lookup tables\r
-//\r
- ofs->linewidth = width*2;\r
-\r
- offset = 0;\r
-\r
- for (i=0;i<MAXSCANLINES;i++)\r
- {\r
- ofs->ylookup[i]=offset;\r
- offset += ofs->linewidth;\r
- }\r
-}\r
-\r
page_t\r
modexDefaultPage(page_t *p)\r
{\r
\r
void\r
modexSelectPlane(byte plane) {\r
- outp(SC_INDEX, MAP_MASK); /* select plane */\r
+ outp(SC_INDEX, SC_MAPMASK); /* select plane */\r
outp(SC_DATA, plane);\r
}\r
\r
MOV ES, AX\r
MOV DI, poffset ; go to the first pixel\r
MOV DX, SC_INDEX ; point to the map mask\r
- MOV AL, MAP_MASK\r
+ MOV AL, SC_MAPMASK\r
OUT DX, AL\r
INC DX\r
MOV AL, color ; get ready to write colors\r
\r
MOV AX, SC_INDEX ; point to the mask register\r
MOV DX, AX ;\r
- MOV AL, MAP_MASK ;\r
+ MOV AL, SC_MAPMASK ;\r
OUT DX, AL ;\r
INC DX ;\r
\r
}\r
\r
void\r
-modexPalUpdate0(byte *p)\r
+//modexPalUpdate0(byte *p)\r
+VL_modexPalScramble(byte *p)\r
{\r
int i;\r
//modexWaitBorder();\r