كيفية تجميع Apple 1 وكتابة لعبة لها

كيفية تجميع Apple 1 وكتابة لعبة لها




40 عامًا منذ إصدار الكمبيوتر Apple 1. اليوم ، لا تصل إمكانياته حتى إلى أجهزة المعالج الصغيرة أو المتحكمات الدقيقة. ولكن في عام 1976 ، أحدثت هذه الجدة الكثير من الضجيج ، حتى قيل عن ثورة في عالم الكمبيوتر. أدعو القارئ إلى جمع Apple 1 معي لاكتشاف ما هو مثير للاهتمام حوله وكتابة نوع من البرامج.

يجب أن أقول على الفور أنني لم أجمعها في وقت واحد. استغرق البحث عن المكونات والبناء والتصحيح في وقت فراغك ثلاث سنوات ، ثم تصحيح نفس المبلغ تقريبًا ، وأخيرًا اجتمعوا واكتبوا هذه المقالة.

خصائص التفاحة 1


النوع: كمبيوتر شخصي
سنوات الإنتاج: يوليو 1976 - مارس 1977
المعالج: MOS 6502
تردد الساعة: 1 ميجا هرتز
الذاكرة: 256 بايت ROM ، 4 كيلو بايت رام ، قابلة للتوسيع حتى 8 كيلو بايت
فيديو: 40 × 24 حرفًا
المصنعة: حوالي 200 قطعة

قليلا من التاريخ


مبتكر Apple 1 هو Stephen Wozniak. في الواقع ، في وقت إنشائها ، لم تكن تسمى Apple 1. بعد ، نعم ، وأبل نفسها لم تكن هناك.

كان ستيف مولعا بتصميم الأجهزة الإلكترونية منذ سن مبكرة. كانت أول آلة حوسبة له هي "صودا كريمية" ، تم تصميمها على دوائر متكاملة دون استخدام معالج مركزي ، وقادرة على أداء العمليات الحسابية البسيطة. لسوء الحظ ، لم أتمكن من العثور على أي صور أو أي أوصاف لهذا الكمبيوتر ، فقط معلومات سيئة للغاية من ستيف نفسه ، موصوفة في كتابه. إن مصير "الصودا الكريمية" محزن أيضًا - فقد احترق ، ولم تكن هناك محاولات لاستعادته. في وقت لاحق ، عندما عمل ستيف على الآلات الحاسبة في HP ، دعا صديقه ، Allen Baum ، اجتماعًا لنادي الكمبيوتر في بالو ألتو ، كاليفورنيا. تم إبلاغ ستيف أن هذا الاجتماع كان مخصصًا للمحطات الطرفية وتكنولوجيا الفيديو. في ذلك الوقت ، كان قد أنشأ بالفعل محطة خاصة به للعمل في ARPANET ، وكان لديه فكرة عن تقنية المحطة ، ولهذا السبب وافق على الذهاب. كان ستيف رجلًا متواضعًا ، وإذا علم أن الأمر يتعلق بأجهزة الكمبيوتر ، قال إنه لن يذهب إلى هناك.
في الاجتماع ، شعر بالراحة ، حيث كان الحاضرون يناقشون بعض المعالجات الدقيقة الغريبة وحاسوب Altair 8800.

بعد الاجتماع ، حصل على منشور يصف المعالج الدقيق i8080A. قرر دراسته في وقت فراغه ، وأدرك أن هذا هو بالضبط ما كان يفعله في أول جهاز كمبيوتر "صودا كريم" ، وكيف يمكن جعله أسهل. في نفس اليوم ، ولد بنية Apple 1. المستقبلية ، لكنها لم تأت إلا بعد بضعة أشهر ، والتي دخلت في دراسة مواصفات الدوائر المصغرة الجديدة والبحث عن المكونات. والحقيقة هي أنه في السبعينات كانت المعالجات والذاكرة باهظة الثمن وندرة. تم حل مشكلة المعالج عندما أصدرت شركة MOS Technology معالج الميزانية 6500 ، وقريباً 6502 ، وهو نظير 6500 ، ولكن مع ميزات رائعة ، وبتكلفة 25 دولارًا فقط. كان 6502 الأسطوري الذي سقط لأول مرة في أيدي ستيف.

