CVS: main/linux vbelib.c,1.5,1.6 vbelib.h,1.3,1.4
Update of /cvsroot/mplayer/main/linux In directory mplayer:/var/tmp.root/cvs-serv22594/main/linux Modified Files: vbelib.c vbelib.h Log Message: Title support Index: vbelib.c =================================================================== RCS file: /cvsroot/mplayer/main/linux/vbelib.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- vbelib.c 23 Oct 2001 07:05:05 -0000 1.5 +++ vbelib.c 23 Oct 2001 09:31:28 -0000 1.6 @@ -386,3 +386,25 @@ } return retval; } +/* --------- Standard VGA stuff -------------- */ +int vbeWriteString(int x, int y, int attr, char *str) +{ + struct LRMI_regs r; + void *rm_space = NULL; + int retval; + memset(&r,0,sizeof(struct LRMI_regs)); + r.ecx = strlen(str); + r.edx = ((y<<8)&0xff00)|(x&0xff); + r.ebx = attr; + if(!(rm_space = LRMI_alloc_real(r.ecx))) return VBE_OUT_OF_DOS_MEM; + r.es = VirtToPhysSeg(rm_space); + r.ebp = VirtToPhysOff(rm_space); + memcpy(rm_space,str,r.ecx); + r.eax = 0x1300; + retval = VBE_LRMI_int(0x10,&r); + if(rm_space) LRMI_free_real(rm_space); + if(!retval) return VBE_VM86_FAIL; + retval = r.eax & 0xffff; + if(retval == 0x4f) retval = VBE_OK; + return retval; +} \ No newline at end of file Index: vbelib.h =================================================================== RCS file: /cvsroot/mplayer/main/linux/vbelib.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- vbelib.h 22 Oct 2001 09:28:44 -0000 1.3 +++ vbelib.h 23 Oct 2001 09:31:28 -0000 1.4 @@ -220,4 +220,8 @@ Support of palette currently is not implemented. */ extern int vbeGetProtModeInfo(struct VesaProtModeInterface *); + +/* Standard VGA stuff */ +int vbeWriteString(int x, int y, int attr, char *str); + #endif
participants (1)
-
Nick Kurshev