16Aug

Kāpēc vecās spēles palaistu par pārāk ātri par mūsdienu datoriem?

click fraud protection

Ja jūs kādreiz esat mēģinājis iegūt vintage datoru spēli un darbojas modernā sistēmā, jūs, iespējams, esat satriekts par to, kā ātri spēlē.Kāpēc vecajām spēlēm nav modernas aparatūras kontroles?

Šodien mēs parādījām, kā mūsdienīgākos datoros palaist vecāku programmatūru;Šodienas jautājumu un atbilžu sesija ir jauks kompliments, kas izrauj, kāpēc daži vecāki programmatūra( it īpaši spēles), šķiet, nedarbojas pareizi, kad mēģināt tos palaist uz mūsdienu aparatūras.

šodienas jautājums &Atbildes sesija mums priecājas par SuperUser - Stack Exchange, kas ir kopienas un Q & A tīmekļa vietņu grupa.

Jautājums

SuperUser lasītājs TreyK vēlas uzzināt, kāpēc vecās datorspēles strauji progresē jaunā aparatūrā:

Man ir dažas vecās programmas, ko es novilkašu agrīnā 90. gadu Windows datorā un mēģināju palaist tos relatīvi modernā datorā..Interesanti, ka viņi skrēja strauji ātrāk - nē, ne 60 kadri sekundē, ne ātrāk, nekā drīzāk dvēseles raksturs-ejot pa ātrumu no skaņas veidaātri. Es gribētu nospiest bulttaustiņu, un rakstzīmju sprite pārāk daudz ekrānā parādīsies ātrāk nekā parasti. Laika gaita spēlē notiek daudz ātrāk, nekā vajadzētu. Ir pat programmas, kas palēnina jūsu CPU, lai šīs spēles būtu reāli atskaņojamas.

instagram viewer

Esmu dzirdējis, ka tas ir saistīts ar spēli atkarībā no CPU cikliem vai tamlīdzīgi. Mani jautājumi ir šādi:

  • Kāpēc vecāki spēlētāji to dara un kā viņi ar to nokļūst?
  • Kā jaunākas spēles nevis to dara un darbojas neatkarīgi no CPU frekvences?

Tātad, kāds ir stāsts? Kāpēc precīzi spēlē veco spēļu spriest pa visu ekrānu tik ātri, ka spēle kļūst neiespējama?

Atbilde

SuperUser atbalstītājs JourneymanGeek to pārtrauc:

Es uzskatu, ka viņi pieņēma, ka sistēmas pulkstenis darbosies ar noteiktu ātrumu un saistīts ar iekšējiem taimeriem ar šo pulksteņa ātrumu. Iespējams, ka lielākā daļa no šīm spēlēm tika izmantotas DOS un bija reāls režīms( ar pilnīgu tiešu aparatūras piekļuvi), un tika pieņemts, ka jūs izmantojāt iirc 4,77 MHz sistēmu datoriem un jebkuram standarta procesoram, kuru modelis darbojas citās sistēmās, piemēram, Amiga.

Viņi arī ņēma gudri saīsnes, pamatojoties uz šiem pieņēmumiem, tostarp ietaupot nedaudz resursu, neuzrakstot iekšējās laika cilpas programmā.Viņi arī uzņēma tik daudz procesoru jaudas, kā viņi varēja - tas bija pienācīgas idejas lēnu, bieži pasīvi atdzesētu žetonu laikā!

Sākotnēji viens no veidiem, kā apiet dažādu procesora ātrumu, bija laba vecā Turbo poga( kas palēnināja jūsu sistēmas darbību).Mūsdienu lietojumprogrammas ir aizsargātā režīmā, un OS mēdz pārvaldīt resursus - tie nebūtu ļauj DOS lietojumprogrammu( kas tomēr darbojas NTVDM 32 bitu sistēmā), lai daudzos gadījumos izmantotu visu procesoru.Īsāk sakot, operētājsistēmas ir kļuvušas gudrākas, tāpat kā API.

Lielā mērā balstīts uz šo Oldsool datora rokasgrāmatu, kurā loģika un atmiņa man neizdevās - tas ir lielisks lasījums, un, iespējams, padziļināti padziļinās "kāpēc".

Stuff, piemēram, CPUkiller, izmanto tik daudz resursu, cik iespējams, lai jūsu sistēma tiktu "lēna", kas ir neefektīva. Jums būs labāk izmantot DOSBox, lai pārvaldītu pulksteņa ātrumu, ko lietojumprogramma redz.

Ja jūs interesē, kā faktiskais kods tika ieviests agrākajās datorspēlēs( un kāpēc viņi tik nepietiekami pielāgo mūsdienīgām sistēmām, neizmantojot kaut kādu emulācijas programmu), mēs arī iesakām pārbaudīt šo ilgstošo, bet interesantu sadalījumuprocesā citā SuperUser atbildē.

Vai kaut kas jāpievieno paskaidrojumam? Skatieties komentāros. Vēlaties lasīt citas atbildes no citiem tehnoloģiju savvy Stack Exchange lietotājiem?Šeit skatiet pilnu diskusiju pavedienu.