विषयसूची:
- आपूर्ति
- चरण 1: अपने Z80-mbc2. पर Z80asm स्थापित करें
- चरण 2: स्रोत कोड को आप पर कॉपी करें Z80-mbc2
- चरण 3: प्रोग्राम को संकलित और चलाएँ
वीडियो: Z80-mbc2 Z80 कोड फ्लैश उपयोगकर्ता एलईडी: 3 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:18
यह एक उदाहरण उपयोगकर्ता एलईडी प्रोग्राम है जिसे z80-mbc2 कंप्यूटर के लिए Z80 असेंबलर में लिखा गया है।
मैंने यह मेरे लिए एक परीक्षण और संशोधन अभ्यास किया, यह 35 से अधिक वर्षों के लिए मेरा पहला Z80 कार्यक्रम है।
आनंद लेना
आपूर्ति
Z80-mbc2 कंप्यूटर
SLR Systems Rel से Z80ASM की एक प्रति। १.३२, कई सीपी/एम अभिलेखागार से डाउनलोड करने योग्य
एक संपादक, मैंने ZDE16 का उपयोग किया, क्योंकि यह पहले से ही z80-mbc2 के लिए CP/M बूट छवि पर था
चरण 1: अपने Z80-mbc2. पर Z80asm स्थापित करें
मैं आपके Z80-MBC2 के लिए आपके पास मौजूद टूल से कुछ परिचित हूं, अर्थात् आपके द्वारा उपयोग किए जाने वाले cpmtools का कोई भी संस्करण। यदि कमांड लाइन संस्करणों का उपयोग कर रहे हैं तो यहां चरण दिए गए हैं:
- अपने होस्ट पीसी पर किसी निर्देशिका में z80asm.com और z80asm.doc (वैकल्पिक) फ़ाइलें प्राप्त करें
- अपने एसडी कार्ड को उसी पीसी में रखें, मुझे लगता है कि यह ड्राइव ई के रूप में दिख रहा है: नीचे।
- मैं अपने सीपी/एम डिस्क ए पर असेंबलर डालता हूं, सीपी/एम 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: दस्तावेज़ को डिस्क पर कॉपी करेगा (वैकल्पिक)
जब आप अपने z80-mbc पर cp/m 2.2 को बूट करते हैं, तो अब आपके पास ड्राइव A पर z80asm.com और z80asm.doc (वैकल्पिक) होना चाहिए।
चरण 2: स्रोत कोड को आप पर कॉपी करें Z80-mbc2
अपने टर्मिनल प्रोग्राम का उपयोग करके z80-mbc से कनेक्ट करें
मेरा सुझाव है कि आप स्रोत कोड को सहेजने के लिए एक अनपॉप्युलेटेड डिस्क का उपयोग करें, उदाहरण के लिए f: इस ड्राइव प्रकार को चुनने के लिए:
एफ:
कुछ सेकंड के बाद आपको F: प्रॉम्प्ट दिखाई देगा।
अब खाली फ़ाइल को संपादित करने के लिए ड्राइव A पर zde16 प्रोग्राम का उपयोग करें:
a:zde16 myled.z80
यह डिस्क F: पर myled.z80 नामक एक फ़ाइल बनाएगा, नोट: z80asm के काम करने के लिए नाम में.z80 की आवश्यकता है।
अब नीचे दिए गए कोड को कॉपी और पेस्ट करें, आपकी टर्मिनल स्पीड आदि के आधार पर आपको छोटे सेक्शन में कॉपी और पेस्ट करना पड़ सकता है। या इसे टाइप करें! 1980 के उस अहसास को भी वापस पाएं।
;
उपयोगकर्ता एलईडी और उपयोगकर्ता कुंजी का परीक्षण करें; BDOS equ 05h; cp/m BDOS एंट्री पॉइंट USRLED equ 0; यूजर एलईडी कंट्रोल के लिए opcode USRKEY equ 80h; यूजर स्विच कंट्रोल के लिए opcode DPORT equ 0; डेटा पोर्ट i/o CPORT equ १; कमांड पोर्ट आउटपुट; संगठन 0100h; एलडी (एस्टैक), एसपी; सीपी/एम एलडी एसपी, स्टैक पर लौटने के लिए मौजूदा जानकारी रखें; एलडी एचएल, संदेश; हैलो संदेश कॉल _पुट्स एलपी: एलडी ए, 1; चालू = 1 कॉल एलईडी कॉल देरी; देरी और कुंजी (ओं) के लिए प्रतीक्षा करें जूनियर एनजेड, समाप्त; शून्य शून्य का मतलब कुंजी/स्विच दबाया गया xor a;a= 0 कॉल एलईडी कॉल देरी; देरी या कुंजी / स्विच जूनियर जेड, एलपी के लिए प्रतीक्षा करें; यदि शून्य, कोई कुंजी / स्विच नहीं है, तो फिर से जाएं; समाप्त करें: xor a;कुंजी या स्विच दबाया गया था, इसलिए किया गया कॉल एलईडी एलडी एचएल, अलविदा; अलविदा कॉल _पुट्स कहें; संदेश एचएल = एलडी एसपी, (एस्टैक) प्रदर्शित करें; मूल स्टैक रिट; सीपी/एम पर लौटें; एलईडी: पुश AF; सेव एलईडी वैल्यू 0 या 1 ld a, USRLED आउट (CPORT), a; ऑप्टकोड सेंड पॉप ऑफ आउट (DPORT), a; डेटा भेजा गया रिट;; विलंब लूप जो टर्मिनल या उपयोगकर्ता कुंजी विलंब पर दबाए गए कुंजी की जांच करता है: एलडी बीसी, 00e00h; लगभग 1/2s 8mhz CPU, शुद्ध अनुमान कार्य लूप 2: डीसी बीसी; लूप पुश बीसी की गणना करें; बीडीओएस पुश डी एलडी सी को कॉल करते समय रेग सहेजें, 6; BDOS रॉ i/o चेक करें कि क्या कुंजी दबाया गया ld e, 0ffh कॉल BDOS पॉप डी; स्टैक पॉप बीसी से हमारे मान वापस प्राप्त करें या a; जांचें कि क्या टर्मिनल रिट एनजेड पर कुंजी दबाया गया है; हां रिटर्न (एनजेड फ्लैग सेट भी रखता है) एलडी a, USRKEY; अब उपयोगकर्ता कुंजी आउट (CPORT), a; कमांड पोर्ट इन a, (DPORT) की जांच करें; कुंजी और a, 1 पढ़ें; केवल बिट 0 ret nz में रुचि रखते हैं; यदि उपयोगकर्ता कुंजी ld a, b दबाती है तो वापस आती है; या है बीसी = 0 या सी जूनियर एनजेड, लूप 2; गिनती समाप्त नहीं हुई है, फिर से xor a पर जाएं; z ध्वज को 0 रिट पर सेट करें; कोई कुंजी दबाया नहीं, देरी का अंत; _puts: पुश बीसी; bdos कॉल के लिए तैयार हमारे regs को सेव करें पुश डी एनएक्सटी: एलडी ए, (एचएल); चार या ए प्राप्त करें; परीक्षण अगर यह 0 है, संदेश जेआर जेड का अंत, हो गया; हाँ ऐसा किया एलडी ई, ए; एक चार एलडी सी प्रिंट करने के लिए बीडीओएस को कॉल सेट करें, 2 पुश एचएल; टेक्स्ट पॉइंटर कॉल बीडीओएस सहेजें; इसे पॉप एचएल इंक एचएल प्रिंट करें; अगला चार जूनियर एनएक्सटी; जारी रखें: पॉप डी; समाप्त पुनर्स्थापना regs पॉप बीसी रिट; और वापसी; संदेश डीबी 'उपयोगकर्ता एलईडी परीक्षण, बाहर निकलने के लिए कोई भी कुंजी' डीबी 0ah, 0dh, 0 अलविदा डीबी 'बाहर निकलें' डीबी 0ah, 0dh, 0 estack dw 0 डीएस 256 - 2 स्टैक: dw 0
ESC x का उपयोग करके फ़ाइल को सहेजें। अधिक जानकारी के लिए ZDE16 उपयोग मार्गदर्शिका देखें, यह अधिकांश संपादन के लिए वर्डस्टार जैसा है, सिवाय इसके कि Ctrl-K विकल्प अलग हैं।
चरण 3: प्रोग्राम को संकलित और चलाएँ
एक बार जब आपके पास मशीन पर आपका स्रोत कोड हो।
प्रकार:
एफ>
F>a:z80asm myled/a Z80ASM कॉपीराइट (सी) 1983-86 एसएलआर सिस्टम्स रिले द्वारा। 1.32 MYLED/A फ़ाइल का अंत पास 1 0 त्रुटि (त्रुटियों) का पता चला। 406 निरपेक्ष बाइट्स। 16 प्रतीकों का पता चला।
यह फ़ाइल myled.z80 की तलाश करेगा और एक बाइनरी (.com) फ़ाइल तैयार करेगा, यही विकल्प /a का अर्थ है।
अधिक जानकारी के लिए z80asm.doc फ़ाइल देखें।
प्रोग्राम चलाने के लिए, टाइप करें:
एफ> माइल्ड
उपयोगकर्ता एलईडी परीक्षण, बाहर निकलने के लिए कोई भी कुंजी F>
बाहर निकलने के लिए या तो उपयोगकर्ता बटन या टर्मिनल पर एक कुंजी दबाएं।
किया हुआ।
सिफारिश की:
आरटीसी और उपयोगकर्ता परिभाषित पिन कोड के साथ इलेक्ट्रॉनिक सुरक्षा प्रणाली: 7 कदम
आरटीसी और उपयोगकर्ता परिभाषित पिन कोड के साथ इलेक्ट्रॉनिक सुरक्षा प्रणाली: हाय दोस्तों! यह एक प्रोजेक्ट है जिसे मैंने पिक माइक्रोकंट्रोलर का उपयोग करके बनाया है, यह वास्तविक समय घड़ी के साथ एक इलेक्ट्रॉनिक पिन कोड सुरक्षा प्रणाली है और उपयोगकर्ता पिन कोड सुविधाओं को परिभाषित करता है, इस पृष्ठ में स्वयं को बनाने के लिए सभी विवरण हैं। यह काम कर रहा है और अवधारणा: ठीक है
लाइट ज्वेल Arduino और कोड के बिना अपने एलईडी स्ट्राइप को नियंत्रित करें: 5 कदम (चित्रों के साथ)
लाइट ज्वेल Arduino और कोड के बिना अपने एलईडी स्ट्राइप को नियंत्रित करें: यह एक स्मार्ट लैंप है जो शीर्ष टुकड़े को मोड़कर चमक को बदलता है। अवधारणा: यह किसी के लिए भी उपयोगकर्ता के अनुकूल दीपक है जो आराम के माहौल में पढ़ने का आनंद लेता है। डेस्क पर बैठे लोगों को खिड़की के पास कुछ शांत ब्रेस के साथ चित्रित करने का प्रयास करें
कंप्यूटर उपयोगकर्ता शुरू करने के लिए सहायक कोड: ५ कदम
कंप्यूटर उपयोगकर्ता शुरू करने के लिए सहायक कोड.: क्या किसी शुरुआती कंप्यूटर उपयोगकर्ता ने कभी आपसे पूछा है, "क्या मेरा कंप्यूटर चालू है?" झल्लाहट न करें- यह निर्देश सभी को समाप्त कर देगा "जांचें कि कोने में छोटी रोशनी झपका रही है या नहीं!" "क्या यह कहता है 'लॉग इन करें?' " "क्या कोई
फ्लैश ड्राइव कैसे बनाएं जो उपयोगकर्ता फ़ाइलों को चुपचाप और स्वचालित रूप से कॉपी करता है: 7 कदम
ऐसे फ्लैश ड्राइव को कैसे बनाएं जो उपयोगकर्ताओं की फाइलों को चुपचाप और स्वचालित रूप से कॉपी करता है: ****** यह निर्देश केवल सूचना के उद्देश्य से है कि कुछ लोगों की फाइलों को उनकी अनुमति के बिना कॉपी करना अवैध है। जानकारी का गलत तरीके से उपयोग किया जाता है**************** कैसे एक निर्माण करने के लिए
Nikon Sc-28 Ttl केबल में एक पीसी सिंक जैक जोड़ें (कैमरा फ्लैश और ट्रिगर ऑफ कैमरा फ्लैश के लिए ऑटो सेटिंग्स का उपयोग करें !!): 4 कदम
Nikon Sc-28 Ttl केबल में एक पीसी सिंक जैक जोड़ें (कैमरा फ्लैश और ट्रिगर ऑफ कैमरा फ्लैश के लिए ऑटो सेटिंग्स का उपयोग करें !!): इस निर्देश में मैं आपको दिखाऊंगा कि उन pesky मालिकाना 3pin TTL कनेक्टरों में से एक को कैसे हटाया जाए Nikon SC-28 ऑफ कैमरा TTL केबल के किनारे और इसे एक मानक PC सिंक कनेक्टर से बदलें। यह आपको एक समर्पित फ्लैश का उपयोग करने की अनुमति देगा