projects
/
dosdemo
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
d5d75dff5f62804f8790d4b5d52b97654fe56201
[dosdemo]
/
src
/
dos
/
vbe.c
1
#include "vbe.h"
2
#include "cdpmi.h"
3
4
int vbe_getinfo(struct vbe_info *info)
5
{
6
void *lowbuf;
7
uint16_t seg, sel;
8
struct dpmi_regs regs = {0};
9
10
if(!(seg = dpmi_alloc(512 / 16, &sel))) {
11
return -1;
12
}
13
14
regs.eax = 0x4f00;
15
regs.es = seg;
16
regs.edi = 0;
17
dpmi_int(0x10, ®s);
18
19
if(regs.eax & 0xff00) {
20
dpmi_free(sel);
21
return -1;
22
}
23
24
lowbuf = (void*)((uint32_t)seg << 4);
25
memcpy(info, lowbuf, sizeof info);
26
dpmi_free(sel);
27
return 0;
28
}