كانت المشكلة التالية في ذلك الوقت هي إعداد الكمبيوتر للإطلاق. في تلك السنوات ، تم إدخال برنامج التمهيد ، كقاعدة عامة ، في أجهزة الكمبيوتر يدويًا أو من الشريط ، واستغرق ذلك نصف ساعة ، وبعد ذلك فقط يمكن القيام بشيء عليها. يتوفر فيديو لإطلاق BASIC وبرنامج لعبة مكتوب عليه على Altair 8800 في الرابط الثاني في نهاية المقالة. قام Steve بحل هذه المشكلة عن طريق تثبيت رقائق ذاكرة دائمة (ROM) في جهاز الكمبيوتر الخاص به ، مع تسجيل برنامج التحكم فيها ، والذي أطلق عليه "مراقب". عكس الاسم الغرض - في معظم الوقت كانت تراقب ضغطات المفاتيح وتحولها إلى النهاية الطرفية ، بالإضافة إلى السماح بعرض القيم في خلايا الذاكرة وتشغيل البرنامج من مكان معين. تناسب شاشة وزنياك 253 بايت.
لكنه لا يزال يفتقر إلى ذاكرة الوصول العشوائي لبدء تشغيل الكمبيوتر. تم بناء الإصدار الأول من جهاز الكمبيوتر الخاص به على ذاكرة ثابتة بطيئة. في وقت لاحق ، استبدلها بأخرى ديناميكية ، مما قلل من عدد الرقائق على اللوحة ، وأثر بشكل إيجابي على سرعة العمل.
أظهر ستيف جهاز الكمبيوتر الخاص به للجمهور ، واقترح صديقه ، ستيف جوبز ، الذي ساعد في حمل الشاشة إلى النادي ، البدء في إنتاج لوحات الدوائر المطبوعة لهذا الكمبيوتر وبدء شركته الخاصة ، والتي كانت تسمى Apple.

يمكنك قراءة المزيد عن هذا وأكثر من ذلك بكثير في كتاب iWoz.

لوحة ابل الرئيسية 1




هندسة الكمبيوتر


يتكون جهاز الكمبيوتر من عدة عقد.


( مصدر الموقع )

وحدة تشكيل و إخراج الصورة (طرف)




في الواقع هذا هو محطة ستيف لأربانيت. يوجد عند مدخلها حافلة ذات سبع بتات ، يتم من خلالها استقبال البيانات للإخراج على شاشة التلفزيون.

ليس لديها مخططات للوصول المباشر إلى ذاكرة الفيديو (DAP) ، ولكنها تستخدم تحديثًا دوريًا للذاكرة لـ 1024 خلية من 7 بت (علاوة على ذلك ، لا يتم استخدام 64 خلية). نظرًا لعدم وجود DAP ، تعمل هذه المحطة الطرفية مثل الآلة الكاتبة - فقد أرسلوا حرفًا إلى الإدخال ، وعرضه على الشاشة ، ونقل المؤشر للحرف التالي ، ولا يوجد رسومات. بسبب التحديث المستمر لهذه الذاكرة ، فإن تشغيل المحطة بطيء إلى حد ما. يتم عرض جميع الأحرف بالتسلسل ، لا يمكنك العودة وتصحيح حرف تم إدخاله بشكل غير صحيح. للتحرير ، تحتاج إلى إدخال أمر المراقبة ، والذي سيغير محتويات خلية الذاكرة التي تم فيها الخطأ ، ثم استخدم الأمر الآخر لعرض قيمة البايت من خلية الذاكرة التي تم تغييرها.

إذا أردنا في برنامجنا مسح الشاشة ، فنحن بحاجة إلى نقل حامل النقل 24 مرة إلى خط جديد 24 مرة. بالمناسبة ، عندما تضغط على رجوع (التسمية الحديثة هي Enter) ، يبدأ المولد ، الذي يطبع حرف المسافة إلى نهاية السطر.

لا يوجد وضع رسومي ، وتقتصر مجموعة الأحرف على المجموعة القياسية من رموز ASCII ، بقيم من 1 إلى 127 (يتم عرض الأحرف فقط من الفترة 32-126 على الشاشة ، ويتم استخدام البعض الآخر كأحرف تحكم ، على سبيل المثال 13 - سطر تغذية) ، وبالتالي ناقل 7 بت وفي أعلى ترتيب ، يتم تعيين الوحدة دائمًا.

يتم تسجيل تخطيطات جميع الأحرف المعروضة في ذاكرة القراءة فقط (ROM). بعد وصول الحرف إلى إدخال المحطة الطرفية ، يتم كتابته أولاً إلى ذاكرة صغيرة (تناظرية لذاكرة الفيديو الحديثة) ، ثم من خلال نظام العداد يتم تحديد العناوين في مولد الأحرف ROM الذي يحتوي على تخطيط حرف الإخراج ، ومن خلال سجلات التحول ، يتم خلط هذه البيانات مع نبضات ساعة الفيديو التي تم إنشاؤها مدخلات الشاشة (أو مدخلات التلفزيون منخفضة التردد).

لضبط سطوع الصورة ، تحتوي اللوحة على مقاوم ضبط. قمت باستبداله بمنصف بسيط.

وتجدر الإشارة أيضًا إلى أنه نظرًا لوجود أخطاء في مخطط تكوين الصورة ، لا يمكن عرضها بشكل صحيح على معظم أجهزة التلفزيون أو الشاشات الرقمية الحديثة ، فإن أجهزة التلفزيون التناظرية تغفر هذه الأخطاء. في نهاية المقال ، فيديو مدته ثلاث دقائق مع عذابي على هذه الشاشة.

