جدول المحتويات:
- اللوازم
- الخطوة 1: قم بتثبيت Z80asm على Z80-mbc2
- الخطوة 2: انسخ كود المصدر إليك Z80-mbc2
- الخطوة 3: ترجمة البرنامج وتشغيله
فيديو: فلاش مستخدم Z80-mbc2 كود Z80: 3 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:36
هذا مثال لبرنامج LED للمستخدم مكتوب في المجمع Z80 للكمبيوتر z80-mbc2.
لقد أجريت هذا الاختبار والمراجعة بالنسبة لي ، هذا هو أول برنامج Z80 لي منذ أكثر من 35 عامًا.
يتمتع
اللوازم
كمبيوتر Z80-mbc2
نسخة من Z80ASM من SLR Systems Rel. 1.32 ، قابل للتنزيل من العديد من أرشيفات cp / m
محرر ، استخدمت ZDE16 ، لأنه كان موجودًا بالفعل على صورة التمهيد CP / M لـ z80-mbc2
الخطوة 1: قم بتثبيت Z80asm على Z80-mbc2
أفترض بعض الإلمام بالأدوات التي لديك من أجل Z80-MBC2 ، أي أي إصدار من أدوات cpmtools التي تستخدمها. فيما يلي الخطوات في حالة استخدام إصدارات سطر الأوامر:
- احصل على الملفات z80asm.com و z80asm.doc (اختياري) في دليل في مكان ما على الكمبيوتر المضيف
- ضع بطاقة SD الخاصة بك في نفس جهاز الكمبيوتر ، أفترض أدناه أنها تظهر كمحرك الأقراص E: أدناه.
- أضع المُجمّع على قرص CP / M الخاص بي A ، من أجل cp / m 2.2 والذي سيكون صورة قرص DS0N00. DSK
- الأمر: cpmcp -f z80mbc2-d0 e: DS0N00. DSK z80asm.com 0: سيتم نسخ الملف z80asm.com إلى الصورة
- الأمر cpmcp -f z80mbc2-d0 e: DS0N00. DSK z80asm.doc 0: سينسخ الوثائق إلى القرص (اختياري)
عند تشغيل cp / m 2.2 على z80-mbc ، يجب أن يكون لديك الآن z80asm.com و z80asm.doc (اختياري) على محرك الأقراص A
الخطوة 2: انسخ كود المصدر إليك Z80-mbc2
اتصل بـ z80-mbc باستخدام برنامج المحطة الطرفية
أقترح عليك استخدام قرص غير مأهول لحفظ الكود المصدري عليه ، على سبيل المثال f: لاختيار نوع محرك الأقراص هذا:
F:
بعد بضع ثوان سترى موجه F:.
استخدم الآن برنامج zde16 على محرك الأقراص A لتحرير ملف فارغ:
أ: zde16 myled.z80
سيؤدي هذا إلى إنشاء ملف يسمى myled.z80 على القرص F: ، ملاحظة: مطلوب.z80 في الاسم لكي يعمل z80asm.
الآن انسخ والصق الكود أدناه ، اعتمادًا على السرعة الطرفية وما إلى ذلك ، قد تضطر إلى النسخ واللصق في أقسام صغيرة. أو اكتبه! استعد شعور الثمانينيات أيضًا.
;
؛ اختبار مؤشر LED للمستخدم ومفتاح المستخدم ؛ BDOS equ 05h ؛ نقطة دخول cp / m BDOS USRLED يساوي 0 ؛ كود التشغيل للتحكم في مؤشر LED للمستخدم USRKEY يساوي 80 ساعة ؛ كود التشغيل للتحكم في تبديل المستخدم DPORT يساوي 0 ؛ منفذ البيانات i / o CPORT يساوي 1 ؛ إخراج منفذ الأوامر ؛ org 0100h ؛ ld (estack) ، sp ؛ احتفظ بالمعلومات الموجودة للعودة إلى cp / m ld sp ، stack ؛ ld hl، msg؛ hello message call _puts lp: ld a، 1 ؛ تشغيل = 1 مكالمة led تأخير ؛ تأخير وانتظار المفتاح (المفاتيح) jr nz ، finish ؛ غير الصفر يعني الضغط على المفتاح / المفتاح x أو a ؛ a = 0 تأخير المكالمة بقيادة الولايات المتحدة ؛ تأخير أو انتظار المفتاح / التبديل jr z ، lp ؛ إذا كان صفرًا ، لا يوجد مفتاح / مفتاح ، فانتقل مرة أخرى ؛ finish: xor a ؛ تم الضغط على مفتاح أو مفتاح ، لذا تم إجراء المكالمة led ld hl ، وداعًا ؛ قل وداعًا call _puts ؛ عرض msg HL = ld sp ، (estack) ؛ إعادة المكدس الأصلي ؛ العودة إلى cp / m ؛ led: دفع af ؛ حفظ قيمة الصمام 0 أو 1 ld a ، USRLED out (CPORT) ، a ؛ إرسال رمز opt af out (DPORT) ، a ؛ إرسال البيانات ret ؛ ؛ حلقة التأخير التي تتحقق من ضغط المفتاح على الجهاز الطرفي أو تأخير مفتاح المستخدم: ld bc ، 00e00h ؛ وحدة المعالجة المركزية aprox 1 / 2s 8mhz ، حلقة عمل التخمين الخالص 2: dec bc ؛ حساب دفع الحلقة bc ؛ حفظ regs عند استدعاء BDOS push de ld c ، 6 ؛ BDOS raw i / o تحقق مما إذا كان المفتاح مضغوطًا ld e ، 0ffh استدعاء BDOS pop de ؛ احصل على قيمنا من المكدس pop bc أو a ؛ تحقق مما إذا كان المفتاح مضغوطًا على Terminal ret nz ؛ نعم العودة (يحافظ أيضًا على مجموعة علم nz) ld a ، USRKEY ؛ تحقق الآن من إخراج مفتاح المستخدم (CPORT) ، a ؛ منفذ الأمر في a ، (DPORT) ؛ قراءة المفتاح و a ، 1 ؛ مهتم فقط بالبت 0 ret nz ؛ العودة إذا ضغط مفتاح المستخدم على ld a ، b ؛ أو هو bc = 0 أو c jr nz، loop2 ؛ لم ينته العد ، انتقل مرة أخرى x أو a ؛ اضبط علامة z على 0 ret ؛ لا تُرجع أي مفتاح مضغوط ، نهاية التأخير ؛ _puts: push bc ؛ احفظ تسجيلاتنا جاهزة لاستدعاءات bdos push de nxt: ld a، (hl) ؛ احصل على char أو a ؛ اختبر ما إذا كانت 0 ، نهاية msg jr z ، تم ؛ نعم فعلت ذلك ld e، a؛ قم بإعداد استدعاء BDOS لطباعة char ld c ، 2 push hl ؛ حفظ استدعاء مؤشر النص BDOS ؛ اطبعه pop hl inc hl ؛ التالي char jr nxt ؛ استمر في العمل: pop de ؛ تم الانتهاء من استعادة regs pop bc ret ؛ والعودة ؛ msg db 'User LED test ، أي مفتاح للخروج' db 0ah، 0dh، 0 bye db 'Exit' db 0ah، 0dh، 0 estack dw 0 ds 256 - 2 stack: dw 0
احفظ الملف باستخدام ESC x. راجع دليل استخدام ZDE16 لمزيد من المعلومات ، فهو يشبه إلى حد ما wordstar لمعظم عمليات التحرير ، باستثناء خيارات Ctrl-K مختلفة.
الخطوة 3: ترجمة البرنامج وتشغيله
بمجرد حصولك على كود المصدر الخاص بك على الجهاز.
نوع:
F>
F> a: z80asm myled / a حقوق الطبع والنشر Z80ASM (C) 1983-86 بواسطة SLR Systems Rel. 1.32 MYLED / A تم اكتشاف نهاية الملف 1 0 خطأ (أخطاء). 406 بايت مطلق. تم اكتشاف 16 رمزًا.
سيبحث هذا عن الملف myled.z80 وينتج ملفًا ثنائيًا (.com) ، وهذا ما يمثله الخيار / a.
راجع ملف z80asm.doc لمزيد من المعلومات.
لتشغيل البرنامج ، اكتب:
F> myled
اختبار LED للمستخدم ، أي مفتاح للخروج من خروج F>
اضغط على زر المستخدم أو أي مفتاح على الجهاز للخروج.
منتهي.
موصى به:
تحويل هاتف ذكي غير مستخدم إلى شاشة ذكية: 6 خطوات (بالصور)
تحويل الهاتف الذكي غير المستخدم إلى شاشة ذكية: برنامج Deze التعليمي متوفر باللغة الإنجليزية ، على سبيل المثال ، هل لديك هاتف ذكي (قديم) غير مستخدم؟ حوله إلى شاشة ذكية باستخدام أوراق Google وبعض القلم والورق ، باتباع هذا البرنامج التعليمي السهل خطوة بخطوة. عندما تنتهي
محول Boost المستند إلى Esp8266 مع واجهة مستخدم Blynk مذهلة مع منظم التعليقات: 6 خطوات
محول Boost المستند إلى Esp8266 مع واجهة مستخدم Blynk مذهلة مع منظم التغذية المرتدة: في هذا المشروع سأوضح لك طريقة فعالة وشائعة حول كيفية زيادة جهد التيار المستمر. سأوضح لك مدى سهولة إنشاء محول دفعة بمساعدة Nodemcu. دعونا نبنيها. يتضمن أيضًا مقياس الفولتميتر على الشاشة وردود الفعل
جهاز اختبار بطارية اردوينو مع واجهة مستخدم ويب: 5 خطوات
جهاز اختبار بطارية Arduino مع واجهة مستخدم WEB: اليوم ، تستخدم المعدات الإلكترونية بطاريات احتياطية لحفظ الحالة التي تركت فيها العملية عند إيقاف تشغيل الجهاز أو عندما تم إيقاف تشغيل الجهاز عن طريق الصدفة. المستخدم ، عند التشغيل ، يعود إلى النقطة التي بقي فيها
محلل المنطق مع واجهة مستخدم Android: 7 خطوات
محلل المنطق بواجهة مستخدم Android: العالم مليء بالفعل بالعديد من أجهزة تحليل المنطق. في هوايتي الإلكترونية ، كنت بحاجة إلى واحدة لاستكشاف الأخطاء وإصلاحها وتصحيح الأخطاء. لقد بحثت في الإنترنت ولكن لا يمكنني العثور على ما أبحث عنه. ها أنا ذا ، أقدم لكم … & quot؛ حتى آخر
واجهة مستخدم سهلة التنفيذ -- شاشة OLED مع عصا التحكم والأزرار: 6 خطوات
واجهة مستخدم سهلة التنفيذ || شاشة OLED مع عصا التحكم والأزرار: تحتوي هذه الوحدة على شاشة OLED مع زرين وعصا تحكم بخمسة اتجاهات ومقياس تسارع ثلاثي المحاور. هذا مفيد في إعداد واجهة المستخدم لمشروع ما ، ما الأمر يا رفاق؟ Akarsh هنا من CETech. اليوم سنلقي نظرة على وحدة الكل في واحد والتي