X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fdos%2Fgfx.c;fp=src%2Fdos%2Fgfx.c;h=474a2e13a38e0e13756a74c9e46e6fcf736c294d;hb=7bd77c4461410f29819d6eee3d42d2793047ea66;hp=80d965b819ae821bd88af8b535092319682a904e;hpb=e2f48c6667ccc008a4b848b1115a854ca42f2e8b;p=retrobench diff --git a/src/dos/gfx.c b/src/dos/gfx.c index 80d965b..474a2e1 100644 --- a/src/dos/gfx.c +++ b/src/dos/gfx.c @@ -171,6 +171,7 @@ void *set_video_mode(int idx, int nbuf) { unsigned int mode; struct video_mode *vm = vmodes + idx; + struct cpuid_info cpu; if(curmode == vm) return vpgaddr[0]; @@ -226,8 +227,10 @@ void *set_video_mode(int idx, int nbuf) blit_frame = blit_frame_lfb; - print_mtrr(); - enable_wrcomb(vm->fb_addr, fbsize); + if(read_cpuid(&cpu) != -1 && cpu.feat & CPUID_FEAT_MTRR) { + print_mtrr(); + enable_wrcomb(vm->fb_addr, fbsize); + } } else { vpgaddr[0] = (void*)0xa0000;