วันศุกร์ที่ 29 พฤศจิกายน พ.ศ. 2556

เล่นเกมเก่าสมัยดอสรุ่งเรืองบนเครื่องแมคฯด้วย Boxer

boxer เป็น DOS Emulator เอาไว้สำหรับเล่นเกมของระบบปฏิบัติการดอส (MS-DOS) สำหรับผู้ใช้เครื่อง Mac แกนหลักเป็น DOSBox v.0.74 แต่พัฒนาให้ง่ายต่อการใช้งาน โดยซ๋อนความยุ่งยากต่างๆ สำหรับคนที่ไม่รุ้ DOS Command-line เอาไว้ เจ๋ง!!!


ผมเติมโตและคลุกคลีกับเกมในยุคที่ระบบปฏิบัติการ DOS มาถึงรุ่น 6.XX แล้ว ซึ่งเรียกได้ว่าเป็นยุครุ่งเรืองของ “เกมแนวสร้างสรรค์” ซึ่งเป็นรากฐานสำคัญของเกมยุคปัจุบัน เช่น เกมตระกูล fps อย่าง DOOM หรือ เกมตระกูล Sim ทั้งหลาย ฯลฯ
สมัยนั้นด้วยความเป็นเด็ก ตจว. การหาเกมเล่นถือว่ายากลำบากมาก ต้องอาศัยสั่งซื้อเอาจากร้านที่ลงประกาศจากนิตยสารเกม ถ้าเทียบกับตอนนี้ถือว่าราคาแพงอยู่ ซึ่งแน่นอนเป็นของก็อบ 100% บางเกมต้องใช้ disk หลายแผ่นในการ install เจอแผ่นเสียระหว่าง install ก็เซงกันไป บางเกมต้องการการจัดการ memory แบบพิเศษหน่อย ก็ต้องทำการแก้ config.sys หรือ ทำ autoexec.bat กันใหม่
แต่ด้วยความลำบากเหล่านี้ก็เลยสร้างแรงบันดาลใจให้กับผมหลายๆ อย่าง ไม่ว่าจะเป็น การพิมพ์สัมผัสภาษาอังกฤษ ได้เรียนรู้ DOS Command-line เริ่มสนใจการเขียนโปรแกรม (เพื่อจะโกงเกม) ซึ่งตอนนั้นไม่รู้หรอกว่าภาษา Pascal คืออะไร รู้แค่ เปิดโปรแกรมของพี่ชาย แล้วพิมพ์ code ตามในหนังสือ
เวลาผ่านไปเทคโนโลยีก้าวหน้าไปไกลจนเกมพวกนี้ไม่สามารถที่จะเล่นได้แบบปกติบนระบบปฏิบัติการยุคปัจจุบันเสียแล้ว ในประเทศไทยเท่าที่ลองค้นหาดูยังไม่เห็นชุมชนออนไลท์ที่ให้ความสนใจในเรื่องเกมเก่าสมัย DOS พวกนี้เลย จะเห็นก็แต่เกมเก่าที่เป็นพวกเครื่องเกมต่างๆ เช่น Nintendo ฯลฯ ต่างกับต่างประเทศที่เกมพวกนี้ยังคงมีคนเล่นอยู่อย่างมากและมีชุมชนออนไลท์ที่เข็มแข็งอยู่มากมาย
เมื่อโตขึ้นมาเกมพวกนี้ยังคงติดตามผมมาตลอด การหาเกมเก่าๆ มาสะสมถือเป็นงานอดิเรกของผมไปแล้ว ไม่ว่าจะหาซื้อผ่านเว็บไซต์ GOG.com หรือหาตามเว็บไซท์เกี่ยวกับ Abandonware ต่างๆ
วันนี้ผมจะนำคืนวันอันหวานชื่นให้กลับมาอีกครั้งบนเครื่อง Mac กันครับ อิอิ

เริ่มต้นด้วยการดาวน์โหลดและติดตั้ง Boxer กันครับ

ดาวน์โหลดไฟล์ติดตั้งเวอร์ชั่นล่าสุดได้ที่เว็บไซต์หลัก www.boxerapp.com ทำการแตก zip แล้วลาก boxer.app ไปไว้ที่ Applications folder เป็นอันเสร็จขั้นตอนการติดตั้ง ส่วนการเรียกใช้งานก็เหมือนกับ application ทั่วไปแค่คลิก ^^

มาติดตั้งและเล่นเกมดอสกัน

สำหรับ Boxer เวอร์ชั่นล่าสุดของผมจะเป็นเวอร์ชั่น 1.3.2 จะแถมเกมมาให้แล้วด้วยนั้นคือ Commander Keen 4, Epic Pinball DEMO, Ultima Underworld DEMO และ X-COM: UFO Defense DEMO มาให้แล้วแต่ใครจะยอมเล่นเกม DEMO กันหละ มันต้องลงเกมเองสิ ^^

ติดตั้งเกมดอส

ในตัวอย่างผมจะลองติดตั้งเกม Prince of Persia ยอดเกมในดวงใจของผมจะครับ สิ่งที่ต้องเตรียมก็คือ
  1. folder เกมที่จะลง ในที่นี้ ผมตั้งชื่อ folder ว่า “prince” (ถ้า source file มาเป็น zip ก็แตกไฟล์ออกมาก่อนนะครับ)
  2. เปิด Boxer แล้วคลิกที่ “Import a new game”
  3. ลาก folder เกม ที่เตรียมเอาไว้ไปที่ “Drop your game here” ในกรณีที่เป็นไฟล์ .ISO สามารถลากมาวางไว้ได้เช่นกัน
  4. ในกรณีที่ folder ที่ลากเป็นเกมที่ติดตั้งเสร็จเรียบร้อยมาแล้ว ก็เป็นอันเสร็จ กดปุ่ม “Launch game” ได้เลย

    1. อันนี้อาจเป็น step ย่อยลงมาอีกนิด บางเกมอาจไม่เจอ ในกรณีที่ boxer ไม่แน่ใจว่าไฟล์ไหนเป็นไฟล์สำหรับ run game กันแน่ ทาง boxer จะขึ้นหน้าจอ C:\> ขึ้นมาถามเราก่อนว่าจะเลือกไฟล์ไหน ใครคุ้นชินกับการใช้ DOS Command-line ก็สามารถพิมพ์ได้เลย แต่ถ้าไม่รู้คำสั่งก็สามารถคลิกเลือกไฟล์สำหรับ run game ได้ที่ด้านล่าง
  5. ในกรณีที่คลิก “Launch every time” ตอนเลือกไฟล์ผิด เราสามารถเข้าไปแก้ตัวเลือกได้โดยการกดปุ่มรูปแว่นขยายตรงมุมซ้ายล่าง แล้วเลือก tab Game
  6. ส่วนในกรณี เป็น .ISO หรือ เป็น folder ที่เก็บไฟล์สำหรับติดตั้ง จะมีหน้าต่างโผล่ขึ้นมาให้เลือกไฟล์สำหรับติดตั้งเกมก่อน จากประสพการณ์ส่วนใหญ่ไฟล์เหล่านี้จะชื่อ INSTALL.EXE, INSTALL.BAT, SETUP.EXE ทั้งนี้แนะนำให้อ่าน Manual หรือ README ก่อนการติดตั้ง หรือถ้าในกรณีที่ไม่มีอะไรเลย ก็ลองมั่วเอาก็ได้ครับ ถ้าผิดก็แค่ ลบออกแล้วลงใหม่ ง่ายจะตายไป ^^’
แนะนำนิดนึง ควรหา Mouse สำหรับ PC ซักตัวมาใช้เล่นเกมพวกนี้นะครับ จากประสพการณ์ตรง Trackpad และ Mouse ของ Mac มันเล่นได้ไม่ค่อยคล่องซักเท่าไหร่
เท่านี้เราก็ได้หวนอดีตในวัยเยาว์ได้แล้วครับ

วันอังคารที่ 12 พฤศจิกายน พ.ศ. 2556

Homebrew, edit formula ใช้เองแบบลูกทุ่ง