وحدة المعالجات الدقيقة



يحتوي على معالج 6502 ، ROM ، منفذ I / O (PIA) ، مضخمات عازلة ، وحدة فك ترميز عنوان الجهاز ، ذاكرة الوصول العشوائي وبعض الدوائر الدقيقة الصغيرة.

حظر الإدخال / الإخراج والعمل مع الأجهزة الخارجية




يتم تمرير لوحة المفاتيح ويتم نقل الحرف الذي تم إدخاله إلى ناقل البيانات بواسطة وحدة تحكم الإدخال والإخراج (PIA) 6520. بدلاً من ذلك ، قمت بتثبيت 6821. ويعمل بشكل جيد.

يحدث العمل مع الأجهزة الخارجية كما هو الحال مع خلايا الذاكرة. لكل جهاز مساحة ذاكرة خاصة به. يتعامل مفكك تشفير المنفذ مع إدخال / إخراج من جهاز معين. ترتبط خطوط الإدخال الخاصة بها بخطوط عنوان المعالج الدقيق ، لذلك عندما تقوم بتعيين العنوان المطلوب ، يتم توصيل الجهاز الذي نحتاجه إلى ناقل البيانات. يتم تحديد ما ، وكيف يمكنك القيام به باستخدام البرنامج والجهاز نفسه.
نظرًا لأن المقاطعات لا يتم تنفيذها في هذا الكمبيوتر ، فإن المعالج المركزي يشارك في معالجة دفق البيانات بالكامل (إدخال لوحة المفاتيح ، وإخراج الأحرف ، وتبادل البيانات مع الأجهزة الخارجية ، وما إلى ذلك).

لتوصيل جهاز خارجي ، يوجد موصل واحد على اللوحة الرئيسية. الجهاز الوحيد المعروف لي الذي تم إنشاؤه لهذا الكمبيوتر في السبعينيات هو لوحة واجهة للعمل مع تخزين بيانات خارجي - مسجل شرائط.



مصدر الطاقة




كل شيء بسيط هنا. هناك حاجة إلى أربع فولتات لتشغيل الكمبيوتر. + 5 فولت ، -5 فولت ، + 12 فولت و -12 فولت. تم تصنيع مصدر الطاقة من قبل المشتري بشكل مستقل. للقيام بذلك ، كان من الضروري شراء محولين تنازليين بشكل منفصل ، وربطهما باللوحة الرئيسية ، حيث توجد بالفعل مقومات ومثبتات. هناك مثبت + 5 فولت على المبرد ، ويتم تسخينه بشكل ملحوظ ، لذلك قام العديد من المستخدمين بتثبيت مروحة عليه ، ولم أقم باختراع دراجة ، وفعلت الشيء نفسه.

بالطبع ، كان من الممكن وضع مصدر طاقة حديث للتبديل ، لكنني كنت أرغب في قرقرة أنبوب دافئ عند 50 هرتز.

البحث عن المكونات والتجميع والتكليف


كما كتبت أعلاه ، استغرق البحث عن المكونات ، بشكل متقطع ، ما يقرب من 3 سنوات. تم شراء الأولى لوحة دوائر مطبوعة ، بعد الاستلقاء لمدة عام على الرف ، بدأت تنمو تدريجياً إلى مكونات. أولاً ، قمت بلحام مقابس الدوائر الدقيقة والموصلات لتوصيل الطاقة والشاشة. ثم جميع العناصر السلبية - المقاومات والمكثفات والثنائيات. صحيح أنه لا يمكن الحصول على مكثفات Sprague الأصلية على الفور ، وبدلاً من النصف الأول من العام كانت الشوارد الحديثة العادية.

تم الحصول على معظم الدوائر المصغرة على الفور ، علاوة على ذلك ، معظمهم لديهم نظائرها السوفيتية من السلسلة 155. اضطررت إلى الترشح لمثل هذه الدوائر المصغرة:

ROM ROM - يجب تسجيل برنامج ثابت معين فيه ، وإلا فلن تكون هناك صورة كافية.
2504V - سبعة تسجيلات يتم فيها تخزين الصورة المعروضة على الشاشة.
2519B هو عداد يستخدم لإنشاء صورة لا تحتوي على نظائرها.
8T97 - مخازن البيانات المؤقتة التي تمنع التحميل الزائد على ناقل بيانات المعالجات الدقيقة ؛ وفي أمور أخرى ، وجدوا لاحقًا بديلًا سوفيتيًا - K155LP11.
ROM مع برنامج التحكم "مراقب".

بعد العثور على جميع المكونات أو لحامها أو تثبيتها في اللوحة الرئيسية ، بدأ الجزء الأكثر إثارة للاهتمام - التصحيح.

