Using XP Pro SP2 this allows large programs to load into QBX.
In c:\windows\system32\config.nt
EMM = RAM
------------------
Announcement
Collapse
No announcement yet.
EMS memory and Windows XP
Collapse
X
-
That works!
Went to My Computer, found QBX.EXE and followed directions.
Great, only took a few years, but can now work in XP!
Thank you very much!
------------------
Leave a comment:
-
I find it interesting that no one figured out the solution on this one, so far. This is what you do:
It is not important what _default.pif is set at. Go to properties of QBX.exe, click memory, set EMS to None, everything else to Auto and check uses HMA. You don't set compatibility to windows 95 or 98, and you can check the "close on exit" (optional), and then click OK. The system automatically creates the qbx.pif file that has the same attributes.
You can double click on either qbx.exe or qbx.pif and it will load any size file. You tell me if it works on your machine?
Leave a comment:
-
In Win XP, DOS programs take on the properties of "_default.pif"
unless thay have their own PIF file (which is different than a
LNK shortcut file). All you have to do to designate EMS, XMS,
and other options is locate DOS executables (e.g., PB.EXE) using
Windows Explorer or PowerDesk, right-click on the file, select
Properties, set all options (as in Win95/Win98), and click Ok.
This will create a PIF file for the DOS program (e.g., PB.PIF).
Note that when you run DOS programs from a CMD prompt
(C:\ prompt), Win XP switches to the Command.Com interpreter
and system environment defined by "_default.pif". However, if
you have defined a corresponding PIF as described above, that
PIF environment is set up by NTVDM.
Thus, if you right-click and select Properties for PB.EXE
(PBC.EXE, PBLIB.EXE, or other DOS programs), you can set up
environments tailored to the needs of each program (by creating
a PIF for each program).
Also note that PIFs are valid XP Desktop and Start Menu
shortcuts, just as they were in Win95 and Win98.
For some DOS programs, it "may" also be desirable to edit
Config.Nt (as previously suggested in this thread) in order to
set "files=nn" and/or "buffers=nn".
If your PIF files associated with DOS programs specify EMS
and/or XMS, NTDVM will emulate both the presence and functions
of himem.sys when you run programs associated with such PIF
files, providing your Config.Nt file specifies:
dos=high, umb
device=%SystemRoot%\system32\himem.sys
When you set up PIF files for DOS programs that access XMS
(but not EMS), you should specify "NONE" for EMS memory so that
you get the maximum amount of available memory in the emulated
DOS environment for such programs.
------------------
Jim C.
Leave a comment:
-
I was under the impressions that COMMAND was the 16bit emulation
command prompt and CMD was 32bit.
------------------
Leave a comment:
-
hi yall and merry christmas.
i have noticed a difference when shellin/executing the commands COMMMAND and CMD
in win2k that there are different options in the properties settings.
maybe this will cause low memory.
------------------
[This message has been edited by paul d purvis (edited December 23, 2003).]
Leave a comment:
-
Thank Tom.
Tried everything, but no luck.
Can only load small programs or "Out of Memory"
------------------
Leave a comment:
-
In MyComputer, move to C:\WINDOWS and right-click _DEFAULT; select [Properties]; select [Program] tab; clear-out [Close on exit] (it should be unchecked.) This causes the effects of AUTOEXEC.NT and CONFIG.NT to be instated and remain persistent in CMD (DOS) sessions.
Under the Memory tab, I have AUTO for both forms of Conventional Memory (with the Protected box unchecked); Expanded Memory = 16384; Extended Memory = 16384, with "Uses HMA" checked, and MS-DOS Protected Mode (DPMI) Memory set at AUTO.
My CONFIG.NT file:
dos=high, umb
device=%SystemRoot%\system32\himem.sys
files=40
buffers=40
My AUTOEXEC.NT file:
@echo off
floppy off
FLOPPY.COM is a freeware utility that shuts off the floppy drive, which is necessary when running QBX in XP, because in that environment QBX will check the floppy drive whenever a new file is selected to be opened within the QBX editor, which is extremely annoying.
FLOPPY.COM is available at http://advsys.net/ken/utils.htm
I'm using CMD.EXE for running QBX, not COMMAND.COM. I'm using a full-screen DOS display with window width=80 and height=25, to reproduce the standard DOS display. My command history buffer size = 50, number of buffers = 4, edit options = insert mode.
I'm starting QBX within a command prompt generated with CMD.EXE.
Good luck!
--Tom
------------------
Tom Brodhead
Leave a comment:
-
Still curious as to what is different with Tom's machine.
I've tried unsuccessfully to get QBX to load anything other
than the smallest program. Did Buffers=40 work on any other machine?
------------------
Leave a comment:
-
Someone at this forum(or some forum??) mentioned a program called
DosBox http://dosbox.sf.net but no one ever said if they had ever
tried it. I don't have XP(thank god) but am curious to see if it would
be a viable solution in the tragic event that I might have to use it
some day. Has anyone here tried it?
also there's a program called X-Setup http://www.xteq.com that
allows you to adjust hundreds of windows hidden settings via a handy
point and click interface with detailed descriptions of each setting.
It might help with some of those more difficult settings. Sure beats
the heck out of regedit.
Buck
------------------
[This message has been edited by Buck Huffman (edited December 19, 2003).]
Leave a comment:
-
Tom,
Didn't work on my XP Pro system.
Is there anything else not remarked in config.nt?
Are you starting QBX with some switches?
Did you create a .PIF file or something?
I have to run Windows 98 SE to use QBX.
------------------
Leave a comment:
-
Heh! Anything is possible!
------------------
Lance
PowerBASIC Support
mailto:[email protected][email protected]</A>
Leave a comment:
-
Lance,
Re-read that statement (which I had read before trying out BUFFERS in the first place); it doesn't say that CMD.EXE and COMMAND.COM aren't effected by the results of BUFFERS; it says that XP isn't affected by BUFFERS. This does not mean that DOS sessions within COMMAND.COM and CMD.EXE are not affected by BUFFERS, does it?
My proof:
When I REM out the "BUFFERS=40" line in my CONFIG.NT and restart my CMD.EXE session, QBX cannot open my larger BAS code files, blanching to the screen "Out of memory". On the other hand, when I un-REM the "BUFFERS=40" line in my CONFIG.NT and restart CMD.EXE, QBX loads my larger BAS files without a hitch. Nothing else on my system is changed when I perform this test; the proof is in the pudding, as they say...
Now, I take that HELP entry on BUFFERS not to mean that BUFFERS is not supported, just that it has no relevance within the main XP environment; the phrase "it is accepted for compatibility" implies that it is supported within CMD.EXE and COMMAND.COM.
If, however, that HELP entry is to mean that BUFFERS is not supported at all, then it looks like I've come across a "hidden" feature in XP-Pro, ServicePak 1a...
--Tom
------------------
Tom Brodhead
[This message has been edited by Tom Brodhead (edited December 17, 2003).]
Leave a comment:
-
Sorry Tom, but it looks like your results were coincidence with something else you changed... the following is from Windows Help:
Buffers
Windows XP does not use this command. It is accepted only for compatibility with MS-DOS files.
------------------
Lance
PowerBASIC Support
mailto:[email protected][email protected]</A>
Leave a comment:
-
I just got an XP machine and was stymied by memory problems for DOS apps, particularly qetting QBX (PDS 7.1) to load anything but very small code files. I finally stumbled across a solution that builds upon the one Tom Hanlin mentioned above.
To the CONFIG.NT file, add "BUFFERS=40", like this:
dos=high, umb
device=%SystemRoot%\system32\himem.sys
files=40
buffers=40
This solved the problem with QBX completely, although I do not understand why (any takers?) This may solve other memory-related problems in XP's CMD.EXE, so I thought I'd post it here for consideration.
(I cleared out my AUTOEXEC.NT file as well, BTW.)
--Tom
------------------
Tom Brodhead
Leave a comment:
-
Further to my last post I detected (by eye) a bit of spare RAM
at 0xE000 so I set EMM386 frame=E000. Hey presto my PBDOS
program reported FRE(-11) 32Mbytes. The problem now is that I
get an EMM syntax error when I put any form of EMM command in to
CONFIG.NT
------------------
Leave a comment:
-
Just for info I have bought the latest CYBERCOM 1.7gig 256Mbyte
system with XP and the dreaded NO EMS arrived. After a great
deal of trying all the fixes with no success I booted it with
DOS 6, set up CONFIG.SYS with HIMEM.SYS and EMM386.
On boot up EMM386 failed to load with the message "High memory
already in use by RAM or ROM".
So that appears to be the end of my DOS programming on this new
machine. I recommend using this method before wasting fruitless
hours.
Good job I bought PB for Windows.
------------------
Leave a comment:
-
asking just once is sufficient thanks... please see the reply to your other post at http://www.powerbasic.com/support/pb...read.php?t=895
------------------
lance
powerbasic support
mailto:[email protected]suppor[email protected]</a>
Leave a comment:
-
Guest repliedSo, it becomes quite evident that applications based on use of EMS
are harder and harder to maintain everyday with the new MS
Operating systems and PC's. And the only reason why we are all so
interested in getting EMS is because PB 3.50 stores VIRTUAL
ARRAYS in EMS. So the question is 'Is anyone at POWERBASIC
redesigning the compiler in order to have VIRTUAL ARRAYS stored
in XMS? (please say yes!)
------------------
Leave a comment:
-
If anyone knows how to eliminate video or system ROM, please let me know
------------------
Davide Vecchi
[email protected]
Leave a comment:
Leave a comment: