Ani ne – a tim se prave divide lisi od MB-02. Radic je to skutecne minimalni, jak cenou, tak navrhem, a vse vykonava procesor, takze pocit, ze za spectrem je pripojeno jakesi mamuti superspectrum nadupane technologiemi, co dela z ZX jen jakysi terminal, je v tomto pripade nespravny :).
Nemam rad bloat, at uz softwarovy, nebo hardwarovy, a na svuj minimalismus si potrpim :).
Souhlas, prave diky teto filozofii byly uspesne treba uz zminovane Apple II a jejich disketovky (Disk-II). Woz co nejvic veci nacpal do SW, takze HW cast byla strasne jednoducha, coz na druhou stranu umoznilo ruzne laborovani se zpusobem zapisu na diskety apod. (dneska nemame sanci, pokud disk ma RLE nemame moznost si vyzkouset napriklad nejaky vlastni zpusob zaznamu).
Jo? A kdypak? To jsem asi musel minout – a to tento seriál pravidelně čtu. Ondra by mě taky zajímal – protože se jednalo asi o nejlépe zkonstruovaný původní československý osmibit – s ohledem k jeho ceně a některým poměrně originálním přístupům v jeho návrhu. Navíc jeho autoři připravovali i počítač vyšší třídy za podobně rozumnou cenu, který měl být určen středoškolským a vysokoškolským studentům. Určitě by bylo zajímavé udělat nějaký rozhovor s jeho autory.
A SAPI-1 taky nebylo. Přitom jsem toho názoru, že SAPI a Ondra představují to nejlepší, co se našim inženýrům podařilo zkonstruovat, aniž by kopírovali ze Západu. Takže by byla určitě škoda v seriálu o československých počítačích vynechat zrovna ty nejlepší kousky. (BTW, SAPI-1 ještě před relativně nedávnou dobou sloužilo jako hlavní řídící počítač školního jaderného reaktoru VR-1 Vrabec v Praze-Tróji na FJFI-ČVUT, jenž se tak stal i díky němu prvním plně digitálně řízeným jaderným reaktorem na světě)
Opravdu to jsou dvě 8253.
Dokonce mi jednou Ondra začal zobrazovat kraviny (zdvojené sloupce – místo Ondra Vás vítá bylo OOddaaVVssvvtt) a výměnou poškozené 8253 se to srovnalo.
Schéma, které jsem nascanoval, už na webu není (zanikl „broučkův“ web, kam jsem ho poslal, záloha u mne na disku klekla), ale tištěný originál mám (Melsoft má dokonce rukou Edy Smutného kreslené rozmístění součástek), až se k tomu dostanu, tak ho zase zdigitalizuju (zatím k nahlédnutí na papíře).
8253 je toto – nejak netusim, jak chces timto adresovat vram:
http://www.sharpmz.org/mz-700/images/8253blkd.gif
na primou adresaci nema pristup k nacitanemu stavu, a na figl ala zx80/81, je to zase kanon na vrabce, tam ti staci generovat kazdych 64uS preruseni, a VRAM si „najit“ softwarove.
schema jsem uz v ruce mel, ale co si vzpominam, byly tam jakesi ruske citace, jejichz ekvivalent jsem tehdy nemel chut dohledavat, ale sotva to byly 8253ky…
V Ondrovi jsou použity 2× KR580VI53, což je ruský klon 8253. Kvůli obvodovému řešení Ondry se podávaly myslím 1 nebo 2 mezinárodní patentové přihlášky, proto by bylo zajímavé se o tomto počítači šířeji rozepsat, nejlépe za asistence některého z autorů. Hlavní autor – Ing. Eduard Smutný – bohužel již není mezi námi. On sám kdysi v rozhovoru uvedl, že narozdíl od SAPI-1, jež bylo zapojeno katalogově, u Ondry byly některé obvody využity atypicky, originálně, aby bylo možné minimalizovat počet integrovaných obvodů a zároveň se vyhnout nutnosti vývoje zákaznického obvodu. Ostatně i poněkud zvláštní organizace VRAM Ondry byla tomuto řešení plně podřízena.
Stručně a krátce – jestli netušíš, jak se tím dá adresovat VRAM, tak věz, že to bude tím, že nejsi tak dobrý elektronik, jako autoři Ondry. ;-) Ale nic si z toho nedělej, protože takových je drtivá většina. :-)
8253 jsem kdysi pouzil jako zdroj casovani pro svoji zvukovku. Matne si pamatuju ze krome nastaveni pocatecni hodnoty citace a nastaveni ridiciho slova ktery urcovalo co presne ten ktery citac bude delat, se taky dala precist aktualni hodnota citace. Takze moje hypoteza je ze by to mohlo fungovat nasledovne:
CT0 vytvari casovaci znacky pro kazdou 8mici bodu.
D0-D7 of 8253 bude pripojena na adresovou sbernici RAM (row/column address)
kdyz CT0 vyda impuls tak nejaka kombinacni logika pozastavi CPU a vhodne nastavi A0,1 !RD !WR !CS aby jakoby precetla hodnotu citace CT1 (row) a vzapeti CT2 (column) a zaroven vygeneruje vhodne ridici signaly CAS a RAS pro RAMku. Ta vyhodi 8 bitu na datovou sberinici pocitace odkud je precteme do posuvneho registru a budeme vysunovat do modulatoru.
Jeste se tedy musi vyresit generovani Hblank a Vblank pulsu a resetovani citacu na zacatek VRAM, na to je tam asi ta druha 8253ka. Taky pak by tam musela byt nejaka logika ktera by umoznila ten obvod pouzivat normalne, tedy D0–8 pripojeno na datovou sbernici, aby ho mohl CPU po resetu nastavit.
Stejne to byli mistri ze tu kombinacni logiku udelali z normalni TTL stavebnice pomoci nekolika svabu a nepotrebovali na to PLA ani treba EPROMku.
Ale je to jen moje hypoteza jak by se to mozna dalo delat, treba prisli na neco mnohem chytrejsiho.
Ted me jeste napadlo ze vlastne neni treba delat prepinac mezi adresovou a datovou sbernici, staci obetovat 4*256 bytu a udelat jen vhodnej I/O-adresovej dekoder kterej ten obvod aktivuje kdyz zapisu do tohoto kilobytu. Spodni cast adresy samozrejme pujde na D0-D8 of 8253. Sice z nej takhle nemuzu cist, ale k inicializaci to vlastne nepotrebuju.
Tim by se dalo usetrit celkem dost soucastek.
Tvé úvahy se ubírají správným směrem. ;-) Jen ještě pro zajímavost dodám, že Ing. Smutný dokázal zkonstruovat z několika 8253 i řadič floppy. To by se i Wozniak divil, co všechno se dá… :-)
Byla to holt taková zvláštní doba… Čechoslováci tenkrát vyvíjeli enormní úsilí v touze po získání podobných „vymožeností“, jako měli lidé na Západě, ale za podstatně skromnějších podmínek, a dokázali přitom téměř nemyslitelné kousky. Jenže jakmile se otevřel trh, hranice, možnosti realizovat se, tak najednou jakoby ty schopnosti zmizely.
Jo byla to pekna doba, taky jsem ji trochu zazil. Je sranda ze mi tenkrat z dnesniho pohledu nudny veci pripadaly jako high-tech. Treba v Atari klubu poradali v podvecer takove jakoby prednasky z programovani. Ve tride bylo vzdycky nejmin 100 lidi, vetsina stala nebo sedela na parapetech a ten pan v predu nas napr. ucil jak z temer z hlavy prevadet dvojkovy cisla na desitkovy, abychom mohli tvar spritu zapsat pomoci BASICovskeho prikazu DATA a nasledne ho nekolika prikazy POKE dostat na obrazovku. To byla v ty dobe uz celkem frajerina (na zacatecnika).
Dneska si ale nedovedu predstavit ze by byl nekdo z bin->dec konverze kdovijak odvazanej.
Já si myslím, že ty schopnosti nezmizely, ale staly se prostě zbytečné. Proč vyrábět ze součástek RVHP řadič disket, když jednak součástky RVHP zmizely, jednak se kompletní disketové mechaniky koupily v PC krámku na rohu za pár šupů. Podobně to bylo se vším. Dneska se řadičem disket zabývá jen ten, koho to opravdu baví.
Zilog, predpokladam, ze si tu schemu uz nasiel, ale kedze sam som mal o nu vazny zaujem prehladal som archive.org a supol som ju k sebe: http://ikon.wu.cz/zx/Ondra_schema.pdf.
Aby som si priahrial svoju polievočku :-), dovolím si tu spomenúť, že aj pre PMD 85 existuje „súčsné pamäťové zariadenie“ a to náhrada disketovej jednotky PMD 32. Namiesto diskiet sa používajú obrazy diskiet uložené na SD karte.
I keď už ktosi poznamenával, že ten ATMEL, ktorý je v PMD 32-SD použitý, je možno výkonnejší ako samotné PMD 85 ;-), nič to nemení na skutočnosti, že je to, podobne ako u iných 8-bitov, užitočná vecička.
Ďalšiou pridanou hodnotou je to, že vďaka komunikácii po ‚inteligentnej zbernici‘ je možné PMD 32-SD pripojiť nie len k PMD 85, ale i k iným počítačom s paralelným portom (PPI 8255).
Príkladom môže byť už existujúca implementácia pre SAPI-1 a pokusný kopirák na 8" diskety na IQ-151. Rozpracované je aj pripojenie a implementácia ovládača pre Zbrojováčka.
Bližie info:
http://pmd85.djb-studios.com/wiki/PMD_32
http://pmd85.djb-studios.com/wiki/Blog:Postavte_si_PMD_32-SD
http://pmd85.djb-studios.com/wiki/Blog:Nov%C3%BD_firmv%C3%A9r_pre_PMD_32-SD
http://pmd85.djb-studios.com/wiki/Blog:Ovl%C3%A1da%C4%8D_pre_komunik%C3%A1ciu_s_PMD_32
Z toho si nic nedelejte, kdyz pripojim k osmibitovemu Atarku pres SDrive napriklad nejaky harddisk nebo CD-ROM, tak ty jejich signalove procesory jsou klidne o dva rady vykonnejsi nez stara dobra 6502ka :-) Ale to nic nemeni na tom, ze 6502, BOBO a Z80 maji stale sve kouzlo…
Nemluvě o Connect One modulu připojeném k SIFu :-)
http://sif.itherm.cz/
http://www.spezial.cz/connectone/connect-one-nano-lanreach-uart-usb-spi-ethernet-modul.html
Ale on stačí i takový General Sound http://www.nedopc.com/gs/ngs.php
Nebo třeba PIC16F84 konvertující PS/2 na TTL signály v KMouse Turbo. To sice není o mnohonásobně rychlejší než Z80, ale rychlejší je (na 4MHz s 1 až 2T na instrukci). Díky tomu máme společně s Amigisty možnost připojit běžné optické PS2 myšky. Nebo v případě Keyface PS2 klávesnice.
Prostě máme své osmibity rádi a chceme jim dopřát to nejlepší. Ne jenom je sušit někde ve skříni a ukazovat „hele ono to tehdy umělo tohle“. Mnohem lepší je stroj zapnout a ukázat, „podívej, co to umí teď“ :-)
Např. SIF je naprosto dokonale užitečný při programování (nejenom)
Na Linuxu napíšu v Kate (nebo jiném plaintext editoru zdrojáky), zkompiluju v AS, zkonvertuju v bin2tap, pošlu pomocí cat na /dev/ttyS1 a na ZX Spectru zadám jenom LOAD "" a je hotovo. Nepotřebuju žádný emulátor, nepotřebuju zdlouhavě nahrávat přes TAPe výstup mizernými 1200 baudy, když mám 115200 baudů na RS232. V praxi se tenhle postup na straně PC obvykle smrskne na jediný make.
Assembler AS je naprosto skvělý, jen se hodně špatně hledá
http://john.ccac.rwth-aachen.de:8000/as/
Zvýraznění syntaxe pro KWrite/Kate, s poněkud zastaralými screenshoty, ale jinak stále aktuální
http://cygnus.speccy.cz/popis_syntaxhighlighting-for-kate.php
Stačilo jen maličko opatchovat ROM
http://cygnus.speccy.cz/popis_sif_zxrom_patch.php
Pracuji na emulátoru AZ Spectrum na ARM Cortex M3 procesoru. Vlastně celý ZX Spectrum by byl tvořen jedním ARM mcu + 64 kB SRAM + SD kartou s programy a několika konektory (monitor,repro,AT klávesnice). A teď dumám nad klávesnicí. Klasická klávesnice má mnoho různých funkcí přiřazených jednomu tlačítku, což by si u normální AT klávesnice nikdo nepamatoval. Proto bych to asi řešil jinak – psal by se normální text a ten by se po dopsání celého klíčového slova tokenizoval – prý byla taková modifikace ROM. Ví prosím o ní někdo? Předem děkuji za info.
LEC ROM ma dva rezimy psani prikazu. Bud se pise klasicky po pismenkach (podpora zkratek!) anebo se pozivaji „TOKENY“. Mezi rezimy klavesnice se prepina prikazem FORMAT „K“.
Priklad, pokud napisi tento text:
10 bo.7:pa.r.*8:cls:pr.pe.23609:dr.10,10
LEC REM jej prevede na:
10 BORDER 7: PAPER RND*8: CLS: PRINT PEEK 23609: DRAW 10,10
Tokenizovat umí i originál 128k BASIC, resp. rozšíření Sinclair BASICu pro ZX Spectrum 128k. Ale zdrojáky bohužel nemám a netuším, kde hledat … nicméně kdysi jsem na ně narazil. (48k BASIC je samozřejmě zdokumentovaný velmi podrobně).
Mimochodem, nemyslím, že by bylo potřeba zrovna tohle řešit. V BASICu se už moc neprogramuje, spíš se používá jako zavaděč a těch několik základních příkazů si lze snadno zapamatovat, případně použít polepky od Sintechu.
No, pak nějak nechápu, komu je emulátor postavený na ARMu určen … nedovedu si představit neznalého uživatele, který začíná se ZX Spectrem tímto způsobem. Už jen proto, že musí vědět o existenci příkazu LOAD "", způsob zadání už mi nepřipadá tolik zásadní.
Výsledek vývoje mne samozřejmě velmi zajímá, ale opravdu si nejsem jistý pro koho vlastně je. Např. Fuse emulátor lze spustit na kdečem, včetně linuxových placek bez klávesnice s Androidem a spol. Skalní fanda, mezi které se počítám, si zas obvykle nevystačí s prostým spouštěním aplikací a her, chce připojovat periferie. Nebo alespoň do toho snadno dostat data (audio MGF, UR-4 8255, SIF, image disket na SD kartě?). Spousta lidí bude požadovat max. kompatibilitu s originálem a každý si to představuje jinak :-)
Ostatně viz. moje anketa (sorry za pokaženou češtinu, to je kvůli aktualizaci na hostingu, není čas to řešit). Z ankety kromě preference periferií vyplývá, že spousta věcí musí být vypnutelná, nebo nastavitelná, jinak to bude vyhovovat jen malé skupině uživatelů. A samozřejmě čím jednodušší a levnější, tím líp. Obsah „ROM“ by měl jít v každém případě snadno měnit.
Jedno z možných řešení takového emulátoru viz PMD od P.Chrenka. Hezké, ale s jistými omezeními, které jsou dané použitým MCU.
V podstatě chci jen říct, že to není sranda a může se na tom dost věcí „nepovést“.
Zadavat prikazy po pismenkach umi taky treba „Gosh Wonderful“ ROM, jak jsem se prave docetl v ZXPCFIN:
ftp://ftp.worldofspectrum.org/pub/sinclair/books/ZXSpectrumOnYourPCThe.pdf
Romka je treba zde:
http://www.shadowmagic.org.uk/spectrum/roms.html
BTW, v teto obsahle kolekci neni ROM ze zadneho Didaktiku. Nemate je nekdo? Bylo by zajimave archyvovat treba „chybove“ ROM pro Didaktik Gama 1987 a 1988. Didaktik Gama 1989 je celkem bezna a povedena ROM. Pokud nevite, tak ROM nahrajete na kazetu na ZX-Spectru takto:
SAVE „ROM-NAME“ CODE 0, 16384
Existuje neco jako SIO2PC pro Atari take pro ZX-Spectrum? Propojeni ZX-Spectra s PC pres (seriovy/USB?) kabel? Na ZXS by se mohl emulovat Interface-I. Neco jako divIDE, ale jednodussi a data by byla ulozena na PC (idelane funkcni take pod Linuxem, teda server bezici na Linuxu, klient je ZXS pripojene pres nejaky kabel…;-)
http://www.atarimax.com/sio2pc/documentation/
Existuje SIF a k němu nějaký ten obslužný software.
Ale vidím to spíš jinak – DivIDE ve skutečnosti je brutálně jednoduché zařízení. Možná až příliš o čemž jsme se v kemailových onferencích dlouho hádali a dodnes toto téma raději nikdo nenzačíná :-). DivIDE totiž ve skutečnosti není nic jiného než multiplexor z 8bit datové sběrnice na 16bit data IDE zařízení doplněný nějakým tím adresovým dekodérem, stránkovačem paměti a pamětí SRAM a EEPROM pro firmware.
Problém DivIDE je trochu v tom, že na IDE zařízení je potřeba data dostat. Na tom trochu selhává Demfir (ačkoli jinak jsou jeho vlastnosti skvělé), protože používá ISO9660 formát a image je potřeba připravovat stejně jako vypalované CD. Blbě se do toho přidávají soubory, ale jako herní konzole to pak slouží dokonale. Fatware používá FAT 16, soubory se přidávají snadno, ale zase (z mého subjektivního pohledu) je méně praktický než Demfir. ESXDOS je relativně nový, umí pracovat s FAT16 i FAT32, na obojí ukládat, ale třeba vůbec nepodporuje snapshoty, nemá NMI menu s nastavením, výběr TAP souborů je méně pohodlný atd…
SIF oproti tomu je „jen“ 2× 16C550. Bez jakéhokoliv obslužného softwaru to nedělá nic. S obslužným softwarem to je klasická RS232 se všemi vlastnostmi jako na PC, takže včetně HW řízení toku dat a vysokých přenosových rychlostí, což je naprosto zásadní a činí SIF bezkonkurenčním sériovým portem na osmibitech vůbec. Aktuálně existuje patch do ZX ROM, který umožní používat SIF s normálními příkazy SAVE a LOAD, viz video, kde je používán.
Když už diskutujeme, co tu ještě z tuzemských strojů nebylo tak ještě něco :
Kdysi ( rok 90 ) jsem se setkal se strojem TESLA MVS. ( Malý výpočetní systém ). Byl to takovej sloup metr a něco vysokej. Pracovalo to jen s terminálem.
Dával se k tomu Oper.Systém ISIS a kompilátor PL. Mělo to dvě 8-mi palcové mechaniky. Ale ten ISIS stejně nikdo nepoužíval, existovalo na to i CP/M.
Ví někdo něco o historii tohoto stroje ? Nebo bude zmíněn v tomto seriálu ?
Jako většina socialistických věcí, i toto byla kopie, v tomto případě 8080 systému od Intelu, Intellec MDS (Microcomputer Development System) včetně OS (ISIS + PL/I).
http://www.mynewoffice.com/pcmuseum/IntelMSD472.jpg
To je ten problém socialismu, není čas na invenci, protože je potřeba furt někoho nebo něco dohánět (a na předhonění už pak nejsou síly ani čas).
CPC-464 používal datarekordér zabudovaný přímo do jejich skříně, což se však z dlouhodobějšího hlediska ukázalo jako slepý směr vývoje…
Jak to? Řekl bych, že přesně naopak – tento trend se drží do současnosti. Datarekordér se nahradil disketovou jednotkou, poté optickými jednotkami a ty jsou zabudované do skříně počítačů dodnes (vyjma kompaktních NTB).
hoj dávam si dokupy Ondru odešel mě tam ruskej časovač 8253 takže výpisy na obrazovku byly k nepřečtení. A následně pak ještě ondra přestal číst klavesnici. Už sem zkontroloval snad vše co šlo. dekodér klávesnice 74ls145 v pořádku 8kanálovej D klopnej obvod taky vpořádku Obsah ROM 74188 toď otázka ale zatím co jsem zkontroloval tak bylo ok IO 74ls174 (Port 03H) je taky OK mohlo by to být snad špatný obvody RAM? Je fakt že některý ty K565RU5 sou tak špatně utěsněné že znich dokolečka odpadává to těsnění teď sem si objednal nový a mohl sem je všechny hodit do koše časem zdegradovali na tolik že vrchní víčko který hermeticky těsní křemíkovou destičku s okolím odpadal u všech 10ti koupených RAM může někdo poradit ještě čím by to mohlo být?