News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests
NB: Posting URL's See here: Posted URL Change

Main Menu

Demonstrating FLAT memory usage for PB DOS

Started by Gunther, August 16, 2013, 05:38:10 AM

Previous topic - Next topic

Gunther

We had a small but fair discussion about flat real mode/ unreal mode and the advantages or disadvantages here. For members not familiar with that technique, I've found an old example which I've written for PB 3.2 and TASM 4 in the 90s. The assembly language source could be assembled with MASM or JWASM, too.

It will generate an integer array in the usual DOS memory, save the array above 1 MB, delete the original array and restore it's content. Moreover, it'll draw the Barnsley fern in SCREEN 12 (standard VGA: 640x480 in 16 (!) colors) and save and restore it, just like the integer array.

It will only work under plain DOS with HIMEM.SYS 2 and above or a virtual machine (DOSBox, VirtualBox are tested, but VMWare, Bochs, VirtualPC etc. should do the job, too). It won't work with the DOS emulation of Windows, OS/2 or DOSEmu. There's no chance to bring it to work in these environments. That's what I meant in the above discussion and that's the price which is to pay for the flat mode. Therefore is a clean 32 bit Protected Mode client probably the better way.

Anyway, here it is. This weekend I'll try some VESA stuff with that technique. Have fun and take care.

Gunther
You have to know the facts before you can distort them.

FORTRANS

Hi,

   Worked as stated.  Error message in a VDM.  It did what it
said it would do with MS-DOS 6.22 and HIMEM.SYS.  Numbers
and the ferns as stated.

Regards,

Steve N.

Gunther

Hi Steve,

Quote from: FORTRANS on August 16, 2013, 09:56:52 PM
   Worked as stated.  Error message in a VDM.  It did what it
said it would do with MS-DOS 6.22 and HIMEM.SYS.  Numbers
and the ferns as stated.

that was clear. Thank you for testing it. In Bochs etc. it'll do the job, too.

Gunther
You have to know the facts before you can distort them.