www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1995/03/10/23:15:36

Date: Fri, 10 Mar 95 19:25:28 PST
From: baca AT crl DOT ucsd DOT edu (Kevin Baca)
To: bb07779 AT bingsuns DOT cc DOT binghamton DOT edu, djgpp AT sun DOT soe DOT clarkson DOT edu
Subject: Re: Protected mode VESA again...

>void getmodeinfo (word mode)
>{
>   _go32_dpmi_registers r;
>   _go32_dpmi_seginfo sinfo;
>
>   sinfo.size=(256+15)/16;                      /* Need 256 bytes */
>   _go32_dpmi_allocate_dos_memory(&sinfo);      /* grab some DOS memory */
>   memset(&r,0,50);                             /* zero out the registers */
>   r.x.ax=0x4f01;                               /* select mode info int */
>   r.x.cx=mode;                                 /* set up registers */
>   r.x.ss=r.x.sp=0;
>   r.x.di=sinfo.rm_offset;                      /* point segments to */
>   r.x.es=sinfo.rm_segment;                     /* buffer in DOS mem */
>   _go32_dpmi_simulate_int (0x10,&r);           /* generate interrupt */
>   dosmemget(sinfo.rm_segment*16, 256, (void *)&vesainfo);
>}

Remember to set the flags portion of the registers struct to zero.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019