Re: Virtual video test results (subject is here 'cos i can't get rid of that =?iso-8859-2? thing..) Jonathan (& Tim), that jumps you've suggested to Tim at VESAvirtscan, the destination "(4) here" should be at "bad_vesa", otherwise it would do.. nothing at all, beacuse if (4) here + cmp sxdots,cx ; max width in pixels in cx + jae alreadyset ; can't set more + bad_vesa: then sxdots always equals to cx when skipping the parts above, this cmp is related to the last VESA call, so it should be skipped also like: + cmp sxdots,cx ; max width in pixels in cx + jae alreadyset ; can't set more (4) here + bad_vesa: while looking at the experimental patch 5 diff file: at loadfdos.c, at restoring images, the function which resizes dotmode==28 entries (well, to be honest, i've forgotten its name) - it should also be disabled when virtual=no, like: + /* try to change any VESA entries to fit the loaded image size */ + if (virtual && video_vram && initmode == -1) { then, i've found a mistake at prompts2.c / getviewparams(): instead of: + if truebytes==4 (32 bit) it does &= ..FFFE (&= -2) if (truebytes < 2) + */ + ++truebytes; it should be: + if truebytes==4 (32 bit) it does &= ..FFFE (&= -2) + */ + if (truebytes < 2) + ++truebytes; (i guess it was caused by inserting that truebytes explanation) nothing serious, it just miss-estimates.. finally, using view-window for smaller-than-screen request is ok, but why do you turn off view-window for greater-than-screen? do you think it would have no use then? ( ! if (sxdots < vesa_xres && sydots < vesa_yres) { ! viewwindow = 1; ! viewxdots = sxdots; ! viewydots = sydots; ! sxdots = vesa_xres; ! sydots = vesa_yres; ! } else { ! viewwindow = 0; /* make sure it is off */ ! viewxdots = 0; ! viewydots = 0; ! } ) VESAvirtscan once more: that "mov ax,2" is strange! (so is "mov ax,1" fifteen lines above..) the scroll test should scroll the screen to the [cd; dx] not to the ax.. ax just indicates top-left corner here.. + noretrace: + ;; xor ax,ax + mov ax,2 ; try to move a tad + mov wait_retrace,0 ; don't wait for v. retrace + mov video_startx,ax ; video didn't scroll yet + mov video_starty,ax + call VESAscroll ; try the instant scrolling + cmp ax,004fh ; did this scroll? + je wedone it is also non-serious, but i see no use of it..? charlie ______________________________________________________________________ Reklama: Aktualni zpravy z domova i ze zahranici, krimi, kultura, sport, zpravy ze spolecnosti, vztahy a sex, horoskop a televizni program http://www.novinky.cz