MARTYPC هو محاكي منصة لأجهزة الكمبيوتر المبكرة المكتوبة في الصدأ. وهو يدعم Windows و Linux و MacOS. يحاكي MARTYPC العديد من الأنظمة المستندة إلى 8088 بما في ذلك IBM PC و XT و PCJR و Tandy 1000.
انقر هنا للوصول إلى دليل مستخدم MartyPC
تتوفر البناء من خلال الإصدارات الدورية. تتوفر البناء التلقائي الأحدث عبر علامة تبويب الإجراءات ضمن القطع الأثرية لكل تشغيل سير العمل. (ستحتاج إلى تسجيل الدخول إلى GitHub لتنزيل القطع الأثرية).
بدأ MartyPC كمشروع هواية لمعرفة ما إذا كان بإمكاني كتابة محاكي من نقطة الصفر أثناء تعلم لغة برمجة الصدأ. كانت أهدافي الأصلية لـ MARTYPC متواضعة ، لكنها وصلت إلى مستوى من الوظائف التي لم أتخيلها أبدًا.
يعد مكان MartyPC المقصود في عالم المحاكاة مساعدًا لتطوير الكمبيوتر الشخصي. وهي مليئة بأدوات تصحيح الأخطاء ومرافق التسجيل ، مع العديد من المخططات. قد لا يكون الأمر سهلاً للاستخدام كإعداد محاكيات أخرى ، ولكن إذا كنت على دراية بملفات تكوين التعديل ، فلن تواجه أي مشاكل كبيرة. يمكن للمبرمجين كتابة البرامج لـ Intel 8088 رؤية وقياس التنفيذ الدقيق للدورة على حدة رمزهم.
بدأ تطوير MARTYPC في أبريل 2022. بدأت العمل على جعل MARTYPC's 8088 CPU DICATION-ACCINCE في نوفمبر 2022. للقيام بذلك ، قمت بالتحقق من صحة وحدة المعالجة المركزية ضد وحدة المعالجة المركزية 8088 متصلة بالتحكم الميكروسيني. انظر مشروع Arduino8088 لمزيد من التفاصيل. يتيح ذلك تنفيذ تعليمات في وقت واحد على المحاكي ووحدة المعالجة المركزية الحقيقية ونتائج التنفيذ مقارنة ، دورة على حدة. تم وصف مزيد من المعلومات حول هذه العملية على مدونتي.
في يونيو من عام 2024 ، قمت بتحديث جناح الاختبار 8088 مرة أخرى لدعم ممارسة قائمة الانتظار المسبقة في 8088. تم العثور على العديد من عدم دقة الدورة وتصحيحها. يمر MartyPC جناح اختبار 8088 V2 مع 99.9997 ٪ من دقة الدورة.
تم إجراء أبحاث مكثفة للأجهزة لتحسين محاكاة MartyPC الطرفية أيضًا ، بما في ذلك التحقيق في رقاقة الموقت 8253 مع Arduino ، والتحقيق في توقيت DMA مع الذبذبات ، وفي النهاية ، بناء مختلط الحافلة باستخدام محلل منطقي.
في أبريل 2023 ، أصبح MartyPC دقيقًا بما يكفي لتشغيل العرض التجريبي الشهير ، 8088 ميل في الساعة.
في مايو 2023 ، أصبح MartyPC أول محاكي للكمبيوتر الشخصي قادر على محاكاة كل تأثير في منطقة تجريبية الكمبيوتر 5150. (انظر الفيديو هنا: https://www.youtube.com/watch؟v=zadelm9g0zg)
يمكن لبناء Webassembly لـ MartyPC تشغيل كلاً من 8088 ميل في الساعة والمساحة 5150 في متصفح الويب الخاص بك!
حاليًا ، يمكن لـ MARTYPC محاكاة جهاز كمبيوتر IBM 5150 الأصلي أو 5160 XT أو جهاز استنساخ XT عام.
يوجد دعم أولي لـ IBM PCJR و Tandy 1000 اعتبارًا من 0.2.1. قد تكون هذه الآلات عربات التي تجرها الدواب وغير مستقرة.
Martypc يحاكي الأجهزة التالية:
يدعم MARTYPC تكوينات الماكينة المخصصة عبر ملفات تعريف تكوين الجهاز الأساسي بالإضافة إلى امتدادات اختيارية تسمى "التراكب" ، مماثلة لتثبيت بطاقات التمديد أو ترقيات أخرى.
لدى MARTYPC واجهة المستخدم الرسومية واسعة النطاق مع العديد من العروض المفيدة بما في ذلك تفكيك التعليمات ، ودولة وحدة المعالجة المركزية ، ومشاهد الذاكرة ، والولايات المحيطية المختلفة. يتم دعم كود ونقاط توقف الذاكرة. يدعم MartyPC أيضًا التعليمات والتسجيل القائم على الدورة.
قم بتشغيل بطاقتي فيديو في Windows منفصلة ، أو نفس بطاقة الفيديو في طرق عرض "Discirent" و "Debug" - أو بتظليلات مختلفة!
يتم تضمين تظليل CRT الأساسي القابل للتكوين مع المزيد في المستقبل (تم التخطيط لدعم Librashader)
لمزيد من المعلومات ، تحقق من قسم معرض لقطات الشاشة في ويكي!
لدي قائمة طويلة من الأشخاص الذين أشكرهم (انظر Box About!) ولكني أود أن أذكر المساهمات التي قدمها Reenigne. وبدون عمله ، فإن الهندسة العكسية للرمز الدقيق 8088 ، لم يكن هذا المحاكي ممكنًا. أود أيضًا أن أشكر كين شيرريف ومدونته الممتازة ، التي تغطي الكثير من منطق السيليكون في 8086 (و 8088 بالتمديد).