SMART Card

Já vím, já vím, nazvat přídavnou kartu SMART je docela klišé. Ale co už – autor ji tak nazval, a na nás je, abychom ji použili a říkali jí třeba Klára, když na to přijde.

Phil Ruston z Retrolea je můj oblíbený retropočítačník. Vlastním jeho V6Z80P, a tak když jsem zahlédl, že nabízí nový hardware a přečetl jsem si popis, neváhal jsem. SMART Card, jak se to celé jmenuje, je přídavná karta k ZX Spectru a nabízí (za tu cenu!) velmi zajímavé možnosti.

Obsahuje 256kB ROM (přesněji FlashRAM), do které se vejde 16 ROMek, které karta dokáže připojit namísto standardní ROM ZX Spectra. Na desce je i 128 kB RAM, kterou si můžete namapovat po osmikilových blocích do prostoru 2000h-3FFFh. K tomu tam je slot na SD paměťovou kartu, tlačítka RESET a NMI, standardní devítipinový konektor pro joystick (namapován jako Kempston), a celé to dohromady drží glue logika v CPLD (XC9572XL). Můžete použít i piny RX a TX na sériovou komunikaci.

Karta má především dvě oblasti využití. Jednak jako rychlé načítání a spouštění programů ze SD karty (loader „umí“ formát SNA a s novým firmware i formát TAP, kde nahrazuje standardní rutiny ZX Spectra vlastním načítáním).

Druhá možnost je využít ji jako diagnostický nástroj – Phil nabízí „Diagnostic ROM“, která otestuje funkčnost pamětí a dalšího hardware (klávesnice, ULA, reproduktor, interní ROM, …) Pokud je Spectrum aspoň trochu živé (tzn. funguje mu zobrazování), můžete zjistit např. to, jaký paměťový čip je třeba vyměnit.

IMG_20141228_152448

Z hlediska ZX Spectra jde o interface na portech FAF3h, FAF7h a FAFBh (joystick je samozřejmě na portu 1Fh). Zapojení je následující:

FAF3h ovládá RAM. Bity 0-3 určují, která banka má být připojena do prostoru 2000h-3FFFh (pokud je to povolené). Bit 7 povoluje SRAM – pokud je nastaven, překrývá tato RAM interní či externí ROM. Bit 4 ovládá sériovou linku, bity 5 a 6 jsou určené pro SD kartu (SPI a CS).

Port FAF7h slouží ke čtení a zápisu z/na SD kartu. Poslaný bajt je interně serializován a odeslán do SD, při čtení je naopak deserializován a vystaven na tomto portu.

Port FAFBh ovládá ROM. Bity 0-3 opět udávají blok ROM, který má být připojen do spodních 16kB. Jestli bude připojena externí ROM, nebo interní, to opět ovládá bit 7. Bit 6 pak zapíná funkci „přepnutí na systémovou ROM po průchodu adresou xx72h“ (pro spouštění snapshotů).

Pomocí přepínačů se vybírá startovací ROM, povoluje zápis do FLASH a zapíná testovací režim.

Já tam vidím ještě jedno možné využití – můžete si snadno vyzkoušet svou vlastní ROMku na reálném zařízení.

Příspěvek byl publikován v rubrice Hardware se štítky , , . Můžete si uložit jeho odkaz mezi své oblíbené záložky.
  • Factor6

    Zkoušel jsem to na JHConu. Má to pěkné ovládání. Programy z TAPek to nahrává pomaleji než kterýkoliv firmware na DivIDE – což sem nepíšu jako výtku – aspoň se člověk podívá, jak se plní obrazovka, když se nahrává třeba u hry a hlavně ji člověk zachytí postřehnout. Další výhodou je cena, která je nižší než u DivIDE, pokud tedy nepočítáme poštovné ze zahraničí. Nevýhoda – nedá se to připojit k Mku, není to průchozí. Neumí to SAVE, tedy pro toho, kdo se Spectrem pracuje a chce si svou práci i uložit (já) to není. Nevím, čeho je schopné to CPLD, ale líbila by se mi podpora TZX, která DivIDE chybí a nikdy ji z principu ani mít nebude. Takže pro retro pařany a testovače ROMek dobrý.

  • Phil to spájel někdy v říjnu, takže bych tomu dal chvíli čas, ani DivIDE nepostavili za den… 😉 Mně se to líbilo proto, že to je fakt levný a můžu to plácnout ke každému Spectru, co tu mám, a taky kvůli tomu laborování s ROMkou. Jasně, to DivIDE umí taky, a mnohem víc, ale ta cena je někde jinde. Na druhou stranu je to podobný minimalistický návrh, tak třeba časem vznikne lepší FW.

    Ohledně průchodnosti a TZX je autor docela skeptický, viz ta sekce FAQ