เจาะโครงสร้างภายในตลับเกม Super Nintendo
(fabiensanglard.net)Here is a summary of the key points from the article on Super Nintendo cartridges, translated into Korean and organized using Markdown syntax:
โครงสร้างภายในของตลับ Super Nintendo
- ตลับเกม Super Nintendo สามารถมีองค์ประกอบเพิ่มเติมนอกเหนือจากคำสั่งและแอสเซ็ตในชิป ROM ได้
- ภายในแผง PCB ยังพบชิปป้องกันการคัดลอก CIC, SRAM และแม้แต่ "โปรเซสเซอร์เพิ่มประสิทธิภาพ" ได้ด้วย
CIC (ระบบป้องกันการคัดลอก)
- กลไกป้องกันการคัดลอกของ SNES ทำงานโดยให้ชิปสองตัวในเครื่องคอนโซลและตลับสื่อสารกันแบบซิงก์กัน
- หาก CIC ในเครื่องคอนโซลตรวจพบความผิดปกติ ก็จะรีเซ็ตโปรเซสเซอร์ทั้งหมด
ROM: คำสั่งและแอสเซ็ต
- ในอดีต ขนาดของ ROM เกมมักระบุเป็นหน่วยบิตแทนไบต์ (เช่น The Legend of Zelda 3 มีขนาด 8Mb)
- เกมที่มีความจุมากที่สุดคือ Star Ocean (48Mb) ขณะที่เกมระดับคลาสสิกอย่าง Super Mario World ใช้เพียง ROM ขนาด 4Mb ตัวเดียว
- ผู้เขียนได้จัดทำ CSV ด้วยตนเองซึ่งรวบรวมค่าประมาณการใช้ ROM ของเกมจำนวน 3,378 รายการ
SRAM (ระบบบันทึกข้อมูล)
- เกมบางเกมใช้ชิป SRAM และแบตเตอรี่เพื่อรองรับการบันทึกความคืบหน้า
- เมื่อปิดเครื่องคอนโซล SRAM จะเปลี่ยนไปสู่โหมดพลังงานต่ำเพื่อลดการใช้แบตเตอรี่
โปรเซสเซอร์เพิ่มประสิทธิภาพ (Enhancement Processor)
- ตัวที่มีชื่อเสียงที่สุดคือ Super FX (ชื่อเล่น "MARIO", "GSU-1") ซึ่งใช้ใน Star Fox ปี 1993
- บน Wikipedia และ snescentral.com มีรายชื่อเกม SNES ทั้งหมดที่ใช้ชิปเพิ่มประสิทธิภาพ
- มีชิปรวม 13 ชนิด ถูกใช้ในเกม 72 เกม
SA-1
- "Super Accelerator 1" ถือเป็น MVP ของชิปเพิ่มประสิทธิภาพ โดยถูกใช้ในตลับ 34 รายการ
- แม้จะเป็น CPU 65C816 แบบเดียวกับในเครื่องคอนโซล แต่ทำงานเร็วกว่า 4 เท่าที่ 10.74Mhz
- มี SRAM ขนาด 2KB และ CIC ในตัว
- SA-1 มีโหมดการทำงาน 3 แบบ (เร่งความเร็ว, ประมวลผลขนาน, ประมวลผลผสม) และในการตั้งค่าที่ทรงพลังที่สุดสามารถเพิ่มประสิทธิภาพทั้งระบบได้ 5 เท่า
- ในชุมชนเรโทรเกมมิงมีการใช้ SA-1 เพื่อปรับปรุงการเล่นของเกมเก่าที่เคยมีปัญหาความหน่วง เช่น Mario World, Gradius 3 และ Contra 3
CX4
- CX4 เป็นผลงานของ Capcom และใช้ใน Mega Man X2 และ X3
- มอบความสามารถด้านการเรนเดอร์ไวร์เฟรม 3D การคำนวณหลากหลายแบบ และการย่อ/ขยายและหมุนสไปรต์ให้กับ VRAM
- แม้จะโดดเด่นเรื่องเอฟเฟกต์ไวร์เฟรม แต่ในความเป็นจริงมันถูกใช้กับการประมวลผลสไปรต์ทั้งหมดของเกม ทำให้แสดงสไปรต์ได้มากขึ้นโดยไม่เกิดการกะพริบบนหน้าจอ
Enhancement Processor อื่น ๆ
CS-DD1: ชิปคลายการบีบอัดสไปรต์ ใช้ใน 2 เกมDSPseries: ใช้ใน 16 เกม มีคำสั่งคูณ 16 บิตความเร็วสูง และคำสั่งอย่าง sin/cosOBC-1: ใช้ใน 1 เกม (มีเพียงการคาดเดาว่าเกี่ยวข้องกับการจัดการสไปรต์)S-RTC: ให้ความสามารถนาฬิกาเรียลไทม์ ใช้ใน 1 เกมSPC7110: ชิปคลายการบีบอัดข้อมูล ใช้ใน 3 เกมST-010,ST-011,ST-018: ชิปของ SETA เพื่อเสริมความสามารถด้าน AI ใช้ในเกมละ 1–2 เกม
SUPERFX (GSU-1, GSU-2)
- GSU-1 ถูกใช้ใน 5 เกม รวมถึง Star Fox
- ทำงานที่ 10.74Mhz และมี instruction cache ขนาด 512 ไบต์ จึงทำงานได้โดยไม่แย่งทรัพยากรจาก CPU ของ SNES มากเกินไป
- ในขณะที่ PPU ของ SNES เน้น tile/sprite เป็นหลัก SuperFX กลับเชี่ยวชาญด้าน pixel rendering และ polygon rasterization
- โดยทั่วไปจะเรนเดอร์ลง framebuffer บนตลับก่อน แล้วค่อยส่งไปยัง VRAM ตอน VSYNC
- GSU-2 คือ GSU-1 ที่ทำงานแบบ full speed ที่ 21.47Mhz และถูกใช้ใน 3 เกม เช่น Yoshi's Island และ Doom
- ในชุมชน SNES ก็กำลังมีโปรเจ็กต์ที่ใช้ GSU-1 และ GSU-2 เพื่อปรับปรุงเกมเก่าเช่นกัน
ชิปเพิ่มประสิทธิภาพและอีมูเลเตอร์
- แม้ชิปเพิ่มประสิทธิภาพจะช่วยยกระดับประสบการณ์การเล่นและลดต้นทุนให้ผู้จัดจำหน่ายได้มาก แต่ต่อมากลับกลายเป็นเรื่องปวดหัวสำหรับนักพัฒนาอีมูเลเตอร์
- เกมบางเกมพึ่งพาชิปแปลก ๆ จนเพิ่งถูกอีมูเลตได้อย่างถูกต้องในปี 2012
- การทำอีมูเลเตอร์ต้องอาศัยความพยายามจำนวนมากในการรีเวิร์สเอนจิเนียร์ชิปเหล่านี้
- ชิปที่มี ROM ภายในตัว (แบบ ARM-based) จำเป็นต้องมีไฟล์ BIOS ให้กับอีมูเลเตอร์
- แม้ถึงปี 2020 การอีมูเลตชิปหายากบางตัวก็ยังไม่สมบูรณ์
ความเห็นของ GN⁺
- ชิปเพิ่มประสิทธิภาพเป็นกรณีศึกษาที่น่าสนใจในประวัติศาสตร์ของการออกแบบฮาร์ดแวร์และการพัฒนาเกม แสดงให้เห็นถึงแนวคิดและความพยายามหลากหลายในการรีดศักยภาพจากฮาร์ดแวร์ที่มีอยู่อย่างจำกัด
- หากมองจากมุมของการพัฒนาอีมูเลเตอร์ในปัจจุบัน มันอาจเป็นสิ่งที่น่ารำคาญ แต่ในยุคนั้นมันคือวิธีที่มีประสิทธิภาพในการยกระดับคุณภาพเกมและประหยัดต้นทุนการพัฒนา
- ตัวอย่างคล้ายกันในอุตสาหกรรมมีทั้งชิปเสริมต่าง ๆ ของ Sega Mega Drive/Genesis (SVP, Sega Virtua Processor ฯลฯ) และช่องเสียบเมมโมรีการ์ดของ Neo Geo
- ชิปขยายลักษณะนี้มักปรากฏในช่วงปลายวงจรชีวิตของเครื่องคอนโซล ซึ่งดูเป็นความพยายามในการก้าวข้ามข้อจำกัดของสเปกฮาร์ดแวร์ ขณะเดียวกันก็เป็นช่วงเปลี่ยนผ่านก่อนการเปิดตัวคอนโซลรุ่นใหม่
- น่าประทับใจที่ชุมชนเรโทรเกมมิงยังคงทำโปรเจ็กต์ปรับปรุงประสิทธิภาพของเกมเก่า ซึ่งอาจมองได้ว่าเป็นการตีความผลงานเดิมใหม่ด้วยมุมมองสมัยใหม่ โดยยังรักษาเจตนาของผู้สร้างในอดีตไว้
1 ความคิดเห็น
ความเห็นจาก Hacker News