الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

طريقة تخطي البوت

بدأه HIGER في 23 ديسمبر 2010 · 8 رد · 1,214 مشاهدة · في أرشيف قسم الـــ Assembly
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

مرحبا بالأخوة الكرام ، لدي سؤال :

لقد عملت برنامج بسيط على قطاع الإقلاع يقوم برسم جملة طبعا بمساعدة بعض الشروحات جزاهم الله خيرا

وقد عدلت فيه بعض الاشياء وأضفت وأزلت عددا من الأوامر

على كل أنا وددت إضافة كود يقوم بالخروج من وضع برنامج الجملة إلى وضع أو بوت نظام الوندوز

بمعنى آخر أنا بحاجة لطريقة كتابة كود يقوم بالتنقل بعد عرض الجملة إلى بوت الويندوز

وهذا إما عن طريق مؤقت زمني آلي أو عن طريق ضغط على اي زر أو زر محدد

فكيف يكون ذلك وشكرا جزيلا :)

#2

اين يوجد قطاع الاقلاع الخاص بك واين يوجد قطاع الاقلاع الخاص بويندوز ؟

Floppy/CD/HDD

mov eax, dword ptr ds:[0xffdf0308]

jmp dword ptr [eax+0xfc]

#3

قطاع الإقلاع الخاص بي على Floppy

وقطاع الغقلاع الخاص بالويندوز على HDD

على كل هذا قد يتغير لأنني في مرحلة تجارب وفيما بعد عندما أتأكد من سيره بالشكل الكامل سأضع كلا القطاعين على HDD

وشكرا :)

#4

جرب التالي :

قم بقراءة الـMbr الخاص بالـHDD وحمله الى العنوان 0000:7c00 وقم بالقفز الى نفس العنوان 0000:7c00

mov eax, dword ptr ds:[0xffdf0308]

jmp dword ptr [eax+0xfc]

#5

حسنا ... ولكن كيف سيكون الكود الي سيقوم بالعد أو الضغط على مفتاح معين للإنتقال إلى بوت الويندوز ؟

#6

int 0x16 توفر خدمات الكيبورد .

مثال بسيط (لم اجرب) :

read_kb_input:
	mov al, 0x10
	int 0x16
	cmp al, 'W' ; 0x57
	je skip_to_windows
	cmp al, 'w' ; 0x77
	jne read_kb_input
skip_to_windows:

	call map_mbr

mov eax, dword ptr ds:[0xffdf0308]

jmp dword ptr [eax+0xfc]

#7

شكرا لك قد وصلت الفكرة والمعلومة :)

#8
GamingMasteR كتب:

جرب التالي :

قم بقراءة الـMbr الخاص بالـHDD وحمله الى العنوان 0000:7c00 وقم بالقفز الى نفس العنوان 0000:7c00

حاولت التمعن والتركيز مع ما قلته إلا أني لم أجد الطريقة المناسبة لعمل ما قلته

فهل من مساعدة ؟:)

#9

لازلنا ننتظر مساعدتكم :)

مواضيع مشابهة