أول تشغيل - انقر فوق مفتاح الطاقة ، 5 ثوان ، أوقف - لا يوجد دخان ، الاختناقات المرورية في الشقة سليمة ، لا شيء اشتعلت فيه النيران - النظام. أقوم بتشغيله ، انظر إلى الصورة - هناك قمامة من أحرف عشوائية على الشاشة. أضغط على RESET و CLEAR SCREEN خلفه (نعم ، نعم ، هناك مثل هذا الزر - لم يكن المستخدمون مدللون بأشياء عصرية في ذلك الوقت ، واعتقد المصممون ، دع المستخدم يمسح الشاشة عندما يحتاج إلى ذلك) ، لا يحدث شيء - نفس القمامة العشوائية.
على رأس كل شيء ، فإن المثبت في + 5V بدأ بالفعل في الخبز ، ورائحة أنبوب دافئة من لباد الورنيش المحروق حديثًا ، ولباد الطلاء من هذا المثبت ذهب في جميع أنحاء الغرفة. أقوم بإيقاف تشغيله ، وانتظر 5 دقائق ، حتى يبرد تمامًا ، وفي هذه السلسلة القصيرة أحاول تصحيح الأخطاء طوال فترة التصحيح ، وبالتالي لا يتم توضيح هذه الحقيقة أكثر.

إذا نجح كل شيء ، فبعد تشغيل الكمبيوتر ، يجب أن تظهر شاشة ترحيبية على الشاشة في شكل أحرف "_" متناوبة ومضللة في مساحة العمل الكاملة للشاشة ، وبعد الضغط على RESET و CS ، يجب أن تكون الشاشة واضحة ويجب أن يبقى المؤشر فقط لإدخال الأمر برنامج التحكم "مراقب".

لم ينتج عن الفحص البصري واستمرارية دوائر التصوير والطاقة أي شيء. وبعد عدة أيام من العذاب ، وجدت أن البائع أرسل لي نظائر خاطئة لرقائق ذاكرة الفيديو. وقفت 1403A ، على الرغم من أن النظير 1404A. سحبت هذه السجلات من اللوحات ، ولم يتغير شيء على الشاشة. اعترف البائع بخطئه ، وطلب إرسال هذه السجلات إليه ، ولكن بما أنها لم تكن باهظة الثمن ، لم أزعجني بهذا. لقد كلفني التسجيل الأصلي حوالي 80 دولارًا. كان عليهم الانتظار ثلاثة أسابيع.

بعد استبدال السجلات ، ظهرت الكلاب الوامضة التي طال انتظارها (أو التفاح ، الذي تريده أكثر) أخيرًا ، مما يعني ذاكرة الفيديو ومعها اكتسبت كتلة الفيديو بأكملها.

أضغط على RESET ، CS ، يتم مسح الشاشة ، ولكن لا يظهر المؤشر. لذلك لا تعمل وحدة المعالجات الدقيقة. لا يوجد العديد من مصادر المشاكل - سواء المعالج أو ROM أو المنطق الصغير في ربطها.

المكون الأول الذي تم التحقيق فيه كان ROM مع "الشاشة" ، حيث أن إحدى الدوائر المصغرة كانت ترتفع بشكل ملحوظ.

مشتت قليلاً ، سأقول أن برنامج التحكم مسجل في شريحتين للذاكرة ، كل منهما يحتوي على 255 خلية ذاكرة ، ولكل رقاقة 4 بتات فقط في الإخراج. للتحكم في المعالج ذي الثماني بتات ، وضع Wozniak دائرتين دقيقتين متوازيتين على التوازي ، وتلقى 8 بتات ضرورية من البيانات عند الإخراج. ويتناسب برنامج التحكم الخاص به بالكامل مع 253 بايت (بقيت 2 بايت مجانية).



لقراءة محتويات هذه الذاكرة ، قمت بتجميع جهاز قائم على أردوينو على لوحة توصيل.

قامت وحدة التحكم بفرز عناوين هذه ROM بالتسلسل ، ودمج بيانات 4 بت في 8 بت وعرضها في شكل سداسي عشري في شاشة قناة الاتصال على الكمبيوتر. بعد التحقق من محتويات ROM ، لم أجد أي أخطاء فيها.

لم ينتج عن استبدال المنطق الصغير نتائج ، لذلك سقطت الشكوك في السنوات الجليلة للمعالج الرئيسي ، وتقاعده.

ليس لدي جهاز كمبيوتر آخر يستند إلى 6502 ، لذلك قمت بتثبيته على لوحة توصيل ، وقمت بتزويده بالطاقة من Arduinki ، ونبضات ساعة المولد عند 1 ميجاهرتز (من جهاز الكمبيوتر المتخصص في المستقبل) ، وتثبيت أمر NOP على ناقل البيانات مع وصلات الانتقال إلى + 5 فولت ، و توقعت أنه من خلال إجراء فارغ سيزيد من قيمة عداد العنوان. لكن هذا لم يحدث. لم يحدث شيء على الإطلاق. يبدو أن الحجر هو الآن بالتأكيد حجر. لقد طلبت واحدة أخرى ، حيث يجب أن تنتجها MOS. بينما كان يقود سيارته ، تمكنت من الذهاب في إجازة والسباحة في البحر.



