Portscope
Při ověřování funkčnosti myší a joysticků jsem několikrát potřeboval jednoduché zobrazovadlo IO portu, abych se mohl v reálném čase dívat, jak se mění stavy bitů. Potřeboval jsem něco, co bych mohl na ZX Spectru rychle spustit, a nanejvýš do toho zadat číslo portu.
Díky tomu vznikla utilita portscope, která zobrazuje osum bitů ze zadaného portu tak rychle, jak jen to je na ZX Spectru možné. Samplerate, měřený osciloskopem na signálu /CS čipu 8255, se pohybuje velmi přibližně okolo 160Hz. Docela dobře se proto hodí i k zobrazení rychle se měnícího stavu při zapnutém autofire. Např. můj joystick generuje autofire okolo 60Hz, nebo se hodí ke sledování změn bitů Amiga myši do určité rychlosti pohybu.
Limit pozorovatelné frekvence je přibližně okolo 50Hz. Samplerate by měl být nejméně dvojnásobný. Pozorovat rychlejší změny by šlo tím, že bych nasamplovat hodnoty do paměti a zobrazil vše najednou až po zaplnění paměti. Ale na to už existují jiné propracovanější programy.
Program nemá za cíl nahradit skutečný logický analyzer, nebo osciloskop. Cílem je usnadnit práci v případě, že chci zkoumat něco na ZX Spectru, ke kterému bych musel skutečný měřící přístroj připojit a načtení programu je snazší.
Program jsem ladil a zkoušel v emulátoru Fuse i na klasickém ZX Spectrum 48k. Nevím o ničem, co by mohlo bránit v použití na jiných počítačích. Pochopitelně by měl být spuštěn v rychlé paměti, proto je umístěn na adresu 32768.
Na reálném ZX Spectrum jsem pořídil pár screenshotů.








Download
Historie změn článku
- 2020-12-20 - sepsáno a zveřejněno