Welcome, Guest. Please login or register.


Author Topic: Mire gondolhattak az EP tervezői? (Read 39221 times)

Offline endi

  • EP addict
  • *
  • Posts: 7225
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 75.0.3770.142 Chrome 75.0.3770.142
    • View Profile
    • Honlapom
Re: Mire gondolhattak az EP tervezői?
« Reply #330 on: 2019.August.19. 09:56:23 »
újabb furcsa kérdésem következik! :)
az EP ügyebár az egész képernyőre tud rajzolni az oldalsó és felső margók eltűntetésével.
hw oldalról ez milyen különbséget jelent a specy, c64 lehetőségeihez képest?
mert ha jól gondolom, ehhez nem kellett gyorsabb video proci, hiszen ahol van border, ott a proci nem csinál semmit. na jó, emiatt talán kevésbé melegszik...
na persze tudom, nagyobb kép több infó, több memória is.
Vigyázat! Szektás vagyok! :)

Offline ergoGnomik

  • EP lover
  • *
  • Posts: 798
  • Country: hu
  • Stray cat from Commodore alley
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Opera 12.18 Opera 12.18
    • View Profile
Re: Mire gondolhattak az EP tervezői?
« Reply #331 on: 2019.August.20. 08:04:52 »
újabb furcsa kérdésem következik! :)
az EP ügyebár az egész képernyőre tud rajzolni az oldalsó és felső margók eltűntetésével.
hw oldalról ez milyen különbséget jelent a specy, c64 lehetőségeihez képest?
mert ha jól gondolom, ehhez nem kellett gyorsabb video proci, hiszen ahol van border, ott a proci nem csinál semmit. na jó, emiatt talán kevésbé melegszik...
na persze tudom, nagyobb kép több infó, több memória is.
Nem én vagyok a legavatottabb szakértő, de a Nickről és a VIC-II-ről talán tudok valamit mondani. AZ ULA-ról majdnem semmit.

Az oldalsó margók eltüntetése szerintem nem teljesen igaz az EP esetében. Valamennyi keretet még talán akkor is rajzol, amikor maximálisra állítod a sor szélességét (max. vízszintes felbontás EP=736 <=> CPC=768). De ennek muszáj így történnie, mert a Nicknek valamikor be kell olvasnia az aktuális LPB-t, illetve frissíteni kell a Videó RAM-ot (azt nem tudom, hogy melyik esemény esik a bal, ill. jobb keretre). Függőlegesen nyilván a teljes megjeleníthető teret le lehet fedni.

C64-en van az állandó megjelenítő terület, ami többé-kevésbé rögzített méretű és pozíciójú. Viszont ha trükkökkel átverik a VIC-et, akkor el lehet érni, hogy az oldalsó és alsó-felső kereten megjelenjenek sprite-ok. Ez úgy érik el, hogy átkapcsolják a megjelenítést csökkentett és normál szélességű vagy magasságú üzemmód között a kritikus pillanatban, így a csip azt hiszi, hogy nem a keret rajzolásánál tart.

Hardver oldalon az a különbség, hogy az EP-ben az effektív képmegjelenítő részek előtt áll egy logikai vezérlés, ami lehetővé teszi a kép soronkénti felparaméterezését, viszont megakadályozza a soron belüli változtatást. C64-en nincs ilyen kényelmes vezérlő réteg, viszont van valamennyi lehetőség a soron belül módosítások végzésére, és például az oldalsó keret lebontás, soron belüli raszterrúd vágás, vagy a sprite multiplexelés ezt használja ki.

Speccyn – az alapján amit Zozo a múlkor írt – talán a hardver (ULA) valahogyan átveri a processzort, és arra kényszeríti, hogy a megjelenítő  területen (256*192 képpont) olvassa fel a videó IC-nek a képadatokat. Így a megjelenítés formátuma teljesen kötött, abba a processzor menet közben nem tud beavatkozni. Azután vannak még a továbbfejlesztett modellek, amiknél ez már nem biztos hogy igaz, de azokról nem tudok nyilatkozni.

Tehát az EP-ben erősebb hardveres támogatása van a megjelenítés programozásának, viszont némi rugalmasságot veszít a rendszer. C64-en teljes a rugalmasság, de ezért az az ár, hogy mindent a processzorral kell valós időben programozni. Spectrumon teljes a merev megkötöttség, a processzort még használni sem lehet megjelenítés közben.

Zozo és IstvanV magyarázata alapján a Nick soha sem pihen, mindig olvassa a videó memóriát, még akkor is, amikor csak keretet vagy függőleges szinkront jelenít meg. A VIC-II a függőleges kereten "pihen", a vízszintesen a bekapcsolt sprite-ok számától függően többet vagy kevesebbet, de dolgozik. Az ULA – gondolom én – a kereten malmozik, a megjelenítő területen meg dolgozik.

A videó processzor gyorsasága önmagában elég megfoghatatlan fogalom, mivel nem világos, hogy mi lenne a sebesség mérésének az alapja. Ha valami támpontot adsz, hogy milyen jellemzőt szeretnél mérni, akkor lehet valamiféle összehasonlítást tenni.

Online Zozosoft

  • EP addict
  • *
  • Posts: 13467
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 68.0 Firefox 68.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Mire gondolhattak az EP tervezői?
« Reply #332 on: 2019.August.20. 11:49:50 »
Valamennyi keretet még talán akkor is rajzol, amikor maximálisra állítod a sor szélességét
Ez igaz, de gyakorlatban nézve a maximális, 46 karakteres méret már bármely kijelzőről kilóg. Vagyis gyakorlatilag simán elérhető a keretmentes mód.
Quote
Speccyn – az alapján amit Zozo a múlkor írt – talán a hardver (ULA) valahogyan átveri a processzort, és arra kényszeríti, hogy a megjelenítő  területen (256*192 képpont) olvassa fel a videó IC-nek a képadatokat.
Ez a ZX81-re vonatkozott.

Quote
Így a megjelenítés formátuma teljesen kötött, abba a processzor menet közben nem tud beavatkozni.
Viszont ez igaz a Spectrumra is.

Quote
Azután vannak még a továbbfejlesztett modellek, amiknél ez már nem biztos hogy igaz
Amit ismerek a felbontás/kép méret az változatlan, a színek számával, attribútumok méretével variálnak csak.

Quote
Spectrumon teljes a merev megkötöttség, a processzort még használni sem lehet megjelenítés közben.
ZX81-en :-)