اختبار المعالج 6502. نعم ، كان من الممكن الحصول على 1 ميجا هرتز من الموقتات الكبيرة ، نعم ، كان من الممكن الاستغناء عنه على الإطلاق ، يمكنني القيام بكل هذا ، ولكن بعد ذلك أردت القيام بذلك.

بعد تثبيت معالج جديد ، قم بتشغيل - مرحبًا أيها الكلاب - RESET - CS - مرحبًا سطر الأوامر! لقد عملت وحدة المعالج ، لقد مرت أقل من ستة أشهر!

المشكلة التالية - لم يكن لدي شيء لإدخال الأوامر والتعليمات البرمجية ، لم يكن هناك لوحة مفاتيح.

لوحة المفاتيح


لوحة مفاتيح هذا الكمبيوتر هي شبكة من الموصلات ، في العقد التي يتم تثبيت الأزرار فيها. تتصل هذه الحالة بمفكك تشفير مفتاح مضغوط ، والذي ينتج رمز مفتاح مضغوط على طول خط ASCII من سبع بتات ، ونبض بوابات قصير المدى على خط منفصل. أثناء مرور هذه الدفعة إلى ناقل التحكم ، يبدأ المعالج في معالجة الحرف الذي تم إدخاله.



للحصول على لوحة المفاتيح هذه ، بشكل عام ، لا يزال الأمر قيد الحل ، ولكن هذا عادة ما يكون رقمًا يحتوي على صفرين ، وليس بالروبل الروسي. لذلك ، بدأت أفكر في كيفية توصيل لوحة مفاتيح PS / 2 بجهاز الكمبيوتر.

لم يحدث لي شيء أكثر إثارة للاهتمام من Arduino Nano. خلال المساء ، قمت بتركيب المحول بين PS / 2 ومنفذ ASCII عن طريق التركيب المركب وكتب البرامج الثابتة الخاصة به. نظرًا لأن Apple 1 لا يحتوي على مفتاحي PgUp و PgDown ، فقد استخدمتهما كزرين RESET و CLEAR SCREEN. منذ هذا اليوم ، لم يكن عليّ أن أغلق الساقين جنبًا إلى جنب مع ملاقط على اللوحة ، وهو أمر ممتع للغاية.

تم طباعة الأحرف المكتوبة بشكل مشهور على الشاشة ، وحتى برنامج الاختبار من وثائق هذا الكمبيوتر يعمل. كل ما تفعله هو عرض جميع الشخصيات المعروضة على هذا الكمبيوتر في حلقة.


منظر من الأعلى


منظر سفلي

حدثت قصة مضحكة مع لوحة المفاتيح. في البداية ، كان مفتاح العودة يعمل فقط نصف - أدخل الأوامر بشكل صحيح في الذاكرة ، وأعطى تعليمات لتنفيذها ، ولكن الترجمة إلى سطر جديد لم تحدث. بشكل عام ، نظرًا لطبيعة المحطة ، لم يخلق هذا مشاكل كبيرة. لكنني قررت إصلاح هذه المسألة. لقد بدأت بدراسة مخطط دائرة الكمبيوتر الشخصي ، وقدم المستخدم Mdesk مساعدة كبيرة ، مع zx-pk.ru. عندما درست الدائرة ، لم يكن لدي سؤال واحد في تشغيل وحدة ترجمة عربة الأجهزة ، جلست في المختبر ومنظار الذبذبات. رنين الموصلات لم يسفر عن شيء - كل شيء سليم. ثم بدأ مذبذب الذبذبة في العمل. اتصلت بإشارات الإدخال من PIA - كانت طبيعية ، وفقدت الإشارة في مكان ما على 7451N ، حاولت تغييرها إلى 7450 ، والنظراء السوفييت (155LR1 و 155 LR11) ، لم ينجح ذلك. بعد الكشف عن السلاسل ، وصلت إلى هزاز واحد 74123 ، كان من الضروري التحقق من التأخيرات الناتجة عنه. لكن المحول يغلقها فعليًا ، مما يجعل المكالمة غير مريحة.

ثم كتبت برنامج اختبار
280: A9 8D 20 EF FF A9 31 20 EF FF 4C 80 02
كل ما تفعله هو عرض التسلسل Return-1-Return-1 (وحدات مع التمرير لأسفل).

لقد بدأت ، الوحدات ، كما هو متوقع ، ذهبت إلى الخط. ثم أخرجت المحول من المقبس ، وركضت الوحدات على الفور. لذلك السبب هو المحول. بعد ذلك ، حل المشكلة بسرعة. الأزرار PgUp و PgDown التي أستخدمها كإعادة ضبط ومسح الشاشة. تنظيف الشاشة (CLR) المعلق على أحد أرجل Arduina ، في وقت التنظيف قمت بتطبيق واحدة هناك ، بعد تحريرها ، أعيد تعيينها إلى 0. وهذا نفس 0 أطفأ خط CLR بأكمله ، ولكنه في الواقع يستخدم أيضًا كتلة تغذية الخط. الحل بسيط - ضع صمام ثنائي بين Arduinka و CLR ، وقد نجح!

نظرًا لأن الاتصال ببرامج كيلوبايت يدويًا سيكون مهمة شاقة وغير دقيقة دائمًا ، فقد توصلت إلى فكرة توصيل بطاقة SD بنفس Arduinka التي يمكنك من خلالها إدخال البرامج. إنه يعمل على هذا النحو - أسقط الملف المسمى dump.hex في الجذر ، وعندما أضغط على المفتاح TAB ، فإن وحدة التحكم تقرأ محتويات الملف وتضغط على المفاتيح المناسبة.

البرمجيات


لا توجد العديد من البرامج المكتوبة لـ Apple 1 ، أقوم بربط هذا بالمظهر الوشيك لجهاز كمبيوتر أكثر تقدمًا - Apple 2. ومع ذلك هناك العديد من الألعاب وبرامج النظام لذلك. 30 Apple 1, ( ).

, . 2048. , ( 6502 ) 2 . 1679 . , .

280: 4C F8 08 20 20 20 20 20
288:20 20 32 20 20 20 34 20
290:20 20 38 20 20 31 36 20
298:20 33 32 20 20 36 34 20
2A0:31 32 38 20 32 35 36 20
2A8:35 31 32 31 30 32 34 32
2B0:30 34 38 01 00 00 00 00
2B8:00 00 00 00 00 00 00 00
2C0:00 00 00 2B 2D 2D 2D 2D
2C8:2D 2D 2B 2D 2D 2D 2D 2D
2D0:2D 2B 2D 2D 2D 2D 2D 2D
2D8:2B 2D 2D 2D 2D 2D 2D 2B
2E0:8D 00 A2 00 A9 8D E8 20
2E8:EF FF E0 24 F0 03 4C E6
2F0:02 60 A9 2B 20 EF FF A9
2F8:20 20 EF FF 60 A9 8D 20
300:EF FF 60 0A 2A A8 A9 00
308:79 83 02 20 EF FF C8 A9
310:00 79 83 02 20 EF FF C8
318:A9 00 79 83 02 20 EF FF
320:C8 A9 00 79 83 02 20 EF
328:FF A9 20 20 EF FF 20 F2
330:02 60 20 FD 02 A2 00 BD
338:C3 02 20 EF FF E8 E0 1E
340:F0 03 4C 37 03 60 20 32
348:03 20 F2 02 AD B3 02 20
350:03 03 AD B4 02 20 03 03
358:AD B5 02 20 03 03 AD B6
360:02 20 03 03 20 32 03 20
368:F2 02 AD B7 02 20 03 03
370:AD B8 02 20 03 03 AD B9
378:02 20 03 03 AD BA 02 20
380:03 03 20 32 03 20 F2 02
388:AD BB 02 20 03 03 AD BC
390:02 20 03 03 AD BD 02 20
398:03 03 AD BE 02 20 03 03
3A0:20 32 03 20 F2 02 AD BF
3A8:02 20 03 03 AD C0 02 20
3B0:03 03 AD C1 02 20 03 03
3B8:AD C2 02 20 03 03 20 32
3C0:03 60 32 30 34 38 8D 8D
3C8:57 2D 55 50 8D 41 2D 4C
3D0:45 46 54 8D 44 2D 52 49
3D8:47 48 54 8D 53 2D 44 4F
3E0:57 4E 8D 8D 43 4F 44 45
3E8:3A 20 44 45 4E 49 53 20
3F0:50 41 52 59 53 48 45 56
3F8:8D 8D 50 52 45 53 53 20
400:41 4E 59 20 4B 45 59 A2
408:00 BD C2 03 20 EF FF E8
410:E0 45 F0 03 4C 09 04 AD
418:11 D0 10 FB AD 10 D0 8D
420:E1 02 60 47 41 4D 45 20
428:4F 56 45 52 59 4F 55 20
430:57 49 4E 20 E2 02 A2 00
438:BD 23 04 20 EF FF E8 E0
440:09 F0 03 4C 38 04 A2 34
448:BD C2 03 20 EF FF E8 E0
450:43 F0 03 4C 48 04 AD 11
458:D0 10 FB AD 10 D0 4C F8
460:08 A0 00 AD E1 02 29 0F
468:AA C8 C0 11 F0 C5 BD B3
470:02 C9 00 F0 0A E8 E0 10
478:D0 EF A2 00 4C 69 04 A9
480:01 9D B3 02 8E E1 02 60
488:A2 00 A9 00 9D B3 02 E8
490:E0 10 D0 F8 A9 01 8D B3
498:02 60 00 00 00 00 00 00
4A0:AE 9F 04 BD 9A 04 C9 00
4A8:D0 14 AE 9E 04 BD 9A 04
4B0:AE 9F 04 9D 9A 04 A9 00
4B8:AE 9E 04 9D 9A 04 60 A9
4C0:03 8D 9F 04 A9 02 8D 9E
4C8:04 20 A0 04 A9 02 8D 9F
4D0:04 A9 01 8D 9E 04 20 A0
4D8:04 A9 01 8D 9F 04 A9 00
4E0:8D 9E 04 20 A0 04 A9 03
4E8:8D 9F 04 A9 02 8D 9E 04
4F0:20 A0 04 A9 02 8D 9F 04
4F8:A9 01 8D 9E 04 20 A0 04
500:A9 03 8D 9F 04 A9 02 8D
508:9E 04 20 A0 04 60 20 E2
510:02 A2 00 BD 2C 04 20 EF
518:FF E8 E0 07 F0 03 4C 13
520:05 A2 34 BD C2 03 20 EF
528:FF E8 E0 43 F0 03 4C 23
530:05 AD 11 D0 10 FB AD 10
538:D0 4C F8 08 AE 9E 04 BD
540:9A 04 C9 00 F0 1D AE 9F
548:04 DD 9A 04 D0 15 A8 C8
550:98 AE 9F 04 9D 9A 04 C9
558:0B F0 B3 A9 00 AE 9E 04
560:9D 9A 04 60 A9 02 8D 9E
568:04 A9 03 8D 9F 04 20 3C
570:05 A9 01 8D 9E 04 A9 02
578:8D 9F 04 20 3C 05 A9 00
580:8D 9E 04 A9 01 8D 9F 04
588:20 3C 05 60 20 BF 04 20
590:64 05 20 BF 04 60 AD B3
598:02 8D 9D 04 AD B7 02 8D
5A0:9C 04 AD BB 02 8D 9B 04
5A8:AD BF 02 8D 9A 04 20 8C
5B0:05 AD 9A 04 8D BF 02 AD
5B8:9B 04 8D BB 02 AD 9C 04
5C0:8D B7 02 AD 9D 04 8D B3
5C8:02 AD B4 02 8D 9D 04 AD
5D0:B8 02 8D 9C 04 AD BC 02
5D8:8D 9B 04 AD C0 02 8D 9A
5E0:04 20 8C 05 AD 9A 04 8D
5E8:C0 02 AD 9B 04 8D BC 02
5F0:AD 9C 04 8D B8 02 AD 9D
5F8:04 8D B4 02 AD B5 02 8D
600:9D 04 AD B9 02 8D 9C 04
608:AD BD 02 8D 9B 04 AD C1
610:02 8D 9A 04 20 8C 05 AD
618:9A 04 8D C1 02 AD 9B 04
620:8D BD 02 AD 9C 04 8D B9
628:02 AD 9D 04 8D B5 02 AD
630:B6 02 8D 9D 04 AD BA 02
638:8D 9C 04 AD BE 02 8D 9B
640:04 AD C2 02 8D 9A 04 20
648:8C 05 AD 9A 04 8D C2 02
650:AD 9B 04 8D BE 02 AD 9C
658:04 8D BA 02 AD 9D 04 8D
660:B6 02 60 AD B3 02 8D 9A
668:04 AD B7 02 8D 9B 04 AD
670:BB 02 8D 9C 04 AD BF 02
678:8D 9D 04 20 8C 05 AD 9D
680:04 8D BF 02 AD 9C 04 8D
688:BB 02 AD 9B 04 8D B7 02
690:AD 9A 04 8D B3 02 AD B4
698:02 8D 9A 04 AD B8 02 8D
6A0:9B 04 AD BC 02 8D 9C 04
6A8:AD C0 02 8D 9D 04 20 8C
6B0:05 AD 9D 04 8D C0 02 AD
6B8:9C 04 8D BC 02 AD 9B 04
6C0:8D B8 02 AD 9A 04 8D B4
6C8:02 AD B5 02 8D 9A 04 AD
6D0:B9 02 8D 9B 04 AD BD 02
6D8:8D 9C 04 AD C1 02 8D 9D
6E0:04 20 8C 05 AD 9D 04 8D
6E8:C1 02 AD 9C 04 8D BD 02
6F0:AD 9B 04 8D B9 02 AD 9A
6F8:04 8D B5 02 AD B6 02 8D
700:9A 04 AD BA 02 8D 9B 04
708:AD BE 02 8D 9C 04 AD C2
710:02 8D 9D 04 20 8C 05 AD
718:9D 04 8D C2 02 AD 9C 04
720:8D BE 02 AD 9B 04 8D BA
728:02 AD 9A 04 8D B6 02 60
730:AD B6 02 8D 9A 04 AD B5
738:02 8D 9B 04 AD B4 02 8D
740:9C 04 AD B3 02 8D 9D 04
748:20 8C 05 AD 9D 04 8D B3
750:02 AD 9C 04 8D B4 02 AD
758:9B 04 8D B5 02 AD 9A 04
760:8D B6 02 AD BA 02 8D 9A
768:04 AD B9 02 8D 9B 04 AD
770:B8 02 8D 9C 04 AD B7 02
778:8D 9D 04 20 8C 05 AD 9D
780:04 8D B7 02 AD 9C 04 8D
788:B8 02 AD 9B 04 8D B9 02
790:AD 9A 04 8D BA 02 AD BE
798:02 8D 9A 04 AD BD 02 8D
7A0:9B 04 AD BC 02 8D 9C 04
7A8:AD BB 02 8D 9D 04 20 8C
7B0:05 AD 9D 04 8D BB 02 AD
7B8:9C 04 8D BC 02 AD 9B 04
7C0:8D BD 02 AD 9A 04 8D BE
7C8:02 AD C2 02 8D 9A 04 AD
7D0:C1 02 8D 9B 04 AD C0 02
7D8:8D 9C 04 AD BF 02 8D 9D
7E0:04 20 8C 05 AD 9D 04 8D
7E8:BF 02 AD 9C 04 8D C0 02
7F0:AD 9B 04 8D C1 02 AD 9A
7F8:04 8D C2 02 60 AD B6 02
800:8D 9D 04 AD B5 02 8D 9C
808:04 AD B4 02 8D 9B 04 AD
810:B3 02 8D 9A 04 20 8C 05
818:AD 9A 04 8D B3 02 AD 9B
820:04 8D B4 02 AD 9C 04 8D
828:B5 02 AD 9D 04 8D B6 02
830:AD BA 02 8D 9D 04 AD B9
838:02 8D 9C 04 AD B8 02 8D
840:9B 04 AD B7 02 8D 9A 04
848:20 8C 05 AD 9A 04 8D B7
850:02 AD 9B 04 8D B8 02 AD
858:9C 04 8D B9 02 AD 9D 04
860:8D BA 02 AD BE 02 8D 9D
868:04 AD BD 02 8D 9C 04 AD
870:BC 02 8D 9B 04 AD BB 02
878:8D 9A 04 20 8C 05 AD 9A
880:04 8D BB 02 AD 9B 04 8D
888:BC 02 AD 9C 04 8D BD 02
890:AD 9D 04 8D BE 02 AD C2
898:02 8D 9D 04 AD C1 02 8D
8A0:9C 04 AD C0 02 8D 9B 04
8A8:AD BF 02 8D 9A 04 20 8C
8B0:05 AD 9A 04 8D BF 02 AD
8B8:9B 04 8D C0 02 AD 9C 04
8C0:8D C1 02 AD 9D 04 8D C2
8C8:02 60 AD 11 D0 10 FB AD
8D0:10 D0 8D E1 02 C9 D7 D0
8D8:04 20 96 05 60 C9 D3 D0
8E0:04 20 63 06 60 C9 C1 D0
8E8:04 20 30 07 60 C9 C4 D0
8F0:04 20 FD 07 60 4C CA 08
8F8:20 88 04 20 E2 02 20 07
900:04 20 E2 02 20 61 04 20
908:46 03 20 CA 08 4C 01 09




