ครบรอบ 40 ปีของ ChipWits: เปิดซอร์สโค้ด FORTH ต้นฉบับเป็นโอเพนซอร์ส
- เพื่อฉลอง ครบรอบ 40 ปีของ ChipWits ได้มีการเปิดเผยซอร์สโค้ด FORTH ต้นฉบับสำหรับ Mac และ Commodore 64 ในรูปแบบโอเพนซอร์ส โดยมีเป้าหมายเพื่อแบ่งปันความชื่นชมต่อการพัฒนาซอฟต์แวร์ข้ามแพลตฟอร์มบนไมโครคอมพิวเตอร์ 8 บิต
ประวัติของ ChipWits และเหตุผลที่เลือก FORTH
- ChipWits เป็นหนึ่งในเกมชุดแรกที่เปิดตัวบน Macintosh ในปี 1984 และเป็นเกมที่มีธีมเกี่ยวกับหุ่นยนต์ที่สามารถตั้งโปรแกรมได้
- ในเวลานั้น Apple Lisa มีราคาสูงเกินไป จึงพัฒนาเกมด้วยภาษาโปรแกรม MacForthPlus
- FORTH เป็นภาษาที่สามารถใช้งานได้บนไมโครคอมพิวเตอร์ 8 บิตหลากหลายรุ่น ทำให้เหมาะกับการพอร์ตไปยังแพลตฟอร์มอื่น
การพอร์ตไปยังแพลตฟอร์มอื่น
- การพอร์ตไปยัง Commodore 64 ทำด้วย Super Forth 64 และมีการพัฒนาระบบเมนูแบบ pull-down ที่ใช้จอยสติ๊ก เพื่อคงรูปแบบการออกแบบส่วนติดต่อผู้ใช้ไว้
- เวอร์ชัน Apple II ก็เขียนขึ้นด้วย FORTH สายย่อยเช่นกัน
รีวิวและรางวัล
- ChipWits ได้รับทั้งบทวิจารณ์และรางวัลจำนวนมาก รวมถึง MacUser Editor’s Choice 1986 Award และยังได้รับคำชื่นชมจากสื่อต่าง ๆ อีกหลายแห่ง
เล่นเกมต้นฉบับผ่านอีมูเลชัน
- ด้วยโครงการโอเพนซอร์สอย่าง Emularity และ Apple2js ทำให้สามารถเล่น ChipWits ต้นฉบับได้ผ่านเบราว์เซอร์
การกู้คืนซอร์สโค้ด
- การกู้คืนดิสก์ต้นฉบับต้องใช้ความพยายามอย่างมาก แต่ข้อมูลส่วนใหญ่สามารถกู้คืนได้โดยไม่เสียหาย
- มีการใช้ทั้งฮาร์ดแวร์และซอฟต์แวร์หลากหลายชนิดเพื่ออ่านดิสก์ของ Commodore 64 และ Mac
การสำรวจซอร์สโค้ด
- สามารถดูซอร์สโค้ด FORTH ของ ChipWits ได้บน GitHub และโค้ด FORTH นี้มีความกระชับและงดงามอย่างยิ่ง
- ซอร์สโค้ดของเวอร์ชัน Mac มีประมาณ 3,000 บรรทัด ขณะที่พอร์ตที่ทำให้ทันสมัยมีโค้ด C# ไปแล้วถึง 35,000 บรรทัด
การขอความช่วยเหลือสำหรับการรีบูต ChipWits
- แม้ตอนนี้จะมุ่งเน้นที่การปล่อยเวอร์ชัน FORTH ต้นฉบับแบบโอเพนซอร์ส แต่เวอร์ชันสมัยใหม่ก็กำลังอยู่ระหว่างการพัฒนา
- ผู้พัฒนาหวังว่าเวอร์ชันใหม่นี้จะสร้างแรงบันดาลใจให้โปรแกรมเมอร์รุ่นใหม่
- มีการสร้าง issue หลายรายการไว้ใน GitHub repository แล้ว โดยตั้งเป้าให้ ChipWits เวอร์ชัน FORTH กลายเป็นโครงการที่ชุมชนช่วยกันดูแล
ชวนเข้าร่วม
- สามารถเข้าร่วมเซิร์ฟเวอร์ Discord ของ ChipWits เพื่อช่วยเหลือโครงการได้
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
มีการเขียนโพสต์อธิบายเหตุผลที่ใช้ FORTH เขียน ChipWits
โปรเจ็กต์ชื่อ TumbleForth ก็ดูน่าสนใจเช่นกัน
ตอนเด็ก ๆ อยากได้เกมนี้มาก
สนุกกับ Human Resource Machine เกือบทั้งหมด
เคยเล่นบน Commodore 64 อยู่บ่อย ๆ
FORTH ดูเหมือนภาษาแนวเขียนครั้งเดียวแบบ perl
สงสัยว่าเวอร์ชันทันสมัยของ ChipWits เขียนด้วยภาษาอะไร