ترجمة مقالة استرداد PDP-11/04 أخرى. يمكنك قراءة ثلاثية ثلاثية هنا - الجزء 1 (PDP-11/04 نفسه) ، الجزء 2 (محطة الشريط TU60) ، الجزء 3 (المحطة LA30). المائل هو تعليقاتي.PDP-11/04 ، مرسلة بواسطة Gunnar
تلقينا هذا الجهاز من Gunnar Barbro ، ومعه جاءت مجموعة من الأشياء الجيدة المختلفة لـ PDP-11. لكن حالة الكمبيوتر نفسها كانت أبعد ما تكون عن الكمال. لم يكن هناك ما يكفي من المعالج وألواح الذاكرة ، وتم استبدال مفتاح الطاقة بإعادة صنع ، وعلاوة على ذلك ، كان كل شيء متربًا بشكل رهيب. لوحة الكترونية معززة ( لوحة الكترونية معززة ) كانت لوحة متصلة وحدة البرمجة KY11-LB، XY11 ( وحدة للتحكم في المخطط، على سبيل المثال IBM 1627 الذي تم توفيره مع آلة ديسمبر، وكان CalComp الكنسي 565 )، KW11-P ( وحدة برمجة RTC، دا نعم ، كان هناك لوحة كاملة تحت RTC! ) ، واللوحة الرئيسية RK11-D مع مجموعة من الوحدات ( وحدة تحكم لمحركات الأقراص المغناطيسية ، كانت عبارة عن مجموعة من البطاقات (3 أو 4 قطع) ، مجمعة بلوحة مشتركة ) ، و DR11-B (وحدة تحكم DMA ، والتي ، مرة أخرى ، تتكون من عدة لوحات: M7194 ، M971 ، M5916 ، M7820 ، ... ) ، أيضًا مع جميع الوحدات.
التنظيف
قمنا بتفكيك الكمبيوتر إلى أجزاء وغسلها برفق بالماء والصابون ، ثم قمنا بتجفيفها باستخدام ضاغط. بعد التجفيف ، تم جمعها في كل واحد. خلال هذه الإجراءات ، تم العثور على بقع الصدأ هنا وهناك.التجميع والتفتيش
بالطبع ، لم ينجح شيء حتى عندما قمنا بتوصيل المعالج ولوحات الذاكرة المأخوذة من مخزوننا! كانت وحدة التحكم ميتة. إذا تمكنا في البداية من طلب رموز رقمية ، وتم عرضها على وحدة التحكم ( مؤشر مكون من سبعة أرقام مكون من ستة أرقام ) ، ثم بعد مرور بعض الوقت ساء الموقف ، واختفت هذه الفرصة.KY11-LB
KY11-LB هو خيار مثير للاهتمام للغاية متاح لـ PDP-11/04 و PDP-11/34. لا يمكنك فقط تشغيل وحدة المعالجة المركزية وإيقاف تشغيلها ، وتصحيح الشفرة ، وعرض وتغيير الذاكرة ، وبالتالي إدخال البرامج والبيانات في الجهاز ، ولكن أيضًا استخدام وضع الخدمة ، حيث يتوفر تصحيح خطوة بخطوة للمعالج الصغير! يتم توفير هذه الميزة عن طريق توصيل زوج من الحلقات بوحدة المعالج. ولكن إذا كان المعالج مفقودًا أو متجمدًا ، فإن KY11-LB يسمح لك بالعمل مع Unibus ( ناقل توصيل وحدات في العديد من أجهزة كمبيوتر DEC) بدون مشاركة وحدة المعالجة المركزية. يتم تحقيق ذلك بسبب وجود معالج دقيق i8008 الخاص به. في الصورة أدناه قمت بتدويره باللون الأحمر. وهذه أخبار رائعة إذا كنت بحاجة إلى التحقق من تشغيل الحافلة نفسها أو إجراء اختبارات بسيطة للذاكرة وبطاقات الإدخال / الإخراج. عند طلب وجهة غير موجودة ، يضيء مصباح BUS ERR. كتب Jörg Hoppe وثيقة ممتازة حول استخدام KY11-LB.
بعد توصيل محلل المنطق ، تحققت من أن 8008 الموجودة على لوحة M7859 (KY11-LB) تعمل بشكل طبيعي وتنفذ البرنامج المسجل بشكل صحيح. لكن الرمز اعتبر أنه لا أحد يضغط على أي مفاتيح ... وتبين أن جميع إشارات CLR ( واضحة ، إشارة لمسح التسجيل ) لسجلات الإخراج كانت في حالة نشطة. وحدة تحكم ناقل unibus التي عالجت إشارة DCLO (كانت الإشارة على حافلة Unibus ، التي تبلغ أن جهد التيار المستمر منخفض جدًا ) عربات التي تجرها الدواب. كان العديد من برامج تشغيل المخزن المؤقت المفتوح ورقائق التسجيل معيبة. بمجرد استبدالها ، ظهرت وحدة التحكم في الحياة! ولكن مرة أخرى كان هناك فشل بعد بدء تشغيل المعالج واختباره بتشخيص وظائفه. ومرتين. الأول هو خطأ في M9301 ، لوحة التمهيد. كان البت الثامن على ناقل البيانات هو الأخير المتاح لسائق الحافلة. لم يستطع قراءة بيانات كافية من الحافلة. في المرة الثانية ، يتجمد المعالج ببساطة. لم يتم تعيين أي شيء على ناقل العنوان ، وأظهر فحص الرمز الصغير أن القابس حدث أثناء محاولة التقاط الناقل. بدأ تشغيل المعالج فقط بعد إخراج M7859 ( KY11-LB) اتضح أن M7859 ولّد إشارة BBSY 9 ميجاهرتز إلى ناقل Unibus ( Bus Busy ، في الحالة النشطة ، يشير إلى أن إشارات D0-D15 (كانت البيانات المطلوبة قادمة من خلالها) يستخدمها شخص ما ). لماذا؟ كسر أحد الزناد 7474 وتذبذب مثل المجنون. بعد استبداله ، نجح تشخيص المعالج والذاكرة!M9301-YB
في PDP-11/04 ، M9301-YB هي وحدة تمهيدية وإنهاء. يخزن PROM الخاص باللوحة محاكي وحدة التحكم ورمز التمهيد للعديد من الأجهزة الشائعة. لكي يبدأ المعالج في التنفيذ مباشرة بعد البدء من منطقة التمهيد في PROM ، تولد الوحدة عنوانًا خاصًا 0173000 على الناقل ( نبضة 300 مللي ثانية باستخدام multivibrator 9602) ( غالبًا ما يتم استخدام نظام الأعداد الثماني لـ pdp ، وبالتالي لا يتم استخدام الأصفار في بداية الأرقام ، أي الإشارة إلى CC ) ، ويطلب المعالج عنوان السيرة الذاتية بعد انقطاع الطاقة ، وتعيين العنوان 024/026 على ناقل Unibus ( في العنوان الأول سجل MMIO الذي يوجد به الكمبيوتر الشخصي ، في الثانية - PSW ، كلمة حالة المعالج ، أعلام مختلفة وحالة المعالج) نتيجة لذلك ، يتم إرسال طلب بيانات إلى الناقل على العنوانين 0173024 و 0173026. بالنسبة للخلية 0173024 ، يجد M9301 مراسلات بين مجموعة قيم التبديل الصغري ( في الصورة ، في الوسط مباشرة ، و 10 قطع ) والبيانات في PROM. في الواقع ، تحدد رموز التبديل هذه العنوان الذي سيبدأ تنفيذه في المساحة 0173xxx. لقد تخلصت من أربع رقائق PROM - 23-038A9 و 23-039A9 و 23-040A9 و 23-041A9 . نظرًا لأن M9301-YB يحول بعض البتات لدعم إمكانية فصل مفاتيح اللوحة ذات الإشارات الخارجية ( في جهات اتصال الصور هي TP1 / TP2 / TP3 ، فإن قيم OR الخاصة بها هي مع قيم التبديل الجزئي على اللوحة ، على سبيل المثال ، TP1 متصل بـ S1 و S2 ) ، كتبت صغيربرنامج يجمع بين هذه الملفات الأربعة في ثنائي واحد . بعد إجراء التحليل الأولي فقط لقائمة أداة التفكيك ، لاحظت بالفعل أن الرمز يشبه إلى حد كبير PROM من M9301-YA ، باستثناء أن كتل التعليمات البرمجية متناثرة في عناوين مختلفة.
قم بتشغيل RT11SJ و XXDP V2.2
لتشغيل كل من هذه البرامج ، تحتاج إلى الإجراء المناسب في رمز أداة تحميل التشغيل. عادة ، يتم تنفيذ هذه الإجراءات في شريحة PROM منفصلة ، وتنفيذ الرمز الذي يحدث عند كتابة أحرف معينة في محاكي وحدة التحكم. ولكن يوجد على هذا الجهاز لوحة M9201-YB لا تحتوي على أداة تحميل تمهيد أساسية DU ( DEC لها أسماء مفيدة للغاية ، DU هي أداة تحميل تمهيد من الوسائط عبر MSCP (MSCP هو بروتوكول للتواصل مع محركات الأقراص ، مثل ATAPI) ). لذلك كان علي أن أضرب محمل الإقلاع يدويًا (يدعم محاكي وحدة التحكم ، وهو جزء من هذه الوحدة ، 4 وظائف - تحميل العنوان L ، وقراءة الذاكرة في العنوان E ، والكتابة إلى العنوان D ، وبدء تنفيذ S ، في الواقع ، يسمح لك هذا بإدخال الرمز يدويًا. تسلسل الأوامر من النوع L 016000 ، D XXXXXX ، D XXXXXX ، ... ، S 16002 ). لم يكن من السهل العثور على محمل إقلاع مناسب للعمل ، لكنني ما زلت صادفت واحدًا في مصدر SimH ( محاكي الأنظمة القديمة المختلفة ). باستخدام PDP11GUI ، قمت بتحميل ملف صغير إلى ذاكرة الجهاز. ويعمل (على الأقل في معظم الحالات).تفريغ برنامج تحميل MSCP:0016000 042125 012706 016000 012700 000000 012701 172150 012704
0016020 016162 012705 004000 010102 005022 005712 100001 000000
0016040 030512 001773 012412 006305 100370 105714 001434 012702
0016060 007000 005022 020227 007204 103774 112437 007100 110037
0016100 007110 112437 007114 112437 007121 012722 007004 010522
0016020 012722 007104 010512 024242 005711 005712 100776 005737
0016040 007016 001743 000000 005011 005003 012704 016020 005005
0016060 005007 100000 007204 000000 000001 004420 020000 001041
0016200 000000
ابدأ في ملء الذاكرة بالرقم 016000 والتنفيذ بالرقم 016002 ( 0x4455 - الكلمة السحرية ).
بعد ذلك ، حاولت بدء صورة القرص باستخدام XXDP v2.2. ولكن ، للأسف ، لم يكن هناك نجاح. ظهر سطر أوامر XXDP ، ولكن أي أوامر عملت مع القرص ، مثل "D" ( الحصول على قائمة بالملفات على الوسائط المحملة ) ، انتهت بخطأ في وحدة التحكم "؟ RD ERR". يبدو أنه لا يمكن للبرنامج الوصول إلى القرص. لذا راجعت مجموعة التوزيع الصغيرة RT11 ( نظام تشغيل في الوقت الفعلي لـ PDP-11 ). إنشاء صورة قرص مع الإصدار 5.3 وحاول البدء. وكل شيء سار بشكل رائع! يمكنك لعب مغامرة أو برنامج على BASIC'e!