โพสท์นี้เกิดขึ้นด้วยความบังเอิญจริงๆ ครับ เนื่องจากเมื่อวานลองเล่น Homebrew ไปเรื่อย จนมาลอง install lynx (text browser) นี้แหละครับ มันดันโผล่ Error ตามรูปออกมา

เมื่อลองสืบความไปตาม url ที่แจ้งมากลับพบว่า http://lynx.isc.org/release/lynx2.8.7.tar.bz2 มันเข้าไม่ได้ ไม่รู้ว่าตั้งแต่เมื่อไหร่หรือจะอีกนานแค่ไหน ตามภาพ

ด้วยว่าตัว Homebrew จะอ้างอิง package จากแหล่งที่มาที่น่าเชื่อถือ (ซึ่งตอนนี้ดูไม่นาเชื่อถือซะงั้น) ผมเลยลอง google หา mirror เจ้า lynx ดูก็เจอ ที่ http://www.mirrorservice.org/sites/lynx.isc.org/lynx2.8.7/ ซึ่งยังมีไฟล์ให้ดาวน์โหลดอยู่
ทีนี้ก็มาถึงขั้นตอนการแก้ไข Formula แบบ ลูกทุ่งๆ กันละครับ
เริ่มแรกก็สั่งแก้ไข formula กันก่อน
?
1
brew edit lynx
ตัว brew จะเปิด editor พื้นฐานขึ้นมา (อยู่ที่เราเซตเอาไว้) ซึ่งน่าจะเป็น Vim จัดการแก้ไขค่า url ให้เป็น
จากนั้น save ไฟล์แล้วมาลอง brew install lynx ดูอีกครั้ง ผลคือเจ้า brew มันฟ้องออกมาว่า sha1 ไม่ถูกต้อง แต่ด้วยความน่ารักของมันมันก็บอกให้เสร็จเรียบร้อยว่าไอ้ที่มันถูกต้องกับ url อันนี้หนะมันต้องเป็นอะไร ตามภาพ หลังจากนั้นก็เข้าไป แก้ไข ค่า sha1 อีกครั้งตามที่ brew บอกมา จัดการ save แล้วออกมา brew install lynx อีกรอบ ผลคือ สามารถลง package lynx ได้สำเร็จเรียบร้อยดี เย้ๆๆ ตามภาพ (มัดรวมหลายขั้นตอนในภาพเดียว)
ปล. ก่อน edit formula ลอง brew update ก่อนนะครับเผื่อว่าจะได้ไม่ต้องเสียเวลา

สวัสดีครับ

วันอาทิตย์ที่ 10 พฤศจิกายน พ.ศ. 2556

Homebrew, Package Manager เล็ก ง่าย เบา สำหรับ OS X


Homebrew คือ?

Package Manager สำหรับ เหล่าชนผู้ใช้ Mac OS X นั้นเอง

แล้วอะไรคือ Package Manager ละ?

มันก็คือ เครื่องมือที่ช่วยลดความยากลำบากในกระบวนการติดตั้งซอฟแวร์ให้กับเรา ควบรวมตั้งแต่กระบวนการค้นหา Package ที่ต้องการ การดาวน์โหลด (Download) การติดตั้ง (installation) การตั้งค้าเริ่มต้น (Config) การอัพเกรท (Upgrade) ไปจนถึงกระบวนการถอดถอนออกจากระบบ (Remove) กันเลยทีเดียว

ย้อนความกันนิดนึง

