exeflat.c of build 2035a (not 2035) has a problem. The start segment is an argument so it's a variable and its value - 2 must be loaded into DI instead of the constant 0x5E. Here's a fix:

--- cvs\kernel\utils\exeflat.c  2004-07-09 04:16:30.000000000 +0200
+++ src\kernel\utils\exeflat.c  2004-08-07 13:16:38.000000000 +0200
@@ -303,6 +303,7 @@
       0x33,0xFF,               /* 27 xor di,di                 */
       0xFF,0xE7,               /* 29 jmp di    ; jmp 0         */
     };
+    *(short *)&trailer[3] = start_seg - 2;
     *(short *)&trailer[15] = (short)size + 0x20;
     *(short *)&trailer[20] = start_seg + header.exInitSS;
     *(short *)&trailer[25] = header.exInitSP;


------------------------------------------------------- This SF.Net email is sponsored by OSTG. Have you noticed the changes on Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now, one more big change to announce. We are now OSTG- Open Source Technology Group. Come see the changes on the new OSTG site. www.ostg.com _______________________________________________ Freedos-kernel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freedos-kernel

Reply via email to