Prince of Persia Source Code

想要一窺經典動作遊戲《波斯王子》(Prince of Persia,1989)的原始碼嗎?日前原作者 Jordan Mechner 成功找到一度失蹤的原始碼,並且上傳到 GutHub 。由於最早的《波斯王子》是運作在 Apple II 電腦上(所使用的處理器是 MOS 6502),所以該原始碼是用 6502 組合語言所寫成。

 

 

原作者 Jordan Mechner 在《波斯王子》完成後,便將原始碼儲存到一批 3.5 磁碟片裡,然後裝箱收起來。十三年後,當續作《波斯王子:時之砂》(Prince of Persia: The Sands of Time,2003)的程式設計師 Dominic Couture 和 Claude Langlais 表示願意將原版的《波斯王子》移植到 PS2 平台上,作為《時之砂》的隱藏內容,這時 Jordan Mechner 左找右找才發現《波斯王子》的原始碼竟然不見了。後來他們找到曾經將《波斯王子》移植到 Mac 平台的程式設計師 Scott Shumway,他手上也沒有當年 Apple II 版本的原始碼,但是有 Mac 版本的原始碼,所以製作小組就靠著 Mac 版本的原始碼成功將《波斯王子》移植到 PS2 平台上。

 

Jordan Mechner 決定再次深入搜尋一遍,找到一個裝滿磁碟片的鞋盒,裡頭有幾款 Jordan Mechner 更早期作品的原始碼,例如《決戰富士山》(Karateka,1984),但就是沒有《波斯王子》的蹤影,他也就放棄尋找了,那時是八年前。

 

一直到兩週前,Jordan Mechner 的父親寄了一箱舊東西給他,裡頭竟然有《波斯王子》的原始碼磁片,接著他請一位專業的數位資料保存員(digital archivist)將原始碼小心翼翼的從 3.5 磁碟片裡複製出來(大家應該都很清楚 3.5 磁碟片有多麼不可靠吧?更何況是放了二十年的磁碟片……),最後大功告成,皆大歡喜。

 

以上是 DR 一些簡單的說明,完整內容請參閱 Jordan Mechner 的個人網站:

分類: