Hi! 12-Апр-2004 00:22 [EMAIL PROTECTED] (Bart Oldeman) wrote to [EMAIL PROTECTED]:
>> Forged to remove old INITHEADERS. Also, what bad in "$(HDR)*.h", why >> enumerating .h files is better? BO> It's not better as such, but I'm not sure if * works for all the different BO> make tools we are using. It's safer. Don't sure about "safer", but you may sometime forget to update manual list when something will be changed (renamed or added) in ../hdr. :) BO> The same problem occurs with !ifdef -- esp Borland MAKE version 2.0. BO> You might want to check out Turbo C 2.01 as our lowest common denominator BO> compiler: BO> http://community.borland.com/article/images/20841/tc201.zip BO> it's 1074 KB. Ok, I try to download this. >> PPS: trailing spaces wasn't removed. :( BO> Too many formatting changes make me tired when reading the diff... When $(CONFIGURATION) replaced by $(TARGET).lnk, changes anyway present. BO> I don't see the point of changing ":- " to "::". Because I wish to make more clear difference between plain comments and commented commands. BO> Similarly you still have too many optimizations which aren't. They are (usually) such for BC. Some changes I begin to check also with OW. BO> For Watcom the code only becomes larger if you replace far pointers p->baz by BO> explicit ((foo *)MK_FP(bar,0))->baz. BO> Maybe if you use something like BO> #if defined(__TURBOC__) && (__TURBOC__ > 0x202) BO> #define para2far(seg) ((void _seg *)(seg)) Nice. Though: #if __TURBOC__ > 0x202 /* by standard, non-defined names replaced by 0. */ /* if you worry, that __TURBOC__ may be empty definition: #define __TURBOC__ (and defined() doesn't saves in this case), you may use "+0": #if __TURBOC__+0 > 0x202 */ # define FP_PTR(type,seg,ofs) ((type far*) MK_FP (seg, ofs)) # define FP_SEG_PTR(type,seg) ((type _seg*)(seg)) Explicit castings should ease to transit sources to C++ compilers. BO> #else BO> #define _seg far BO> #define para2far(seg) (MK_FP(seg,0)) # define FP_PTR(type,seg,ofs) ((type far*) MK_FP (seg, ofs)) # define FP_SEG_PTR(type,seg) ((type far*) MK_FP (seg, 0)) BO> #endif BO> psp _seg *p = para2far(cu_psp); psp _seg *p = FP_SEG_PTR (psp, cu_psp); BTW, using such names as `psp', `seg' for types is misleading (looks like variable names). I think, `PSP' and `seg_t' in given case is better. BO> r.es = FP_SEG(p->ps_filetab); BO> r.di = FP_OFF(p->ps_filetab + bx); BO> it will improve a bit and it's not too ugly. Fine. ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id70&alloc_id638&op=click _______________________________________________ Freedos-kernel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freedos-kernel