ช่วงสัปดาห์ที่ผ่านมาผมให้ความสนใจกับ CLI (Command-Line Interface) บน OS X เป็นพิเศษ ซึ่งเป็นความสนใจส่วนตัว จนเลยเถิดไปลองเล่น Linux เพื่อเปรียบเทียบ
สิ่งที่ประทับใจในฝั่ง Linux นอกจากคำสั่ง หรือ Library ต่างๆ ที่ให้มาแต่ต้นอย่างจุใจแล้ว อีกความประทับใจหนึ่งก็คือ ตัว Package Manager ของแต่ละ Distro ไม่ว่าจะเป็น apt-get ของ Ubuntu , rpm ของ RedHat หรือ yum ของ CentOS ล้วนช่วยให้สิ่งที่ยากลำบากสำหรับมือใหม่ Linux แบบผมทำงานได้ง่ายและเร็วขึ้น
หันมาทางฝั่ง Mac OS X แม้ว่า Command-line tool ที่มีมาตั้งแต่ต้นจะมากมายจนใช้ไม่หมดแล้วก็ตาม แต่… บางคำสั่งที่เราต้องการกลับไม่มี เช่น tree เป็นคำสั่งที่ผมชอบมาก บน mac ต้อง ls -R เอา ซึ่งดูยากลำบากเหลือเกิน
หลังจากค้นหาอยู่พักใหญ่ก็พบว่าฝั่ง Mac มี Package Manager ที่นิยมอยู่สองเจ้า นั้นคือ MacPorts และ  Homebrew และหลังจากลองหาข้อมูลเปรียบเทียบกันแล้วก็พบว่าแต่ละค่ายก็มี Fanboy ที่เป็น Blogger ออกมาเขียน Blog เปรียบเทียบกันอยู่พอสมควร แต่ดูเหมือนพวก Homebrew จะเยอะกว่าอยู่มากพอสมควรเช่นกัน อ่านแล้วเคลิ้ม เลยตกลงปลงใจจะเป็นชนหมู่มากกับเขาซะเลย

เตรียมตัวติดตั้ง Homebrew

ก่อนการติดตั้ง Homebrew เครื่องของเราจะต้องต่อ internet อยู่และลง Command Line Tools for Xcode หรือ Xcode ก่อนนะครับ (ลงทะเบียนและดาวน์โหลดฟรี ไม่ต้องกลัวเสียตังค์ครับ) ซึ่งการติดตั้งไม่ขอพูดถึง หรือ เดี๋ยวตอน install Homebrew มันจะเด้งมาให้เราลงเองอัตโนมัติอีกทีครับ ^^”

ติดตั้ง Homebrew และใช้งานกัน

หลังจากเตรียมทุกอย่างพร้อมแล้วก็ถึงเวลาติดตั้งเจ้า Homebrew กันซักที เริ่มต้นมาก็เปิด Terminal แล้ว copy คำสั่งด้านล่างไปวางแล้วลั้นปุ่ม Enter เป็นอันอันเสร็จขึ้นตอนแรกแล้วครับ
หลังจากใส่ password ของเรา (password เดียวกับตอน login หรือ ตอนจะ install app ลงเครื่องนั้นแหละครับ) แล้วบางท่านอาจจะเห็นหน้าต่างนี้เด้งขึ้นมา ก็ไม่ต้องขัดขืนกด “Install” ไปเบาๆ
ขั้นตอนต่อไปคือการ รอ… รอจนกระทั้ง install Command-line-tools เสร็จ (อันนี้ใช้เวลาน้อยหน่อย) แต่ถ้าใครกดเลือก Get Xcode ก็จะนานหน่อยไปหาอย่างอื่นทำฆ่าเวลาก่อนได้เลยครับ ^^’ เมื่อเสร็จสิ้นกระบวนการ install Command-line-tools หรือ Xcode ก็ตามแต่แล้ว กลับมาที่หน้าจอ Terminal ของเรา เคาะ Enter เบาๆ อีกหนึ่งครั้งเพื่อทำการ download และ install Homebrew ครับ ที่เหลือก็รอให้มันทำงานจนเสร็จครับ เสร็จแล้วจะหน้าตาประมาณนี้นะครับ

ไปลองกันเลย

หลังจากผ่านกระบวนการติดตั้งมาแล้วก็มาลองเล่นกันดูครับ ก่อนจะ install tools ที่เราต้องการ ก็ลองพิมพ์
brew help
brew doctor
ซักหน่อยนะครับ อย่างในกรณีเครื่องของผมหลังจาก brew doctor แล้วตัว Homebrew ก็แจ้งกลับมาว่ามี broken symlinks อยู่ให้เอาออกด้วยคำสั่ง
brew prune
ลองค้นหา package ที่ต้องการ และทำการ install
?
1
2
brew search tree
brew install tree
เท่านี้ก็ได้ใช้ command tree สมใจแล้วครับ