> I'll link to the 1.0 boot floppy image, under the "FreeDOS 1.0" section.
> http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.0/fdboot.img

Kernel on that image uses 386+ instructions... and it seems as if it does  
that without (properly) checking for the presence of a 386.

That it's a 386+ kernel is just an oversight (or should be documented for  
the image), but if 386+ kernels really do not abort with an appropriate  
message on non-386 CPUs, that's a bug.

Does a kernel developer know whether such checks are... just kidding, I  
examined the sources myself. In kernel.asm such a check does not exist or  
(in recent builds and SVN revisions) it exists but isn't used to orderly  
abort loading if the CPU isn't supported. It then jumps to _FreeDOSmain,  
which is the C function FreeDOSmain in main.c. In the kernel on that disk  
image, the very first instruction happens to be "push fs", code 0Fh 0Ah,  
which on pre-386 CPUs is an error (or at least not "push fs").

The file kernel.asm (SVN r1705) is this one:  
http://freedos.svn.sourceforge.net/viewvc/freedos/kernel/trunk/kernel/kernel.asm?revision=1705&view=markup

Note lines 194 to 196, where precisely in this latest r1705, Kenneth added  
the comment "TODO display error if built for 386 running on 8086 etc". I  
can prepare a patch to implement this (I'd think entirely in kernel.asm)  
if the kernel developers are interested.

Regards,
Chris

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://ad.doubleclick.net/clk;258768047;13503038;j?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
_______________________________________________
Freedos-kernel mailing list
Freedos-kernel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-kernel

Reply via email to