From: mrmeanie AT easynet DOT co DOT uk (Mr. Meanie) Newsgroups: comp.os.msdos.djgpp Subject: ASM Modules in DJGPP + DPMI Date: Fri, 22 Nov 1996 20:38:01 GMT Organization: [posted via] Easynet Group PLC Lines: 36 Message-ID: <57470h$s8f@cherry.news.easynet.net> Reply-To: mrmeanie AT easynet DOT co DOT uk NNTP-Posting-Host: mrmeanie.easynet.co.uk To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Hi, Could anyone help me? I am coding some VESA stuff in ASM. I wish to code it in 100% asm. I am using TASM to assemble the code, o2c to convert the object files into COFF format, and then I use GCC to compile the COFF file into an EXE file. I have successfully turned a few of my ASM programs into working EXEs this way. The CWSDPMI for use with DJGPP seems to be the only good DPMI server + DOS extender about - DOS32 doesn't have all of the DPMI functions, Windows is slow + I don't have Win95 so I couldn't get 32-bit.... Plus the fact that FSDB by Spirit is a very good debugger.... The programmes I write do work, however, this is where I need help :- To interface with VESA, I need a bit of DOS memory, So I call DPMI int 31h fuction 100h (Allocate DOS Memory) to allocate DOS mem. All I need is 48 paragraphs, - 768 bytes, and function 100h returns 'out of memory error'!!. And what really annoys me I that I am asking for 16 (or 32) paragraphs, it returns out of mem error, and then proceeds to tell me that there are ONLY 3000+ paragraphs available!! Well if there are 3000+ paragraphs available, and I ask for 48, WHY DON'T I GET MY 48!?!?!? If however, I call the C equivalent ('__dpmi_allocate_dos_mem' or something similar) it works fine. Can anyone assist me in getting it to work in ASM? By the way, If anyone wants any help with using ASM modules in DJGPP, I would be glad to help.... (hopefully you wont need certain DPMI functions which I am having problems with!) Help Much Appreciated Laters -Mr. Meanie (Geoffrey French)