عمل الفيديو على موقع يوتيوب.

ما التالي؟


بادئ ذي بدء ، أريد أن أجعلها جميلة.

محول لوحة المفاتيح وبطاقة SD. من الضروري التخلص من التركيب السطحي ، أخطط لتطوير وطلب لوحة دوائر مطبوعة لها في الصين.

العمل مع عدة ملفات. أخطط لكتابة مدير ملفات لـ Arduinka ، مما سيسمح لي بتحديد ملف من البطاقة وتشغيله.

اشتريت أيضًا موصلًا لبطاقات التوسيع. أريد أن أحضر له بطاقة صوت على K580VI53 (فقط لأن هذا المؤقت موجود في المنزل) وأرسم عرضًا توضيحيًا صغيرًا مع الصوت.
من المحتمل أن يكون هذا هو المقال التالي.

الخاتمة


للقول بأنني استمتعت حقًا ببناء ، وتصحيح ، وكتابة برنامج لـ Apple 1 ، لا يوجد ما يقال.

شكرا جزيلا للمستخدم Mdesk ، وجميع اللاعبين من zx-pk.ru لمساعدتهم في شرح تعقيدات العمارة ، وللحصول على نصائح مفيدة في إعداد هذا الكمبيوتر.

حسنًا ، أكبر الشكر لستيف وزنياك على هذا الكمبيوتر الشخصي الرائع !!!

روابط مفيدة


التفاح 1 على الويكي
تحميل BASIC على Altair 8800
آبل 1 وشاشة حديثة (ثلاث دقائق ونصف من الألم والمعاناة)
30 عامًا على Apple 1 (تجريبي)
محاكي آبل 1
6502 مجمّع / مفكك / مصحح

مواقع باللغة الروسية مخصصة لـ Apple 1:
mdesk.ru
zx-pk.ru

Source: https://habr.com/ru/post/ar431270/


All Articles