FB Scroll 2016 - IstvánV |
|
Maga a demo ránézésre nem egy nagy szám: egy szöveg scroll fut egy kép előtt. Az érdekesség, hogy a scroll a fixbias regiszter gyors módosításával van megoldva (mármint a szöveg megjelenítése a képernyőn), és időzítése valamelyik Nick port olvasásával, ami hivatalosan csak írható… Bár a Nick portok nincsenek olvasásra kiépítve, azonban maga a port hozzáférés folyamat ugyanúgy lezajlik mint írás esetén. Azaz ugyanúgy várakoztatja a Z80-at a Nick. Mivel a Nick nem ad ki adatot a videóbuszra, ezért a Nick által utoljára olvasott adatbájt zajként ott marad (mivel a videóbuszon sincs felhúzó ellenállás, ami biztosítaná az 1-es biteket (FFh bájtot) az üres buszon), és amikor kinyit a Z80 felé az U7-es 74LS245, az ezt a bájtot fogja beolvasni Nick portról.
Ez a jelenség aztán kihasználható arra, hogy hol jár a Nick a képen, ezt mutatta be IstvánV ezzel a demócskával. Neve is a lebegő buszból jön: Floating Bus Scroll. Ez a program így alkalmas arra, hogy emulátorok és különböző modern hardware-megvalósítások pontosságát tesztelje. EP32-vel illetve 2.0.10 előtti ep128emu-val nem működik a program. Csak 4 MHz-n működik. Ezzel a kis programmal BASIV-ből is tesztelhető a jelenség: 1 POKE 56,201 Ha előtte csinálunk egy GRAPHICS 256-ot, és fel PLOT PAINT-tel festünk valami színnel, akkor látható, hogy az a szín megjelenik dominánsan a keretre outolt színekben. | |