วันอังคารที่ 17 มิถุนายน พ.ศ. 2557

จับ Raspberry Pi มาเป็น PlayStation

        หลังจากที่นั่งดู Youtube เพลินๆ หันไปเจอที่โชว์ Emulator ของเครื่อง Playstation เห็นการ Render ภาพถือว่าลื่นไหลดีมาก ก็เลยอยากจะลองทำเล่นเองที่บ้านเองบ้าง  เนื่องจากสถาปัตยกรรมของ Raspberry Pi นั้นเป็น ARM และ PlayStation เป็น MIPS สองสถาปัตยกรรมนี้มีความแตกต่างกัน จึงต้องมีการทำเป็น Emulator ของ PS1 บน Rpi ซึ่งแน่นอนว่าความลื่นไหลสู้ PS1 ตัวจริงไม่ได้แน่นอน  แต่ถือว่าประสิทธิภาพการทำงานของ Emulator ตัวที่นำมาเสนอในวันนี้ถือว่าดีที่สุดแล้วซึ่ง Emulator
ตัวนั้นมีชื่อว่า PCSX_ReARMed และก่อนที่จะทำการติดตั้งเจ้า PCSX เรามาเตรียมอุปกรณ์ต่างๆ ให้ครบก่อนดังนี้ครับ

        1. ชุดเซ็ตของ Raspberry Pi 
     

        2. USB Joy Stick รุ่นไดก็ได้


        จากนั้นมาเริ่มทำการลงโปรแกรมกันเลย การลงโปรแกรมของ Raspbian ถือว่าทุกคนลงเป็นแล้วจะไม่ขอกล่าวถึงในบทความนี้นะครับ (สามารถกลับไปดูได้ในบทความของเดือน มกรา 2013)
        เมื่อทำการติดตั้ง Raspbian สามารถเชื่อมต่อกับ Network ได้แล้วเราจะทำการ clone project ของ PCSX_ReARMed ลงมาไว้ที่ home folder (~ default folder เมื่อเข้าสู่ Terminal) โดยใช้คำสั่ง 

        sudo git clone https://github.com/notaz/pcsx_rearmed

        ถ้าหากว่า clone project ได้สำเร็จจะเห็นข้อความดังรูปภาพที่แสดงด้านล่าง


        จากนั้นเข้าไปใน Folder ของ pcsx_rearmed โดยใช้คำสั่ง

        cd pcsx_rearmed

        ดังแสดงในรูปด้านล่าง


        พอถึงขั้นตอนนี้แล้ว เราจำเป็นจะต้องทำการกำหนดค่าเริ่มต้นและปรับปรุงโมดูลย่อยของ pcsx ให้อยู่ในสภาวะล่าสุดก่อน โดยใช้คำสั่ง

        sudo git submodule init && sudo git submodule update

        ถ้าหากทำการ Update ได้สมบูรณ์จะแสดงข้อความตามรูปด้านล่าง



       หลังจากนั้นเราจะทำการติดตั้ง Library ของ png และ sdl  ซึ่ง pcsx จำเป็นต้องใช้ในการ compile โดยใช้คำสั่งดังนี้

       sudo apt-get -y install libpng-dev libsdl1.2-dev

       หากทำการติดตั้ง Library ของทั้งสองอันเสร็จเรียบร้อยแล้วจะปรากฏข้อความตามรูปด้านล่าง


      จากนั้นทำการ config ค่า Environment ของโปรแกรมก่อนทำการ make โดยใช้คำสั่ง

       sudo ./configure 

       เมื่อ configure ค่า Environment เสร็จเรียบร้อยแล้วจะแสดงข้อความตามภาพด้านล่าง


        หลังจากนั้นก็ใช้คำสั่ง sudo make เพื่อทำการ compile โปรแกรมตามรูปด้านล่าง


        หากขั้นตอนทุกอย่างเสร็จเรียบร้อยก็จะได้ไฟล์ชื่อ pcsx ตามรูปด้านล่างครับ


        ก่อนที่จะทำการรันโปรแกรมจริงจำเป็นต้องมี bios ของ PS1 ให้กับ emu ของเราก่อน โดย download จาก http://www.4shared.com/zip/w4HkES5-ba/pcsx_rearmed_bios.html  แยกไฟล์ลงใน folder bios ของ flash drive ในที่นี้จะใช้วิธี copy ผ่าน flash drive ไปยัง raspberry pi โดยใช้คำสั่ง

        sudo cp -R /media/2A41-309B/bios/ ~/pcsx_rearmed/bios/

        (2A41-309B เป็นชื่อของ Flash Drive แต่ละเครื่องจะแตกต่างกัน หรือจะใช้วิธีการ copy ผ่านทางหน้าจอ File Manager ของ raspberry pi ก็ได้นะครับ)

        ท้ายสุดเรามาทำการลง Driver ของ Joy Stick กันก่อน เพื่อจะได้สัมผัสกับอารมณ์ของการเล่นเกม PS1 โดยการใช้คำสั่ง
 
        sudo apt-get install -y joystick


        เมื่อเสร็จขั้นตอนทุกอย่างแล้วเรามาทดสอบรันโปรแกรม pcsx ซึ่งในที่นี้ผมจะใช้เกม final fantasy 7 (copy ไฟล์แบบเดียวกับ bios แต่วางไว้ที่ home folder) มาลองให้ชมกัน ขั้นแรกเข้าโปรแกรมโดยการใช้คำสั่ง

      ./pcsx

       หากเข้าไปในโปรแกรมแล้วสามารถเปลี่ยนแปลงค่า config ได้จากตัว pcsx เองโดยจะสามารถเปลี่ยนอุปกรณ์ควบคุมให้เป็น JoyStick แทนได้ ตัวอย่างเกม final fantasy เมื่อทำการรันโปรแกรม pcsx
จะเป็นแสดงดัง video ด้านล่าง


      ลองทำเล่นดูนะครับ ภาพเต็มจอถือว่าพอรับได้ ในระดับของ PS1 หากว่าใครมี Emulator ของ PS2 ที่ใช้กับ RPI ที่ประสิทธิภาพใกล้เคียงกับ Emulator ตัวนี้ก็อย่าลืมแชร์กันบ้างนะครับ ถ้ามีปัญหาอะไรก็สามารถสอบถามผมได้ทาง olekhanchai@gmail.com หรือสนใจอุปกรณ์ต่างๆ สามารถเข้าไปเยี่ยมชมได้ที่ http://www.hobbyembshop.biz หรือทาง facebook ที่ https://www.faceboo.com/hobbyembedded
      สุดท้ายนี้ก็ขอให้สนุกกับการเล่นเกม PS1 นะครับ ไว้เจอกันโอกาสหน้าครับ

1 ความคิดเห็น: