Atari Ultimate Cart (SD multicart)

Robin Edwards (Electrotrains) ve druhé polovině loňského roku navrhnul a poměrně rychle i realizoval zajímavou multi cartridge pro 8-bitové Atari. Byť Atarista moc nejsem, tak mně tento projekt celkem zaujal svojí univerzálností. Konstrukce je totiž poměrně jednoduchá – obsahuje slušně výkonné FPGA z nové řady Aletra MAX 10 a je open source. Dá se tak do budoucna přeměnit v leccos. Tedy, ne že by emulace cartridgí Standard Atari, XEGS, AtariMax, Megacart, Bounty Bob, Williams, OSS, SIC!Cart, SDX, Diamond, Express a Blizzard byla málo, ale dokážu si představit třeba firmware emulující HDD s plnou podporou nahrávání souborů ATR, XEX apod. Navíc, díky tomu, že je vše open source jsem si mohl nechat udělat plošňáky a kartu postavit sám, a to je něco pro mně Mrkající veselý obličej.

Atari_UltimateCartSD_PCBs   Atari_UltimateCartSD_angle

Karta je opravdu velmi jednoduchá. Kromě vlastního FPGA už na ní najdete jen 1MB paměti RAM, 4 oddělovače sběrnice, napěťový regulátor a nějaká ta pasiva. Jak už jsem se zmínil, použité FPGA je pro daný účel slušný “overkill”. Má interní oscilátor na 116 MHz, 8000 logických elementů a spoustu dalších zajímavých featurek ze kterých se většina ani nevyužije. Pravda, taky stojí 20 EUR, ale na celé kartě je to zdaleka nejdražší součástka.

Osazení nešlo až tak úplně hladce, pájecí plošky některých součástek jsou přesně velké jako piny, což je super pro strojní osazování nebo aspoň, pokud máte šablonu na nanášení pájecí pasty a pícku, ale ty já nemám. Neštěstí to zase až tak komplikované nebylo a pár desek jsem osadil poměrně bez problému. Při pokusu o programování přes USB Blaster mi padal Quartus Programmer při pokusu o otevření POF v souboru, tak jsem si musel komplet přeložit zdrojáky. Je pravda, že Electrotrains používal ES verze obvodu, možná má i nějakou lehce nekompatibilní verzi překladače, ale po vlastnoručním přeložením v nejnovější verzi Quartus II 15.0 všechno šlapalo na první pokus.

Atari_UltimateCartSD_bottom   Atari_UltimateCartSD_top

Překvapilo mně, jak úžasně je cartridge flexibilní. Na SD kartu (FAT32 SDHC, čím rychlejší, tím lepší) můžete umístit buď 8kB nebo 16kB soubory .ROM, které jsou pak interpretovány jako klasická Atari cartridge nebo soubory .CAR, které vyrobíte pomocí HTML/javascript konverzní utility RomToCar. Musíte samozřejmě znát do jakého typu cartridge patří váš obsah ROM.

Je bezva, že cartridge je fakt univerzální a nahradíte s ní tak hromadu jiný cartridge. Zatím, co jsem zkoušel, pokud jsem správně nastavil, tak šlapalo. Hrozně fajn je emulace AtariMax cartridgí, kde naprogramování 8Mb AtariMax cartridge přes USB a k tomu určený programátor přeci jen chvíli trvá. Tady můžete přímo z Maxflash Cartridge Studio vyexportovat .CAR, během pár vteřin nahrát na SD kartu a jedete. Pohodička.

Po spuštění naběhne boot ROM, která je obsažena přímo ve FPGA. Zvládá adresáře a výběr se dělá pomocí klávesnice. Pokud chcete graficky trochu učesanější aplikaci a výběr i pomocí joysticku, můžete do rootu SD karty nahrát alternativní _boot.rom a startuje se z ní. Pěknou aplikaci napsal Jonathan Halliday, který taky napsal na Atari Ultimate Cart i hezkou recenzi.

Atari_Multi_Cart_default_bootROM   Atari_Multi_Cart_alternative_bootROM

Ještě musím pořešit kapotáž, ale Pavel Urbančík už mi ochotně kreslí krabičku pro jeho 3D tiskárnu, takže všechno bude Mrkající veselý obličej.

Pokud byste chtěli tuhle cartridge, máte několik možností. Můžete si ji objednat přímo od autora na AtriAge fóru za 70 GBP nebo, pokud se kamarádíte s páječkou a chtěli byste si cartridge sami postavit postavit, tak ještě nějakou desku mám. Jak jsem se již zmínil, FPGA stojí asi 20 EUR, ale ostatní součástky už nejsou nic závratného, takže karta, pokud si ji postavíte sami Vás vyjde jen něco přes tisícovku. Pokud si na to netroufáte, můžu pár lidem cartridge osadit a cenově budeme někde mezi, ale do žádné sériovky se pouštět nehodlám Mrkající veselý obličej. Pokud se do toho někomu chce, komplet projekt je tady https://github.com/robinhedwards/UltimateCart.

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

7 komentářů u Atari Ultimate Cart (SD multicart)

  1. Pavel Tronner napsal:

    Ahoj Martine,

    To je fakt moc zajímavá věcička, hele, kdybys do toho šel s nějakou „hromadnou výrobou“, tak se o jeden kousek velice rád přihlásím.

    PS: – uvidíme, třeba bude mít pak Atari lepší barvy, jako Sharp:-)

    Měj se!

    Pavt

  2. Diego napsal:

    Ahoj, chtěl bych se zeptat j jakym jazyku se většinou píšou programy a ovladače k takovýmhle vychytávkám. Cčko nebo asembler nebo jiné? 🙂

    Díky za radu

    • Martin napsal:

      Ahoj,

      nejsem si uplne jisty, jestli rozumim otazce. Ovladace to zadne nema, emuluje to ruzne standardni Atari cartridge, programy na tom bezi standardni pro Atari, co se spousteji z Cartridge. Jinak, ne ze bych tomu uplne detailne rozumel, ale projekt je udelany v Altera Quartus II, vetsina je napsana ve VHDL, obsluhu SD karty resi syntetizovane CPU a je napsana v C a obsluzna Atari ROM je naspana v Atari assembleru.

      Staci takto?

      Martin

  3. Marlin Bates napsal:

    Ahoj,
    By byl váš přítel , Pavel Urbančík , být ochoten uvolnit soubor .stl za velmi pěkné cartirdge pláště on dělal pro Ultimate košíku ! ( Atari ) ?
    Omlouvám se, pokud je tento jazyk špatně, musel jsem používat Google .
    -MacRorie (Na AtariAge )

  4. Sigi napsal:

    Ahoj Martine,

    měl bych zájem o PCB na Atari Ultimate Cart , případně pokud máš jednu navíc nebo bys byl ochoten další složit vzal bych i hotovou.

    Sigi

    • Martin napsal:

      Ahoj, je mi lito, ale nemám už ani desky, ani hotové cartridge navíc. Jedině, pokud bys uměl tu cartridge „vytlouct“ z viktormt 😉 Ten ode mne ma jednu, kterou mi nezaplatil a jen e-mailem se mi to z nej nedari vytahnout, ani k vraceni se nema. Asi se k nemu budu muset pri nejake ceste na Slovensko zastavit osobne a slusne ho poprosit 😉

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *