Ezt valaki le tudná magyarra fordítani? De erős a gyanúm, hogy EP-n nem megcsinálható dolgokról van szó
Hat ize
A c64-ben a VIC-II erdekes joszag (elodje a VIC-I volt a VIC-20 nevu gepben - allitolag a c64 fejlesztoi neve vic-40 volt anno -, az meg nem tudott se sprite-ot, se bitmap grafikat, csak sima textet azt is joval kisebb felbontassal - okos emberek megis csinaltak mar vic-i-el is erdekes grafikakat, turkkozgetve). Peldaul EP-n ami engem kicsit "zavar", hogy hwtext uzemmodban nem lehet minden karakternek sajat szine szabadon. Ez ertheto amugy, egy nick slotban ugye kell olvasni a megjelenitendo karakter kodjat, az karakter-generator infot, es hopp nincs tobb, mivel egy slot-ban a nick 2 byte-ot tud olvasni. C64-en van meg egy dolog: a karakter szine. Ezt azonban a C64 eleg nyakatekerten csinalja: a 64K DRAM mellett a C64-ba van 1K 4 bites (!) SRAM. Na ebbol veszi a szineket. Amugy meg eleg nyakatekert mashol is, a VIC-II 16K ram-ot lat a 64-bol, valtoztathato melyiket, de a 4 bank kozul 2-ben fix helye van a karaktergenerator ROM-nak, ahol azon a cimeken csak azt kepes latni, stb, elegge atlathatatlan elsore, ha az ember nem assa bele magat
Node vissza az elejere: szoval - allitolag - a VIC-II fejlesztesekben fel akartak hasznalni a VIC-I dolgokat, es csak azt hozzaadni ami feltetlenul szukseges. Allitolag emiatt van (?) hogy a bitmap kep szervezese fura: normal HiRes (high-resolution) az 320*200 pixel, amde a cimszervezes a 40*25 karakteres semat koveti tovabbra is (azaz 8*8 egysegekben: 320/8=40, 200/8=25), pl bitmap-nal az elso byte nyilvan a kepernyo bal felso sarkanak 8 pixelet adja egymas mellett, a kovetkezo byte azonban az ez _alatti_ 8 pixelt, es igy tovabb, a 8 lefele utan meg ujra fenn vagyunk az elozo "karakternyi" hely mellett. Es igy tovabb. Viszont egy ilyen karakternyi helyen van olvasas arrol a helyrol is, ami karakter modban a video memoria lenne, ez hatarozza meg az adott 8*8 egysegen belul az eloter es hatter szint. Azaz erzesem szerint ez elegge EP attribute szeru mod talan? Hires bitmap modban az az SRAM nincs hasznalva ami karakteres modban kell a szinekhez, nem keverni! Tehat lathato, hogy bar a teljes kepernyon 16 szin lehet (annyit tud a VIC-II interlace es hasonlo trukkok nelkul), amde egy "karakternyi" helyen csak 2 lehet (background/foreground). Ezen eros limitacio ellenere neha meglepoen szep es szines kepeket rajzolnak hires modban (ekkor azonban ugye tudni kell, hogy a kepet ugy kell megkomponalni, hogy "karakter" hatarra essenek szin hatarok stb - habar ez is igazi muveszet, ha ugy fogjuk fel),
ez pl allitolag hires kep. Otletet adhatna arra, hogy EP-n is jobban meg kene nezni az attribute mode-ot?
Namost az un multicolor mod az ugyanaz mint a hires, am ket egymas melletti bit alkot egy pixelt, igy a felbontas tehat 160*200, illetve egy "karakter egyseg" 4*8 pixeles lesz, ezen belul azonban 1 pixelre 2 bit van, azaz egy karakter egysegen belul 4 kulonbozo szin lehet. Na itt mar bonyolodik a helyzet, ui a 4 lehetseges szin nem szabadon varialhato (minden extra trukk nelkul, lasd lentebb) hiaba lenne "szabad" adott egysegen belul, nincs memoriaforras ahol eltarolhato az info, hogy ott milyen legyen. Ezert - ha jol remlik, lusta vagyok utananezni bocsi -, 2 szin jon onnan ahonnan hires modban is ugye, egy az global hatterszen, egy meg az emlitett SRAM-bol (mivel az 4 bites memoria, ezert kellett - gondolom - egy szint globalissa tenni).
Megjegyzem: az hogy X szin lehet egy "karakter egysegnyi" helyen nem is teljesen igaz, trukkokkel (pl raster irq-bol vic register piszkalas stb) elerheto, hogy minden pixel sor utan ujraprogramozni, es akkor jonnek olyanok hogy 8*1 teruleten lehet pl ket szin, meg 4*1 teruleten (multicolor) 4, aztan jon hozza interlace, minden trukk, akar sprite-ok "elszorasa" hatterben, es azok is hozzatartoznak a kephez (ahol onallo sprite szinek lehetnek az is lehet hires v multicolor), es pl egyutt adjak ki a kepet. Azonban az "alap" hires es multicolor az a default modok amit "hw-bol" tud a vic-ii, kulonben mar trukkok kellenek amihez a cpu aktiv kozremukodese, preciz idozitese stb kell, tehat azt a vic-ii nem csak "magatol" csinalja.
Ezekrol imho jo/gyors osszefoglalot ad
ez az oldal.
A sprite-ok meg kulon fejezet, 8db, 24*21 pixel (miert ez a fura meret? 24 pixel az hiresben eppen 3 byte, 21*3=63 byte egy sprite, es eppen 64 byte-onkent lehet a VIC-II bankba sprite-okat tenni, tehat igy majdnem ki is jon szepen egesz pontosan) lehet hires v multicolor (akkor persze X felbontas a fele), X es Y iranyban is hw-esen nagyitva (2x) vagy nem. Sprite-oknak sajat szinuk van, es amugy a gfx felbontastol fuggetlenul ott vannak, lehetnek felig/teljesen/egyaltalan nem a lathato kep dimenziojan kivul (keret mogott pl, onnan lassan bekusztatni). Ez az alap, de egesz light-osan 21 scanline-onkent ugye raster irq-bol lefedheto maris az egesz screen sprite-okkal (ha nagyitott x iranyban, kulonben nem eleg a 8 sprite ami 1 scanline-on belul kene), es kozben mehet a normal kijelzes is, itt-ott atlatszik a sprite v a grafika pl (valtoztathato a hatter/sprite prioritas, de a sprite-ok kozotti prioritas fix). Hw-esen detaktalhato (irq-t es kepes kivaltani) sprite-ok "utkozese". Itt is rakas trukk van, pl sprite "dinamikus" nagyitasa Y iranyban, stb.
Es akkor meg nem is volt szo egyeb trukkokrol, kepernyo gorgetese, scanline-ok koze szunetek "beeroltetese" valtoztathato hosszal, kepkerek trukkos kikapcsolasa h ott is lehesen grafika. Stb. Igazabol megdobbento, mert rengeteg minden mind trukk, ami akar a VIC-II bug-jainak is lehetne hivni, amit kreativan kihasznalnak
Nekem ezert tetszik, az utolso tranzisztor erejet is preseljuk csak ki a masinabol, amit nem is arra terveztek be pedig
Ha van truecolor HD keped, az nem olyan varazslat azon szepet mutatni ugye ...
Amugy, amit en szivesen latnek igazi EP mellett (nem helyett!) az a C64 es a C64DTV viszonya: legyen egy FPGA-ban implementalt EP (ahogy a DTV C64-nek) ami minnel jobban compatible de extra trukokkel. Ilyen C64DTV-n pl a 2Mbyte RAM, 320*200 felbontas pixelenkent (!) 256 szinnel, beepitett blitter es DMA funkcio, 2mbyte flash, es burst mod bekapcsolhato ahol a beepitett 32 bites memoriat ugy is hasznalja (32 bitre alignalt kodreszlet eleg gyors lesz, ha nincs mas memoriaeleres adott opcode-okon belul).
Remelem nem untatok nagyon. Ha igen, tegyuk at egy masik temaba, ne itt bosszantsa az embereket
Nem tudom, ez segitett-e ... Vagy inkabb artott