با سلام ، خدمت دوستان و اساتید محترم
من یک bootloader با fasm نوشتم که یک کرنل دو مرحله ای رادر حافظه بار گذاری می کند. سپس کد کرنل بخش exe خود را در آدرس 0x01000000 کپی کرده و با تنظیم stack اجرا را به entrypoint فایل exe می دهد تا اینجای کار مشکلی وجود ندارد مشکل در اجرای فایل exe می باشد اگر تابع test فایل exe با عدد بزرگ اجرا شود با وجود اینکه stack همچنان فضای کافی دارد اما esp دچار اختلال می شود و آدرس بازگشت دچار اختلال شده و اجرا از دست می رود . من نتوانستم علت آن را بفهمم.
در ضمن من از tcc جهت تولید فایل exe استفاده کرده ام.
نحوه کار mkflp2.py نیز به این صورت است که یک فلاپی فرمت شده با fat12 را باز کرده mbr را بر روی آن کپی می کند.
پیشا پیش از توجه دوستان تشکر می کنم.