X-Authentication-Warning: delorie.com: mail set sender to opendos-bounces using -f Date: Sun, 30 Nov 2003 12:42:12 +1100 (EST) From: DONALD PEDDER To: opendos AT delorie DOT com Subject: RE: several technical problems In-Reply-To: <3FC852ED.28215.9D331A3@localhost> Message-ID: References: <01FD6EC775C6D4119CDF0090273F74A4FD6C74 AT emwatent02 DOT meters DOT com DOT au> <3FC852ED DOT 28215 DOT 9D331A3 AT localhost> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: opendos AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: opendos AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > What exactly happens if you try to enable multitasking > (DEVICE=EMM386.EXE MULTI [...] then load TASKMGR without /S)? I haven't tried that - I'll give it a go tonight. I'm just used to the task-switcher, so maybe this is a better way to go. > Please read about ANSI and PROMPT in DOSBOOK. I've tried to find it before, but couldn't see what I was looking for. Maybe it was a bit obscure? I'll have another look. > This huge BITCOM program is responsible for your connection, right? Yes (I didn't realise it was huge until now). Even my WinModem works okay when I use it (i.e. don't need the Win drivers). :-) > If it was loaded before TASKMGR, it would (possibly) work better. Could give that a try. > trying to access modem from a few tasks simultaneously. (This is in no > way specific to DR-DOS Task Switcher, it is due to the way that DOS task > switchers work in general -- MS-DOS 5.0 DOSShell would probably behave > quite similarly.) Yes, I have found that once the modem gets used by a particular session, then weird things happen when you try to use it from another session, even after it's been hung-up. To use it okay from another session you have to kill the original session it was running in. > The programs that run in (8086-compatible) Real Mode of CPU can use > extended memory only as a swap space (to move some data/code back and > forth between lower 640 Kb and extended memory), but of course only if > given program has such a feature built-in. Other than bitcom and DR-DOS stuff (e.g. the editor), the only programs I'm running are ones I've written myself. How do I build that in? (perhaps that's a question for the FPC list) > There are also programs which run in Protected Mode (either 16-bit, on > 80286 and above, or 32-bit, on 80386 and above), which can use all > memory directly. But they are different programs. I've never written programs that directly access memory. I just write the high-level code and let the OS take care of the particulars (that's what it's for after all). I seem to remember a few DR-DOS sources were made available a while back - was the editor one of them? > For example, if you have some Turbo Pascal source which doesn't mess > with hardware and low-level stuff (no ASM insertions, direct access to > BIOS, etc.), it should compile successfully under both Borland's TP and > FreePascal. In the first case, you get a Real Mode executable program > which can use directly only the low 640 Kb, in the second -- a 32-bit > Protected Mode executable which runs on 80386 and above only, but can > use directly all 46 Mb of your free extended memory. Ah. Maybe I should take my old programs and re-compile them with FP? :-) Doesn't solve the bitcom/editor problem though. :-( (unless the editor source is available for me to re-compile) > Some information about minimum memory requirements is stored in EXE file > header, How do I look at that? Is there a special editor or something? If I do a "type" on it all I see is garbage. > Nothing very unusual. You can probably eliminate SETVER, find > a smaller CD-ROM driver (try, e.g., Acer/BenQ VIDE-CDD.SYS) or at > least try to load them high (HIDEVICE=... or DEVICEHIGH=...), replace > DRMOUSE with CTMOUSE (smaller and better), but it won't give you much > more conventional memory, because BITCOM is such a huge moster. How much memory would I need to run the editor? At the moment I do "type filename|more" to look up stuff on my computer while online, but obviously the editor is a more convenient method to use. > There is something called SULFNBK (or similar) in Windows 9x, I can try that if it's safe. I try not to look at that partition at all while in Windows, so that it doesn't go dumping stuff there on me. > If I need to have DOS and Windows on the same machine, I keep them on > separate primary partitions. DOS partition is hidden when Windows run > and no LFNs are stored. Right. I have each OS on a separate partition, and 2 other partitions - "data" which contains text files and Pascal programs (i.e. DOS stuff), and "programs" which contains Windows programs and other binaries (pictures and stuff). I keep the "data" partition visible to Windows so that I don't have to re-boot if I want to quickly check something (and I look at it by dropping into MS-DOS first, but still sometimes Windows is touching it for some reason). > SET PEXEC=C:\full\path\to\GREEN.EXE Now why didn't I think of that? I already have some PEXEC stuff in there. :-) > > This says I have 46Mb available via XMS - how do I make the programs > > use that? > > You don't. Unless they are written to use it, they *can't*. Since I'm writing my own programs, I can. :-) The question is how? > If they are written to use it, then they will be option settings of > command line switchjes to tell them to use it. Okay, I'll look into that. > Well, that's one of the problems. Working with DOS at this level is > *inherently* "technical". I'm more software than hardware. I can explain to you how a computer works, but if you put one in front of me to work on, it's just a disk and a bunch of wires to me. :-) Like with cars - I can tell you about 2 stroke vs. 4 stroke, how turbo-charging works, etc., but if my car's broken down I wouldn't know where to start (other than looking for loose wires, which was precisely my problem racing last week, only the loose wire wasn't in the engine bay - it was under the back of the car at the fuel pump, and wasn't found until after my first race :-( ). > Desqview or Taskmgr effectively create separate "640k" (minus > drivers)areas for each task. So how do I make taskmgr do that (given that it's apparently not doing that at the moment)? Go from task-switching to multi-tasking? thanks all, dp.