快科技9月18日消息,1993年12月發布的《DOOM》是第一人稱射擊游戲的開山之作,其源代碼于1997年公開。
Minki在LenOwO上發帖稱,他將WinDOOM安裝在一臺2003年的華碩MyPal A620 PDA上,這臺設備搭載了當時新興的Windows Mobile系統和英特爾XScale ARMv5芯片。
為了保證設備長時間運行,Minki對其進行了改裝,使用了一個基于“DIY 18650鋰電池” 的不間斷電源系統,并將其連接到路由器的USB接口,以提供穩定的5V電源。
隨后,他啟動了游戲,便將其擱置一旁,直到近才發現設備上彈出了一個應用崩潰的提示。

《DOOM》存在一個有趣的漏洞:在回放游戲內部的“demo”文件時,“gametic”值在開始新的演示回放時不會重置,這個值用于跟蹤游戲時間,每秒增加35次。
“gametic”值不重置終會導致數值巨大終溢出,但該值使用的是32位整數,大值為2147483647,不出所料,游戲在Windows Mobile 2003系統上無法處理這種情況,也就是說它會崩潰。
每秒35次的增加速度,大約需要1.95年才能使“gametic”值溢出。有可能Minki使用的 Doom4CE版本,將游戲頻率降低到30Hz,以獲得更好的幀率和降低硬件需求。
在《DOOM》的主機版本中這種做法很常見,如果是這樣,那么“gametic”值溢出大約需要2.26年,這更接近Minki所說的2.5年。
當然除此之外,還有很多其他原因會導致《DOOM》崩潰,而且由于Minki中間幾乎忘了這件事,也沒法確定游戲崩潰的確切時間。

本文鏈接:http://www.www897cc.com/showinfo-24-182433-0.html《DOOM》在華碩MyPal上運行兩年半終于崩潰!可能達到32位整數極限
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com