כלי חדש ממיר את הקלאסיקות של פלייסטיישן 2 לרוץ באופן מקורי במחשב האישי ברזולוציית 4K
התקדמות חדשה בשימור תוכנה משנה את האופן שבו כותרים קלאסיים מקונסולות ישנות יותר פועלות על חומרה מודרנית. מפתח עצמאי, המכונה בחוגים טכניים ran-j, יצר כלי המסוגל לתרגם את קוד המשחק המקורי של פלייסטיישן 2 ישירות לפורמטים ניתנים להרצה התואמים למערכות ההפעלה הנוכחיות, כמו Windows ולינוקס. הפרויקט מבטל את הצורך בתוכנת מתווך כבדה, המאפשרת למשחקים לתפקד כיישומי מחשב מקוריים.
הטכנולוגיה, הנקראת PS2Recomp, משתמשת בתהליך מורכב של הנדסה לאחור ותרגום קוד כדי להתגבר על המחסומים הארכיטקטוניים של החומרה המקורית. במקום לדמות את התנהגות הקונסולה בזמן אמת, המערכת ממירה מראש את ההוראות המקוריות של המשחק. זה מקטין באופן דרסטי את העומס על המעבד של המחשב, מה שמאפשר להריץ כותרים מורכבים גם על מכונות עם מפרט טכני צנוע יותר, תוך שמירה על יציבות המערכת.
פעולת הכלי מבוססת על עמודים טכניים ספציפיים המבטיחים את נאמנות היצירה המקורית:
– תרגום ישיר מארכיטקטורת MIPS המקורית לשפת C++ המודרנית.
– יצירת קבצי הפעלה עצמאיים עבור Windows ולינוקס.
– ביטול עיבוד בזמן אמת הנדרש על ידי אמולטורים מסורתיים.
– תמיכה מקורית לעיבוד ברזולוציות גבוהות במיוחד, כולל צגים רחבים במיוחד.
פיתוח זה מהווה אבן דרך משמעותית עבור ארכיונאים דיגיטליים והיסטוריונים של מדיה אינטראקטיבית. התלות בחומרה שמתדרדרת פיזית הייתה תמיד מכשול לשימור משחקים אלקטרוניים מהעשורים האחרונים. עם היכולת להמיר תוכנה לפורמטים בלתי תלויים בפלטפורמה, הקהילה הטכנית מבטיחה שהמורשת הדיגיטלית תישאר נגישה ופונקציונלית עבור הדורות הבאים של חוקרים וצרכנים.
התקדמות טכנית בשימור תוכנה היסטורית
הארכיטקטורה של הפלייסטיישן 2, במיוחד המעבד המרכזי שלו המכונה Emotion Engine, תמיד נחשבה לאחת המורכבות והקשות ביותר לשכפול בסביבות וירטואליות. במשך שנים, הדרך היחידה לגשת לקטלוג הקונסולות במחשבים הייתה באמצעות אמולטורים שהשתמשו בקומפילציה של Just-In-Time (JIT). שיטה זו מחייבת את המחשב לתרגם את קוד המשחק בו זמנית בזמן שהוא פועל, מה שדורש כוח עיבוד גבוה ולעיתים מביא לתקלות חזותיות או ירידה בביצועים.
גישת הקומפילציה הסטטית משנה באופן מהותי את הפרדיגמה הזו. הכלי PS2Recomp מנתח את דיסק המשחק המקורי או את התמונה הדיגיטלית שלו ומבצע את כל תרגום הקוד לפני שהמשתמש בכלל מתחיל את האפליקציה. התוצאה היא קובץ שמערכת ההפעלה מזהה כתוכנה מקורית, בדומה לכל תוכנה אחרת שפותחה במיוחד עבור מחשבים מודרניים.
שיטה זו פותרת בעיות כרוניות של סינכרון אודיו ווידאו שהשפיעו על חווית המשתמשים. מכיוון שהקוד כבר מתורגם לארכיטקטורת x86-64, הסטנדרטית במעבדים הנוכחיים, אין צווארי בקבוק בעיבוד במהלך סצנות אקשן אינטנסיביות או טעינת סצנה גדולה, מה שמספק נזילות העולה לרוב על זו של החומרה המקורית.
כיצד פועלת מערכת הקומפילציה הסטטית
תהליך ההמרה מחייב את המשתמש להחזיק במדיה הפיזית המקורית או בקובץ גיבוי שהושג כחוק. הכלי מחלץ נתוני משחק ומפריד בין נכסי מדיה, כגון טקסטורות ומודלים תלת מימדיים, מקוד לוגי. לאחר מכן, מנוע ההידור מחדש כותב מחדש את ההוראות הלוגיות כך שיוכלו לקיים אינטראקציה ישירה עם ספריות הגרפיקה והשמע של מערכת ההפעלה היעד.
לאחר השלמת ההמרה, המשחק כבר לא דורש נוכחות של הדיסק המקורי או קבצי מערכת הקונסולה כגון BIOS. קובץ ההפעלה שנוצר פועל באופן אוטונומי, ומנהל את הקצאת הזיכרון והעיבוד הגרפי שלו, מה שמפשט מאוד את ההפצה והביצוע של התוכנה בסביבות חומרה שונות.
ביצועים מעולים ותמיכה ברזולוציות מודרניות
המעבר לסביבת מחשב מקורית מביא יתרונות מיידיים לביצועים החזותיים של משחקים. כותרים שבמקור התקשו לשמור על קצב רענון של 30 פריימים לשנייה בקונסולה יכולים כעת לפעול ב-60 או אפילו 120 פריימים לשנייה, בהתאם למפרטי הצג של המשתמש. היעדר מגבלות חומרה מדור קודם מאפשר למנוע המשחק לפעול בקיבולת המרבית שלו.
בנוסף לנזילות, איכות התמונה מקבלת דחיפה משמעותית. הכלי מאפשר עיבוד מקורי של משחקים ברזולוציית 4K. בניגוד לשינוי גודל מלאכותי שנעשה על ידי טלוויזיות או אמולטורים, עיבוד מקורי מחשב גרפיקה תלת מימדית ברזולוציית מסך מדויקת, מבטל קצוות משוננים וחושף פרטים במרקמים שלא היו מורגשים בחומרה המקורית.
גם זמני הטעינה מצטמצמים באופן דרסטי. על ידי העברת נתונים מדיסק אופטי איטי לכונני מצב מוצק (SSD) מודרניים, מעברים בין רמות המשחק וטעינת הטקסטורה מתרחשים כמעט באופן מיידי. זה משנה את הקצב של משחקים מסוימים, ומבטל הפסקות ארוכות ששוברות את הטבילה של המשתמש.
האופי המקורי של קובץ ההפעלה מקל על יישום ויזואליות עכשווית. מפתחי קהילה כבר בוחנים הוספת תמיכה לצגים רחבים במיוחד, התאמת שדה הראייה של המצלמה מבלי לעוות רכיבי ממשק, דבר שדרש שינויים מורכבים ולא יציבים לשיטות יישום קודמות.
חלוציות עם Sly Cooper הקלאסי
כדי להוכיח את ההיתכנות הטכנית של הפרויקט שלו, היזם בחר בפלטפורמת ההתגנבות Sly Cooper כמועמד הראשון להידור מחדש המלא. הבחירה לא הייתה אקראית, מכיוון שלכותרת יש מנוע פיזיקה מוזר וסגנון עיבוד cel-shading שנהג להציג פגמים גרפיים בשיטות הדמיית חומרה מסורתיות. תהליך ההמרה הצליח, וכתוצאה מכך קובץ הפעלה של Windows שמריץ את המשחק מתחילתו ועד סופו ללא הפרעות או הפסקות בלוגיקת התכנות.
הצלחת המבחן הראשון הזה יצרה התגייסות חזקה בקהילת הנדסת התוכנה. מתכנתים עצמאיים החלו לנתח את כלי הקוד הפתוח PS2Recomp כדי לייעל את תהליך התרגום ולהרחיב את התאימות למנועים גרפיים אחרים המשמשים לאורך מחזור החיים של הקונסולה. שיתוף פעולה מבוזר האיץ את הזיהוי של דפוסי קוד, ומאפשר לכלי להפוך את ההמרה לאוטומטית יותר ויותר של משחקים שחולקים מבני תכנות דומים.
השפעה על פיתוח שינויים והנדסה לאחור
יצירת יציאות מחשב מקומיות פותחת עידן חדש לשינוי משחקים קלאסיים, תחום המכונה מודינג. בסביבות חיקוי, שינוי התנהגות של משחק דורש הזרקת קוד ישירות לזיכרון הפכפך במהלך הביצוע, תהליך מאוד לא יציב ומוגבל. עם קובץ הפעלה C++ מקורי, למפתחים יש גישה ישירה למבנה הלוגי של התוכנה. זה מאפשר שינויים עמוקים, כמו החלפת מודלים תלת מימדיים בגרסאות של ספירת מצולעים גבוהה, הטמעת מערכות תאורה מתקדמות כמו מעקב אחר קרניים, תיקון שגיאות תכנות שהיו קיימות מאז השחרור המקורי, ואפילו שחזור תוכן שנחתך מהגרסה הסופית של המשחק. בנוסף להיבט היצירתי, רמה זו של הנדסה לאחור משמשת ככלי חינוכי רב ערך, המאפשר לסטודנטים למדעי המחשב לנתח כיצד חלוצי התעשייה פתרו בעיות אופטימיזציה של זיכרון ועיבוד בזמן של אילוצי חומרה חמורים, מה שמבטיח שהידע הטכני הזה לא יאבד עקב התיישנות של ציוד פיזי.
תאימות עם ציוד היקפי ובקרות נוכחיות
הפעלה מקורית במערכת ההפעלה מבטלת בעיות תאימות עם התקני קלט. משחקים מומרים מקיימים אינטראקציה ישירה עם ממשקי API מודרניים של בקרי Windows ו-Linux, ומאפשרים למשתמשים לחבר משטחי משחק נוכחיים באמצעות Bluetooth או כבל USB ללא צורך בתוכנת מיפוי לחצנים של צד שלישי, מה שמבטיח תגובות מדויקות ותמיכה מחוץ לקופסה בתכונות כמו רטט וטריגרים אנלוגיים.
הרחבת הקטלוג והשלבים הבאים של הפרויקט
קצב הפיתוח של הכלי מצביע על התרחבות מהירה ברשימת הכותרים התואמים. ככל שאלגוריתם תרגום הקוד משוכלל על ידי קהילת הקוד הפתוח, תהליך ההידור מחדש הסטטי הופך יעיל יותר, ומצמצם את הזמן הדרוש להתאמת משחקים מורכבים שהשתמשו בהוראות לא ברורות מהמעבד המקורי.
היוזמה קובעת תקן טכני חדש לשימור מדיה אינטראקטיבית. על ידי ניתוק התוכנה מפלטפורמת החומרה המקורית שלה והמרתה לשפות תכנות אוניברסליות, הפרויקט מבטיח שיצירות יסוד בהיסטוריה של הבידור הדיגיטלי יישארו תפעוליות וזמינות ללימוד ולצריכה במשך עשרות שנים קדימה.







