Discussion:
[Freedos-kernel] FreeDOS kernel 2041 and SYS issues | Split
dos386
2012-03-05 07:13:59 UTC
Permalink
Kernel 2041 shot: Loading Image... (no
breaking news)

previous 2040: Loading Image...

SYS updated together with kernel, 2041:
Loading Image...

previous 2011-Aug: Loading Image...

What's new in SYS:

* reduced bloat by 2+1/2 KiB
* changed the "Usage: SYS CONFIG /HELP" text
* ???

Minor SYS BUG (see shot): it fails to find KERNEL.SYS despite it's
in there (it has "R" attribute). Suggestion for improvement:

- read and report KERNEL.SYS attribs and size
- if "R" then write "can't modify because read-only"
- IF ((not "R") AND (modification requested)) THEN
- - open with write access
- ELSE
- open with read access only
- ENDIF

Other thing somewhat "missing" is reading out the version info
(now 2041, date, 8086-vs80386, FAT16-vs-FAT28) ... IIRC we had
already discussed that some time ago:

http://www.mail-archive.com/freedos-kernel%40lists.sourceforge.net/msg02521.html
2011-Jul-30 "[Freedos-kernel] FreeDOS kernel UPX'ing and versionning
chaos"

And one more suggestion: SPLIT SYS from KERNEL. Why?

- FreeDOS SYS is de facto shared with EDR-DOS, unlike KERNEL
- SYS getting updated independently (like the 2011-Aug-10 release)
- The 2041 release has 4 packages all having the same SYS.COM file
- SYS.COM history is not documented
Kenneth J. Davis
2012-03-05 19:24:34 UTC
Permalink
On Mon, Mar 5, 2012 at 2:13 AM, dos386 <***@gmail.com> wrote:
...
Post by dos386
Minor SYS BUG (see shot): it fails to find KERNEL.SYS despite it's
- read and report KERNEL.SYS attribs and size
- if "R" then write "can't modify because read-only"
- IF ((not "R") AND (modification requested)) THEN
- - open with write access
- ELSE
- open with read access only
- ENDIF
Thank you for the bug report, I will try to look into and provide an
updated version later this week (see below).
Post by dos386
Other thing somewhat "missing" is reading out the version info
(now 2041, date, 8086-vs80386, FAT16-vs-FAT28) ... IIRC we had
http://www.mail-archive.com/freedos-kernel%40lists.sourceforge.net/msg02521.html
2011-Jul-30 "[Freedos-kernel] FreeDOS kernel UPX'ing and versionning
chaos"
Convince whoever still has write access to the kernel to add version
resource and I will update sys to support it.
Post by dos386
And one more suggestion: SPLIT SYS from KERNEL. Why?
Sys development has been split for a while now, however a version has
also been kept with the kernel to ensure the kernel downloads are
usable as-is. I would periodically sync the sources with the kernel
sources (and would merge any updates committed there into the primary
source).

Sys may be found at http://www.fdos.org/kernel/sys/ with current svn
sources browsable at
http://fdos.svn.sourceforge.net/viewvc/fdos/trunk/source/BASE/sys/
Post by dos386
- FreeDOS SYS is de facto shared with EDR-DOS, unlike KERNEL
- SYS getting updated independently (like the 2011-Aug-10 release)
- The 2041 release has 4 packages all having the same SYS.COM file
- SYS.COM history is not documented
Note: 2041 does not have the latest version of sys, but an older not
really that different version (doesn't support as many other DOS
kernels). However, as I no longer work on the FreeDOS kernel, it will
be up to the current maintainers to determine if that version of sys
continues to stay with the kernel or if it diverges (branches) or if
it will be periodically sync'd with the current sys sources.

There is one version of sys, but it actually produces several
different executable versions - one for the FreeDOS/DOS-C kernels, one
for EDR-DOS*, and optionally with generic DOS support for MS/PC DOS +
other kernels. *EDR-DOS version is not actually released in binary
form, but the FreeDOS release supports EDR-DOS as well even without
the generic DOS support enabled as they both use the same boot
sectors. Latest SYS version is 3.7b.

Jeremy
Kenneth J. Davis
2012-03-10 00:01:01 UTC
Permalink
Post by Kenneth J. Davis
...
Post by dos386
Minor SYS BUG (see shot): it fails to find KERNEL.SYS despite it's
- read and report KERNEL.SYS attribs and size
- if "R" then write "can't modify because read-only"
- IF ((not "R") AND (modification requested)) THEN
- - open with write access
- ELSE
- open with read access only
- ENDIF
Thank you for the bug report, I will try to look into and provide an
updated version later this week (see below).
Post by dos386
Other thing somewhat "missing" is reading out the version info
Please see attached patch for review.
For sys config: (fdkrncfg.c) adds support for displaying current
config options if kernel can not be opened for writing, will display a
warning if attempt to update changes on read-only kernel (while still
validating command line arguments).
Also included is a patch to add a minimal version resource to kernel:
oem id, major # (e.g. 2), minor # (e.g. 41), and if svn or release
build (svn version may include svn revision#) along with support for
sys config to display version information if found. Note: when upx is
used the size of the config block is wrong, so values should be tested
against "unused87654321" (or since config block has not really changed
much, can assume if 19 bytes in size then really not more than 14 are
valid (though could be less)). The attached patch does not include
changes for config block created in upx'd kernel (requires update to
exeflat.c). Attached changes create a config block that is 20 bytes
in size. Other part of fdkrncfg.c patch adjusts spacing of help text
to make help output more consistent.

Thank you,
Jeremy

Loading...