Mail Archives: djgpp/1996/10/23/17:20:51
He He! PLS check your attributions! I did not made THAT commentary!
At 04:37 23/10/96 GMT, Olav Kindt wrote:
>Cesar Scarpini Rabak (csrabak AT dce03 DOT ipt DOT br) wrote:
>: >char *OemStringPtr PACKED;
>
>This pointer is a pointer to memory in DOS, usually in the VGA BIOS at
>c000 something. The reason the program crashes when you try to print this
>is because it doesn't like you fiddling with dosmemory directly. (Without
>telling it)
>
>I used this workaround, ( I'm sure there are better ways)
>
>First you calculate the linear address of the first character in the
>string. Your OemSStringPtr will be 4 bytes, first two are segment , second
>two are offset. Linear address = SEg * 16 + offset.
>
>Then use the dosmemget(linearaddres, 1, &Placetoputchar) to get the value
>of the first character. Increment the linear address, and get next until
>the '\0' character is read.
>
>Another thing is that some cards might piggyback this string, (and also
>the supported mode list) into the unused area of the VESAINFO block. In
>that case you have to figure out where the __tb (I'm assuming you are
>using the transfer buffer for getting the VESAINFO block), and find the
>values in that position.
>
>I have some code doing this, and I can mail it to you if you still can't
>figure this thing out.
>
> -- Olav Kindt | email:
>oak9755 AT silver DOT sdsmt DOT edu
>737 E. Anamosa Street #103 | xedb_oak AT debet DOT nhh DOT no
>Rapid City SD-57701 | MAIL me man.......
>
>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Cesar Scarpini Rabak E-mail: csrabak AT ipt DOT br
DME/ASC Phone: 55-11-268-35221Ext.350
IPT - Instituto de Pesquisas Tecnologicas Fax: 55-11-268-5996
Av. Prof. Almeida Prado, 532. Sao Paulo - SP 05508-901 BRAZIL
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Raw text -