2010-07-07 20 views
5

मैं कोई तरीका होना चाहिए चरित्र ('<') एक ZX81 खेल -ओं एक दीवार (काला पिक्सेल ग्राफिक)सहायता: ZX81 बुनियादी "पीक" समारोह

को प्रभावित किया है, तो लगता है।

मैं एक और खेल ... जो कोड

if peek(peek 16398 +256*peek 16399) = code "**blackpixel graphic**" then ... 

उनके लिए काम करने लगता है कौन का उपयोग करता है पर तलाश कर दिया गया हूँ ...

यह सही कोड है?

मुझे पते के साथ वास्तव में पता नहीं है और स्मृति और सामान मिल रहा है।

कृपया मेरी मदद करो ...

-यदि आप एक बेहतर तरीका पता है। उत्तर दें :)

धन्यवाद,

+5

मुझसे कोई मदद नहीं; मैंने लगभग 20 साल पहले अपनी याददाश्त से उस जानकारी को फ्लश किया था। :-) –

+0

xD: पी हाँ मैं पूर्व-आधुनिक कंप्यूटिंग के लिए मूल बातें जानना चाहता हूं :) - नींव लेना ... – ZX81

+1

"मैं पूर्व-आधुनिक कंप्यूटिंग के लिए मूल बातें जानना चाहता हूं" फिर इसके बजाय जेएक्स-स्पेक्ट्रम आज़माएं। ज़्यादा मजेदार + ज़ेड 80 असेंबली सीखने का एक अच्छा कारण। आप एक और ड्रिलर (http://en.wikipedia.org/wiki/Driller_ (video_game)), हार्ड ड्राइविंग (http://en.wikipedia.org/wiki/Hard_driving) या अन्य एलिट (http://en.wikipedia.org/wiki/Elite_(video_game)) स्पेक्ट्रम पर। पाठ के साथ ही प्रदर्शित होता है आप सबसे अच्छे तरीके से नकली पसंद (http://en.wikipedia.org/wiki/Roguelike) बनाने के साथ फंस जाएंगे। – SigTerm

उत्तर

0

यह स्मृति पता है क्या पर निर्भर करता है, लेकिन आम तौर पर नज़र अर्थ है "क्या मूल्य इस स्मृति स्थान में है?"

This ऐसा लगता है कि यह इस विशेष विषय में कुछ अच्छी पढ़ाई होनी चाहिए।

1

peek स्मृति स्थान पर बाइट पढ़ता है। The System Variables of the Sinclair ZX81 के अनुसार, स्मृति स्थान 16398 और 16399 वर्तमान 1612 मान बनाते हैं जिसमें वर्तमान "प्रदर्शन फ़ाइल में प्रिंटर स्थिति का पता" है।

इस प्रकार, peek 16398 + 256*peek 16399 दो मानों को 16 बिट पते और peek में जोड़ता है जो उस स्थिति में संभवतः पिक्सेल/वर्ण (?) प्राप्त करता है।

+0

हाँ मैं इसे देख रहा हूं। हालांकि शुरुआत में कोई मदद नहीं।=/ – ZX81

1

पते पर स्थित 16398 और 1639 9 कर्सर स्थान बनाने वाले दो बाइट हैं। (http://web.ukonline.co.uk/sinclair.zx81/chap28.html देखें)। दूसरे शब्दों में,

peek 16398 + 256*peek 16399 

आपको स्क्रीन पर चरित्र का स्मृति पता देता है जहां अगला प्रिंट जाना होगा। जो स्पष्ट रूप से PRINT AT के साथ बदला जा सकता है।

peek(peek 16398 + 256*peek 16399) 

उस स्थान पर जो भी चरित्र है, उसके लिए कोड पाता है। बाकी आपको पता लगाने में सक्षम होना चाहिए।

अब, मुख्य प्रश्न यह है: क्या आपका गेम कर्सर का उसी तरह उपयोग करता है? यदि आपको नहीं है तो आपको एक अलग समाधान का उपयोग करना होगा।

+0

हमम ठीक है तो अगर मैं 10,10 (या किसी भी स्थिति) पर एक काला पिक्सेल ग्राफ़िक मुद्रित करता हूं तो 'peek (peek 16398 + 256 * peek 16399)' को काले पिक्सेल ग्राफ़िक के लिए कोड मिलेगा? – ZX81

+0

नहीं, यह मौजूदा कर्सर स्थिति पर जो ग्राफिक है, उसके लिए कोड मिलेगा। – Artelius

+0

कर्सर की स्थिति? है ना? : पी मैं कभी भी ZX81 के मकान या कर्सर नहीं जानता था? – ZX81