הסדרה של Dragon 1982DREAM · 1982–83

תוכנות של אז

תכנות

DREAM: הכלי שבו כתבו את המשחקים המהירים

DREAM של Mike Kerry יצא ב-1982–1983 בהוצאת Dragon Data, החברה שייצרה את המחשב. הוא כולל עורך ומתרגם לשפת מכונה, השפה שבה נכתבו כמעט כל המשחקים המהירים של אז. בגרסה All Dream נוסף גם Dreambug, כלי למציאת שגיאות.

למה שפת מכונה

ב-BASIC קל לכתוב, אבל הוא איטי. שפת מכונה היא פקודות ישירות למעבד 6809, מהירה פי עשרות אבל קשה יותר. DREAM עושה שלושה דברים: עורך שבו כותבים את התוכנית, מתרגם (אסמבלר) שהופך אותה לקוד שהמעבד מבין, והרצה מיידית.

הפעלה מקלטת

קודם שומרים מקום בזיכרון: CLEAR 200,12000 ו-ENTER. אחר כך CLOADM, וכשמופיע OK, מקלידים EXEC. כשהתוכנה שואלת OLD TEXT?, לוחצים N, והמסך מתרוקן.

תוכנית ראשונה

התוכנית הזאת ממלאת את המסך באות A ומחכה למקש. מקלידים כל שורה ואחריה ENTER. שורה שמתחילה ברווח חייבת להתחיל ברווח: מילה בתחילת שורה היא שם של שורה (כמו LOOP), והפקודה באה אחרי רווח.

@ LDX #$0400
 LDA #'A
LOOP STA ,X+
 CMPX #$0600
 BLO LOOP
KEY LDX $A000
 JSR ,X
 BEQ KEY
 RTS

מה כל שורה עושה

LDX #$0400 מצביע על תחילת המסך בזיכרון, וה-@ מסמן שכאן התוכנית מתחילה. LDA #'A לוקח את האות. STA ,X+ שם אותה על המסך ומתקדם מקום אחד. CMPX #$0600 ו-BLO LOOP חוזרים עד סוף המסך. שלוש השורות שאחר כך בודקות אם נלחץ מקש, ו-RTS חוזר לעורך.

לתרגם ולהריץ

BREAK, A, ENTERמתרגם: ליד כל שורה מופיע הקוד שלה
BREAK, X, ENTERמריץ: המסך מתמלא באותיות A
מקש כלשהוחזרה לעורך
BREAK, Q, ENTERמהמתרגם חזרה לעורך, לתיקון שגיאות
BREAK, T, ENTERמחזיר מצב טקסט אחרי תוכנית גרפית

ניסוי ראשון

מחליפים את 'A באות אחרת, למשל '*, ומריצים שוב. זה הרגע שבו מרגישים כמה שפת מכונה מהירה: המסך מתמלא בבת אחת.

המדריך כתוב במילים שלנו, לבעלי Dragon שיש להם את התוכנה המקורית. אנחנו לא מעלים את התוכנה עצמה ולא את המדריך המקורי. בדקנו כל צעד על מכונה עם אותו מעבד ואותו מסך.

כל המדריכים · מה קראו בעלי Dragon · ההיסטוריה של ה-Dragon