From: faybs AT iafrica DOT com (Fabian Nunez) Newsgroups: comp.os.msdos.djgpp Subject: Re: Any one writing OS in DJGPP? (reply, NightTiger...) Date: 31 Jan 1997 21:03:03 GMT Organization: The CodeSmith Lines: 43 Message-ID: <5ctmm7$hkt$1@proxy01.iafrica.com> References: <32E14858 DOT 4CF6 AT concentric DOT net> <32E50EE7 DOT 3F54 AT CS DOT ColoState DOT edu> <32EA9DBA DOT AF0 AT cam DOT org> <5cphom$73u$9 AT celebrian DOT otago DOT ac DOT nz> NNTP-Posting-Host: 196-7-171-22.iafrica.com Mime-Version: 1.0 Content-Type: Text/Plain; charset=US-ASCII To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp In article <5cphom$73u$9 AT celebrian DOT otago DOT ac DOT nz>, kurt AT deepsouth DOT co DOT nz says... > >In article <32EA9DBA DOT AF0 AT cam DOT org> >Tudor writes: > >> I'm really interested and curious about OS developing.I'd like to do >> stuff like this as a hobby.But I have no ideea about the basics of OS >> developing.ie. how to create software interupts and so. >> Are there any tutorials I could read? How can I find out more about >> this? > >Now, I think that executables created with djgpp require a DPMI server >and this DPMI server requires MS-DOS or similar. So how do we write a >simple, 32 bit executable that doesn't make calls to DPMI functions. >Because that is what is needed to write an OS?, Right? > >Thanks > >Kurt Confused Hausler That's actually quite easy. I hopped onto the OS-writing bandwagon two weeks ago, once I realized that DJGPP is a very nice development platform. How to do it? quite simple actually. I downloaded Bill Currie's boot loader (unfortunately I can't remember where from, but I think I got the address from this list, so it should be in the searchable archive at delorie.com). This has a makefile that invokes the linker directly so all the standard libraries (these are the bits that need DOS) are ignored. Of course, this means that you'll have to write EVERYTHING yourself. But then again, you *are* writing an OS, right? :) Beware though, the program copyboot has a bug in it, namely the biosdisk() call has two parameters switched around. It doesn't show up with the teeny demo program, but it had me tearing out my hair when triple faults kept on resetting my system, seemingly at random... Oh, in case it matters, I'm using DJGPP 2.01. Cheers Fabian -- Fabian Nunez, B.Sc(Hons) mailto:faybs AT iafrica DOT com Freelance Coder http://127.0.0.1/dev/null The book where percussion meets psychology: "Man And His Cymbals"