為什麼舊遊戲在現代電腦上執行得太快了?

如果你曾經嘗試過讓一款老式電腦遊戲在現代系統上執行,你可能會對這款遊戲的執行速度感到震驚。為什麼老遊戲在現代硬體上失控了?...

為什麼舊遊戲在現代電腦上執行得太快了?

如果你曾經嘗試過讓一款老式電腦遊戲在現代系統上執行,你可能會對這款遊戲的執行速度感到震驚。為什麼老遊戲在現代硬體上失控了?

今天早些時候,我們向您展示瞭如何在現代計算機上執行舊軟體;今天的問答環節是一個很好的補充,它深入探討了為什麼一些舊軟體(特別是遊戲)在現代硬體上執行時似乎永遠無**常工作。

今天的問答環節是由SuperUser提供的,SuperUser是Stack Exchange的一個分支,是一個由社群驅動的問答網站分組。

問題

超級使用者讀者TreyK想知道為什麼舊電腦遊戲在新硬體上執行得如此之快:

I’ve got a few old programs I pulled off an early 90s-era Windows computer and tried to run them on a relatively modern computer. Interestingly enough, they ran at a blazing fast speed – no, not the 60 frames per second kind of fast, rather the oh-my-god-the-character-is-walking-at-the-speed-of-sound kind of fast. I would press an arrow key and the character’s sprite would zip across the screen much faster than normal. Time progression in the game was happening much faster than it should. There are even programs made to slow down your CPU so that these games are actually playable.

I’ve heard that this is related to the game depending on CPU cycles, or something like that. My questi*** are:

  • Why do older games do this, and how did they get away with it?
  • How do newer games not do this and run independently of the CPU frequency?

那是怎麼回事?為什麼舊遊戲中的精靈在螢幕上燃燒得如此之快以至於遊戲無法玩?

答案

超級使用者contributor JourneymanGeek將其分解為:

I believe they assumed the system clock would run at a specific rate, and tied in their internal timers to that clock rate. Most of these games probably ran on DOS, and were real mode (with complete, direct hardware access) and assumed you were running a iirc 4.77 MHz system for PCs and whatever standard processor that model ran for other systems like the Amiga.

They also took clever shortcuts based on those assumpti*** including saving a tiny bit of resources by not writing internal timing loops inside the program. They also took up as much processor power as they could – which was a decent idea in the days of slow, often passively cooled chips!

Initially one way to get around differing processor speed was the good old Turbo button (which slowed your system down). Modern applicati*** are in protected mode and the OS tends to manage resources – they wouldn’t allow a DOS application (which is running in NTVDM on a 32-bit system anyway) to use up all of the processor in many cases. In short, OSes have gotten **arter, as have APIs.

Heavily based off this guide on Oldskool PC where logic and memory failed me – it’s a great read, and probably goes more in depth into the “why”.

Stuff like CPUkiller use up as many resources as possible to “slow” down your system, which is inefficient. You’d be better off using DOSBox to manage the clock speed your application sees.

如果你對早期電腦遊戲中的實際程式碼是如何實現的感到好奇(以及為什麼它們對現代系統的適應能力如此之差,而沒有在某種模擬程式中進行沙盒處理),我們還建議在另一個超級使用者答案中檢視這個冗長但有趣的過程分解。


有什麼要補充的解釋嗎?在評論中發出聲音。想從其他精通技術的Stack Exchange使用者那裡瞭解更多答案嗎?在這裡檢視完整的討論主題。

  • 發表於 2021-04-11 16:04
  • 閱讀 ( 38 )
  • 分類:網際網路

你可能感興趣的文章

7+偉大的遊戲,你可以從一個隨身碟執行

... 你現在應該有一個很好的行動式遊戲集合,所以為什麼不新增一個傳統的角色扮演遊戲(RPG)到混合?怪物角色扮演2是一個強大的故事和獨特的遊戲重點發展。同時,拋光的生產提供了一個懷舊之旅史詩SNES控制檯RPG的...

  • 發佈於 2021-03-15 00:08
  • 閲讀 ( 54 )

如何讓flash遊戲執行得更快:8個有用的技巧

...。但是如果你的顯示卡很弱,它會限制你的效能,這也是為什麼Flash執行緩慢的原因。 ...

  • 發佈於 2021-03-18 19:20
  • 閲讀 ( 44 )

如何在windows中修復低遊戲fps

...您應該執行的一些基本修復。在許多情況下,當你想知道為什麼你的FPS是如此之低,這些調整將作出很大的改善。 ...

  • 發佈於 2021-03-19 18:54
  • 閲讀 ( 50 )

辛登正在把輕槍遊戲帶回現代電視

...執行者,死亡之家,虛擬警察,以及其他經典系統的輕槍遊戲?不幸的是,雖然有很多方法可以回去玩像覆盆子皮這樣的裝置上的復古遊戲,但現在的電視上沒有辦法回去玩光槍遊戲,因為它們需要管式電視才能發揮作用。 ...

  • 發佈於 2021-03-20 20:57
  • 閲讀 ( 50 )

如何在64位pc上執行真正老的軟體:6種方法

...代的軟體。至少,不是天生的。對大多數人來說,這不是什麼大問題。windows3.1是Windows的最後一個16位版本,於1992年上市。 ...

  • 發佈於 2021-03-21 15:52
  • 閲讀 ( 62 )

如何在樹莓皮上玩幾乎所有的電子遊戲

你有樹莓皮。你可能已經接受了用它進行復古遊戲的想法。但是,如果我們告訴你,你不需要停在那裡-你可以玩大量的遊戲選擇,過去和現在,使用樹莓皮? ...

  • 發佈於 2021-03-24 06:46
  • 閲讀 ( 62 )

自動hdr如何在xbox x系列上工作(以及如何禁用)

...LCD。 這項功能使幾乎所有的老遊戲看起來更好,這就是為什麼微軟預設啟用自動HDR。然而,該公司已經在不適合這項技術的遊戲上禁用了這項功能。這些片子很少,但它們確實包含了一些經典之作,比如《塵埃落定:新維加斯...

  • 發佈於 2021-04-01 08:20
  • 閲讀 ( 53 )

為什麼渦輪按鈕在90年代會減慢你的電腦速度?

...當你按下它時,它實際上會減慢你的電腦速度。我們探索為什麼它是必要的,它做了什麼,以及誰把它放在第一位。 快速克隆人的攻擊 第一臺IBM個人電腦於1981年8月釋出,包括8088 CPU,執行頻率為4.77兆赫。像康柏這樣的競爭對...

  • 發佈於 2021-04-02 01:11
  • 閲讀 ( 55 )

Windows10能在我的電腦上執行嗎?

...1GHz的CPU和1GB的RAM在技術上可以執行32位版本的Windows10,但現代的程式甚至現代的網站可能很難表現良好。在Windows7上也是如此。 如果你的電腦能很好地執行Windows7,那麼它很可能能很好地執行Windows10。如果Windows7和你的應用程式...

  • 發佈於 2021-04-02 20:44
  • 閲讀 ( 54 )

2019年如何在mac上玩遊戲

...到復古經典,甚至只有Windows版本;在Mac上有很多樂趣。 為什麼你應該(可能)跳過mac應用商店 Mac應用商店裡到處都是遊戲。其中包括60美元的大預算髮行版,如文明六,短期的獨立體驗,如Oxenfree,以及那種你可以在iPhone上找...

  • 發佈於 2021-04-03 08:20
  • 閲讀 ( 67 )
Atlannovel
Atlannovel

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