Main page I Packages I Help I Forum

SvarDOS community forum

a place to talk about SvarDOS and other DOS-related things

jump to end reply list of threads

KERNEL.SYS seems to block COMMAND.COM with some version check.

Where should I hexedit KERNEL.SYS to prevent COMMAND.COM version checking? I want to try COMMAND.COM from IBM PC-DOS as a Shell in SvarDOS (2025 version). The problem seems to be that KERNEL.SYS seems to perform some version check and ends up displaying: Incorrect DOS version Bad or missing command interpreter. Please enter a valid filename. I just need the offset with current hex values and newer hex values to change so that this check is not performed. The exact same message is displayed on many other alternative command interpreters. Thanks.
Hello Colin, I think the version check is actually done in MS COMMAND.COM, not within the EDR kernel. Is there any specific reason you want to run MS COMMAND.COM, like a feature you miss?
I was speaking about using IBM PC-DOS COMMAND.COM, not the Microsoft one, but may probably apply too. The IBM PC-DOS COMMAND.COM is much more compatible. I always end up having issues with SvarCOM Shell due to incompatibilities, and it is a mess to attempt to find out what really is going on until you realize several hours later that it was a feature on SvarCOM which is either missing, or that it was implemented in a non-compatible way. SvarCOM Shell may be a nice project, but it still fails to be backwards compatible when faced against Microsoft/IBM DOS offerings, which where the most common ones when DOS was a thing. My latest misadventure with SvarCOM Shell was the unimplemented CTTY command. But that is only the latest one I can remember. So a simple solution for me would be to use the freely available COMMAND.COM from IBM's PC-DOS, but then I get the incorrect version message and end up coming back to PC-DOS or MS-DOS for a painless solution. On the other hand, I would like to add I very much like the KERNEL.SYS concept of unifying IO.SYS and DOS.SYS counterparts. It would even be better if they could even be compressed (I really don't know whether that would be feasible at all). And a last thing: what does the COLOUR internal CONFIG.SYS command do? I couldn't find documentation on it on the former Caldera online docs, but I see it inside KERNEL.SYS, so it must be up for something. Anyway, thank you for your answer.
> On the other hand, I would like to add I very much like the KERNEL.SYS concept of unifying IO.SYS and DOS.SYS counterparts. It would even be better if they could even be compressed (I really don't know whether that would be feasible at all).
My builds of the kernel (lDOS flavour) at https://pushbx.org/ecm/download/edrdos.zip contain 4 different variants of the kernel file: * edrdos.com - iniload, uncompressed * edrpack.com - iniload, compressed * edrdos.sys - drload, uncompressed * edrpack.sys - drload, compressed Any single file of these can be used as kernel.sys The default edrpack files in the bin directory use LZMA-lzip compression, so they're the smallest choice but very slow to depack (could take several minutes). Other compression method choices can be obtained from the tmp subdirectories, eg tmp/sa2/edrpack.sys for LZSA2 which is much faster. The iniload files (.com) can be used as many different kernel files, or as a DOS application. The drload files (.sys) can only be used as FreeDOS or EDR-DOS kernel files. The advantage of drload is that it takes less than 500 bytes whereas iniload takes more than 4000 bytes. Using the patchpro utility from https://pushbx.org/ecm/download/patchini.zip you can configure what depack progress indicator to use. The default is dots, and the following choices are supported: (This list is displayed upon running patchpro without parameters.) Supported progress types: 0: None 1: Dots 2: Percentage 3: Bar 4: Bar with percentage
> And a last thing: what does the COLOUR internal CONFIG.SYS command do? I couldn't find documentation on it on the former Caldera online docs, but I see it inside KERNEL.SYS, so it must be up for something.
I think this command was an addition of the DR-DOS/OpenDOS Enhancement Project. I don't know exactly how to use it but it probably changes the default colour of the CON device driver's output.
The COLOUR command is mentioned in https://hg.pushbx.org/ecm/edrdos/file/8a412e478d23/doc/NEWFUNCT.TXT#l22
> My latest misadventure with SvarCOM Shell was the unimplemented CTTY command. But that is only the latest one I can remember.
Please give it a try from time to time. Compatibility should get better with every version. Implementing CTTY is on the list: https://github.com/SvarDOS/bugz/issues/101 If something does not work as expected, please report it here or on the Github bug tracker. In the kernel package on Github there is also the EDR command.com included: https://github.com/SvarDOS/edrdos/releases/tag/v20240914 Maybe that's worth a try.
@ecm Thank you very much for the thorough explanation. Your work is impressive! I appreciate you pointing me out the newish features regarding the CONFIG.SYS command set. I am having a great time toying with them and your other kernel builds. That said, thanks to this information I managed to solve the incorrect version message, and can now run other Shell interpreters without much trouble. Out of the joy of it, it would be cool if you could implement, if it is not too much trouble, the following customizable features to kernel.sys and its relatives: 1) Perhaps a QUIET/SILENT/MUTE mode where the entire boot text is not displayed, not even the version/build strings and int 13h messages , that until the Shell interpreter gets loaded. 2) Much like the DR Web Spider boot floppy, implement a customizable splash logo display for a configurable duration, followed by an optional fade effect. Of course, this would probably only make sense on EGA/VGA displays. Thank you again! @Bernd I will keep my eye on SvarCom development. At least it has a very reduced file size and modest memory footprint. So there is certainly potential. I am already giving the EDR COMMAND.COM a spin right now. Thank you for your responses.
> 1) Perhaps a QUIET/SILENT/MUTE mode where the entire boot text is not displayed, not even the version/build strings and int 13h messages , that until the Shell interpreter gets loaded.
I assume you want to hide output of all device drivers as well? That'd need some detection for user input queries though, lest a prompt remains invisible and seemingly "hangs" the system.
> 2) Much like the DR Web Spider boot floppy, implement a customizable splash logo display for a configurable duration, followed by an optional fade effect. Of course, this would probably only make sense on EGA/VGA displays.
That's a feature of MS-DOS v7 and v8 too. I think FreeDOS 1.0 came with its own boot splash, maybe you could look into that? There was a project called DOSLOGO that was to recreate the MS-DOS splash but I cannot honestly recommend it.
> I assume you want to hide output of all device drivers as well? That'd need some detection for user input queries though, lest a prompt remains invisible and seemingly "hangs" the system.
Not really, something more simple. It would be fine just to hide the progress loading, the complete build version string with dates and what not, and also the int 13h message. After that, the system should start again yelling back at you normally. I already tested DOSLOGO when it was fresh from the oven, and it was buggy, like many other similar projects. The one that was included in the DR Web Spider boot floppy demo was great, but it only worked on DR-DOS. It failed on every other DOS. Now that I think of it, maybe I should retest it to see whether it works with your KERNEL.SYS, given its origin. I remember I had customized the logo to suit my taste. I will report back if it works, since this boot floppy was a freely distributable demo. To be honest, I am personally not a fan of FreeDOS. I only hand pick a few stuff from it that I find valuable, but my overall view is that it is an untidy over bloated distribution. Although I recognize its value for keeping the DOS torch still going.
Update: DR Web Spider boot floppy demo can be reused to have a splash logo. Just grab FADE.COM, SPLASH.COM and the logo image called WEBSPLSH.GIF from the above mentioned floppy. Make sure everything is at the root directory. Add as one of the last lines of your AUTOEXEC.BAT: FADE Add as one of the first lines of your CONFIG.SYS: INSTALL=A:\SPLASH.COM WEBSPLSH.GIF /N Reboot and you should be able to see the logo for brief time and then it will fade out to your commandline. You can use another GIF, but make sure you respect the image dimensions and the specific GIF format (not all GIFS are the same!). The downside is that the logo will only work on systems with a VGA or better display, and a 286 or better CPU.
Archive of the DR Web Spider boot floppy demo (remember this was a publicly downloadable demo back when Caldera was still around) https://web.archive.org/web/20231001000000/https://geekhaus-space-prod-shared.ams3.cdn.digitaloceanspaces.com/mirrors/legacy.archive.browsers.evolt.org/dr-webspyder/2.0/DRWEBDEM.EXE

your name or nick

password (optional)


check the FIRST and LAST boxes: