Hi! ______________O\_/_________________________________\_/O______________ inthndlr.c/int2F_12_handler: - bug: INT2F/4A01: instead available size in BX always returned 0. - bug: INT2F/1213 should return AL, not AX.
- bug: blockio.c/AllocateHMASpace(): wrongly freed extra buffer because "FP_OFF(bp+1) >= lowbuffer" expression (should be ">"). config.c: - NBUFF (default and min allowed value for buffers=) is set to 20 (too high); code to allocate min 6 buffers already present in config_init_buffers(). config.c/config_init_buffers(): - bug: with argument=-1, firstAvailableBuf points to first buffer, not to next following buffer. - value of buffers= (say 80) ignored, if it positive and HMA present. - if HMA present, but buffers in low memory (buffers=-80), then memory after kernel in HMA not available for INT2F/4A0x (firstAvailableBuf not points to HMA); support for this requires also modification in blockio.c/AllocateHMASpace(): if (FP_SEG (firstbuf) != /*HMASEG*/0xFFFF) return; _____________________________________________________________________ O/~\ /~\O In next letter I present patches, which will fix all of these bugs and inconsistencies, also as reduce kernel size after BC: in memory by 176 bytes, unpacked executable by 182 bytes. And YES, all of this tested - both in original (2033) kernel and in kernel with my updates. PS: In inthndlr.asm present string "FreeDOS kernel version 1.1.33 ..." (total 67 characters), because os_release variable in globals.h; this variable used by INT 21/33FF, which is "FreeDOS extension" (see int21_syscall()). ------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Freedos-kernel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freedos-kernel