Re: [Freedos-kernel] FAT32 Completeness

2007-01-12 Thread Arkady V.Belousov
Hi!

12-Янв-2007 15:27 [EMAIL PROTECTED] (Leonardo Hirokazu de Souza
Hamada) wrote to freedos-kernel@lists.sourceforge.net:

LHH I read somewere that FAT32 support in FreeDos is not yet complete so

 It _is_ complete - FreeDOS fully supports reading/writing to FAT32
partitions.

-
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT  business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] SDA and SHSUFDRV

2006-08-30 Thread Arkady V.Belousov
Hi!

30-Авг-2006 15:55 [EMAIL PROTECTED] (Jason Hood) wrote to
freedos-kernel@lists.sourceforge.net:

  Not sure, if I understand your problem, but what prevents you from
 setting your own address of DTA (INT 21/1A)?
JH Perhaps I should have been a bit more clear.  The DTA I was referring
JH to passes the pointer to the buffer for the read request.  It's not the
JH DTA as used by the find functions.

 Then I completely not understand you. DTA is a name for area, which
used for findfirst/findnext. What _you_ name as DTA?

JH I can't change where the kernel wants its data.

-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] SDA and SHSUFDRV

2006-08-25 Thread Arkady V.Belousov
Hi!

23-Авг-2006 16:11 [EMAIL PROTECTED] (Jason Hood) wrote to
freedos-kernel@lists.sourceforge.net:

JH I received a bug report about SHSUFDRV not working in FreeDOS, but
JH it worked fine in MS-DOS; RDRV also worked fine.  After failing to
JH replicate the problem with the versions of FreeDOS I had, I finally
JH got the latest boot CDs (beta9-sr2  1.0-testing).  These did indeed
JH fail, so I was able to offer that user a fixed FDRV.
JH The problem itself is due to the SDA.  It seems sometime between 2035a
JH and 2036 the (temporary) DTA has moved into the SDA.  This means that
JH when FDRV reads a sector and then restores the swap data, the sector it
JH just read gets overwritten with whatever was in the swap.  The fix
JH simply made the SDA size a fixed 0x7c0 bytes, thus preventing the
JH overwrite.  To provide a more desirable solution, what should I do?

 Not sure, if I understand your problem, but what prevents you from
setting your own address of DTA (INT 21/1A)?

JH 1) The SDA is unlikely to change, just leave it fixed at 0x7c0.
JH 2) Buffer a single sector, write it back after the swap.
JH 3) Provide a better size to the SDA function (215D06).
JH 4) Move the DTA back out of the SDA.
JH 5) Make use of the internal seek/read calls (2F1227/8).
JH Of course, I would prefer 3 or 4, since that involves no effort
JH on my part. :)  1 requires separate code for other DOSes (or I could
JH just make it a fixed 0x7da, that MS-DOS 7.10 returns).  2 requires an
JH extra 512 bytes for the buffer.  5 would probably be best (no swap
JH required at all), but unfortunately ROMDOS does not support them, nor
JH is there a write function (hence using the SDA in the first place).

-
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] makefiles

2006-05-23 Thread Arkady V.Belousov

Hi!

 Eric, while you currently do maintain FD kernel, please, add 
somewhere in batch files set dos4g=quiet. I think, it may be added above 
to SET LAST=1 in config.b:


__O\_/_\_/O__
:---

set dos4g=quiet
set LAST=1
if not %LAST% == 1 defaults.bat clearset
_
  O/~\ /~\O

This makes more terse output when rebuilding kernel by hidding dos4gw 
copyrights (for those utilities, which based on dos4gw).



---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] please change the default freecom and increasethe kernel version

2006-01-26 Thread Arkady V.Belousov
Hi!

26-Янв-2006 22:48 [EMAIL PROTECTED] (Bart Oldeman) wrote to
freedos-kernel@lists.sourceforge.net:

 well, we have:
 kernel 2034, 2035 released by Bart
 kernel 2035A released by Jeremy
 kernel 2035B by Jeremy (2035A + stable features backported from 2035W)
 kernel 2035W by Jeremy, experimental/development line
BO isn't there also still a kernel 2035-Tom somewhere (drivesnapshot.de)? Or
BO did 2035A supersede that as far as Tom is concerned?

 Tom says, that he import into his tree only some small set of patches.





---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Can FreeDOS be installed on embedded system based on 80186/80188?

2005-12-16 Thread Arkady V.Belousov
Hi!

16-Дек-2005 19:45 [EMAIL PROTECTED] (╞о╦╞╔│┼╕ ╞о) wrote to
freedos-kernel@lists.sourceforge.net:

оо Hi, I'm a newer to FreeDOS and I want to know if FreeDOS can be installed
оо on embedded system based on 80186/80188?

 Yes.

оо If yes, is it possible that
оо freeDOS work on an embedded system without BIOS?

 No - FreeDOS, as any other DOS, works with hardware only through BIOS.

PS: Better, if you move your questions into freedos-user@ group.





---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] re: Can FreeDOS be installed on embedded system based on 80186/80188?

2005-12-16 Thread Arkady V.Belousov
Hi!

16-Дек-2005 13:50 [EMAIL PROTECTED] (Eric Auer) wrote to
freedos-kernel@lists.sourceforge.net:

EA EDIT 0.7d and MKEYB, which should work even on 8086. Or use no

 MKEYB uses INT15 service, which not present on XT.





---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] freecom/lib cd_dir.c,1.4,1.5 critrchk.c,1.1,1.2 err61.c,1.4,1.5 mk_rddir.c,1.2,1.3 optsb.c,1.3,1.4 where.c,1.5,1.6

2005-12-11 Thread Arkady V.Belousov
Hi!

I wrote:

 +++ mk_rddir.c10 Dec 2005 10:09:43 -  1.3
 +int lfn_mrc_dir(const char *path, int mode)
 +{
 + struct REGPACK r;
 + int mrc_f[6] = { 0x713A, 0x7139, 0x713B, 0x3A, 0x39, 0x3B };
------

 BTW, bug! Function number should come in AH, not AL! So:

 + r.r_ax = mrc_f[mode + (checkDriveSupportsLFN(getdisk() + 'A') ? 0 : 
 3)];
 if (checkDriveSupportsLFN(getdisk() + 'A'))
   mode += 0x7100;
 r.r_ax = mode;

 Possible solution with my edition:

if (...)
  mode += 0x7100;
else
  mode = 8; /* shift low byte to high byte */
r.r_ax = mode;

 Or:

if (...)
  mode = (mode  8) + 0x7100;
r.r_ax = mode;
[...]
#define chdir(x) lfn_mrc_dir(x,0x3B00)
--^^





---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] freecom/cmd dir.c,1.25,1.26 if.c,1.8,1.9 set.c,1.6,1.7

2005-12-10 Thread Arkady V.Belousov
Hi!

10-Дек-2005 10:09 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 +++ dir.c 10 Dec 2005 10:09:43 -  1.26
 +#ifdef FEATURE_LONG_FILENAMES
  void printLFNname(char *shortName, char *ext)
  {
  char pathbuffer[128];
 + char longname[270];
 + /* reconstruct the path+filename */
   pathlen = strrchr(path,'\\') - path;
   sprintf(pathbuffer,%*.*s\\%s%c%s

 In memory of defensive programming:

- strrchr() may return NULL (I think, in many cases most standard functions
  should be replaced by own versions with more safe characteristics);
- pathbufer shorter than longname.

 +  /* LFN get canonical LFN */
   r.r_ds = FP_SEG(pathbuffer);
 + r.r_si = FP_OFF(pathbuffer);

 + printf( %.30s , strrchr(longname, '\\')[1]);
--^---^^^

 This is same as strrchr() + 1.





---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] comments changing

2005-12-06 Thread Arkady V.Belousov
Hi!

 I think, before changing comments in current dev snapshot, should be
released some intermediate release (say, 2036).





---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/sys sys.c,1.41.2.20,1.41.2.21 fdkrncfg.c,1.11.2.2,1.11.2.3

2005-12-01 Thread Arkady V.Belousov
Hi!

30-Ноя-2005 21:59 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 +++ sys.c 30 Nov 2005 21:59:18 -  1.41.2.21
 -extern int VA_CDECL printf(const char * fmt, ...);
 -extern int VA_CDECL sprintf(char * buff, const char * fmt, ...);
 +extern int VA_CDECL printf(const char FAR * fmt, ...);
 +extern int VA_CDECL sprintf(char FAR * buff, const char FAR * fmt, ...);
 +++ fdkrncfg.c30 Nov 2005 21:59:18 -  1.11.2.3
 -extern int VA_CDECL printf(const char * fmt, ...);
 -extern int VA_CDECL sprintf(char * buff, const char * fmt, ...);
 +extern int VA_CDECL printf(const char FAR * fmt, ...);
 +extern int VA_CDECL sprintf(char FAR * buff, const char FAR * fmt, ...);

 Isn't better to move prototypes to something like prf.h?
--
-- 
Best regards! Sincerely yours, Хемуль Советикус.
   Утомлённый чаем любитель сладкого, в девичестве Бильбо Ленивчатый.





---
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637alloc_id=16865op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel init-mod.h,1.56.2.4,1.56.2.5 prf.c,1.31.2.3,1.31.2.4 proto.h,1.75.2.7,1.75.2.8

2005-11-20 Thread Arkady V.Belousov
Hi!

20-Ноя-2005 16:39 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 +++ prf.c 20 Nov 2005 16:39:14 -  1.31.2.4
 @@ -123,17 +123,17 @@
 +STATIC void do_printf(const char FAR *, va_list);
 +VOID VA_CDECL printf(const char FAR * fmt, ...);
^^
[...]
 -VOID VA_CDECL printf(const char *fmt, ...)
 +VOID VA_CDECL printf(CONST BYTE FAR *fmt, ...)
^^ Why?

 -VOID VA_CDECL sprintf(char * buff, const char * fmt, ...)
 +VOID VA_CDECL sprintf(char FAR * buff, CONST BYTE FAR * fmt, ...)
 -STATIC void do_printf(CONST BYTE * fmt, va_list arg)
 +STATIC void do_printf(CONST BYTE FAR * fmt, va_list arg)

 +++ init-mod.h20 Nov 2005 16:39:14 -  1.56.2.5
 +VOID VA_CDECL init_sprintf(char FAR * buff, const char FAR * fmt, ...);
 +++ proto.h   20 Nov 2005 16:39:14 -  1.75.2.8
 +VOID VA_CDECL printf(const char FAR* fmt, ...);
 +VOID VA_CDECL sprintf(char FAR * buff, const char FAR* fmt, ...);





---
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628alloc_id=16845op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel intwrap.asm,NONE,1.1.2.1

2005-11-20 Thread Arkady V.Belousov
Hi!

20-Ноя-2005 16:57 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 --- NEW FILE: intwrap.asm ---
 reloc_call_int13_handler:
 cli ; disable other interrupts for now

 INT instruction already disables IFlag.

 stc ; force error unless BIOS clears

 ?! This is issue of caller to set or reset CFlag.

 push dx ; store BIOS drive # for error handling usage
 push ds ; get segment of kernel DATA
 mov  ds, [cs:_DGROUP_]
 pushf   ; simulate int call so returns back here (flags+cs:ip on
 stack)
 call far [ds:_UserInt13]

 Bug!!! Here DS register is garbaged, whereas it used by some functions
(for example, INT13/42).

 pop  ds  ; restore ds
 jc   int13err   ; test if error, if not return to caller
 int13iret:
 inc sp  ; clean up stack
 inc sp

 sti ; ensure int's are renabled
 retf 2  ; return to caller leaving flags asis

 I don't think that this is right way, because caller may disable
interrupts for own purposes, whereas here interrupts enabled.

 int13wrap:
 %IF XCPU  186
 push ax ; preserve registers, setup stack frame
 push bp
 mov  bp, sp
 mov  ax, 13h; want to push 0x13 onto stack
 xchg ax, [bp+2] ; so restore pushed ax value and put 0x13 on stack
 pop  bp ; clean up stack frame (leaving just 0x13 pushed on stack)

pushbp
pushbp
mov bp,sp
mov word [bp+2],13h
pop bp





---
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628alloc_id=16845op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel intwrap.asm,1.1.2.1,1.1.2.2 kernel.asm,1.54.2.6,1.54.2.7

2005-11-20 Thread Arkady V.Belousov
Hi!

20-Ноя-2005 19:03 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 +++ intwrap.asm   20 Nov 2005 19:03:17 -  1.1.2.2
 -sti ; ensure int's are renabled
  retf 2  ; return to caller leaving flags asis

 Another potential bug: if caller will not STI somewhere after INT13,
then it will work in CLI state (because its IFlag is CLIed by INT
instruction).





---
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628alloc_id=16845op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: [Freedos-cvs] kernel/kernel intwrap.asm,NONE,1.1.2.1

2005-11-20 Thread Arkady V.Belousov
Hi!

20-Ноя-2005 13:50 [EMAIL PROTECTED] (Kenneth J. Davis) wrote to
freedos-kernel@lists.sourceforge.net:

int13iret:
inc sp  ; clean up stack
inc sp
sti ; ensure int's are renabled
retf 2  ; return to caller leaving flags asis
  I don't think that this is right way, because caller may disable
 interrupts for own purposes, whereas here interrupts enabled.
KJD I'm not sure what is correct here,

 I suggest, only returned ZF/CF should be copied to existing value on
stack. For example:

int13iret:
pushax
lahf
pushbp
mov bp,sp
and byte [bp+10],not 0C1h ; 10=bp+ax+...+cs:ip
and ah,0C1h ; remain only SF/ZF/CF flags
or  byte [bp+10],ah ; pass to caller SF/ZF/CF from INT13
pop bp
pop ax
add sp,2
iret

KJD but I suppose it should simply leave
KJD the flag as the user had it (I think I added this after reading a note
KJD somewhere in RBIL about a bug in earlier BIOSes that failed to do this).





---
This SF.Net email is sponsored by the JBoss Inc.  Get Certified Today
Register for a JBoss Training Course.  Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit:
http://ads.osdn.com/?ad_id=7628alloc_id=16845op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] request for comments/ideas etc

2005-11-07 Thread Arkady V.Belousov
Hi!

6-Ноя-2005 19:05 [EMAIL PROTECTED] (Kenneth J. Davis) wrote to
freedos-kernel@lists.sourceforge.net:

KJD fix ATAPICDD, so a year or two down the road) is a replacement for the
KJD BIOS int 13h.  How does the ontrack and such software work so DOS
KJD doesn't overwrite them?

 They move itself to upper available memory, as indicated by ram_top at
