
Z80 REPL: הוראות אסמבלר של Z80 ישירות בדפדפן
ABA Games פרסמה את z80-repl, סביבת דפדפן שמאפשרת להקליד הוראת אסמבלר בודדת של Z80, להריץ אותה מיד ולראות את השינוי באוגרים, בדגלים ובזיכרון. הפרויקט ברישיון MIT פועל כולו בצד הלקוח ואינו זקוק לשרת.
ABA Games פרסמה את z80-repl, סביבה קטנה בדפדפן למעבד Z80. הכלי זמין בכתובת abagames.github.io/z80-repl והופך את המעבד הקלאסי בעל שמונה הסיביות לשורת פקודה אינטראקטיבית: מקלידים הוראת אסמבלר אחת, לוחצים Enter, והיא נאספת ומבוצעת מיד — וההשפעה על האוגרים, הדגלים והזיכרון מוצגת על המסך.
שורת אסמבלר, לא חלון אמולטור
העמוד מחולק לשלושה לוחות טקסט. הלוח העליון מציג את 256 הבתים הראשונים של מרחב הכתובות בן 64 הקילובייט כרשת 16×16 בבסיס הקסדצימלי, עם עמודת ASCII מימין; ערכים שמתאימים ל-PC, SP, HL, BC, DE, IX ו-IY מודגשים בצבעים שונים. מתחתיו לוח אוגרים: A, B, C, D, E, H, L, IX, IY, PC, SP, האוגרים I ו-R והדגלים S Z Y H X P N C, כל אחד במצב דלוק או כבוי. הלוח השלישי הוא ה-REPL עצמו, מסוף xterm.js.
שורת העזרה מסבירה את המודל: “Input a Z80 instruction and press the [enter] to run it”, עם דוגמאות כמו ld c,20h, add a,c ו-push bc. ההוראה נכתבת לזיכרון בכתובת מונה התוכנית, ואז מבוצעת על ידי ליבת האמולציה, וה-REPL מדפיס את בתי קוד הפעולה יחד עם מספר המחזורים. מקש Tab מציג רשימת הוראות שמתאימות למה שהוקלד, והחצים נעים בהיסטוריית הפקודות.
צעד-אחר-צעד, לולאות ומגבלות
לחיצה על Enter בשורה ריקה מריצה את ההוראה שכבר נמצאת ב-PC, ולכן אפשר להשתמש בכלי כמנפה לשגרות קצרות. אם ההוראה אינה מקדמת את מונה התוכנית — HALT, למשל — ה-REPL מריץ אותה עד 64 פעמים ואז מודיע: “Looping 64 times. Press the [enter] to continue.” על מנמוניקה לא מוכרת מופיעה הודעה פשוטה: “unknown instruction”.
מודל המכונה מינימלי בכוונה: הזיכרון הוא מערך שטוח של 64 קילובייט בלי בנקים, וקריאות הקלט/פלט הן פונקציות ריקות שמחזירות אפס בקריאה ומתעלמות מכתיבה — כלומר אין כאן יציאות, וידאו או חומרת קול. באתחול PC מוגדר ל-0x80 ו-SP ל-0xF0.
על מה זה בנוי
הפרויקט כתוב ב-TypeScript ומשתמש בליבת האמולציה Z80.js של DrGoldfire יחד עם xterm.js להצגת המסוף; הכול נארז לקובץ סקריפט אחד ומוגש מ-GitHub Pages, כך ששום קוד אינו רץ בשרת. המאגר מופץ ברישיון MIT ומתוארך לספטמבר 2018.
עבור מפתחי רטרו וסטודנטים זה בדיוק העניין. ה-Z80 הניע מכונות כמו ZX Spectrum, MSX, Amstrad CPC ו-Sega Master System, והרצת הוראה אחת כדי לראות כיצד משתנים הדגלים היא דרך מהירה יותר להבין את הארכיטקטורה מאשר קריאה במדריך.
SiTech — פיתוח אתרים בכוח ה-AI
אנחנו בונים אתרים מהירים ומודרניים ומשלבים AI בתהליכי עבודה אמיתיים. יש לכם פרויקט או שאלה? נשמח לעזור.