Mail Archives: djgpp/2006/03/03/05:17:46
"Chris Giese" <NoEmailAds AT execpc DOT com> wrote in message
news:440798e7 DOT 2544010 AT news DOT execpc DOT com...
> "Rod Pemberton" <do_not_have AT sorry DOT bitbucket DOT cmm> wrote:
> >
> >"DJ Delorie" <dj AT delorie DOT com> wrote in message
> >news:200603011425 DOT k21EPHCE005449 AT envy DOT delorie DOT com...
> >> "Florian Liebig" <FlorianLiebigEMD AT compuserve DOT de> wrote in message
> >news:4404EB6F DOT D050DB39 AT compuserve DOT de...
> >>>
> >I'm already doing that with both DJGPP and OW. I'm running a Ring 0 OS
> >written in DJGPP and OW without using a cross-compiler for either one.
The
> >disadvantage is that it can only be started from RM DOS (so far). It
won't
> >be startable with GRUB, etc...(at least not immediately, this can be
added
> >later on in development)
>
> I have used GRUB to boot kernels made with DJGPP (COFF format), MinGW
> (Win32 PE COFF format), and GCC for Linux (ELF format). I used the GRUB
> "a.out kludge" feature to boot the non-ELF kernels. It works well,
> and I recommend it.
>
> http://my.execpc.com/~geezer/osd/index.htm
Chris,
I hope your still around to read this.
Regarding your comment in PNP.C:
/* Turbo C++ 1.0 seems to "lose" anything declared 'static const' */
and another comment in SERIAL.C:
/*********************************************************************
this function used to look like this:
static int deq(queue_t *q, unsigned char *data)
but Watcom C produces broken code for such a function. I don't know why.
**********************************************************************/
The problem for both of those is the use of the keyword 'static'.
I've restructured and ported djgpplba.c so it works with WATCOM
(OpenWatcom1.3).
http://www.openwatcom.org/index.php/Accessing_the_Harddisk_using_LBA_under_DPMI
I can repost the complete code if you like, since they botched the author
section...
my.execpc.com/CE/AC/geezer/ods/libc lists the GCC/DJGPP callee-save
registers but not those for WATCOM. I believe the OW1.3 stack calling
convention -3s uses: ebx,edi,esi,ebp And, the OW1.3 register calling
convention -3r uses:ebx,edi,esi,ebp,ecx,edx. I'm not sure about the
selectors or other optimization levels.
Freedos-32's (http://freedos-32.sourceforge.net/) 'x' loader has never
worked for me. But, your MBLOAD.C will almost load Freedos-32. IIRC, it
doesn't fill in the hard disk info, but otherwise works.
I've added PS/2 keyboard routines to your standalone KBD.C. Would you like
a version?
Rod Pemberton
PS. I don't have actual email. So anything I post would be through a NG...
- Raw text -