0:413, and the decrease this variable.





---
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42 plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel dosfns.c,1.70.2.4,1.70.2.5 entry.asm,1.27.2.3,1.27.2.4 fatfs.c,1.70.2.5,1.70.2.6 int2f.asm,1.34.2.3,1.34.2.4 inthndlr.c,1.87.2.18,1.87.2.19 kernel.asm,

2005-11-06 Thread Arkady V.Belousov
Hi!

6-Ноя-2005 19:50 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 +++ inthndlr.c6 Nov 2005 19:50:34 -   1.87.2.19
 -  r.DX = 0xA2AB;  /* on succes DS:AX set to A2AB:B97Ch */
 +  r.DX = 0xA2AB;  /* on succes DX:AX set to A2AB:B97Ch */
 @@ -1839,29 +1859,89 @@
 */
r.DX = 0xA2AB;   /* on succes DS:AX set to A2AB:B97Ch */
--^^ DX

 +++ entry.asm 6 Nov 2005 19:50:34 -   1.27.2.4
 +mov  dx,[cs:_DGROUP_]
 +mov  ds,dx

mov ds,[cs:_DGROUP_]

 +cmp  word [_OemHook21], -1
 +je   no_oemhndlr
 +cmp  word [_OemHook21+2], -1
 +je   no_oemhndlr

 This is if (FP_OFF (OemHook21) != -1  FP_SEG (OemHook21) != -1),
which is not equal to if (OemHook21 != -1) _and_ prevents OemHook21 point
to HMA. I suggest, check only for offset is enough. (And in this case you
may restore DS right before JE.)

 +pop  dx
 +pop  ds
 +jmp  far [ds:_OemHook21]  ; invoke OEM handler (no return)

 Looks like bug: if before ds=cs:_DGROUP_ DS doesn't contains segment
of _OemHook21, then it willn't contain it after POP DS (and JMP then tries
to get jump address from wrong point). Else, if DS contains segment of
_OemHook21 before this code, then why MOV DS above?





---
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42 plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: [Freedos-cvs] kernel/kernel dosfns.c,1.70.2.4,1.70.2.5 entry.asm,1.27.2.3,1.27.2.4 fatfs.c,1.70.2.5,1.70.2.6 int2f.asm,1.34.2.3,1.34.2.4 inthndlr.c,1.87.2.18,1.87.2.1

2005-11-06 Thread Arkady V.Belousov
Hi!

6-Ноя-2005 17:44 [EMAIL PROTECTED] (Kenneth J. Davis) wrote to
freedos-kernel@lists.sourceforge.net:

+jmp  far [ds:_OemHook21]  ; invoke OEM handler (no return)
  Looks like bug: if before ds=cs:_DGROUP_ DS doesn't contains segment
 of _OemHook21, then it willn't contain it after POP DS (and JMP then tries
 to get jump address from wrong point). Else, if DS contains segment of
 _OemHook21 before this code, then why MOV DS above?
KJD I agree there is a bug here, I originally coded this differently (copied
KJD address to a variable in code segment which I believe a comments still
KJD has remnants of)

pushax  ; place for
 push   ax  ;  far address
pushbp
 movbp,sp   ; pointer to above place
pushds
mov ds,[cs:_DGROUP_]
lds ax,[_OemHook21]
mov [bp+6],ds
pop ds
cmp ax,-1   ; FP_OFF(OemHook21) != -1 ?
xchg[bp+4],ax
pop bp
je  ...
retf
...:add sp,4

KJD and then simplified it at some point (which introduced
KJD the bug).  I have a fix locally (just need to compile and test).





---
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42 plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] re: Re: reload partition table and reassign drive letters

2005-10-19 Thread Arkady V.Belousov
Hi!

20-Окт-2005 00:42 [EMAIL PROTECTED] (Bernd Blaauw) wrote to
freedos-kernel@lists.sourceforge.net:

 style driver which MOUNTS an arbitrary FAT partition: You only
BB except it cannot re-assign already used driveletters I guess. Same as

 There exists utilities, which swaps drive letters (for example,
SSWAP.EXE from Stacker). So, this is possible to handle drive mappings with
help of external utilities on the fly.

 Though, I suggest, this may be dangerous, if some other utility (like
disk cache) links itself to drive letters.

BB If C..F are still available, dismount + remount.





---
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] reload partition table and reassign drive letters

2005-10-18 Thread Arkady V.Belousov
Hi!

18-Окт-2005 13:48 [EMAIL PROTECTED] (Daniel Breest) wrote to
freedos-kernel@lists.sourceforge.net:

DB The question is: is it possible to trigger the freedos kernel to reread
DB the partition table and reassign drive letters from within a running
DB freedos.

 No. Code, which recognizes partitions and prepares structures for them,
present only in transient part, which removed after booting.





---
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: device=f:\foo.sys fails

2005-09-20 Thread Arkady V.Belousov
Hi!

20-Сен-2005 21:52 [EMAIL PROTECTED] (David O'Shea) wrote to
freedos-kernel@lists.sourceforge.net:

DO Could we not just initialize 26 but still make the memory for the
DO unused ones  E: available after the drivers are loaded?

 It is.




---
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server.
Download it for free - -and be entered to win a 42 plasma tv or your very
own Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] kernel fdconfig.sys reading bug.

2005-07-02 Thread Arkady V.Belousov
Салям!

1-Июл-2005 18:17 [EMAIL PROTECTED] (Steve Calfee) wrote to
freedos-kernel@lists.sourceforge.net:

SC Hi I found a bug. We discussed it on alt.os.free-dos and
for dos files, if it finds it it uses fdconfig.sys. Apparently, if it
does not find the dos file it uses neither config.sys or fdconfig.sys.
I think it is a bug. It is on freedos beta9sr1 cd iso image.
SC kernel 1.1.33 worked! loaded fdconfig.sys
SC kernel 1.1.34 failed! did not loaded fdconfig.sys or config.sys
SC kernel 1.1.35 failed! did not loaded fdconfig.sys or config.sys

 Try the kernel, compiled by Lucho
(http://linux.tu-varna.acad.bg/~lig/freedos/kernel/), where included my
config.c. When I rework this source, I fix some bugs. Unfortunately, Kenneth
too conservative to include it completely at once, but, probably, kernel
from http://www.fdos.org/kernel/ already fixed in this aspect.

SC ( I ended each of fdconfig.sys and config.sys with a different error
SC so I would know which was being used. Where it succeeded all but the
SC error command was successfully executed.)

 For this, ECHO directive may be used.




---
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_idt77alloc_id492op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Analysis: Support for sector sizes != 512 bytes

2005-05-13 Thread Arkady V.Belousov
Hi!

12--2005 05:03 [EMAIL PROTECTED] (Eric Auer) wrote to
freedos-kernel@lists.sourceforge.net:

EA DOS3.x+ 32bit sector number calls) and 2048 byte (raw sector size
EA on CD-ROM and maybe on magneto-optical drives) cases.

 AFAIK, CD-ROM sector is 2352 bytes.

EA - To support bigger sectors, raise _maxbksize and make each element
EA   of BUFFERS and DiskTransferBuffer bigger

 Eric, I suggest, non-standard sector size is not the hottest issue
(and, probably, will never be actual in future). The more so, does anyone
contains resources (devices), where non-standard sectors support may be
TESTED? Whereas for non-standard devices you anyway should install their own
device driver, which may easily emulate 512-bytes sectors.




---
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_ids93alloc_id281op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Analysis: Support for sector sizes != 512 bytes

2005-05-13 Thread Arkady V.Belousov
Hi!

13--2005 15:38 [EMAIL PROTECTED] (Eric Auer) wrote to
freedos-kernel@lists.sourceforge.net:

 The more so, does anyone
 contains resources (devices), where non-standard sectors support may be
EA YES, big question!

 Main question!




---
This SF.Net email is sponsored by Oracle Space Sweepstakes
Want to be the first software developer in space?
Enter now for the Oracle Space Sweepstakes!
http://ads.osdn.com/?ad_ids93alloc_id281op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Trying to figure out 386 kernel EMM386 crashes

2005-04-26 Thread Arkady V.Belousov
!

24--2005 16:02 [EMAIL PROTECTED] (Eric Auer) wrote to
freedos-kernel@lists.sourceforge.net:

(Other questions already answered by Bart).

EA - there are I186 and I386 defines which are only used in inthndlr.c
EA   and main.c, but I have the feeling that you get better consistency
EA   by REMOVING those and using the global XCPU define instead.

 XCPU is only our suggestion how compiler should generate code. I386
defined by (some) compilers and (more precise) reflects real state.

EA - entry.asm adjusts BP depending on XCPU at int21_exit_nodec, so
EA   there should be a WARNING in the code that this has to stay in
EA   sync with the Protect/Restore macros.

 Yes, such additional comments always welcomed (from me).

EA - int2f.asm saves/restores FS and GS to SI and DI if the compiler is
EA   Watcom. This saves 4 bytes of stack but is a BAD IDEA because it
EA   hardcodes the idea that Protect/Restore macros save ONLY FS and GS
EA   if the compiler is Watcom.

 ?




---
SF.Net email is sponsored by: Tell us your software development plans!
Take this survey and enter to win a one-year sub to SourceForge.net
Plus IDC's 2005 look-ahead and a copy of this survey
Click here to start!  http://www.idcswdc.com/cgi-bin/survey?id5hix
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] [Freedos-cvs] kernel/kernel initdisk.c,1.34,1.35

2005-03-16 Thread Arkady V.Belousov
Hi!

7--2005 04:58 [EMAIL PROTECTED] ([EMAIL PROTECTED]) wrote to
freedos-kernel@lists.sourceforge.net:

jo I assume you are pointing out the use of hiword  loword versus what I used
jo I did this for two reasons, the 1st is that those macros are not in the
jo stable kernel's portab.h, so using them would just make a kernel that did
jo not
jo compile.  Yes I could easily add them, but that wasn't the point of the
jo commits,
jo they were to fix specific issues whose changes I am reasonably sure have no
jo negative
jo side effects.

 But adding things, which eases following fixes (and not breaks anything
already existing) - what bad in this?

jo Testing directly against 0x as a boundary condition is clearer and more
jo succinct
jo (to me) than testing if (0x  (unsigned)((pEntry-NumSect)  16u))
jo equals 0,
jo hence my selection of it over the use of hiword.

 But this (manual macro expanding) introduces more differences (in
source and code) between different branches.

jo The use of loword is
jo technically
jo safer and more accurate, but again the macro isn't available in stable yet,
jo and unless
jo someone changes UWORD to be smaller or signed, in which case, this is the
jo least of
jo their issues, the resulting value should still be the same (based on the if)
jo .
jo Please explain why you feel hiword is better and I will reconsider.
jo (and please do, if you have a reason other than style or if the general
jo  consensus is that using hiword is clearer, then I will make the change)

- it more readable (we check hi/lo word/part of long number, not check for
  hit in some range, as may be suggested from comparing val = 0x).

- it (in some cases) more efficient:

__O\_/_\_/O__
;   if (hs  hiword(LBA_address))   /* LBA_address  hs * 0x1ul */
cmp ax,word ptr [bp-6]
jbe L$122
_
  O/~\ /~\O

- if this macro inefficient on some compiler, it may be adapted for this
  compiler without changes in (main) sources.

jo   if (hiword (pEntry-NumSect) == 0)
jo   {
jo pddt-ddt_defbpb.bpb_nsize = loword (pEntry-NumSect);




---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_ide95alloc_id396op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] [Freedos-cvs] kernel/kernel initdisk.c,1.34,1.35

2005-03-16 Thread Arkady V.Belousov
Hi!

16--2005 18:56 I wrote to freedos-kernel@lists.sourceforge.net:

