ความก้าวหน้าทางเทคนิคที่สำคัญในด้านการอนุรักษ์ซอฟต์แวร์ดิจิทัลเพิ่งประสบความสำเร็จโดยโปรแกรมเมอร์จากบราซิล มืออาชีพรายนี้พัฒนาเครื่องมือที่สามารถแปลงเกมคอนโซล Sony แบบคลาสสิกให้ทำงานบนระบบปฏิบัติการสมัยใหม่ได้โดยตรง โดยไม่จำเป็นต้องใช้ซอฟต์แวร์ตัวกลาง ฟีเจอร์ใหม่นี้เปลี่ยนวิธีที่ผู้ใช้โต้ตอบกับแคตตาล็อกของหนึ่งในแพลตฟอร์มที่ได้รับความนิยมมากที่สุดในประวัติศาสตร์ของเทคโนโลยีความบันเทิง
โปรเจ็กต์นี้เรียกว่า PS2Recomp ใช้เทคนิคขั้นสูงที่รู้จักในวิศวกรรมคอมพิวเตอร์ว่าเป็นการคอมไพล์ซ้ำแบบคงที่ วิธีนี้จะแปลโค้ดวิดีโอเกมต้นฉบับเป็นภาษาที่คอมพิวเตอร์ปัจจุบันเข้าใจได้ ก่อนที่ผู้ใช้จะเปิดตัวแอปพลิเคชันด้วยซ้ำ ผลลัพธ์ในทางปฏิบัติคือการสร้างไฟล์ปฏิบัติการอิสระ ซึ่งทำงานได้อย่างราบรื่นและโดยตรงบนเครื่องที่มีสถาปัตยกรรม x86 ซึ่งเป็นมาตรฐานบนคอมพิวเตอร์เดสก์ท็อปและโน้ตบุ๊กส่วนใหญ่ในปัจจุบัน
ความคิดริเริ่มนี้ช่วยแก้ปัญหาทางประวัติศาสตร์ที่นักวิจัยเทคโนโลยีและผู้เก็บเอกสารดิจิทัลต้องเผชิญ เป็นเวลาหลายทศวรรษแล้วที่วิธีเดียวในการเข้าถึงสื่อเหล่านี้บนคอมพิวเตอร์คือผ่านกระบวนการที่ต้องใช้พลังการประมวลผลที่สูงมาก ซึ่งจำกัดการเข้าถึงสำหรับผู้ที่มีอุปกรณ์ขนาดเล็กกว่า และมักจะทำให้เกิดภาพบกพร่องหรือความล่าช้าในการสร้างเสียง เครื่องมือใหม่นี้จะข้ามอุปสรรคด้านฮาร์ดแวร์เหล่านี้ไปโดยสิ้นเชิง
ความแตกต่างพื้นฐานในการทำงานของซอฟต์แวร์
วิธีการดั้งเดิมในการเรียกใช้สื่อแบบเดิมบนคอมพิวเตอร์สมัยใหม่เกี่ยวข้องกับการแปลคำสั่งแบบเรียลไทม์ ซึ่งเป็นกระบวนการที่ใช้ทรัพยากรเครื่องจักรจำนวนมาก รูปแบบนี้ต้องการให้โปรเซสเซอร์ของคอมพิวเตอร์ทำหน้าที่เป็นล่ามพร้อมกัน โดยถอดรหัสแต่ละคำสั่งจากคอนโซลดั้งเดิม ณ เวลาที่การกระทำเกิดขึ้นบนหน้าจอ ซึ่งทำให้เกิดคอขวดในการประมวลผลที่หลีกเลี่ยงไม่ได้
ปริมาณงานที่คงที่นี้ต้องการทรัพยากรฮาร์ดแวร์จำนวนมาก ส่งผลให้เฟรมลดลงและกระตุกในเครื่องที่มีประสิทธิภาพน้อยกว่าที่พยายามทำงาน วิธีการใหม่นี้จะย้อนกลับตรรกะนี้โดยดำเนินการแปลทั้งหมดล่วงหน้า โดยส่งมอบไฟล์ที่ได้รับการปรับปรุงให้เหมาะสมแล้วและพร้อมใช้งานทันทีไปยังระบบปฏิบัติการ ทำให้โปรเซสเซอร์มีอิสระที่จะมุ่งเน้นไปที่การแสดงเนื้อหาเพียงอย่างเดียว
วิธีการทำงานของการคอมไพล์ซ้ำแบบคงที่
เครื่องมือนี้จะวิเคราะห์ไฟล์ไบนารีต้นฉบับที่มีอยู่ในแผ่นดิสก์แพลตฟอร์ม Sony อย่างลึกซึ้ง โดยจับคู่แต่ละบรรทัดคำสั่ง ในระหว่างการสแกนอย่างละเอียดนี้ ระบบจะระบุฟังก์ชันทั้งหมด ตรรกะการเขียนโปรแกรม และการเรียกฮาร์ดแวร์ที่เขียนขึ้นโดยเฉพาะสำหรับส่วนประกอบวิดีโอเกมที่ผลิตในต้นปี 2000
หลังจากการแมปเสร็จสมบูรณ์ โค้ดจะถูกเขียนใหม่เป็นภาษา C++ โดยอัตโนมัติ ซึ่งใช้กันอย่างแพร่หลายในการพัฒนาซอฟต์แวร์ประสิทธิภาพสูงร่วมสมัย การแปลงอย่างพิถีพิถันนี้ช่วยให้มั่นใจได้ว่าคำสั่งต่างๆ จะได้รับการตีความโดยตัวประมวลผลของคอมพิวเตอร์ โดยไม่จำเป็นต้องจำลองสภาพแวดล้อมเดิมหรือสร้างเครื่องเสมือนที่ยุ่งยาก
กระบวนการแปลงจะเกิดขึ้นเพียงครั้งเดียวสำหรับแต่ละชื่อที่ส่งไปยังเครื่องมือ เมื่อไฟล์ปฏิบัติการใหม่ถูกสร้างขึ้น ผู้ใช้สามารถเปิดไฟล์ได้โดยตรงจากเดสก์ท็อป โดยมีความง่ายดาย ความเร็ว และการผสานรวมเช่นเดียวกับโปรแกรมที่พัฒนาขึ้นสำหรับระบบปฏิบัติการปัจจุบันโดยเฉพาะ
ประสิทธิภาพที่เพิ่มขึ้นและการเพิ่มประสิทธิภาพด้านภาพ
การเล่นแบบเนทีฟให้ความเสถียรทางเทคนิคที่ไม่เคยทำได้มาก่อนด้วยวิธีการเล่นสื่อแบบเดิมทั่วไป โดยไม่ต้องเสียค่าใช้จ่ายในการแปลแบบเรียลไทม์ คอมพิวเตอร์สามารถควบคุมพลังการประมวลผลทั้งหมดของตนไปยังการเรนเดอร์กราฟิกและรักษาความลื่นไหลของภาพเคลื่อนไหว เพื่อให้มั่นใจว่าได้รับประสบการณ์ที่ราบรื่น
การทดสอบทางเทคนิคแสดงให้เห็นถึงความเป็นไปได้ในการเพิ่มความละเอียดภายในของสื่อให้เป็นมาตรฐาน 4K โดยไม่กระทบต่ออัตราการรีเฟรชเฟรมต่อวินาที นอกจากนี้ เทคโนโลยีนี้ยังช่วยให้สามารถผสานรวมเข้ากับจอภาพกว้างพิเศษ ปรับสัดส่วนหน้าจอแบบออร์แกนิก เติมเต็มพื้นที่ด้านข้างโดยไม่ทำให้เกิดการบิดเบือนของภาพในองค์ประกอบกราฟิก
ประโยชน์โดยตรงอีกประการหนึ่งของการดำเนินการแบบเนทิฟนั้นสัมพันธ์กับเวลาในการโหลดข้อมูลและการเปลี่ยนหน้าจอ เนื่องจากขณะนี้ข้อมูลถูกอ่านจากไดรฟ์จัดเก็บข้อมูลโซลิดสเตตความเร็วสูง (SSD) แทนที่จะเป็นเครื่องเล่น DVD แบบออปติคัลแบบกลไก หน้าจอรอจึงแทบจะขจัดออกไป ทำให้การนำทางใช้งานได้ทันที
การไม่มีความล่าช้าในการสื่อสารระหว่างอุปกรณ์ต่อพ่วงควบคุมและการทำงานบนหน้าจอถือเป็นจุดเด่นทางเทคนิคเช่นกัน การตอบสนองต่อคำสั่งจะเกิดขึ้นทันที โดยสร้างความแม่นยำที่แน่นอนตามที่ต้องการโดยซอฟต์แวร์ที่ทำงานรวดเร็ว และรับรองว่าคำสั่งของแป้นพิมพ์หรือการควบคุมได้รับการลงทะเบียนในมิลลิวินาทีเดียวกัน
ความซับซ้อนของสถาปัตยกรรมดั้งเดิม
คอนโซลที่เปิดตัวในปี 2000 มีโครงสร้างภายในที่ซับซ้อนอย่างฉาวโฉ่ โดยมีศูนย์กลางอยู่ที่โปรเซสเซอร์แบบกำหนดเองที่เรียกว่า Emotion Engine ซึ่งทำงานแตกต่างอย่างมากจากโปรเซสเซอร์คอมพิวเตอร์มาตรฐาน ส่วนประกอบนี้ทำงานร่วมกับหน่วยประมวลผลเวกเตอร์ที่มีความเชี่ยวชาญสูง สร้างสภาพแวดล้อมการพัฒนาที่เป็นเอกลักษณ์ซึ่งทำให้แม้แต่สตูดิโอมืออาชีพจะสร้างซอฟต์แวร์ได้ยากในขณะนั้น การซิงโครไนซ์ระหว่างชิปที่แตกต่างกันเหล่านี้เป็นสิ่งจำเป็นสำหรับสื่อในการทำงานอย่างถูกต้อง ความพยายามใดๆ ในการสร้างสำเนาจากภายนอกกลายเป็นความท้าทายที่ยิ่งใหญ่สำหรับวิศวกรรมคอมพิวเตอร์ เนื่องจากข้อผิดพลาดด้านเวลาเพียงเล็กน้อยระหว่างส่วนประกอบต่างๆ ส่งผลให้ระบบหยุดทำงานโดยสิ้นเชิง
เครื่องมือที่พัฒนาโดยโปรแกรมเมอร์ชาวบราซิลสามารถถอดรหัสการสื่อสารที่ซับซ้อนระหว่างโปรเซสเซอร์ร่วมเหล่านี้ได้อย่างชัดเจน ด้วยการแปลพฤติกรรมของ Emotion Engine ให้เป็นคำสั่งเชิงเส้นที่ CPU สมัยใหม่สามารถเข้าใจได้ การออกแบบนี้จึงไม่จำเป็นต้องสร้างความล่าช้าของสัญญาณและลักษณะเฉพาะของหน่วยความจำของฮาร์ดแวร์ดั้งเดิมขึ้นมาใหม่ ความสำเร็จด้านเทคนิคนี้แสดงถึงหลักชัยสำคัญในการทำวิศวกรรมย้อนกลับของระบบปิด ความสำเร็จนี้พิสูจน์ให้เห็นว่าสถาปัตยกรรมที่ล้าสมัยและปรับแต่งได้สูงสามารถปรับให้เข้ากับมาตรฐานการประมวลผลสากลได้ ทำให้มั่นใจได้ว่าซอฟต์แวร์จะคงอยู่ได้หากมิฉะนั้นอาจติดอยู่กับฮาร์ดแวร์ในกระบวนการย่อยสลายทางกายภาพ
โอเพ่นซอร์สและการขยายชุมชน
โปรเจ็กต์นี้เผยแพร่สู่สาธารณะบนแพลตฟอร์มโฮสติ้งโค้ด ช่วยให้โปรแกรมเมอร์จากทั่วโลกสามารถวิเคราะห์ ปรับเปลี่ยน และมีส่วนร่วมในการปรับปรุงอย่างต่อเนื่อง ลักษณะการทำงานร่วมกันนี้ได้เร่งการพัฒนาเครื่องมืออย่างมาก ส่งผลให้เกิดการอัปเดตบ่อยครั้งและการขยายรายการความเข้ากันได้ ซึ่งครอบคลุมรายการในแคตตาล็อกหลายพันรายการแล้ว การเปิดกว้างของโค้ดยังช่วยให้ชุมชนด้านเทคนิคสร้างการแก้ไขได้ง่ายขึ้น ซึ่งเปลี่ยนวิธีการทำงานของซอฟต์แวร์ต้นฉบับ เมื่อไฟล์ทำงานบนคอมพิวเตอร์ การเข้าถึงไดเร็กทอรีภายในเพื่อเปลี่ยนพื้นผิวความละเอียดต่ำ แทรกโมเดลสามมิติใหม่ที่มีรายละเอียดใหม่ และแก้ไขข้อบกพร่องในการเขียนโปรแกรมที่มีอยู่นับตั้งแต่เปิดตัวครั้งแรกก็กลายเป็นเรื่องง่ายมากขึ้น ขณะนี้สตูดิโอและนักวิจัยอิสระมีรากฐานที่มั่นคงในการฟื้นฟูโครงการเก่าๆ โดยอัดฉีดเทคโนโลยีแสงและเงาใหม่ๆ โดยไม่พบกับข้อจำกัดที่กำหนดโดยซอฟต์แวร์การแปลแบบเรียลไทม์ การทำงานร่วมกันทั่วโลกทำให้เครื่องมือมีการพัฒนาอย่างต่อเนื่องทุกวัน ระบบกำลังเตรียมที่จะปรับให้เข้ากับการอัปเดตระบบปฏิบัติการในอนาคตและมาตรฐานฮาร์ดแวร์ใหม่ที่อาจเกิดขึ้นในตลาดเทคโนโลยี เพื่อให้มั่นใจว่ามีความเกี่ยวข้องในระยะยาว
ความสำคัญในการอนุรักษ์ดิจิทัล
การเสื่อมสภาพทางกายภาพของสื่อออพติคัลและความล้มเหลวที่หลีกเลี่ยงไม่ได้ของชิ้นส่วนอิเล็กทรอนิกส์ที่เสื่อมสภาพก่อให้เกิดภัยคุกคามต่อประวัติศาสตร์ความบันเทิงดิจิทัล การแปลงแคตตาล็อกแบบปิดเหล่านี้เป็นรูปแบบปฏิบัติการสมัยใหม่ทำให้มั่นใจได้ว่านักวิจัย นักประวัติศาสตร์ด้านเทคโนโลยี และประชาชนทั่วไปยังคงสามารถเข้าถึงผลงานทางวัฒนธรรมได้ โดยไม่คำนึงถึงความพร้อมในการให้บริการของชิ้นส่วนทดแทนสำหรับฮาร์ดแวร์ดั้งเดิมที่ผลิตเมื่อกว่าสองทศวรรษที่แล้ว
ก้าวต่อไปในการพัฒนา
ความพยายามในปัจจุบันของชุมชนนักพัฒนาซอฟต์แวร์มุ่งเน้นไปที่การทำให้กระบวนการแปลงไฟล์ต้นฉบับเป็นไปโดยอัตโนมัติ วัตถุประสงค์ทางเทคนิคคือการสร้างอินเทอร์เฟซแบบกราฟิกที่ใช้งานง่ายซึ่งช่วยให้ผู้ใช้ทุกคนสามารถสร้างไฟล์ปฏิบัติการของตนเองจากสำเนาสำรองที่ถูกต้องแม้ว่าจะไม่มีความรู้ขั้นสูงเกี่ยวกับการเขียนโปรแกรมหรือบรรทัดคำสั่งก็ตาม
การเพิ่มประสิทธิภาพโค้ด C++ ที่สร้างขึ้นอย่างต่อเนื่องยังคงมีความสำคัญสูงสุดในพื้นที่เก็บข้อมูลโปรเจ็กต์ การอัปเดตตามกำหนดเวลามีเป้าหมายเพื่อลดการใช้ RAM ในระหว่างการดำเนินการ และปรับปรุงความเข้ากันได้ดั้งเดิมกับระบบปฏิบัติการบน Linux ขยายขอบเขตการเข้าถึงเครื่องมือไปยังอุปกรณ์พกพาที่ทันสมัย และมินิคอมพิวเตอร์ราคาประหยัด

