מיקרוסופט משחררת את 6502 BASIC כקוד פתוח

  • מיקרוסופט משחררת את 6502 BASIC גרסה 1.1 תחת רישיון MIT וב-GitHub.
  • 6.955 שורות של מערכות אסמבלר עם תמיכה ב-Apple II, Commodore PET, OSI ו-KIM-1.
  • קומודור BASIC ו-Applesoft BASIC בסיס; הסכם עם קומודור תמורת 25.000 דולר בשנת 1977.
  • שיפור שימור, אמולציה ופרויקטים רטרו, עם תיקונים היסטוריים משנת 1978.

מיקרוסופט 6502 בסיסי בקוד פתוח

כמעט חצי מאה לאחר הופעת הבכורה שלו, מיקרוסופט פרסמה את קוד המקור עבור 6502 BASIC עם רישיון פתוח. המפרש ההיסטורי מגיע לראשונה באופן רשמי ומלא למאגר GitHub, כך שכל אחד יכול ללמוד, לקמפל או להתאים אותו ללא הגבלות חוקיות.

השחרור מנקה עשרות שנים של עותקים לא רשמיים וקטעים מפוזרים, ומספק גרסה קנונית ומתועדת. הכותרת המקורית שנשמרה בקוד אומרת "BASIC M6502 8K גרסה 1.1 מאת MICRO-SOFT", קפסולת זמן אמיתית שמזכירה כיצד נבנה עסקי החברה לפני MS-DOS או Windows.

מה בדיוק מיקרוסופט הוציאה?

מאגר BASIC 6502 ב-GitHub

זהו גרסה 1.1 של Microsoft BASIC עבור המיקרו-מעבד 6502, מתוארך לאמצע 1978, ושוחרר תחת רישיון MIT המתיר. המאגר משתף 6.955 שורות של קוד אסמבלי MOS 6502, המאפשר הורדה, שינוי, הפצה מחדש ואפילו שימוש מסחרי במידת הצורך.

עץ המקור כולל קומפילציה מותנית עבור מספר מערכות חלוצותApple II (Applesoft), Commodore PET, Ohio Scientific (OSI) וערכת MOS KIM-1, כמו גם סביבת סימולציה PDP-10 עבור ה-6502. כהפניה היסטורית, ב-GitHub עצמו יש חותמות זמן שממקמות את הקבצים "48 שנים".

מבחינה פונקציונלית, המתורגמן מציע יישום מלא של שפת BASIC, חשבון נקודה צפה, טיפול במחרוזות, תמיכה במערכים (מספר שלם ומחרוזת), פעולות קלט/פלט ואסטרטגיות זיכרון יעילות עבור מערכות 8 סיביות. הוא משלב גם שרשרת אספן אשפה ואחסון דינמי של משתנים.

עמוד תווך של מחשוב ביתי

היסטוריה של מיקרוסופט BASIC 6502

המסע מתחיל בשנת 1975, כאשר ביל גייטס ופול אלן כתבו את המוצר הראשון של החברה: א מתורגמן BASIC עבור Intel 8080 של Altair 8800שנה לאחר מכן, גייטס וריק ווילנד התאימו את הבסיס הזה ל-MOS 6502, והולידו את 6502 BASIC, שכעת משותף כקוד פתוח.

En 1977, קומודור העניקה רישיון ל-6502 BASIC תמורת תשלום קבוע של 25.000 דולרהסכם זה הביא את המתורגמן ל-Commodore PET, ומאוחר יותר, למערכות אקולוגיות שהפכו תכנות ביתי לפופולרי כמו ה-VIC-20 וה-Commodore 64 האגדי. זה היה העשור של כתיבת שורות כמו 10 PRINT "HELLO", 20 GOTO 10 ולחץ RUN כדי לראות את הקסם.

במקביל, אותו גזע קוד שימש כבסיס ל Applesoft BASIC על Apple II, אשר החליפה את Integer BASIC של סטיב ווזניאק. לפיכך, משפחת קוד מקור אחת הפעילה מספר פלטפורמות מפתח בלידת המחשוב האישי.

המיקרו-מעבד MOS 6502 הפעיל מכשירים איקוניים כמו Apple II וסדרת הקומודור, כמו גם מכונות וקונסולות אחרות עם גרסאות של השבב (Atari 2600 או NES). העובדה שהם חלקו ארכיטקטורה לא מרמזת שהם הריצו את המפענח הזה במערכות הבידור הללו, אבל זה מסביר מדוע הקהילה עדיין מתעניינת בחקרן ושימורן.

למה חשוב לפרסם אותו כקוד פתוח

הרלוונטיות של Open 6502 BASIC

עבור היסטוריונים, מורים וחובבים, בעל גופן מורשה רשמי, מודרני וברור זה זהב טהור. במשך שנים, אנשי שימור בנו מחדש סביבות קומפילציה ומאמתים שמקורות היסטוריים יכולים לייצר ROMs בייט אחר בייט; כעת העבודה הזו מאוחדת עם הגנה משפטית וחומרים מאומתים.

סצנת הרטרו חווה פריחה בזכות פרויקטים מבוססי FPGA ואמולציה, שבה שכפול נאמן של מערכות 8-bit דורש הבנת התוכנה הבסיסית שלהן. 6502 BASIC פתוח מאפשר העברת חומרה קלאסית, בדיקה וחידוש בקלות במידה של אותנטיות שקשה להשיג באמצעות שחזורים חלקיים בלבד.

גרסה 1.1 כוללת את תיקוני גרסת האשפה שזוהו על ידי קומודור ויושמו במשותף על ידי ג'ון פיאגנס וביל גייטס בשנת 1978, אותם גרסאות שהגיעו למשתמשים כ-PET BASIC V2. כלומר, משותף המהדורה המייצגת ביותר של השימוש בפועל בו באותה תקופה.

תנועה זו מתקשרת לפרסומים קודמים של הבית, כמו זה של GW-בסיסי, אשר שייך לאותה שושלת של מפרשים ובסופו של דבר התפתח ל-QBASIC ול-Visual Basic. החוט המקשר הוא פתיחת חלקים מרכזיים במורשתו ללימוד, חינוך וניסויים.

כל מי שרוצה להעמיק יכול ללכת מאגר רשמי ב-GitHub, אשר גם מתעד יעדי בנייה עבור מערכות שונות ומפנה לעבודה קהילתית (למשל, שימוש בשרשראות כלים מודרניות כמו cc65) המקלות על בנייה והרצת קוד. סביבות נוכחיות.

המחווה של מיקרוסופט מחזירה לקדמת הבמה מפרש שסייע לתקנן את התכנות בימיו הראשונים של המחשב האישי. רישיון MIT, תמיכה במטרות קלאסיות ומסד נתונים של 6.955 שורות, לקהילה יש כעת מקור אמין ללמידה, ניסויים ושימור של פיסת היסטוריה בסיסית של המחשוב האישי.

Artaculo relacionado:
מה זה PC או מחשב אישי?