AVB if (mode != LARGEST  (mode  ALLOC_HIGH_LOW) 
AVB instead
AVB if ((mode != LARGEST)  (mode  FIRST_FIT_U) 

 And see the difference: this code checks for HIGH_LOW strategy, but
original source reuses FIRST_FIT_U name, thus making misleading code.




---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_ide95alloc_id396op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel fatfs.c,1.71,1.72 inthndlr.c,1.93,1.94 proto.h,1.77,1.78

2005-03-08 Thread Arkady V.Belousov
Hi!

6--2005 16:58 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 merge from dev kernel, Jason Hood's patch for extended DPBs and Set Extended
 Error function
 +++ inthndlr.c6 Mar 2005 16:58:31 -   1.94
 @@ -1215,6 +1226,20 @@
 +  /* Set Extended Error */
 +case 0x0a:
 +  {
 +lregs er;
 +fmemcpy(er, FP_DS_DX, sizeof(er));
 +CritErrCode= er.AX;
 +CritErrDev = MK_FP(er.ES, er.DI);
 +CritErrLocus   = er.CH;
 +CritErrClass   = er.BH;
 +CritErrAction  = er.BL;
 +CLEAR_CARRY_FLAG();
 +break;
 +  }

 Hm. Why to use stack and fmemcpy()? Isn't better to access directly:

__O\_/_\_/O__
case 0x0a:
#define er (* MK_PTR (lregs, lr.DS, lr.DX))
  CritErrCode= er.AX;
  CritErrDev = MK_FP(er.ES, er.DI);
  CritErrLocus   = er.CH;
  CritErrClass   = er.BH;
  CritErrAction  = er.BL;
#undef er
  CLEAR_CARRY_FLAG();
  break;
_
  O/~\ /~\O

Or, if if by some reason doesn't wish to copy MK_PTR definition into stable
edition (why not?), _in given case_ you may do:

#define er (* (lregs FAR*) MK_FP (lr.DS, lr.DX))
/* --^^^ Don't forget */




---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_ide95alloc_id396op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel initdisk.c,1.34,1.35

2005-03-06 Thread Arkady V.Belousov
!

6--2005 16:12 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 insure bpb_huge is initialized (zeroed) [merge from dev kernel]
 +++ initdisk.c6 Mar 2005 16:12:34 -   1.35
 @@ -603,12 +603,15 @@
 +  if (pEntry-NumSect = 0x)
 +  {
  pddt-ddt_defbpb.bpb_nsize = (UWORD) (pEntry-NumSect);

  if (hiword (pEntry-NumSect) == 0)
  {
pddt-ddt_defbpb.bpb_nsize = loword (pEntry-NumSect);




---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_ide95alloc_id396op=click
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel initdisk.c,1.33.2.4,1.33.2.5

2005-02-03 Thread Arkady V.Belousov
Hi!

2--2005 07:47 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG Suppress spurious warning on 1022 cylinder LBA partition and optimise a bit

 Details, please.

LG +++ initdisk.c  2 Feb 2005 07:47:34 -   1.33.2.5
LG -  /* Valid entry:
LG - entry == chs ||   // partition entry equal to computed values
LG - (chs-Cylinder  1023   // or LBA partition
LG -  (entry-Cylinder == 1023 ||

 To support 1022, here you may replace ==1023 by =1022.

LG -   entry-Cylinder == (0x3FF  chs-Cylinder)))
LG -  */
LG -  return !((pEntry_chs-Cylinder == chs-Cylinder 
LG -pEntry_chs-Head == chs-Head 
LG -pEntry_chs-Sector   == chs-Sector)||
LG -   chs-Cylinder  1023u 
LG -   (pEntry_chs-Cylinder == 1023 ||
LG -pEntry_chs-Cylinder == (0x3ff  chs-Cylinder)));
LG +  if (pEntry_chs-Cylinder != (chs-Cylinder  0x3FF)
LG +   || pEntry_chs-Head !=  chs-Head
LG +   || pEntry_chs-Sector   !=  chs-Sector)

 Non-equal replacement. But see below (*).

LG +STATIC void warning_suspect(char *partitionName, struct CHS *chs,
LG + struct CHS *pEntry_chs)

STATIC void warning_suspect(CStr partitionName, const struct CHS *chs,
---^
  struct CHS *pEntry_chs)

LG +if (pEntry-FileSystem == 0
LG +  || partitionsToIgnore  (1  i)
LG +  || IsExtPartition(pEntry-FileSystem)
LG +  || scan_type == SCAN_PRIMARYBOOT  !pEntry-Bootable
LG +  || !IsFATPartition(pEntry-FileSystem))
LGcontinue;

 Last condition (!IsFATPartition()) includes also IsExtPartition() and
==0 checks, thus, IsExtPartition() and ==0 checks may be removed:

if (partitionsToIgnore  (1  i)
 || scan_type == SCAN_PRIMARYBOOT  !pEntry-Bootable
 || !IsFATPartition(pEntry-FileSystem))
  continue;

LG  /* some FDISK's enter for partitions
LG -8 GB cyl = 1023, other (cyl1023)
LG +8 GB cyl = 1022 or 1023, other (cyl1023)

 Bart earlier explains this and gives link to URL with details, but
decised to remain only ==1023 check.

LG   */
LG -if (is_suspect(chs, pEntry-Begin))
LG +if (!IsLBAPartition(pEntry-FileSystem))
LG  {
LG -  print_warning_suspect(partitionName, pEntry-FileSystem, chs,
LG -pEntry-Begin);
LG +  warning_suspect(partitionName, chs, pEntry-Begin);
LG +  warning_suspect(partitionName, end, pEntry-End);
LG  }

 Non-equal replacement: here checked only non-LBA partitions ((*) this
explains condition simplification in warning_suspect()), LBA partitions
doesn't checked at all (neither 1023, nor 1022), even if they completely
inside 1023 cylinder. If this replacement valid, it should be commented.

LG +if (pEntry-NumSect == 0)
LG  {
LG +  printf(Not using %s with 0 sectors\n, partitionName);
LG +  continue;
LG  }

 This check should be moved above, before LBA_to_CHS() calls.

 Well, my edition for this function (note: partitionStart replaced by
startSector):

__O\_/_\_/O__
  for (i = 0; i  4; i++, pEntry++)
  {
if (partitionsToIgnore  (1  i)
 || scan_type == SCAN_PRIMARYBOOT  !pEntry-Bootable
 || !IsFATPartition(pEntry-FileSystem))
  continue;

sprintf(partitionName, partition %s:%d (ID %02x),
---^
  extendedPartNo ? Ext : Pri,
  extendedPartNo ? extendedPartNo : i + 1,
  pEntry-FileSystem);

/* sanity checks, that partition structure is OK */
if (pEntry-NumSect == 0)
{
  printf(Not using %s with 0 sectors\n, partitionName);
  continue;
}

startSector += pEntry-RelSect;
LBA_to_CHS(chs, startSector, driveParam);
LBA_to_CHS(end, startSector + pEntry-NumSect - 1, driveParam);
^^^

/* For LBA partitions above 1023 cylinder only NumSect field is used:
   into 10-bit field for cylinder in partition entry usually placed
   low 10-bit of real value or some fake value (like 1022 or 1023).
   Thus, we skip CHS validness check for LBA partitions, even if
   they completely lie below 1024 cylinder.
*/
if (!IsLBAPartition(pEntry-FileSystem))
{
  warning_suspect(partitionName, chs, pEntry-Begin);
  warning_suspect(partitionName, end, pEntry-End);
}

if (chs.Cylinder  1023 || end.Cylinder  1023)
{
[...]
DosDefinePartition(driveParam, startSector, pEntry, extendedPartNo, i);
--^^^
_
  O/~\ /~\O




---
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create 

[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel initdisk.c,1.33.2.3,1.33.2.4 inthndlr.c,1.87.2.16,1.87.2.17

2005-01-31 Thread Arkady V.Belousov
Hi!

30--2005 19:32 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

KD +++ initdisk.c  30 Jan 2005 19:32:08 -  1.33.2.4
KD +  if (pEntry-NumSect = 0x)

  if (hiword (pEntry-NumSect) == 0) /* 16-bit value? */

KD +pddt-ddt_defbpb.bpb_nsize = loword (pEntry-NumSect);




---
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag--drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel defaults.bat,1.1.2.7,1.1.2.8

2005-01-31 Thread Arkady V.Belousov
Hi!

30--2005 19:32 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 some of Arkady's suggestions (simplify logic), add comments
 +++ defaults.bat  30 Jan 2005 19:32:08 -  1.1.2.8
 +if %COMPILER%-%OS% == WATCOM-Windows_NT set BINPATH=%BASE%\binnt
 +if %COMPILER%%LIB% == MSC set LIB=%MSC_BASE%\lib

 Into second line I recommend also add the separator (for example, dash,
but not space), as in first line. :)




---
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag--drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel dosfns.c,1.70.2.2,1.70.2.3 dyninit.c,1.8.2.2,1.8.2.3 fatdir.c,1.47.2.2,1.47.2.3 fatfs.c,1.70.2.4,1.70.2.5 globals.h,1.45.2.2,1.45.2.3 inithma.c,1.28.2.1,1.28.2.2 irqstack.asm,1.6,1.6.2.1 main.c,1.81.2.9,1.81.2.10 prf.c,1.31.2.2,1.31.2.3

2005-01-31 Thread Arkady V.Belousov
Hi!

29--2005 20:33 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

KD new debug macros, simplify selective debug output
KD --- NEW FILE: debug.h ---
KD #ifdef DEBUG
KD #define DebugPrintf(x) printf x
+#define DEBUG_NEED_PRINTF
KD #else
KD #define DebugPrintf(x)
KD #endif
[...]
KD #ifdef DEBUGCFG
KD #define CfgDbgPrintf(x) printf x
+#define DEBUG_NEED_PRINTF
KD #else
KD #define CfgDbgPrintf(x)
KD #endif
[...]
KD /* just to be sure printf is declared */
KD #if defined(DEBUG) || defined(DEBUGIRQ) || defined(DEBUGCFG) || \
KD defined(DEBUGDOSFNS) || defined(CHDIR_DEBUG) || defined(FIND_DEBUG) || \
KD defined(DEBUGFATDIR) || defined(DEBUGFATFS)
KD #ifndef DEBUG_NEED_PRINTF
KD #define DEBUG_NEED_PRINTF
KD void printf(const char *, ...);
KD #endif
KD #endif

 Remove these lines. About declaration see below:

KD just comments and additional debug messages, updated history (little
KD +++ fatdir.c29 Jan 2005 20:33:10 -  1.47.2.3
KD  #include portab.h
KD  #include globals.h
KD +#include debug.h

 Note: proto.h (called in globals.h) already tries to declare printf(),
if defined DEBUG. And you also try to declare printf() in debug.h. I think,
debug.h (without declaring printf()) should be included before (or inside)
globals.h, and proto.h should checl DEBUG_NEED_PRINTF instead DEBUG.

KD +++ fatfs.c 29 Jan 2005 20:33:11 -  1.70.2.5
KD +FatFSDbgPrintf((dos_open: splitpath(\%s\, \%11s\) failed.\n,
KD @@ -330,7 +339,7 @@
KD  #ifdef DEBUG
^ DEBUGFATFS?

KD @@ -1817,18 +1830,18 @@
KD +  DebugPrintf((get_near_f_node: fnp is %p\n, fnp));
KDif (fnp-f_count  (++fnp)-f_count)
KD  panic(more than two near fnodes requested at the same time!\n);
KDfnp-f_count++;
KD +  DebugPrintf((got near fnode, fnp-f_count=%i\n, fnp-f_count));

 Also FatFSDbgPrintf()?

 BTW, I think, better to _not_ abbriviate Debug as Dbg (ie., above
should be FatFSDebugPrintf()), because easier to search only DebugPrintf,
not both DebugPrintf and DbgPrintf.




---
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag--drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: [Freedos-cvs] kernel/kernel task.c,1.44.2.4,1.44.2.5

2005-01-19 Thread Arkady V.Belousov
Hi!

19--2005 15:06 [EMAIL PROTECTED] (Kenneth J. Davis) wrote to
freedos-kernel@lists.sourceforge.net:

+++ task.c17 Jan 2005 18:34:10 -  1.44.2.5
-#if DEBUG
+#ifdef DEBUG
Fix:
#if TST+0
---^^
KJD I'm confused.
KJD How does #ifdef DEBUG (the new code)

 Oops... :( Sorry, I'm dubiously blind man - I visually entangle/miss
+ and - characters in your update. :(

KJD On a tangential [only slightly related] note, for debug code I want in
KJD the source but
KJD almost never compiled (something that helped track down a specific
KJD issue, but generally not needed for a debug build), should I used
KJD #ifdef DDEBUG  ... #endif
KJD or simply
KJD #if 0 ... #endif
KJD or
KJD #ifdef ?? suggestions ?? ... #endif

 I think, for (most) specific-purposed debug fragments, better to use
general-purpose #if 0 - usually, when you debug some fragment, you not
need to see other cross-kernel debug messages. The more so, I don't think
that you need to devise name for conditional compilation guard - debugging
of specific fragments is rare thing, and in this case you may manually
(temporarily!) edit source (0 - 1), instead manually editing your
config.bat (but don't forget to re_build_ the kernel after/if you restore
original source file with older date).

 After all, I think, DEBUG name is useful for places, where is perofmed
output of general-purpose and user-friendly information. And such places
should be small amount, else profit of debugging output (which can't be
redirected to separate device with permanent memory!) will be losted in big
amount of garbage.




---
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag--drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel task.c,1.44.2.4,1.44.2.5

2005-01-17 Thread Arkady V.Belousov
Hi!

17--2005 18:34 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 tc debug build fix
 +++ task.c17 Jan 2005 18:34:10 -  1.44.2.5
 -#if DEBUG
 +#ifdef DEBUG

__O\_/_\_/O__
#if TST
# error 1
#endif
_
  O/~\ /~\O
__O\_/_\_/O__
bcc -c -DTST tst.cpp
Borland C++  Version 3.1 Copyright (c) 1992 Borland International
Error t.cpp 1: Expression syntax
Fatal t.cpp 2: Error directive: 1
*** 2 errors in Compile ***
_
  O/~\ /~\O

Fix:

#if TST+0
---^^

PS: I don't understand, what the trouble was with debugging? Old code was
includes conditional part when DEBUG is defined, new code includes code only
when DEBUG is defined AND not zero. Ie. -DDEBUG now not enough to include
those conditional part.




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: Re: [Freedos-cvs] kernel/kernel

2005-01-12 Thread Arkady V.Belousov
Hi!

6--2005 23:47 [EMAIL PROTECTED] (Peter Fedorow) wrote to
freedos-kernel@lists.sourceforge.net:

OmmitIfOptimizeSize break ();
 Very hard to justify such macros, then you may as well use a comment, the
 potentially nasty fallthrough would still be there in the embedded case.
PF A macro will allow all such cases to be turned on and off at once.  This

 There is no noticeable gain (in resulting code size) and no enhancement
of source, so such places better to optimize at all and just comment
tricky places (for example, where reused `break' from following `case'
branch).

PF A more accurate name for the macro would probably be
PF OmmitIfOptimizeSizeExtreme, but I think that might be getting
PF rediculously long.  Perhaps someone has a better name for it?

 Again: better to not bother with _such_ ways, just optimize. And
comment tricky places.

 IMHO if you really want to save space for embedded stuff you should
 selectively remove features (e.g. FAT12 or FAT32, LBA, FCB stuff,
 whatever). Those in the business hopefully make money of their embedded
 stuff, and they are free to make such modifications; they should not prey
 to the kernel developers to do it.
PF Are embedded developers welcome to send in clean patches to selectively
PF remove those items?

 To remove - no. To send patches, which _adds_ possibility of
conditional compilation (with removing some unneeded parts) - yes.




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel dsk.c,1.44.2.2,1.44.2.3 initdisk.c,1.33.2.1,1.33.2.2

2005-01-12 Thread Arkady V.Belousov
Hi!

9--2005 11:25 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 fix bug 1789 and add some extra debug prints
 +++ initdisk.c9 Jan 2005 11:25:44 -   1.33.2.2
if (pEntry-NumSect  0x)
 +  {
 +pddt-ddt_defbpb.bpb_nsize = 0;
  pddt-ddt_defbpb.bpb_huge = pEntry-NumSect;
 +  }
else
 +  {
  pddt-ddt_defbpb.bpb_nsize = (UWORD) (pEntry-NumSect);
 +pddt-ddt_defbpb.bpb_huge = 0;
 +  }

 Small optimization :) and readability change:

  pddt-ddt_defbpb.bpb_nsize = 0;
  pddt-ddt_defbpb.bpb_huge = pEntry-NumSect;
  if (hiword (pEntry-NumSect) == 0)
  {
pddt-ddt_defbpb.bpb_nsize = loword (pEntry-NumSect);
pddt-ddt_defbpb.bpb_huge = 0;
  }

Last assignment (bpb_huge = 0) also may be optimized (because hiword is
already zero), but this (3-5 bytes reducing) hurts readability.




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Ways to improve the kernel (was: inthndlr...) f_nodes...

2005-01-12 Thread Arkady V.Belousov
Hi!

6--2005 15:11 [EMAIL PROTECTED] (Eric Auer) wrote to
freedos-kernel@lists.sourceforge.net:

EA If you REALLY want to change the FreeDOS kernel in an impressive way,
EA then remove that far f_nodes. This will improve compatibility, size,
EA and (maybe not at once, but it still) stability.

 This (improvement) is just suggestion, no one yet measure real gain (or
lost).

 IMHO if you really want to save space for embedded stuff you should
 selectively remove features (e.g. FAT12 or FAT32, LBA, FCB stuff,
 whatever).
EA Other examples, partially inspired by Tyler: Simplify config sys parsing,

 How?

EA remove most of the country support,

 This code is very spread, including access through indirect calls.

EA maybe in some cases even UMB or HMA handling.

 By removing HMA handling, you lost in low memory size. Removing UMB
handling gives not too much (main code is in transient part and some code
inside memmgr.c).




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] What is what?

2005-01-11 Thread Arkady V.Belousov
Hi!

11--2005 12:19 [EMAIL PROTECTED] (Pat Villani) wrote to
freedos-kernel@lists.sourceforge.net:

PV With all the unstable versions and private branches going around,

1. official 2035.
2. tom's stable fork (not very known).
3. Mine/Lucho unstable fork.
4. Kenneth tree, which is compomise between 2035 and (3) (development?).

PV what is the official kernel?

 2035.




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel main.c,1.81.2.7,1.81.2.8

2005-01-11 Thread Arkady V.Belousov
Hi!

9--2005 20:36 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 Possible bugfix for Grub
 +++ main.c9 Jan 2005 20:36:21 -   1.81.2.8
 +  init_PSPSet(DOS_PSP);
set_DTA(MK_FP(DOS_PSP, 0x80));
PSPInit();
 -  init_PSPSet(DOS_PSP);

 No, this shouldn't fix/change anything, because only PSPinit()
initializes PSP area, other calls (set_DTA() and init_PSPSet()) just sets
DOS variables (through INT21 calls), which points to PSP.




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel entry.asm,1.27.2.1,1.27.2.2

2005-01-10 Thread Arkady V.Belousov
Hi!

4--2005 19:05 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 Fix divide error message text
 +++ entry.asm 4 Jan 2005 19:05:08 -   1.27.2.2
 -; print a message 'Interrupt divide by zero'
 +; print a message 'Interrupt divide error'

 This is not fix, this is change - though division by zero interrupt
INT0 hapens not only in case of real division by zero, but this (Divide by
Zero) is a standard name. On the other side, Interrupt divide error I
read as error in dividing the interrupt, so, if you wish to give more
meaningful name, there should be something like Interrupt: division error.




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel build.bat,1.14.2.6,1.14.2.7 buildall.bat,1.6.2.2,1.6.2.3 config.b,1.12.2.3,1.12.2.4 defaults.bat,1.1.2.5,1.1.2.6

2005-01-10 Thread Arkady V.Belousov
Hi!

31--2004 21:37 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

 use NT OW binaries on NT, add access to more options from build cmd line
 +++ defaults.bat  31 Dec 2004 21:37:51 -  1.1.2.6
 +set BINPATH=%BASE%\bin
 +if %COMPILER% == TC set BINPATH=%BASE%
 +if %COMPILER% == WATCOM set BINPATH=%BASE%\binw
 +if %COMPILER% == WATCOM if %OS% == Windows_NT set 
 BINPATH=%BASE%\binnt
 +
 +echo Path to compiler programs (binaries) is %BINPATH%

if not %BINPATH% ==  goto skip_binpath
^^
set binpath=%BASE%\bin
if %COMPILER% == TC set BINPATH=%BASE%
if %COMPILER% == WATCOM set BINPATH=%BASE%\binw
if %COMPILER%%OS% == WATCOMWindows_NT set BINPATH=%BASE%\binnt
-^^
echo Path to compiler programs (binaries) is %BINPATH%
:skip_binpath

 +:- MSC searches libraries only through LIB variable.
 +if %COMPILER% == MSC set LIB=%MSC_BASE%\lib

if %COMPILER%%LIB% == MSC set LIB=%MSC_BASE%\lib
-^

 +set XCPU_EX=
 +++ build.bat 31 Dec 2004 21:37:51 -  1.14.2.7
 +echo 
 :---

 This ECHO shows line with quotes.

  if %1 == 386   set XCPU=386
 +if %1 == x86   goto setCPU

 This option doesn't shown in help screen.

  cd ..\sys
  call %MAKE% all
  if errorlevel 1 goto abort-cd
 +if NOT %XUPX% ==  %XUPX% ..\bin\sys.com

 Isn't better to place XUPX call inside sys\makefile, like in
kernel\makefile?




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: Re: [Freedos-cvs] kernel/kernel inthndlr.c,1.87.2.12,1.87.2.13

2005-01-08 Thread Arkady V.Belousov
Hi!

5--2005 22:59 [EMAIL PROTECTED] (tom ehlert) wrote to Eric Auer
freedos-kernel@lists.sourceforge.net:

te and while I agree completely with what he wrote, IMO he slightly
te missed the point (and you -eric- miss it completely)
 The whole point is that if you remove the break; completely, then
 somebody who later reads or changes the code might be mislead into
 thinking that the code SHOULD fall through ...

 Eric correctly repeat my point, as I try to express it. (Of course,
there may be raised other issues about shared programming effort, but I
begun thread with only specific reason of readability, which was affected by
patch.)




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: [Freedos-cvs] kernel/kernel inthndlr.c,1.87.2.12,1.87.2.13

2005-01-05 Thread Arkady V.Belousov
Hi!

5--2005 08:30 [EMAIL PROTECTED] (Pat Villani) wrote to
freedos-kernel@lists.sourceforge.net:

+++ inthndlr.c31 Dec 2004 12:46:21 -  1.87.2.13
   return_user();
-  break;
 I think, for readability purposes (to make understanding by new
developers easier) `break' should be remained as comment. Something like:
/* return_user() never returns, so break not need */
PV That's really bad practice.  The reason that it's there is so if, by
PV reason of a bug or hardware failure of any sort, return_user() does
PV really return, you will have bug that will be a nightmare to find.

 No, I say not this (that `break' should be present): I say, that new
kernel developer may not know (yet) that return_user() never returns, so
[s]he may wonder, why there is no `break' and why this is not a bug. So,
commenting this trick may ease the understanding of this code.

PV For the savings of less than 10 bytes, it's not worth the risk.

 BTW, `break' here really (may) save some bytes, because tails merging.




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: [Freedos-cvs] kernel/kernel inthndlr.c,1.87.2.12,1.87.2.13

2005-01-05 Thread Arkady V.Belousov
Hi!

5--2005 09:19 [EMAIL PROTECTED] (Pat Villani) wrote to
freedos-kernel@lists.sourceforge.net:

PV The - in the diff says that the break is removed entirely.  Did you
PV actually mean this, given your reply?

 Yes. Break is removed, but later some new developer may wonder, why
there are no `break'?. So, I suggest, better to remain `break' in place, or
replace it by consequent comment (like there is commented other `break'
missings - see /* fall through */ comments).

 Of course, advanced developer later spends his time and teaches itself,
that return_user() is never returns, but before this he will be in
trouble.

PV I think you do save 2 or 3 bytes per break, depending on the compiler.

 `Break' is a jump, so removing `break' may reduce code, but if there
are similar tails above removed `break's, then you (may) lost in size,
because those tail now can't be joined (at least, if you can't instruct
compiler, that last function call never returns).

PV However, I can relate to you an amusing experience.  At one time, I did
PV some consulting for Bell Labs.  A few years after I left, ATT had a
PV major network failure in the northeast US.   A friend who was still with
PV ATT told me that the failure was the result of a hardware problem that
PV took the code into an untested branch of code.  It was a function call
PV inside a case that should have never returned and had no break at the
PV end.  The code fell into the next case and the system fell like a set
PV dominoes.

 :) We can't protect from such hardware failures (when executed random
pieces of code). :(

PV I'm not maintaining the kernel, so just my $0.02 -- which is worth less
PV in Euros ;-)




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel inthndlr.c,1.87.2.12,1.87.2.13

2005-01-04 Thread Arkady V.Belousov
!

31--2004 12:46 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 +++ inthndlr.c31 Dec 2004 12:46:21 -  1.87.2.13
 @@ -752,7 +752,6 @@
return_user();
 -  break;
 @@ -1025,7 +1027,6 @@
return_user();
 -  break;

 I think, for readability purposes (to make understanding by new
developers easier) `break' should be remained as comment. Something like:

/* return_user() never returns, so break not need */




---
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almosthttp://www.thinkgeek.com/sfshirt
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: [Freedos-cvs] kernel/kernel config.c,1.89.2.10,1.89.2.11 inthndlr.c,1.87.2.10,1.87.2.11

2004-12-29 Thread Arkady V.Belousov
Hi!

30--2004 00:35 Arkady V.Belousov wrote to
freedos-kernel@lists.sourceforge.net:

 Remove hack in Int 21h AH=38h, revert bad change in _CmdInstall
 +++ inthndlr.c29 Dec 2004 19:27:31 -  1.87.2.11
 -  rc = DosGetCountryInformation(cntry, FP_DS_DX);
 -  if (rc = SUCCESS)
 -  {
 -/* HACK FIXME */
^

 Note: keyword here not hack, but fixme. Code below should return
correct current code in AX and BX instead built-in 1...

 -if (cntry == (UWORD) - 1)
 -  cntry = 1;
 -/* END OF HACK */
 -lr.AX = lr.BX = cntry;
 -  }
 +  rc = DosGetCountryInformation(lr.BX ? lr.BX : NLS_DEFAULT, 
 FP_DS_DX);
  }

 ...but:

AVB  Bug: INT 21/38 should return country code in AX and BX when CF=0, even
AVB if initially there was AL=0 or AL=-1. New code returns wrong value when
AVB AL=0 or -1 - in this case there will _not_ returned requred country code.




---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: [Freedos-cvs] kernel build.bat,1.14.2.5,1.14.2.6 defaults.bat,1.1.2.4,1.1.2.5

2004-12-22 Thread Arkady V.Belousov
Hi!

23--2004 02:04 Arkady V.Belousov wrote to
freedos-kernel@lists.sourceforge.net:

AVB  Ok. First, call presence/missing doesn't affect calls throug
AVB makefile, call affects execution only througb batch files. Second, you
AVB may just remove check on Close window on program exit option.

 ...this allows to see (last) screen output without inserting pauses at
the end. BTW, why you run compilation through additional icons?

AVB Third, you may redirect output of (almost) all messages into external file.
AVB modifying original batch files. NDOS itself allows to redirect output of
AVB batch files.

 ...Unfortunately, command.com doesn't allows to redirect output of
batch files, but...

AVB Under command.com, you may do so:
AVB %comspec% /c build %1 %2 %3 %4 compile.msg




---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
___
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel build.bat,1.14.2.5,1.14.2.6 defaults.bat,1.1.2.4,1.1.2.5

2004-12-19 Thread Arkady V.Belousov
Hi!

19--2004 19:33 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

KD +++ defaults.bat19 Dec 2004 19:33:26 -  1.1.2.5
KD -if %COMPILER% == WATCOM set LINK=..\utils\wlinker /nologo
KD +if %COMPILER% == WATCOM set LINK=call ..\utils\wlinker /nologo

 Why?

KD +++ build.bat   19 Dec 2004 19:33:26 -  1.14.2.6
KD -defaults.bat clearset
KD +call defaults.bat clearset

 Why? What wrong with calls without call (from makefile in first case
and at the end of batch file in second)?




---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://productguide.itmanagersjournal.com/
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] test, ignore this letter

2004-11-28 Thread Arkady V.Belousov
test




---
SF email is sponsored by - The IT Product Guide
Read honest  candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. 
http://productguide.itmanagersjournal.com/
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: [Freedos-cvs] kernel/utils exeflat.c,1.9.2.3,1.9.2.4

2004-11-19 Thread Arkady V.Belousov
Hi!

20--2004 18:54 [EMAIL PROTECTED] (Bart Oldeman) wrote to
[EMAIL PROTECTED]:

  Hm. I think for simplicity and safety, exeflat should itself move
 relocation table from executable's header inside executable itself, so that
 it may be reused by MoveKernel(). This allows to eliminate manual table at
 kernel.asm:__HMARelocationTableStart.
  (Yes, I know __HMARelocationTableStart is not plain relocation table,
 but jump/code table, with jmps and calls to EnableA20. But table from header
 may be copied (after fixing) into secondary table. This allows to make
 code, which is more relocatable and may make cross-segments calls and
 accesses. This also solves issues with standard library routines, which may
 be used both from non-relocatable low code and from relocatable code.)
BO This is not so easy. Firstly a secondary table would need extra space in
BO low memory.

 ...unless it will be placed into transient/initial portion, which
discarded from memory after startup.

BO There used to be entries to strcpy et al in the table but I

 Yes, and then now may be reduced code duplication in asmsupt.asm (which
generated both for transient and resident portion).

BO removed them later because that part of the table that was useless after
BO init was still resident.

 If you relocation table (RT) will be placed into discardable portion,
then it will not still resident, And see the difference: RT is not entry
points table, but table with references to places, which need correction,
if they refers to relocated code.

BO Secondly it would be quite a bit of effort for very little gain.

1. This gives safety (not need to worry about references from initialization
   part to relocatable resident part; of course, reference from resident
   portion to transient portion shold be worried).

2. This allows to reduce code (no duplication of same functions, like
   strcpy).

BO Also think about it: we don't know in advance how big
BO the table will be, it's hard to insert something of arbitrary size in
BO kernel.sys.

 Of course, I think about this. But, because this table (should be)
placed into transient portion, why not _allocate_ oversized table (say,
100-200 items)? Especially, because unused entries will be zero, they will
be very well packed by UPX? I see there only one issue: how to reliably
find in exeflat, where those place (for RT) resides in executable.

BO And then, where's the simplicity?

 Of course, initial efforts to implement are not very easy, but gain is
noticeable. For example, with such relocation you will never encounter
troubles, like was issued with RTL-multiplcation functions from OW. The more
so, now they may be moved from low/nonrelocatable part (in kernel.asm) into
resident part! (Do you remember, how I was try to move Borland's RTL
functions into resident part and forget about relocations?)

 PS: Bart, some time ago you decrease kernel by reordering object files. May
 you explain what was changed and how you find this?
BO Just reordered by placing more or less similar files close together (asm
BO close to asm, c close to c); that decreased entropy so compression
BO improved.

 Only compression? I remeber something about reduced executable size,
but without words about compression.




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: [Freedos-cvs] kernel/utils exeflat.c,1.9.2.3,1.9.2.4

2004-11-18 Thread Arkady V.Belousov
Hi!

18--2004 21:21 [EMAIL PROTECTED] (Bart Oldeman) wrote to
[EMAIL PROTECTED]:

  Small optimization: because BC doesn't knows, that exit() doesn't
BO I don't think optimizing exeflat.exe's size is very important though ;)

 Sure. :) But why not make more optimal code from scratch in any case,
without thinking will this code often used?

 LG +  qsort(reloc, header.exRelocItems, sizeof(reloc[0]), compReloc);
  Why to spend extra time for sorting relocations?
BO I think it's easier to read the output that way. Tom's idea.
BO Does qsort() really take a long time for you in exeflat? I find that hard
BO to believe, for just ~70 relocations.

 Of course, qsort() if very fast algo (except some specific cases, when
it is O(N^2)), but why to do _any_ extra action, when unnecessary? :)
Especially, I suggest, (most) linkers do own sorting anyway?

 Ok, ok, above questions are not critical and mostly rhetorical.

 LG +for (j = 0; j  silentcount; j++)
  Never understand this option. (Though, don't try to study its meaning
 deeper). The more so, me always annoying tons of some information about some
 relocations, which garbaes output after exeflat.
BO use a larger backscroll buffer. Anyway, seriously:
BO The -S0x10 -S0x8B is outdated. 0x10 corresponds to segment 0x70 (device
BO drivers etc) and 0x8B to the DOS data segment at 0xEB. However over the
BO years some things were made smaller and the DOS data segment seems to be
BO at 0xCF or 0xD0 depending on compilation options now.

 ...and different kernel branches. :)

BO -S0x10 -S0x6F -S0x70
BO will catch relocations from these segments. The idea to silence these is
BO that these relocations are harmless because these segments don't move.
BO Relocations to other segments may be bugs. With the above options you

 Ok, I see. Thank you for exaplanation.

BO should get something like
BO relocation at 0x:0x0021 -01d6 (far jmp to init code in kernel.asm)
BO relocation at 0x01d6:0x9f2d -0f2f (seg init_tos in kernel.asm)
BO relocation at 0x01d6:0xa19c - (LowKernelConfig, main.c)
BO relocation at 0x01d6:0xc21c -01d6 (MoveKernel, FP_SEG(_HMATextEnd, 
inithma.c)
BO I checked them and these relocations are all fine. But if a fifth shows up
BO unexpectedly we may have a bug.

 Hm. I think for simplicity and safety, exeflat should itself move
relocation table from executable's header inside executable itself, so that
it may be reused by MoveKernel(). This allows to eliminate manual table at
kernel.asm:__HMARelocationTableStart.

 (Yes, I know __HMARelocationTableStart is not plain relocation table,
but jump/code table, with jmps and calls to EnableA20. But table from header
may be copied (after fixing) into secondary table. This allows to make
code, which is more relocatable and may make cross-segments calls and
accesses. This also solves issues with standard library routines, which may
be used both from non-relocatable low code and from relocatable code.)

BO ---
BO UPXOPT seems indeed unnecessary now.

 Sure. :)

PS: Bart, some time ago you decrease kernel by reordering object files. May
you explain what was changed and how you find this?




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: [Freedos-cvs] kernel/utils exeflat.c,1.9.2.3,1.9.2.4

2004-11-18 Thread Arkady V.Belousov
Hi!

18--2004 11:24 [EMAIL PROTECTED] (tom ehlert) wrote to Arkady V.Belousov
[EMAIL PROTECTED]:

te And why not leave *existing* code as is - without wasting mental and
te ethernet bandwidth on it ?

 This is not (yet) existing, this is _new_ code.

 Especially, I suggest, (most) linkers do own sorting anyway?
te I call people who 'suggest' somethintg that is plain wrong (and they could
te have seen that themself) idiots.

 Sometime I study executables, and seen tables was sorted. (Probably,
this was caused by applied exepackers, I not remember such details, but they
_was_ sorted).




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/utils exeflat.c,1.9.2.4,1.9.2.5

2004-11-18 Thread Arkady V.Belousov
Hi!

18--2004 11:20 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG (Arkady) Remove -U option as Bart's new EXFLAT now uses XUPX variable 
directly
LG +++ exeflat.c   18 Nov 2004 11:20:04 -  1.9.2.5
LG +  upx = getenv(XUPX);
LG +  compress_sys_file = exeflat((int)upx, argv[1], argv[2], argv[3],
LGsilentSegments, silentcount);
LG +  if (upx == NULL)

 I think, exeflat (upx != NULL,... should be better - at least, in
sense of readability.

 Also, into config.b should be added comment about usage of XUPX in
exeflat.c.




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel makefile,1.19.2.4,1.19.2.5

2004-11-18 Thread Arkady V.Belousov
Hi!

18--2004 11:20 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG +++ makefile18 Nov 2004 11:20:03 -  1.19.2.5
LG +   ..\utils\exeflat kernel.exe $*.sys $(LOADSEG) -S0x10 -S0x8B
-^^

 As explained by Bart, this value should be changed to reflect real
(current) position of FD data segment.




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel build.bat,1.14.2.4,1.14.2.5 buildall.bat,1.6.2.1,1.6.2.2 clean.bat,1.10.2.1,1.10.2.2 clobber.bat,1.11.2.1,1.11.2.2 config.b,1.12.2.2,1.12.2.3 defaults.bat,1.1.2.3,1.1.2.4 filelist,1.9.2.5,1.9.2.6 makefile,1.2,1.2.2.1

2004-11-18 Thread Arkady V.Belousov
Hi!

18--2004 11:16 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG Modified Files:
LG   Tag: UNSTABLE
LG build.bat buildall.bat clean.bat clobber.bat config.b
LG defaults.bat filelist makefile
LG Log Message:
LG sg

 This letter looks like bug somewhere (because garbage after Log).




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/hdr portab.h,1.31.2.3,1.31.2.4

2004-11-18 Thread Arkady V.Belousov
Hi!

18--2004 11:20 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG Suppress TC++ 1.01 warnings (BC++ 3/4/5 not affected!) and MSC LIB prompt
LG +++ portab.h18 Nov 2004 11:20:03 -  1.31.2.4
LG @@ -66,6 +66,14 @@
LG +#if __TURBOC__  0x400 /* targeted to TC++ 1.0 which is 0x297 (3.1 is 
0x410) */
LG +#pragma warn -pia /* possibly incorrect assignment */
LG +#pragma warn -sus /* suspicious pointer conversion */
LG +/*
LG + * NOTE: The above enable TC++ to build the kernel, but it's not 
recommended
LG + * for development. Use [Open]Watcom (the best!) or newer Borland 
compilers!
LG + */
LG +#endif

 May I ask which places cause warnings, which are turned off here (I
don't have TCPP1 to check this)? May be better to fix (for example, by
adding castings) those places instead turning off warnings at all?




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/sys sys.c,1.41.2.7,1.41.2.8

2004-11-17 Thread Arkady V.Belousov
Hi!

17--2004 18:01 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG Bart enhanced EXEFLAT for smaller packed binary; now calls UPX itself
LG +++ sys.c   17 Nov 2004 18:01:53 -  1.41.2.8
LG -#define MSDOS  MSDOS.SYS
LG +#define MS_DOS  MSDOS.SYS
LG -  if (altkern == MS_OEMKERN) dosfn = MSDOS;
LG +  if (altkern == MS_OEMKERN) dosfn = MS_DOS;

 Hm. How this relates to exeflat/UPX and which rationale for patch?
Subject of taste?




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel makefile,1.19.2.3,1.19.2.4

2004-11-17 Thread Arkady V.Belousov
Hi!

17--2004 18:01 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG Bart enhanced EXEFLAT for smaller packed binary; now calls UPX itself
LG +++ makefile17 Nov 2004 18:01:53 -  1.19.2.4
LG -   $(XUPX) kernel.exe

 Don't forget, that XUPX variable also defined in generic.mak (if it
not defined in config.bat).

 Also, if exeflat relies on XUPX variable itself, what to pass extra
option -U to it? Just check if XUPX variable is present or not and remove
all messinf with XUPX and UPXOPT in generic.mak.




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/utils exeflat.c,1.9.2.3,1.9.2.4

2004-11-17 Thread Arkady V.Belousov
Hi!

17--2004 18:01 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG +++ exeflat.c   17 Nov 2004 18:01:54 -  1.9.2.4
LG +int exeflat(int UPX, const char *srcfile, const char *dstfile,
LG +const char *start, short *silentSegments, short silentcount)
LG  {
LGif (fread(header, sizeof(header), 1, src) != 1)
LG{
LG -printf(Error reading header from %s\n, argv[1]);
LG +printf(Error reading header from %s\n, srcfile);
LG  fclose(src);
LG -return 1;
LG +exit(1);
LG}

 Small optimization: because BC doesn't knows, that exit() doesn't
returns, better to insert explicit return 0; after exit() or return error
code through return (remaining error handling for main()). For BC, this
allows to join common tails.

LG +  qsort(reloc, header.exRelocItems, sizeof(reloc[0]), compReloc);

 Why to spend extra time for sorting relocations?

LG +for (j = 0; j  silentcount; j++)
LG +  if (segment == silentSegments[j])
LG +  {
LG +silentdone++;
LG +goto dontPrint;
LG +  }

 Never understand this option. (Though, don't try to study its meaning
deeper). The more so, me always annoying tons of some information about some
relocations, which garbaes output after exeflat.




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Floppy boot config read broken in 2034/32+

2004-11-17 Thread Arkady V.Belousov
Hi!

29--2004 17:36 [EMAIL PROTECTED] (tom ehlert) wrote to Eric Auer
[EMAIL PROTECTED]:

 Hi, Steve reports that while things were fine in kernels
 2030 ... 2033 (both with and without FAT32 support), kernel
 2034 WITH FAT32 support and all 2035 kernels fail to read
 the (fd) config sys file when booting from floppy.
te *ALL* kernels 2023..2035BTom boot from 1.44 floppy, and have no problem
te reading config.sys, and never had.

 Same for all my patches.




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] CF and HOT SWAP

2004-11-16 Thread Arkady V.Belousov
Hi!

16--2004 11:13 [EMAIL PROTECTED] (Fab) wrote to
[EMAIL PROTECTED]:

F I'm trying to use a compact flash under FreeDos as removable media.
F The problem is that the compact flash *must* be present into the card reader
F (interfaced onto the IDE bus) otherwise the BIOS POST do not recognize the
F drive as hard disk and do not allow disk I/O functions to access to the card.

 Yes. Unfortunately, BIOS was not designed with supporting hot swap in
mind. Same to DOS: for local drives (for which not used external drivers
through network interface) recognizing performed only at DOS startup and
can't be forced later.

F I'm trying to do something that allow me to plug the card or change it at any
F time. I tried to force the BIOS to recognize the card ...

 You can't - there is no such API.

F I tried to tell to BIOS wich type of fixed disk (...) is connected modifing
F the table pointer from INT46h (slave on first IDE channel)...

 Dangerous.

F Finally, I tryed to read a sector using a direct function that read data
F writing directly to the IDE controller and it run !!!

 Of course, because now you perform recognizing itself.

F I found a function from TR-DOS that have the same parameters of the standard
F INT13h function and it run well.
F The problem is that we don't know the type of card inserted into the card
F reader.
F I will try to read the first sector and the boot sector where some
F information are available but the problem will be that I must use this
F function every time I need to get data from the compact flash

 Yes. For floppy drives, you have change line hardware and service,
which allows to detect, when media was changed. For other swapping devices
without such hardware detection, you should perform manual media detection
and probing, for example, serial number from boot record is enoughly
portable and safe method.

F this means that I must write code to handle *all* !!! FAT, DIR, files.

 No, this (you should internally detect, when media is changed) _not_
mean, that you should also reimplement high-level file system(s) structures
(especially because there may be unknown for you, new file systems).

F etc etc etc both in read and write !!!
F Does anyone have an idea how to inform the BIOS about the drive parameters
F ??

 You can't [reinform BIOS about current media parameters]. :( At least,
I don't know official, portable, safe method to do this.

F May this function is useful for other one the me ?
F May be that this idea will be useful and available directly from FreeDOS
F kernel or from a installable device driver ?




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Linking Question

2004-11-12 Thread Arkady V.Belousov
Hi!

9--2004 21:14 [EMAIL PROTECTED] (Karthigan Srinivasan) wrote to
[EMAIL PROTECTED]:

KS me with this question. Based on the kernel makefiles I wrote a simple C
KS and asm file and tried linking them.

 There are no reasons to do this, because kernel memory model very
specific.

KS It warns that there is no stack and when I try to
KS run the exe file, the dos window hangs.




---
This SF.Net email is sponsored by: InterSystems CACHE
FREE OODBMS DOWNLOAD - A multidimensional database that combines
robust object and relational technologies, making it a perfect match
for Java, C++,COM, XML, ODBC and JDBC. www.intersystems.com/match8
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Linking Question

2004-11-11 Thread Arkady V.Belousov
Hi!

9--2004 21:14 [EMAIL PROTECTED] (Karthigan Srinivasan) wrote to
[EMAIL PROTECTED]:

KS me with this question. Based on the kernel makefiles I wrote a simple C
KS and asm file and tried linking them.

 There are no reasons to do this, because kernel memory model very
specific.

KS It warns that there is no stack and when I try to
KS run the exe file, the dos window hangs.




---
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_idU88alloc_id065op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] GCC Compiler

2004-11-10 Thread Arkady V.Belousov
Hi!

10--2004 15:47 [EMAIL PROTECTED] (Allen D. Evans) wrote to
[EMAIL PROTECTED]:

ADE I enjoy frustration and would like to compile my own version of FreeDOS.
ADE Does a DOS/Windows have a GCC compiler?

 Yes. There is a Win32 implementations of GCC and there is DOS version
of GCC (DJGPP). Though, DOS version can't generate 16-bit target code,
neither it support `far' keyword.

ADE If so, where can I get it?

 AFAIR, www.delorie.com?

ADE If not, what (inexpensive) options do I have.

 OpenWatcom. Free software and, thus, zero costs of compiler itself.




---
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_idU88alloc_id065op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Fwd: FreeDOS kernel disk routines

2004-11-06 Thread Arkady V.Belousov
Hi!

6--2004 16:13 [EMAIL PROTECTED] (tom ehlert) wrote to
[EMAIL PROTECTED]:

te From: Jose Antonio Senna
te ===8==Original message text===
te  Excuse me for sending this directly to you, but I am still unable to post
te on Freedos lists.
te  I do not know who (if anyone) mantains the FreeDOS kernel disk routines.
te If it is not you, please pass this mail to the appropriate person.
te  The problem I found is:
te  My computer BIOS INT 13 is able to access up to 4096 cylinders in a hard
te disk,
te by using bits 6 -7 of DH in INT 13 requests as bits 10-11 of cylinder
te number.

 If so, then this is non-standard and this completely prohibits LBA
(with up to 256/255 heads).

te This BIOS variant is documented in Brown and Kyle interrupts list.

 Ralf Brown not documents such API deviation (or I miss something?).

te  However,FreeDOS hooks INT 13 and,in doing so,rolls over any cylinder
te number modulo 1024, that is,if I make a request to access cylinder 1024,it
te does not report any error,but I get cylinder 0, and so on.

 FreeDOS _doesn't_ hooks INT 13. See main.c:setup_int_vectors() for list
of hooked vectors.

te  FreeDOS is not the only DOS to have this problem.

 May you quote code fragment, which works under other OSes (which?) and
doesn't works under FD?

te  Is it too difficult to solve ?
te ===8===End of original message text===
te my comment:
te how are these disks/BIOS variants detected ?
te I have a faint memory of these translating BIOS's, but can't find it
te in RBIL.
te IMO the kernel shouldn't touch partitions that are to big to handle
(1024 cylinders), unless LBA is detected.




---
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_idU88alloc_id065op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Fwd: FreeDOS kernel disk routines

2004-11-06 Thread Arkady V.Belousov
Hi!

7--2004 09:24 [EMAIL PROTECTED] (Bart Oldeman) wrote to
[EMAIL PROTECTED]:

BO My 386 SX only had 80 MB hard disk space, which was far below the
BO first problematic barrier of 1024*16*63*512=512MB

 1024*16*63*512=504Mb (or 528 Mb, as this counted by disk
manufacturers).




---
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_idU88alloc_id065op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: Your X-Comment-To: tom ehlert te@drivesnapshot.de

2004-11-06 Thread Arkady V.Belousov
Hi!

7--2004 01:02 [EMAIL PROTECTED] (Jose Antonio Senna) wrote to Arkady
V.Belousov [EMAIL PROTECTED]:

JAS  I am unable to post,but read user and devel lists.

 Just subscribe. :)

JAS  Here are some further explanations:
te by using bits 6 -7 of DH in INT 13 requests as bits 10-11 of cylinder
avb If so, then this is non-standard and this completely prohibits LBA
avb (with up to 256/255 heads).
[...]
te This BIOS variant is documented in Brown and Kyle interrupts list.
avb  Ralf Brown not documents such API deviation (or I miss something?).
JAS   It does,not in DOS API,but under low-level disk I/O heading,at

 Of course, I also mean INT13.

JAS   least in the list version which copy I have. A mail to this list
JAS   by Bart Oldeman a few hours ago confirms it is documented.

 Yes, I was see this letter. Ok, there was such deviation

te  However,FreeDOS hooks INT 13 and,in doing so,rolls over any cylinder
te number modulo 1024, that is,if I make a request to access cylinder 1024,it
te does not report any error,but I get cylinder 0, and so on.
avb FreeDOS _doesn't_ hooks INT 13. See main.c:setup_int_vectors() for list
avb of hooked vectors.
JAS I thought I did,for the vector in the Interrupt Vector Table clearly
JAS   points into DOS area.

 Ok, let clarify this. Unfortunately, neither my nor Bart's MEM shows
interrupt vectors relation, so procedure slightly more complex:

1. Run my MEMA (prefered) with option(s) /DAT (without quotes) or run
   Bart's MEM with options /F/D/U (without quotes) and show me result.
2. In DEBUG execute d 0:0l100 ans show me results.

Then get results into file (which you may insert into letter) you may use
redirection. For example, make file (and call it, say, DBG.CMD) with next
content:

__O\_/_\_/O__
d 0:0l100
q
_
  O/~\ /~\O

and run next commands:

MEMA/DATRESULT1
DEBUGDBG.CMDRESULT2

Now you get results in files, which you may send us.

JAS   Maybe I did miss something, and there is some
JAS   installed device driver, instead, that hooks INT 13.




---
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_idU88alloc_id065op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-user] Unable to format harddisk partition after reboot

2004-10-13 Thread Arkady V.Belousov
Hi!

13--2004 11:25 [EMAIL PROTECTED] (Christof Meerwald) wrote to
[EMAIL PROTECTED]:

CM I am unable to format a harddisk partition after a reboot (the problem
CM occurrs in a Linux dosemu box and on real hardware), here is the version
CM information of the FreeDOS kernel:
CM FreeDOS kernel version 1.1.35w (Build 2035w-UNSTABLE, Sep 27 2004)
A:\format c: /u /q
CM  Critical error encountered while using DOS disk driver
CM  DOS driver error (hex): 01
CMDescription: unknown unit for driver
CM It seems that FreeDOS hasn't initialized some disk parameter block,
CM because if I access the harddisk before trying to format it (i.e. dir
CM c:), the format works:
CM Does anyone have an idea?

 Yes. In last patches Lucho removes main.c:InitializeAllBPBs(), which
does what you explain (initialize BPBs for utilities, which access disk
directly). Probably, issue is in this removed function.

 Unfortunately, at given moment I don't have latest CVS kernel to try to
return this function and see what happen. Kenneth, Lucho? May be someone of
you?

PS: Bart, tom: who was wrote comment for InitializeAllBPBs()? Can you
explain, how to reproduce direct access through DE? _Probably_, there should
be loaded empty environment and DE runned for browsing physical drive?




---
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal
Use IT products in your business? Tell us what you think of them. Give us
Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more
http://productguide.itmanagersjournal.com/guidepromo.tmpl
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel nls_hc.asm,1.4.2.2,1.4.2.3

2004-09-23 Thread Arkady V.Belousov
Hi!

23--2004 13:08 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG Divide hard-coded UCASE and FUCASE tables
LG +++ nls_hc.asm  23 Sep 2004 13:08:23 -  1.4.2.3

 Note: nls_hc.asm is inherited from nls\049-850.hc. Thus, as I
understand, should be also updated all files in nls\ directory.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] config.c: bug?

2004-09-21 Thread Arkady V.Belousov
Hi!

22--2004 11:11 Arkady V.Belousov wrote to
[EMAIL PROTECTED]:

AVB  I may suggest next patch:

 Sorry, forget about undocumented COMMAND:

__O\_/_\_/O__
diff -ruNp old/config.c new/config.c
--- old/config.c2004-04-14 16:04:04.0 +
+++ new/config.c2004-04-22 11:16:16.0 +
@@ -125,6 +125,9 @@ static UBYTE ErrorAlreadyPrinted[128] BS
 char master_env[128] BSS_INIT({0});
 static char *envp = master_env;

+static char init[NAMEMAX] = command.com;
+static char inittail[NAMEMAX] =  /P /E:256\r\n;
+
 struct config Config = {
   0,
   NUMBUFF,
@@ -132,8 +135,8 @@ struct config Config = {
   0,
   NFCBS,
   0,
-  command.com,
-   /P /E:256\r\n,
+  init,
+  inittail,
   NLAST,
   0,
   NSTACKS,
@@ -267,7 +270,6 @@ STATIC struct table commands[] = {

   {BREAK, 1, CfgBreak},
   {BUFFERS, 1, Config_Buffers},
-  {COMMAND, 1, InitPgm},
   {COUNTRY, 1, Country},
   {DOS, 1, Dosmem},
   {DOSDATA, 1, DosData},
@@ -1237,12 +1239,6 @@ STATIC VOID InitPgmHigh(BYTE * pLine)

 STATIC VOID InitPgm(BYTE * pLine)
 {
-  static char init[NAMEMAX];
-  static char inittail[NAMEMAX];
-
-  Config.cfgInit = init;
-  Config.cfgInitTail = inittail;
-
   /* Get the string argument that represents the new init pgm */
   pLine = GetStringArg(pLine, Config.cfgInit);

_
  O/~\ /~\O




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re:

2004-09-21 Thread Arkady V.Belousov
Hi!

21--2004 00:47 [EMAIL PROTECTED] (Jose Antonio Senna) wrote to Arkady
V.Belousov [EMAIL PROTECTED]:

JAS I have been using your version of FreeDOS kernel,which I downloaded
JAS from Luchezar Georgiev site.
JAS So far,it behaved as well as the mainstream version.I would like to
JAS report two problems,however:
JAS One minor problem is that it returns an error in the line of my
JAS fdconfig.sys file that sets
JAS  LASTDRIVE=F:
JAS^

 In LASTDRIVE statement you should use only letter, without following
colon. Ie.:

lastdrive=f

JAS with the caret under the F as shown.At that time,there are actually
JAS only A: to D: drives,but this should not be a problem.Anyway,it sets
JAS correctly A: to F: drives.

 This is strange, because with wrong argument (F: instead F)
statement should be ignored (my changes include rejecting any actions for
statements with wrong arguments).

JAS A somewhat worse problem did happen yesterday:I tried to move a file
JAS from HD to floppy using FreeDOS move command:
JAS  move d:\pdfr\pdfs\akizcat.002 a:\
JAS (that file size was exactly the floppy size)
JAS move reported a write problem in the floppy:
JAS  Error writing to drive A: DOS area:Data error (bad CRC)
JAS  (A)bort,(I)gnore,(R)etry,(F)ail ?
JAS on my reply RCR,I got
JAS  PANIC:more than two new fnodes requested at same time!
JAS  System halted
JAS and system really halted.
JAS The floppy had a write problem,(perhaps some dust),
JAS but failure to move a file,even on retry,should not crash the system.

 Hm. This is question for Bart Oldeman, who implements fnodes logic.
Also, question to Lucho: is he includes patch from tom to kernel, which
available from his site? Probably, there is problem, which mentioned by tom
by tom and should be fixed by his patch (at least, here we also have
Critical Error handler).




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Broken VERSION= in 2035 etc. - too many kernels

2004-09-18 Thread Arkady V.Belousov
Hi!

18--2004 16:50 [EMAIL PROTECTED] (Eric Auer) wrote to
[EMAIL PROTECTED]:

EA Jeremy, please create a list of improvements / changes between 2035
EA and newest CVS kernel, and a way to download all patches separately
EA (or in one big tgz/zip), along with short descriptions of them.

 All my patches (at least, which have seen effect, like changed MENU
behavior) was described. and this list should be seen through history.txt.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Broken VERSION= in 2035 etc. - too many kernels

2004-09-18 Thread Arkady V.Belousov
Hi!

18--2004 20:32 [EMAIL PROTECTED] (tom ehlert) wrote to Eric Auer
[EMAIL PROTECTED]:

 - Lucho / Arkady produced a big amount of patches which mainly contain
   optimizations (hopefully not too compiler specific), but also important
   bugfixes,
te which ones ?

 See the subject for one fixed bug. BTW, this bugfix by itself is very
easy, only two lines to change os_setver_m*or instead os_m*or.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Broken VERSION= in 2035 etc. - too many kernels

2004-09-18 Thread Arkady V.Belousov
Hi!

19--2004 02:34 Arkady V.Belousov wrote to
[EMAIL PROTECTED]:

 - Lucho / Arkady produced a big amount of patches which mainly contain
   optimizations (hopefully not too compiler specific), but also important
   bugfixes,
te which ones ?
AVB  See the subject for one fixed bug.

 I mean: one from many.

AVB  BTW, this bugfix by itself is very
AVB easy, only two lines to change os_setver_m*or instead os_m*or.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: test bootdisk

2004-09-15 Thread Arkady V.Belousov
Hi!

15--2004 03:44 [EMAIL PROTECTED] (Bernd Blaauw) wrote to All:

BB Bart, do you see the unnamed program, eating 48KB (probably just a
BB viewing problem)?
BB   CTMOUSE  3,328(3K)  0(0K)  3,328(3K)
BB   48,704   (48K)  0(0K) 48,704   (48K)
BB   Free   623,024  (608K)622,880  (608K)144(0K)

 Bernd, may you try: (1) MEM 1.6, (2) my MEM and (3) review complete
lisintg (/F for Bart's MEM, /A in my)?




---
This SF.Net email is sponsored by: thawte's Crypto Challenge Vl
Crack the code and win a Sony DCRHC40 MiniDV Digital Handycam
Camcorder. More prizes in the weekly Lunch Hour Challenge.
Sign up NOW http://ad.doubleclick.net/clk;10740251;10262165;m
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: test bootdisk

2004-09-15 Thread Arkady V.Belousov
Hi!

15--2004 12:04 [EMAIL PROTECTED] (Bernd Blaauw) wrote to
[EMAIL PROTECTED]:

BB   CTMOUSE  3,328(3K)  0(0K)  3,328(3K)
BB   48,704   (48K)  0(0K) 48,704   (48K)
BB   Free   623,024  (608K)622,880  (608K)144(0K)
 Bernd, may you try: (1) MEM 1.6, (2) my MEM and (3) review complete
lisintg (/F for Bart's MEM, /A in my)?
BB I'll do that. Problem probably is in KEYB not loading completely successfull.

 ?




---
This SF.Net email is sponsored by: thawte's Crypto Challenge Vl
Crack the code and win a Sony DCRHC40 MiniDV Digital Handycam
Camcorder. More prizes in the weekly Lunch Hour Challenge.
Sign up NOW http://ad.doubleclick.net/clk;10740251;10262165;m
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] test bootdisk

2004-09-15 Thread Arkady V.Belousov
Hi!

15--2004 13:45 [EMAIL PROTECTED] (Aitor Santamara Merino) wrote to
[EMAIL PROTECTED]:

 2) DISPLAY loads low (see MEM /C /P), while plenty of (UMB)memory is
 available, and being the FIRST driver loaded. very strange!
 3) DISPLAY loads high and ATAPICDD/CDRCACHE load low, if removing the
 REM from MEM /C in the beginning of autoexec.bat
ASM You are using DISPLAY.EXE, right? This is what is obtained from Arkady's
ASM COM2EXE, so he might now if there is something strange about this. If

 I doubt. :) If DISPLAY loads high without MEM before it and low with
MEM - this not relates to COM2EXE.




---
This SF.Net email is sponsored by: thawte's Crypto Challenge Vl
Crack the code and win a Sony DCRHC40 MiniDV Digital Handycam
Camcorder. More prizes in the weekly Lunch Hour Challenge.
Sign up NOW http://ad.doubleclick.net/clk;10740251;10262165;m
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] re: test bootdisk

2004-09-15 Thread Arkady V.Belousov
Hi!

15--2004 19:31 [EMAIL PROTECTED] (Eric Auer) wrote to
[EMAIL PROTECTED]:

EA About DISPLAY:
 UPX first, COM2EXE next, produces smallest size.
EA bad idea. COM2EXE cannot detect de-UPX-ed size! So the exe header

 This is unimportnat, because (my) COM2EXE doesn't detects size at
all. It simply points in header, that should be allocated 64k. _If_ you run
COM2EXE with option, which reduces requested size, then _you_ should know,
how much of memory should be allocated at program run (after unpacking).

EA NCACHE2 only works if max 31.x MB XMS are free?

 No. Not works only autodection for ext option (without argument), but
you may not allocate all memory (omit ext option) or point allocated
memory explictily, as argument of ext.

EA Then in must be quite old,

 1994. :)




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] re: test bootdisk

2004-09-15 Thread Arkady V.Belousov
Hi!

16--2004 01:19 [EMAIL PROTECTED] (Aitor Santamara Merino) wrote to
[EMAIL PROTECTED]:

bad idea. COM2EXE cannot detect de-UPX-ed size! So the exe header
will tell how much space the compressed COM needs. But the whole idea
of using COM2EXE was to let DOS know the de-UPX-ed size explicitly:
ASM As far as I recall, the idea of using COM2EXE is that there is a bug in
ASM kernel about loading high COM programs that resize their chunks (when

 No. Idea of using COM2EXE is that _MS-DOS_, when loads .COM file into
UMB (with LH), not necessarilly allocates (more than) 64k, if there is no
enoughly big block (for example, there remained only 30k free). _And_, if
program doesn't check how much of memory it have (for example, by examining
value of SP), then it may/will overwrite own stack and following memory in
this case (of reduced block).

 On the other side, DOS doesn't know how much of memory .COM program
_really_ need (it not necessarily need all 64k), so it allocates biggest UMB
block.

 So, COM2EXE allows to simplify program (not need to check available
memory) and optimize program loading (it will/may be loaded into best suited
block, not into biggest).

ASM there is no room, it aborts instead of loading low), and to avoid this
ASM problem. The experiments by Bernd showed that under MS-DOS it works fine
ASM (a growing COM file).




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: 2F-122F

2004-09-13 Thread Arkady V.Belousov
Hi!

13--2004 04:19 [EMAIL PROTECTED] (Eric Auer) wrote to
[EMAIL PROTECTED]:

EA how to use it that way ;-). In addition, the MS-ish interface allows
EA revert to real version number by passing a value of zero. The extra

 RBIL doesn't says this.

EA few bytes are really VERY few bytes and they should be in HMA anyway.
EA By having a set reported version number function in the kernel,
EA programs like CALLVER / SETVER do not have to hook int 21 themselves and

 You already have INT21/33FC. Why to introduce _another_ FreeDOS
specific function (which not present neither in MS-DOS 5-8, DR-DOS, ROM-DOS,
etc)?

PS: BTW, Eric, may you recall URL for your CALLVER? Unfortunately, I lost
it, but it was need me sometime (because I need to run, say, MS-SYS6 under
MS-DOS7).

EA (SETVER is quite complex and changes the version number dynamically,

 It requres changes in config.sys, and it changes itself. :(




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Boot sector drive incompatibility with other boot sectors

2004-09-13 Thread Arkady V.Belousov
Hi!

12--2004 14:30 [EMAIL PROTECTED] (tom ehlert) wrote to Luchezar Georgiev
[EMAIL PROTECTED]:

 Only 0 and 80 are used by MS-DOS. All other values are FreeDOS extensions ;-)
te are you SURE ?

 How strange. B-\ I receive this letter two minutes back, whereas I
answer yesterday to Lucho's letter, where was answer to this letter.
Somewhere works time machine?




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: kernel/kernel country.asm, inthndlr.c

2004-09-13 Thread Arkady V.Belousov
Hi!

12--2004 14:28 [EMAIL PROTECTED] (tom ehlert) wrote to Luchezar Georgiev
[EMAIL PROTECTED]:

 and removes (parts? of) tom's patch.
 As you wrote youself, it's better to have the whole patch than parts of
 it. And even better is to solve entirely the problem which this kludge
 solves partially. But we don't know the problem :-(
te at least I know the problem - and described it when publishing the patch.

 tom, please, publish _diff-file_ with your patch, and I think, no one
will complain to include your patch. Previously you publish only plain text
with quotes.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: 2F-122F

2004-09-13 Thread Arkady V.Belousov
Hi!

13--2004 12:04 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 In addition, the MS-ish interface allows revert to real version
 number by passing a value of zero.
 RBIL doesn't says this.
LG It does say this. D-2F122F says: DX = DOS version number (h = return
LG true DOS version).

 Hm, I miss this. Anyway, return is ambiguous in this context. :)

LG RBIL also says this is supported by Matthias Paul's
LG FREEVER.COM. Do you see now why I won't remove it?

 No, I don't see. _If_ freever.com supports only this function, then it
useless in (all other versions of) MS-DOS. Why it should be useful in
FreeDOS (especially because we have Eric's CALLVER, which (may) use
INT21/33FC)? I don't think, that Matthias as author of FREEVER doesn't
makes this interrupt more important for FreeDOS.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel inthndlr.c,1.87.2.5,1.87.2.6

2004-09-13 Thread Arkady V.Belousov
Hi!

13--2004 12:09 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG +++ inthndlr.c  13 Sep 2004 12:09:37 -  1.87.2.6
LG +  if (fnode[0].f_count != 0 ||
LG +  fnode[1].f_count != 0 )

  if (fnode[0].f_count | fnode[1].f_count)




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Boot sector drive incompatibility with other boot sectors

2004-09-13 Thread Arkady V.Belousov
Hi!

13--2004 12:48 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 My AwardBIOS here for example does have such a feature. However, when I
 look at the boot record of my second hard drive, I see again boot drive
 = 80.
 Do you try to boot from second drive with this boot record (which
 contains 80h)? And it boots fine (without accessing first disk)?
LG Yes, of course.
 So, BIOS probably swaps
LG Not probably - surely.

 Ie., second disk was enumerated as 80h (and, for example, partitions
from it was labeled earlier, than from first disk)?

 Probably?! In this case it not need to pass to boot code information
 about boot drive!
LG The BIOS Boot specification
LG (http://www.phoenix.com/resources/specs-bbs101.pdf) warns that only 0 and
LG 80h can be safely considered as boot devices, albeit it recommends (but
LG doesn't require) that BIOS passes boot device in DL on Int 19h. The 0/80h
LG limitation

 warn != limitation. This warning may be only because authors of
tose spec may know about existance of buggy BIOSes.

LG is due to the MS-DOS boot sectors, of course. So, whatever we
LG decide, we should remove the FF kludge in any case. I already expressed my
LG opinion - I agree with Jeremy and Eric that choice (2) is better for
LG compatibility reasons.

 No, not better. For example: if you use boot manager, which supports
loading boot record from second disk, then (your) boot code will not work in
such configurations, if it will contain 80h.

 And vice versa: let suggest, that BIOS swaps disks numbers. In this
cases you can't boot (your) boot record, if it will contain 81h.

 Will? Do you mean, that currend FD boot record (with FFh mask) doesn't
 work when loading FD from second disk?!
LG It works until replaced by another boot sector that tries to boot off
LG drive FF.

 ?! Lucho, please, reread your sentence! We don't discuss _some_ _buggy_
boot code, which by some strange reason uses FFh as boot drive # (how this
relates to FD boot code?), we discuss, should _FD boot code_ expect drive#
from BIOS or use fixed values.

 Hm. Or you mean, that _some_ (non-FD!) SYS, which writes own boot
sector, by some strange/buggy reason will preserve FD's boot record _field_
drive number (offset 0x24) and then its boot code will reuse this field?
How this alien buggy SYS relates to our boot code and dependence from BIOS
info?




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Boot sector drive incompatibility with other boot sectors

2004-09-13 Thread Arkady V.Belousov
Hi!

13--2004 19:55 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 This warning may be only because authors of tose spec may know about
 existance of buggy BIOSes.
LG No, they state several times that ONLY 0 AND 80 may be boot drives.

 Ok. What about boot managers?

 No, not better. For example: if you use boot manager, which supports
LG For this, an option of SYS will revert back to DL = boot drive

 Hm. Your arguments sounds reasonable. But I continue to _feel_, that
using BIOS info instead fixed value is better (except buggy BIOSes, which
pass wrong drive#).

 Hm. Or you mean, that _some_ (non-FD!) SYS, which writes own boot
 sector, by some strange/buggy reason will preserve FD's boot record
 _field_ drive number (offset 0x24) and then its boot code will reuse
 this field?
LG Yes.
 How this alien buggy SYS relates to our boot code and dependence from
 BIOS info?
LG I already explained. If it overwrites our boot sector, it won't boot.

 You _suggest_, that _some_ SYS (may) remain untouched 24h field when it
overwrite boot sector _and_ its boot code reuse this value? Or you know such
_known and usable_ SYS with such (strange!) behavior? If first, then we
shouldn't worry about this; if second, then, probably, we should force
bugfixing of those SYS.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Boot sector drive incompatibility with other boot sectors

2004-09-13 Thread Arkady V.Belousov
Hi!

12--2004 14:08 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 I don't understand this. SYS writes 0/FF only into its own images,
 builtin into SYS executables. And, if _after_ SYS someone will change
 boot loader, then 0/FF value also will be replaced. Where is trouble?
LG The trouble is that most SYSes don't bother to set this value - they just
LG copy the whole data area from the old boot sector and replace only the
LG code and OEM ID. So the FF remains there. Verified.

 _And_ their boot code reuse this field? If not, then this in
unimportant, what those SYSes remain in 24h field.

 I think, current behavior (use fixed drive# in case of A:/C: and BIOS
 value in other cases, including HDs), is good and flexible way.
LG Currently, fixed drive number 0 is used for floppies, but for hard disks,
LG FF is used, which is troublesome if FreeDOS is replaced by another DOS
LG later.

 Well, right now I look at boot code of MS-SYS6, and found, that it not
uses 24h offset itself, but pass value from there to kernel. I not check
what SYS does with original 24h field, but image inside SYS contains 80h
value, so I doubt that MS-SYS preserves this field.

LG Now Jeremy added an option to set the boot drive to an arbitrary
LG value, which solves the issue. But FF is still default for hard disks.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Patch: COUNTRY.ASM

2004-09-13 Thread Arkady V.Belousov
Hi!

 BTW, Lucho, if you wish, I may prepare for you macroses in TASM to ease
writing more readable and safer country.asm. Probably, someone then may
translate these macro to NASM?




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM. 
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Patch: COUNTRY.ASM

2004-09-13 Thread Arkady V.Belousov
Hi!

12--2004 14:23 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 * There is no room for the LCASE table, so it won't be possible to load
 the ru/866 pair.

 BTW, in contary to RBIL (which says that INT21/6503 is present only in
DOS 6.2+ COUNTRY.SYS and supports only CP866) MS-DOS with CP866
installed doesn't supports LCASE. B-\




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: kernel/kernel country.asm, inthndlr.c

2004-09-13 Thread Arkady V.Belousov
Hi!

12--2004 13:54 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 Show this, please.
LG See it in the CVS, along with the nice additions of Eduardo.

 CVS isn't accesible for me.

 Let me ask reverse question: why you add this _another FreeDOS specific
 function, which duplicates another specific function_, whereas only some
 version probably support this function (and RBIL is not very clear how!).
LG It's not FreeDOS-specific. It's MS-DOS 4.0 specific. And some software
LG uses it.

 Why then you not add other-DOSes-specific functions? For example,
INT21/20: S/DOS 1.0+  PTS-DOS 6.51+ - GET OEM REVISION? Or INT21/92?
Some software also use these functions.

 In case of INT2F/122F some software mean mythical Matthias' FREEVER,
which noone of us seen it, and  it even unknown if this function need for
FREEVER at all.

LG Don't ask me more.

 Lucho, you introduce change in interface. _Such_ actions necessarily
_must_ be discussed and approved. So don't ask me more is not in given
case.

 Now your patches mention GPL (which associated with GPL1)
LG No, GPL means *current* version, and the URL points to it.

 URL is reduced for convenience, but for law clarity (for which you at
all mention license) you should mention complate license name. Explicitly.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] 32RTM Bug Found, no good fix

2004-09-12 Thread Arkady V.Belousov
Hi!

15--2004 21:59 [EMAIL PROTECTED] (Bart Oldeman) wrote to
[EMAIL PROTECTED]:

BO  BC isn't a target for freedos optimizations; there's one and only one
BO  target to optimize for : WATCOM.
BO  so BC specific optimization is a waste of time (ours and yours)

BO This just being tom's opinion but I still agree --

 I agree too, but _small_ optimizations, like discussed joined write
into lr.BX, _may_ be applied, because they (may) help for other compilers
too.

BO I even agree more than
BO I did a couple months ago, that's why I rejected my own idea of using
BO _seg * pointers. I played for a while again with Turbo C++ back then but
BO in the end decided that the difference was just too big.

 After my playing with _seg (you may see its usage in unstable branch
through MK_SEG_PTR()) I see the noticeable code reduction for Borland.

 Though, Borland contains bug also there, it related to conversion
literal values to far pointers. :(




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] 32RTM Bug Found, no good fix

2004-09-12 Thread Arkady V.Belousov
Hi!

15--2004 20:24 [EMAIL PROTECTED] (Bart Oldeman) wrote to
[EMAIL PROTECTED]:

 -  lr.BH = OEM_ID;
 -  lr.CH = REVISION_MAJOR;   /* JPP */
 -  lr.CL = REVISION_MINOR;
 -  lr.BL = REVISION_SEQ;
 +  lr.BX = (OEM_ID  8) | REVISION_SEQ;
 +  lr.CX = 0; /* serial number must be 0 or buggy 32RTM thrashes
BO tabs?). There's also a pointless optimization, that the compiler can do
BO for us as well.

 Can != to will and/or my. Yes, Watcom (but not, say, Borland)
(sometime) may join adjacent memory writes into memory, but there writes
into BX are interspersed. Also, to make more readable code, I add macro
MK_UWORD(): lr.BX = MK_UWORD (OEM_ID, REVISION_SEQ);.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Boot sector drive incompatibility with other boot sectors

2004-09-12 Thread Arkady V.Belousov
Hi!

10--2004 20:05 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

LG brain-dead BIOSes if the boot drive is A: (but not if it's C:), the FF
LG value written to by SYS causes a compatibility problem. What happens if
LG someone decides to overwrite our boot sector later with a boot sector from
LG another DOS? The FF will remain there (I checked that with PC-DOS) and the
LG new boot sector will try to boot off drive FF, which will fail. Being too
LG smart sometimes hurts (if everyone else is dumb ;-)

 I don't understand this. SYS writes 0/FF only into its own images,
builtin into SYS executables. And, if _after_ SYS someone will change boot
loader, then 0/FF value also will be replaced. Where is trouble?

 Or, do you mean, that someone will _add_ own boot sector _into SYS_?
But added boot sectors should follow some rules, including boot drive
field (which, of course, internally may be ignored).

LG So, I propose that SYS stores 0 if the drive is A: or B:, 80 if the drive
LG is C: or D:,

 D:==second disk? Second disk is a 81h value.

LG and FF in all other cases, and that we add a special boot
LG drive option that can be used by advanced users to store whatever value
LG they like. We could also just leave that value unchanged from the old boot
LG sector as most other SYSes doo,

 For this, SYS should verify, that it knows old boot record andr that
mask is placed at expected position. Too fuzzy and ambuguous.

LG thus placing the responcibility on FORMAT
LG ;-) Please express your opinions on this issue. Changing the SYS behaviour
LG is easy, but taking the right decision isn't.

 I think, current behavior (use fixed drive# in case of A:/C: and BIOS
value in other cases, including HDs), is good and flexible way.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Re: kernel/kernel country.asm, inthndlr.c

2004-09-12 Thread Arkady V.Belousov
Hi!

12--2004 14:28 Arkady V.Belousov wrote to
[EMAIL PROTECTED]:

 And what about INT2F/122F?
LG Although only MS-DOS 4.0 had it, I won't remove it
AVB  Let me ask reverse question: why you add this _another FreeDOS
AVB specific
AVB function, which duplicates another specific function_, whereas only some
AVB version

 only some _MS-DOS_ versions

AVB probably support this function (and RBIL is not very clear how!).

 And we even don't may prove this or check how those MS-DOS editions
support this function.




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


Re: [Freedos-kernel] Kernel source zips Re:...

2004-09-09 Thread Arkady V.Belousov
Hi!

8--2004 19:32 [EMAIL PROTECTED] (Kenneth J. Davis) wrote to
[EMAIL PROTECTED]:

  Third (or 5th?) times of asking (without answer): where and how
 download latest (unstable) kernel sources? And, as I understand, there is
KJD If sourceforge has cron working, tarballs are there still, additionally:
KJD http://www.fdos.org/kernel/kernel.HEAD.zip  for stable sources
KJD http://www.fdos.org/kernel/kernel.UNSTABLE.zip  for dev sources

 Fine. What is HEAD? Original 2035? UNSTABLE - is where you apply
reviewed by you patches? But, as I understand, Lucho makes more patches,
than you already apply.

 (BTW, Lucho, I note, you apply (most) of my code optimizations and
cleanups. Thank you. :)

KJD The fdos.org sources will be updated regularly and not change
KJD (for a good while anyway).

 Fine. I wrote these pathes and review these archives.

KJD I will be adding bilds to the kernel/ directory to,

 ?

KJD just haven't had a chance to set it up.

 now 4 alternate trees: 2035, 2035-tom, 2035-Lucho and 2035-Jeremy?
KJD No.  There is the stable branch (which should be similar to Tom's,
KJD though yes he has his own as others may?), and then the unstable/dev
KJD branch, which is where Lucho changes and some stuff that I'm doing
KJD that I haven't tested enough to be considered stable.

 You mean, you apply _all_ patches from Lucho?




---
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/docs contrib.txt,1.6.2.1,1.6.2.2 history.txt,1.78.2.3,1.78.2.4

2004-09-08 Thread Arkady V.Belousov
Hi!

3--2004 09:26 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 +++ history.txt   3 Sep 2004 09:26:48 -   1.78.2.4
 +- zero serial number of Int 21h/30h (else buggy 32RTM thrashed stack)

zero _CX in_ serial # _after_ INT 21/30, else buggy _Borland's_ 32RTM
trashe_s_ stack.

 +- added Int 2Fh/2Fh processing to set DOS version as per MS-DOS 4.0

 I suggest, here mean INT 2F/122F? Wrong action, MS-DOS 7.10 not
supports this function. In next letter I show this with help of DEBUG
script.

 +* autoexec.bat now single-line for FreeCOM compatibility when EOL=LF

 ?

 +* config.sys: all commands removed as they were close to defaults

 ?

 +  - (with Bart) LoL pointer made const (saves some size for Watcom)

_by_ Bart

 +  - revision sequence now initialised along with DOS version in LoL

 ?

 +* makefile: object files reordered to gain ~300B packed size

 gain ~300B == reduce 300 bytes of?




---
This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_idP47alloc_id808op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/boot oemboot.asm,NONE,1.1.2.1

2004-09-08 Thread Arkady V.Belousov
Hi!

7--2004 19:17 [EMAIL PROTECTED] (Kenneth Davis) wrote to
[EMAIL PROTECTED]:

KD Update of /cvsroot/freedos/kernel/boot
KD In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28417/boot

 Third (or 5th?) times of asking (without answer): where and how
download latest (unstable) kernel sources? And, as I understand, there is
now 4 alternate trees: 2035, 2035-tom, 2035-Lucho and 2035-Jeremy?




---
This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_idP47alloc_id808op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/docs contrib.txt,1.6.2.1,1.6.2.2 history.txt,1.78.2.3,1.78.2.4

2004-09-08 Thread Arkady V.Belousov
Hi!

 +++ history.txt   3 Sep 2004 09:26:48 -   1.78.2.4
 +- added Int 2Fh/2Fh processing to set DOS version as per MS-DOS 4.0

-a
11CD:0100 mov dx,500
^^^
11CD:0103 mov ax,122f
11CD:0106 int2f
11CD:0108 mov ax,3000
11CD:010B int21
11CD:010D int3
11CD:010E
-g=100

AX=0A07  BX=FF00  CX=  DX=0500  SP=FFEE  BP=  SI=  DI=
--
DS=11CD  ES=11CD  SS=11CD  CS=11CD  IP=010D   NV UP EI PL ZR NA PE NC
11CD:010D CCINT 3
-a 100
11CD:0100 mov ax,3306
11CD:0103 int21
11CD:0105 int3
11CD:0106
-g=100

AX=3306  BX=0A07  CX=  DX=1000  SP=FFEE  BP=  SI=  DI=
---
DS=11CD  ES=11CD  SS=11CD  CS=11CD  IP=0105   NV UP EI PL ZR NA PE NC
11CD:0105 CCINT 3
-q




---
This SF.Net email is sponsored by BEA Weblogic Workshop
FREE Java Enterprise J2EE developer tools!
Get your free copy of BEA WebLogic Workshop 8.1 today.
http://ads.osdn.com/?ad_id=5047alloc_id=10808op=click
___
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel


[Freedos-kernel] Re: [Freedos-cvs] kernel/kernel country.asm,NONE,1.1.2.1 config.c,1.89.2.1,1.89.2.2 dosfns.c,1.70.2.1,1.70.2.2 dyninit.c,1.8,1.8.2.1 fattab.c,1.31,1.31.2.1 fcbfns.c,1.44,1.44.2.1 globals.h,1.45.2.1,1.45.2.2 init-mod.h,1.56.2.1,1.56.2.2 inthndlr.c,1.87.2.3,1.87.2.4 intr.asm,1.16.2.1,1.16.2.2 ioctl.c,1.33.2.2,1.33.2.3 main.c,1.81.2.3,1.81.2.4 makefile,1.19.2.2,1.19.2.3 nls.c,1.19.2.2,1.19.2.3 proto.h,1.75.2.2,1.75.2.3 task.c,1.44.2.2,1.44.2.3

2004-09-08 Thread Arkady V.Belousov
Hi!

3--2004 09:26 [EMAIL PROTECTED] (Luchezar Georgiev) wrote to
[EMAIL PROTECTED]:

 Update of /cvsroot/freedos/kernel/kernel
 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15462/kernel/kernel
 Modified Files:
   Tag: UNSTABLE
 Log Message:
 COUNTRY.SYS  NLSFUNC support added: Lucho, Eduardo.
 --- NEW FILE: country.asm ---

 dd  ent  ; first entry
 ent dw 35; number of entries - don't forget to update when adding a new country

 Here is possible to slightly enhance this point (no need for manual
updating), because table below is regular (contain equal-size items):

 ; entries
 ; (size, country, codepage, reserved(2), offset)
 __us dw 12,  1,437,0,0
  dd _us
[...]
 __me dw 12,785,864,0,0
  dd _me
 __il dw 12,972,862,0,0
  dd _me

 (Bug? __il refers to _me instead _il). Thus, all quoted above my be
replaced by:

__O\_/_\_/O__
dd $+4  ; address of table (folows below)
dw (LAST_ENTRY - FIRST_ENTRY) / ENTRY_SIZE

; entries (size, country, codepage, reserved(2), offset)

FIRST_ENTRY label
dw ENTRY_SIZE-2,  1,437,0,0 ; US
dd _us
ENTRY_SIZE = $ - FIRST_ENTRY
[...]
dw ENTRY_SIZE-2,785,864,0,0 ; Middle East
dd _me
dw ENTRY_SIZE-2,972,862,0,0 ; Israel
dd _il
LAST_ENTRY label
_
  O/~\ /~\O

Or, even better, all data may be reordered to place related data adjacent:

__O\_/_\_/O__
dd $+4  ; address of table (folows below)
dw (LAST_ENTRY - FIRST_ENTRY) / ENTRY_SIZE

FIRST_ENTRY label
dw HEAD_SIZE
HEAD_START label
dw   1,437,0,0  ; US
dd $+4
HEAD_SIZE = $ - HEAD_START
dw 1,6,1
dd $+4
db 0FFh,CTYINFO
dw DATA_SIZE
DATA_START label
dw   1,437,MDY
db $,0,0,0,0
dw ,,.,-,:
db 0,2,_12
DATA_SIZE = $ - DATA_START
[...]
dw HEAD_SIZE
dw 785,864,0,0  ; Middle East
dd $+4
dw 1,6,1
dd $+4
db 0FFh,CTYINFO
dw DATA_SIZE
dw 785,864,DMY
db 0A4h,0,0,0,0
dw  .,,,/,:
db  3,3,_12
dw HEAD_SIZE
dw 972,862,0,0  ; Israel
dd $+4
dw 1,6,1
dd $+4
db 0FFh,CTYINFO
dw DATA_SIZE
dw 972,862,DMY
db 99h,0,0,0,0
dw ,,., ,:
db 2,2,_24; Israel
LAST_ENTRY label
_
  O/~\ /~\O

Of course, entry may be defined through macro. Someting like:

__O\_/_\_/O__
dd $+4  ; address of table (folows below)
dw (LAST_ENTRY - FIRST_ENTRY) / ENTRY_SIZE

FIRST_ENTRY label
ENTRY   1,437,MDY,$,0,0,0,0, ,,.,-,:,0,2,_12 ; US
[...]
ENTRY 785,864,DMY,0A4h,0,0,0,0,.,,,/,:,3,3,_12 ; Middle East
ENTRY 972,862,DMY,99h,0,0,0,0, ,,., ,:,2,2,_24 ; Israel
LAST_ENTRY label
_
  O/~\ /~\O

 +++ globals.h 3 Sep 2004 09:26:51 -   1.45.2.2
 - (Build  KERNEL_BUILD_STRING ) [ __DATE__   __TIME__ ]\n
 + (Build  KERNEL_BUILD_STRING ,  __DATE__ )\n

 I like this. :)

 +++ main.c3 Sep 2004 09:26:51 -   1.81.2.4
  static char copyright[] =
 -(C) Copyright 1995-2004 Pasquale J. Villani and The FreeDOS Project.\n
 +Copyright 1995-2004 Pasquale J. Villani and The FreeDOS Project.\n
 +This free software has ABSOLUTELY NO WARRANTY and is licensed under\n
 +the GNU General Public License (http://www.gnu.org/licenses/gpl.html)\n\n;

 And this too. :) Though, I think, here is mistake, because me use GPL2,
not plain GPL. Thus, above should like something like:

This free software has ABSOLUTELY NO WARRANTY and is licensed under the\n
GNU General Public License v2 (http://www.gnu.org/licenses/gpl2.html)\n\n;

 +++ inthndlr.c3 Sep 2004 09:26:51 -   1.87.2.4
 @@ -709,10 +698,8 @@
  case 0x30:
lr.AL = os_setver_major;
lr.AH = os_setver_minor;
 +  lr.BX = (OEM_ID  8) | REVISION_SEQ;

 lr.BX = MK_UWORD (OEM_ID, REVISION_SEQ);
-

[...]
 +  if ((rc = _SftSeek(s, MK_ULONG(lr.CX, lr.DX), lr.AL)) = SUCCESS)
---

[...]
  VOID ASMCFUNC int2F_12_handler(struct int2f12regs r)
 +  COUNT rc;

 int rc;

[...]
 +case 0x27: /* close file */
r.FLAGS = ~FLG_CARRY;
 -  break;
 +  CritErrCode = SUCCESS;
 +  rc = DosClose(r.BX);
 +  goto short_check;

 Better to place r.FLAGS = right before goto to make common tail
for many branches. About CrtiErrCode = I unsure, if it valid to move after
function.

[...]
 +long_check:
 +  if (lrc = SUCCESS)
 

  1   2   3   4   5   >