2010-07-28 12 views
5

मैं हाल ही में मोटोरोला 68000 प्रोग्रामिंग का पुनरीक्षण कर रहा हूं। माना जाता है कि, जब मैंने कोर्स किया था तो मैंने बस इतना किया था कि पास करने के लिए जरूरी था (और एक भयानक प्रोफेसर था) ... लेकिन अब मैं वास्तव में सामान में रूचि रखता हूं। वैसे भी, मेरे पुराने पाठ्यपुस्तक The 68000 Microprocessor by James L. Antonakos के माध्यम से देख, वह निम्नलिखित कोड का उपयोग करता है:अलग 68k सिमुलेटर के पास अलग-अलग TRAP कार्य हैं?

 ORG  $8000 
HMSG DC.B 'Hello!' 
     DC.B 0 
     ORG  #8100 
START MOVEA.L #HMSG,A3 
     TRAP #3 
     TRAP #9 
     END  START 

यह Easy68k में संकलन नहीं होगा, लेकिन पुस्तक ASM68K referenced है। जब मैंने कोड बदल दिया, तो यह काम किया।

 ORG $1000 
HSMG DC.B 'Hello!',0 

START LEA HSMG,A1 
     MOVE #14,D0 
     TRAP #15 

END START 

क्या यह सिर्फ कंपाइलरों के बीच मतभेदों के कारण है? या क्या मैं यहाँ कुछ बड़ा याद कर रहा हूँ? मैं समझता हूं कि सिम्युलेटर TRAP #15 उस समय जो भी कार्य रजिस्टर डी 0 में निष्पादित करता है, लेकिन क्या प्रति सिम्युलेटर के अलग-अलग जाल कार्य हैं, या यह सभी 68000 प्रोसेसर में मानक है?

धन्यवाद!
थॉमस

उत्तर

8

TRAP निर्देश सिर्फ एक दिनचर्या को कॉल करता है जो स्मृति में कहीं भी एक लांगवर्ड द्वारा इंगित किया जाता है। व्यवहार का वह हिस्सा सभी 68000 सीपीयू के लिए आम है। जहां वह लैंडवर्ड इंगित करता है, और यह कितना दिनचर्या करता है (और इसलिए आप इसे जिस डेटा को चाहते हैं उसे पास करते हैं और इसी तरह) विशेष प्रणाली पर निर्भर करता है।

(अटारी अनुसूचित जनजाति उदाहरण के लिए इस्तेमाल किया TRAP ओएस में कॉल करने के लिए, और आप आमतौर ढेर पर सभी प्रासंगिक जानकारी पारित कर दिया। रजिस्टर सामग्री नजरअंदाज कर दिया गया। मेरा मानना ​​है कि मैक ओएस "सिस्टम" एक समान तरीके से TRAP इस्तेमाल किया है, भी , और अमिगा ने इसका बिल्कुल उपयोग नहीं किया।)

+0

+1 अटारी और अमीगा ओएस कॉलिंग योजनाओं के बीच अंतर का उल्लेख करने के लिए +1। :) –

+0

मुझे अपने सभी कोड के अंत में TRAP # 11 का उपयोग करके याद रखना प्रतीत होता है, दिन में वापस (flite ftl-68k प्रतिनिधित्व ... क्षमा करें)। मुझे याद है कि शिक्षक मुझे बता रहा है कि "यह सिर्फ ओएस को बोर्ड का नियंत्रण देता है" –

3

68000 16 उपयोगकर्ता जाल (सॉफ़्टवेयर इंटरप्ट/अपवाद) प्रदान करता है लेकिन यह निर्दिष्ट नहीं करता कि वे क्या करते हैं। यह सिस्टम BIOS/OS के लिए नीचे है, चाहे वह एक सिम्युलेटर या अमीगा, अटारी एसटी आदि हो। आप इस दस्तावेज़ http://www.easy68k.com/files/EASy68KQuickRef.pdf के नीचे Easy68k में TRAP 15 द्वारा किए गए कार्यों की एक सूची पा सकते हैं।

संबंधित मुद्दे