Xref: news2.mv.net comp.os.msdos.djgpp:2622 From: Massimiliano Mantione Newsgroups: comp.os.msdos.djgpp Subject: Re: Development for DOS Date: Thu, 11 Apr 1996 17:46:26 +0200 Organization: Computer Science Dep. - Milan University Lines: 81 Message-ID: <316D2952.7ED3@mailer.cefriel.it> References: <316c7509 DOT 132306015 AT nntp DOT ix DOT netcom DOT com> NNTP-Posting-Host: puccini.cefriel.it Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit CC: martyb AT ix DOT netcom DOT com To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Martin Brundage wrote: > > I am doing software development (PCI network adapter diagnostics) for DOS, > starting with some legacy code using Boreland's 32-bit DPMI, PowerPack. I am > new to DOS programing. Reverting to DOS as a development environment is, for > me, a rather unpleasant prospect. For a project like mine, is Linux/dosemu a > viable, practical alternative to DOS as a development environment? Sorry, I'm not sure about this... > Can DJGPP be substituted for PowerPack, and at what cost in time and effort? My answer should be yes, you can use DJGPP. If you are used to Unix C/C++ (and perhaps already use gcc there) you have practically nothing new to learn about the programming environment. You could have troubles only if the legacy code you have is terribly non-portable (i.e. it requires a compiler speaking BorlandC, not ANSI C), or if it has a lot of inline asm (see the FAQ about this). > Once I have the finished product can the program be run from a self-booting > diskette using a Linux kernel with dosemu? If so, how? Has anyone tried this? From what I know of Linux, you can boot it from floppy, but you actually need TWO floppies: one with the kernel, and another with a ``root file system''. I see that in the Linux installation procedure this second floppy is copied on a RAM disk, to speed up the following operations... Anyway, this is a SLOW kind of startup. I just do not understand one thing: if you develop your diagnostic application as a DOS executable, why would you need to boot a Linux kernel and then dosemu to run it? Couldn't you use a real DOS? You'd need to boot a Linux kernel only if you developed your application as a Linux executable... (I think). > If I am on the right track so far, where are the docs that can give me remaining > info I need to get started? The info you need are: 1) Eli's FAQ on DJGPP (a wonderful work). You can find it anywhere you can download DJGPP (any simtel mirror). 2) At least the dosemu HOWTO (it is where you can download Linux...) 3) Good luck... (I am joking!). Now, my advice. I think you do not like DOS for three reasons: 1) Absurd memory limitations. 2) No multitasking. 3) Maybe you are used to Unix tools, and the Unix environment in general. Now, consider this: Problem 1 is solved with DJGPP. I solved problem 2 with Windows 95 (you could also use Os/2). I am definitely no Microsoft fan, but that operating system sometimes helps (at least with a true multitasking between DOS boxes...). Practically every Unix tool has a DOS port, from vi and emacs to cp, ls and the bash shell, so if you like them you can use them. So, if you have to develop a DOS low-level diagnostic application, I think you would be better using DOS. At least you will know your application will always run correctly. All the best, Massimiliano -- /---------------------------------------------------------\ 0 | Massimiliano Mantione [mantione AT mailer DOT cefriel DOT it] | 0 /--+---------------------------------------------------------+--\ | /\ ._. /\ | | __/ \__ / o \ /` ,__ /` __/ \__ | | \ \ / / \ `-' /_ ___\ / __ ____, \ \ / / | | >--()--< ,-. \ / \ / | / / \ / / / >--()--< | | /__/ \__\ |o' / / / \__/ / \__/ / / / /__/ \__\ | | \ / `--' ' ` '` ` ` ` \ / | | \/ ------------------------------------ \/ | \--+---------------------------------------------------------+--/ 0 | CEFRIEL Via Emanueli, 15 (20126 MILANO) [Italy] | 0 \---Tel: +39-2-66100083 (66100750) [Fax: +39-2-66100448]--/