מתכנת הינדס לאחור את משחק ה-DOS שצורף לבמבה, כדי לגלות את הטכנולוגיה שמאחוריו
מתכנת צלל לתוך משחק ה-DOS שחילקה אסם בתור קידום מכירות וגילה משחק DOS ישראלי, שפותח עבור חטיף בוטנים בבורלנד פסקל גרסה 7.0, והשתמש בספריה גרפית מחברה בטקסס, עם גרפיקה בגיפים. בסך הכל די סטנדרטי
מאת: חורחה כהן
בשנת 96, צורף לחבילות במבה משחק דוס, בו מככב התינוק המפורסם של החברה. המשחק היה נוראי אבל אפילו יצא לו המשך, ושניהם אגב זמינים להורדה באתר ״מסע אל העבר״. אז בוקר אחד, מתוך סקרנות טכנית (ושעמום סגר), הורדתי את שניהם במטרה לבצע הינדוס לאחור ולהבין את הטכנולוגיה מאחורי המשחקים.
הנה הקבצים של במבה 2. אפשר לראות שגרסת הייצור של המשחק היא מ-19 באוגוסט 1996, וכללה שלושה קבצי נתונים ושלושה קבצי ריצה. אחד מהם מתוארך משנת 2002, ואני מניח שזה התאריך שבו המשחק הועתק מהדיסקט למחשב של המפיץ.
בואו נציץ רגע לתוך קבצי הנתונים:
שלושת הקבצים בעלי מבנה דומה. שני הבייטים הראשונים הם מזהה מספרי, לאחריו הודעת זכויות יוצרים, רשימת קבצים שמוכלים בקובץ ואז נתוני הקבצים. אם נחפש בגוגל:
נמצא מסמך שמתאר מבנה של קבצי גרפיקה למשחקים – נראה מבטיח.
הטבלה בתחתית המסמך מתארת את מבנה הקבצים במשחק במבה ומספקת לינק לאתר נכלולי ברוסית, עם קוד לכלי שאמור להיות מסוגל לחלץ את קבצי הגרפיקה:
הקוד כתוב ל-Windows, אז הייתי צריך לשנות אותו קצת כדי שיעבוד במק או לינוקס, העלתי לגיטהאב את הגרסה המעודכנת עם השינוים שלי:
למרבה הפלא, הכלי הזה עבד וחילץ לא מעט קבצים, אבל יותר מפתיע שכל הגרפיקה היא בקבצי גיף.
הנה כמה דוגמאות:
אוקיי, אז הגרפיקה והאנימציות בגיפים, בוא נראה מה יש בקבצים האחרים.
הדבר הראשון שקופץ לעין הוא המחרוזת:
גוגל מספר לנו שמדובר בקבצי אודיו. נייס.
אבל גוגל לא היתה כל-כך שימושית במציאת תוכנה שתפתח את הקבצים, וגם VLC לא ידעה כל-כך מה לעשות איתם. אבל בדיקה אקראית עם Audacity הצליחה, וזה נשמע ככה:
כמו שאתם יכולים לשמוע הכל מהיר מדי. אבל בהתאמת המהירות… הנה הג׳ינגל של במבה!
אוקיי, אז יש לנו את הגרפיקה ואת הסאונד, מה עוד אפשר להבין על המשחק הזה?
למרבה המזל, השנה היא 2020 וכלי הדיס-אסמבלר של הסוכנות לביטחון לאומי האמריקאית זמין לכולם ברשת! הידד!
אבל לפני שניגש לזה, הנה גיף מקריפ שמצאתי במשחק בשם EYES.GIF
בכל מקרה בחזרה לעניינו. כלי הגידרה הוא אוברקיל רוב הזמן, אבל אני מחבב אותו מאוד. זרוק עליו קובץ ריצה והוא ינתח וימצא מחרוזות ופונקציות וכל מיני דברים מעניינים, והבונוס הכי גדול הוא שבנוסף לדיס-אסמבלר, הוא גם דיקומפיילר די מוצלח.
ובאמת – הנה שמות כל הקבצים שחילצנו מקודם. הקטע המעניין פה הוא שהמחרוזות מקודדות כפסקל סטרינגז, לא סי סטרינגז. אז המשחק כנראה נכתב במקור בשפת פסקל.
עד כמה שאני יודע ההבדל היחידי בין פסקל סטרינגז לסי סטרינגז הוא שבפסקל הבייט הראשון הוא אורך המחרוזת, בסי אין את זה וסוף המחרוזת מסומן ע"י 0.
עוד ראייה לכך שהמשחק נכתב בפסקל מגיעה בדמות הודעת זכויות היוצרים של בורלנד, והדיון הזה בפורום דלפי שמדבר על זיהוי גרסאות פסקל לפי המחרוזת הזו. לפי השנה אפשר גם לדעת שמדובר בגרסה 7 – אחרי שינוי השם מטורבו פסקל לבורלנד פסקל.
אם נמשיך לחטט בקובץ הריצה נמצא את הודעת זכויות היוצרים הזו:
והיי מה אתם יודעים, מדובר במוצר של Genus Microprogramming, שהכרנו מההודעה שבתחילת קבצי הנתונים.
Genus Microprogramming הייתה בית תוכנה טקסני שמכר ספריות פיתוח למתכנתים, אחת מהן נקראה GX Kernel. הנה פרסומת שלהם שמצאתי בגיליון מרץ-אפריל של The Micro Technical Journal:
אז מה יש לנו פה, משחק דוס ישראלי, שפותח עבור חטיף בוטנים בבורלנד פסקל גרסה 7.0, והשתמש בספריה גרפית מחברה בטקסס, עם גרפיקה בגיפים. בסך הכל די סטנדרטי.
המשחק פותח ע״י חברת מולטימדיה קיד – הנה מסך הקרדיטים של המשחק:
ואם מעניין אתכם מה שלומה של מולטימדיה קיד, אז לא משהו האמת.
ובכן, זהו לבינתיים. Thank you for coming to my TED talk
הופיע לראשונה בחשבון הטוויטר של חורחה כהן
הגב
15 תגובות על "מתכנת הינדס לאחור את משחק ה-DOS שצורף לבמבה, כדי לגלות את הטכנולוגיה שמאחוריו"
* היי, אנחנו אוהבים תגובות!
תיקונים, תגובות קוטלות וכמובן תגובות מפרגנות - בכיף.
חופש הביטוי הוא ערך עליון, אבל לא נוכל להשלים עם תגובות שכוללות הסתה, הוצאת דיבה, תגובות שכוללות מידע המפר את תנאי השימוש של Geektime, תגובות שחורגות מהטעם הטוב ותגובות שהן בניגוד לדין. תגובות כאלו יימחקו מייד.
https://badgerherald.com/banter/2017/09/27/top-25-ways-to-do-everything-except-what-youre-supposed-to-do/
בתכלס – מרגש…
איך שכתבת turbo-pascal נהיו לי פלאשים מהילדות
משחקים שכתבנו עם קידוד ספרייטים בascii ועוד כל מיני נוסטלגיות 8 ביט
היו ימים…
כתבה מעולה, אשמח לעוד כאלה בסגנון!
פועלי בניין וירטואלים שעשו בוחטות בנאסד"ק מגיפים מקפצים
בניגוד אליך
אתה גאון על! יחד עם זאת אתה בן אדם משועמם ברמה מפחידה…
חזק.
אשמח לעוד, כתבות כאלה.
מצד אחד גאונות מצד שני שיעמום
אייפון זה חרא ואנדרואיד שולט
אחי נצל את הזמן לעשות סטארטאפ ולגייס כסף ולא בשטויות האלו של במבה
נסיון ברברסינג שווה יותר מליצן שכותב בLoser.js
לך לך תעבוד באלביט ותמשיך לכתוב ב ASSembler
אח אח, בורלנד, טורבו פסקל, מודם 14,400, חצ'קונים, אהבה ראשונה, ווינדוס (זה עדיין יש לחלקנו), ICQ והאקזיט הישראלי הראשון. הסכמי אוסלו, רצח רבין, היו ימים…
באותה תקופה זה היה טורבו פסקל והיום זה דלפי (לפני חודש יצאה הגרסה החדשה).
רוב המתכנתים לא מודעים לזה, אבל שתי אלה הן סביבות הפיתוח הכי טובות לסביבת דוס/וינדוס בתקופתן.
תעשה קורס ריברסינג:)
השיר של במבה נשמע ממש איכותי לעומת מה שיש ביוטיוב. שווה להפיץ אותו.