Hlavní navigace

Historie vývoje počítačových her (50. část - další programové vybavení mikropočítačů Amiga)

1. 11. 2012
Doba čtení: 22 minut

Sdílet

Dnes se společně seznámíme s dalším programovým vybavením mikropočítačů Amiga. Minule jsme se seznámili s několika „multimediálními“ aplikacemi, dnes se naproti tomu budeme zabývat především nástroji používanými vývojáři – už jen z toho důvodu, že tyto nástroje byly použity i pro vývoj her.

Obsah

1. Historie vývoje počítačových her (50. část – další programové vybavení mikropočítačů Amiga)

2. Directory Opus – slavný dvoupanelový manažer souborů

3. Textový editor Vim – zrozený na Amize

4. Programovací jazyky a vývojové nástroje pro Amigu

5. GFA Basic

6. Práce se sprity v GFA Basicu

7. Zvýšení počtu spritů (vsprites) a BOBs

8. Blitz Basic

9. Odkazy na Internetu

1. Historie vývoje počítačových her (50. část – další programové vybavení mikropočítačů Amiga)

V dnešní části seriálu o historii vývoje výpočetní techniky se seznámíme s dalšími aplikacemi, které se používaly na slavných počítačích Amiga. Minule jsme zabývali především „multimediálními“ aplikacemi, mezi něž patřily především hudební editory a hudební přehrávače následované rastrovými grafickými editory (3D editory a CADy si popíšeme příště). Dnes se seznámíme především s nástroji využívanými vývojáři. Mezi tyto nástroje patří zejména správci souborů, programátorské textové editory a samozřejmě i interpretery či překladače různých programovacích jazyků. Možná může být zajímavé srovnání možností Amigy s konkurenčními osobními počítači IBM PC. Ty ještě v polovině osmdesátých let minulého století mohly vývojářům nabídnout nástroje, které většinou byly hůře ovladatelné a nabízely méně funkcí, než tomu bylo na počítačích Amiga (o to paradoxnější je fakt, že IBM PC byly již ve své druhé verzi – IBM PC XT – považovány za počítače určené pro profesionály).

Obrázek 1: Obrazovka systému Top View firmy IBM (1985). Na screenshotu můžeme vidět, že rozhraní tohoto produktu je poměrně nezáživné a bez nápadu (naproti tomu naprosto geniální nápad, jak využít textovou obrazovku IBM PC, měl Peter Norton ve svém programu Norton Commander, jehož TUI je kopírováno dodnes, například v souborovém manažeru Midnight Commander).

V oblasti souborových manažerů určených pro IBM PC (a DOS) je nutné zmínit především slavný Norton Commander a taktéž XTree (Gold). Poněkud horší situace vládla na trhu s překladači programovacího jazyka C, protože právě překladače céčka byly (vedle assembleru a později i Turbo Pascalu) používány pro tvorbu profesionálních aplikací, včetně her. Pravděpodobně prvním překladačem céčka pro IBM PC byl Lattice C z roku 1982, který byl později převeden i na Amigu (i z tohoto důvodu se o něm zde zmiňuji), dále se rozšířil i na minipočítače a mainframy společnosti IBM. Zajímavé bylo, že firma Microsoft překladač Lattice C nabízela pod svým názvem MSC (Microsoft C) a teprve verze MSC 4.0 byla skutečně vytvořena přímo programátory z Microsoftu. Lattice C byl používán i při portaci aplikací z operačního systému CP/M na DOS (dnes je však možné pouze odhadnout, kolik kódu bylo skutečně napsáno v céčku a kolik kódu vzniklo transformací assembleru).

Obrázek 2: Norton Commander verze 4.0 z roku 1993.

Dalším céčkovým překladačem, který byl nabízen jak pro počítače IBM PC, tak i pro Amigy (a mnohé další typy počítačů), byl překladač nazvaný Aztec C společnosti Manx Software Systems, o němž se zmíníme v dalších kapitolách.

Obrázek 3: Textový editor dodávaný k Norton Commanderu používal klávesové zkratky odvozené od slavného WordStaru.

2. Directory Opus – slavný dvoupanelový manažer souborů

První aplikací, s níž se dnes seznámíme a která původně vznikla právě pro počítače Amiga, je souborový manažer nazvaný Directory Opus, jehož autorem je Jonathan Potter. Directory Opus vznikl vylepšením původního dosti jednoduchého souborového manažeru nazvaného JPDirUtil, neboli Jonathan Potter Directory Utility. Právě v tomto manažeru se objevilo grafické uživatelské rozhraní založené na výpisu obsahu adresáře a sady konfigurovatelných tlačítek umožňujících provádět různé operace s vybraným souborem či soubory. Directory Opus se však od původního nástroje JPDirUtil lišil v jedné dosti podstatné věci – namísto jednoho panelu s výpisem obsahu adresáře se v DOpusu používaly panely dva, což znamenalo, že bylo možné současně pracovat s dvojicí různých adresářů (a tím pádem i disků), což znamená zjednodušení při provádění základních souborových operací kopírování a přesunu (nezbývá než litovat uživatele donucené pro souborové operace používat jednopanelové programy typu Explorer :-).

Obrázek 4: Obsah disku s programem Directory Opus zobrazený ve Workbenchi.

Podobný systém dvou panelů byl na konkurenčním IBM PC použit v již zmíněném nástroji Norton Commander, ovšem sám autor Directory Opusu tvrdí, že v té době počítače (IBM) PC nepoužíval a program Norton Commander neznal – ostatně nejednalo by se o první případ v IT, kdy byl podobný nápad nezávisle na sobě implementován dvěma různými vývojáři. Program Directory Opus se stal velmi úspěšným a již na Amigu postupně vzniklo několik jeho verzí. Určitý zlom nastal ve verzi Directory Opus 4, v němž se objevila plnohodnotná podpora pro programovací jazyk ARexx, takže bylo možné Directory Opus „skriptovat“ podobně jako další aplikace s podporou ARexxu (viz též kapitolu číslo 5). Directory Opus je jednou z aplikací, která přežila ukončení vývoje platformy Amiga – moderní verze Directory Opusu jsou dostupné pro operační systém Windows, zde ovšem vládne na poli souborových manažerů poměrně tvrdá konkurence.

Obrázek 5: Directory Opus po svém spuštění (ještě se nezobrazuje obsah žádných disků).

Odkazy na další stránky s informacemi o programu Directory Opus:

  1. Amiga Lore: Directory Opus
    http://www.abime.net/arti­cles/view/article/id/7
  2. Getting to know Directory Opus
    http://www.pretentiousname­.com/opus/index.html
  3. Directory Opus (nová verze)
    http://www.gpsoft.com.au/
  4. Directory Opus (Wikipedia)
    http://en.wikipedia.org/wi­ki/Directory_Opus

Obrázek 6: Obsah samotného disku obsahujícího Directory Opus.

Obrázek 7: Ve druhém okně je zobrazen adresář s Vimem.

Obrázek 8: Prohlížeč textových souborů (tlačítko Read).

Obrázek 9: Prohlížeč binárních souborů (tlačítko Hex Read).

3. Textový editor Vim – zrozený na Amize

Většina programátorů pracujících s Linuxem se již pravděpodobně setkala s textovým editorem Vim, ovšem již méně známým faktem je, že tento editor původně vznikl právě na osobních počítačích Amiga.

Obrázek 10: Obsah disku s Vimem 3.0 zobrazený ve Workbenchi.

Vše začalo programem nazvaným Vim 1.0. Tento program vytvořil již v roce 1988 Bram Moolenaar. V podstatě se jednalo o prostou a k tomu ještě původně neúplnou imitaci původního textového editoru vi (visual), který byl používán na unixových systémech; v dnešní době se s původním vi můžeme setkat například na Solarisu, ale i pro něj je samozřejmě možné Vim bez problémů přeložit. I prvotní nezkrácený název programu – Vi IMitation – napovídá, že šlo v prvé řadě o převod původního vi na Amigu. Bram sice začal svůj program stavět na cizích zdrojových kódech (jiného klonu editoru vi, konkrétně na programu SteVIe), později však došlo několikrát k přepsání celého editoru, takže z původních zdrojových kódů není nakonec použit ani bajt. Ostatně jenom díky tomu mohla být pro Vim v dalších letech vytvořena nová licence postavená na bázi GPL.

Obrázek 11: Příkaz :version ve Vimu 3.0.

První veřejně rozšířená verze textového editoru Vim nesla číslo 1.14. Stále se ještě jednalo o program vytvořený pouze pro Amigu, psal se totiž rok 1991 a tyto počítače před sebou měly ještě několik let úspěšného komerčního života. Tato verze již přinesla několik novinek a vylepšení oproti původnímu vi, zejména jiný způsob práce s operací undo.

Verze Vim 1.22 přinesla jednu zásadní změnu. Tato verze totiž byla s úspěchem portována na unixové systémy, čímž se kruh, jež začal u původního editoru vi, uzavřel. Původní editor vi tak získal na své vlastní platformě poměrně zdatného konkurenta (Emacs byl v té době editor zcela jiné kategorie) s mnoha výtečnými funkcemi, například vícestupňovou operací undo a možností pohybu kurzorem v režimu vkládání. Vzhledem k tomu, že se Vim v mnoha ohledech vylepšil, došlo také k jeho přejmenování: z původního Vi IMitation se po zásluze stává Vi IMproved.

Obrázek 12: Příkaz :set all ve Vimu 3.0.

Vim 3, jenž byl vydán v roce 1994, nabídl vůči předchozím verzím řadu vylepšení. Mezi ně patří zejména podpora pro více oken (prozatím rozdělených horizontálně, vertikální dělení se objevuje až v šesté verzi), integrovaný systém nápovědy a také větší úroveň kompatibility s původním vi, což se projevilo zejména při práci s původními makry. Úroveň kompatibility lze řídit příkazem :set cpoptions, takže rychlá práce s editorem je možná jak pro vi-veterány, tak i pro nové uživatele, kteří mohou snadno využít všechny nové vlastnosti tohoto editoru. Již v této chvíli začal býtVim používán v mnoha linuxových distribucích, kde postupně nahrazoval další klony editoru vi, například Elvise či Nvi.

Obrázek 13: Příkaz :set all ve Vimu 3.0.

Odkazy na podrobnější informace o Vimu (nejenom) na Amize a Linuxu:

  1. The Vi Editor and its clones and programs with a vi like interface
    http://www.guckes.net/vi/
  2. www.vim.org: obsahuje verze Vimu i pro Amigu
    http://www.vim.org/
  3. Články o Vimu na Root.cz:
    http://www.root.cz/n/vim/clanky/
  4. Vim sedm – první část
    http://www.root.cz/clanky/vim-sedm-prvni-cast/
  5. vim2elvis (1.část)
    http://www.root.cz/clanky/vim2elvis-1/
  6. vim2elvis (2.část)
    http://www.root.cz/clanky/vim2elvis-2/

Obrázek 14: Obsah disku s Vimem 4.6 zobrazený ve Workbenchi.

4. Programovací jazyky a vývojové nástroje pro Amigu

Pro osobní mikropočítače Amiga bylo vyvinuto poměrně velké množství programovacích jazyků a dalších vývojových nástrojů (vývojových prostředí atd.). Jednalo se o různé interpretery a dokonce i překladače BASICu, i když se tento jazyk již v mnoha ohledech odlišoval od původních nestrukturovaných BASICů s čísly řádků – obecně je možné většinu BASICů pro Amigy považovat za vysokoúrovňové jazyky podporující strukturované programování a v některých případech i OOP. Dále pro Amigu existovalo několik překladačů programovacího jazyka C a taktéž nesmíme zapomenout na programovací jazyk REXX, jenž byl velmi důležitý pro skriptování aplikací, které implementovaly programové rozhraní pro REXX – určitou moderní obdobou tohoto rozhraní je (D)COM či CORBA. Některé vyšší programovací jazyky (a jeden assembler) dostupné pro Amigu jsou vypsány v následující tabulce:

# Název produktu
1 Amiga E
2 AmigaBASIC
3 Blitz BASIC
4 GFA BASIC
5 AMOS (programming language)
6 ASM-One Macro Assembler
7 Aztec C
8 Lattice C

Jedním ze známých překladačů programovacího jazyka C, který byl dostupný mj. i pro počítače Amiga, byl překladač nazvaný Aztec C společnosti Manx Software Systems. Jednalo se o ve své době velmi úspěšný překladač, jenž existoval jak ve verzi pro osmibitové mikroprocesory (MOS 6502, Zilog Z-80), tak i pro mikroprocesory 16bitové a 32bitové. Tento překladač byl velmi úspěšný právě na Amize, kde byl používán, společně s Lattice C, prakticky až do faktického zániku této platformy. Ovšem na IBM PC jeho sláva netrvala dlouho, především z toho důvodu, že firma Microsoft považovala segment překladačů za poměrně důležitý a snažila se vytlačit jakoukoli konkurenci z trhu (i když ve skutečnosti v té době ještě neměla vlastní céčkový překladač, jak jsme se již ostatně dozvěděli v úvodní kapitole). Společnosti Manx Software Systems se postupně zmenšoval počet platforem, na něž bylo možné překladač prodávat a přechod na podporu vestavěných systémů již přišel dosti pozdě.

Obrázek 15: Příkaz :version ve Vimu 4.6.

Obrázek 16: Příkaz :set all ve Vimu 4.6.

Obrázek 17: Příkaz :set all ve Vimu 4.6.

5. GFA Basic

Jak jsme se již zmínili ve čtvrté kapitole, existovalo pro počítače Amiga relativně velké množství interpreterů i překladačů programovacího jazyka BASIC. Přímo v AmigaOS, přesněji řečeno v AmigaOS verze 1.1 až 1.3, byl pro vývojáře a samozřejmě i pro znalejší uživatele připraven AmigaBASIC vytvořený společností Microsoft. Jednalo se původně o pouhý interpreter BASICu, ale později se začaly objevovat i jeho překladače. Již tato varianta BASICu obsahovala funkce a procedury umožňující práci s grafickým subsystémem Amigy. Mnohem zajímavější však byl GFA BASIC, jehož autorem je Frank Ostrowski, jenž je taktéž autorem staršího a dosti populárního Turbo Basicu určeného pro osmibitové domácí mikropočítače Atari. GFA BASIC ve variantě pro Amigu byl do značné míry kompatibilní s variantami tohoto jazyka určenými pro počítače Atari STMS-DOS, a to včetně příkazů pro práci s grafikou.

Obrázek 18: Disk s GFA Basicem zobrazený ve Workbenchi.

GFA BASIC dokonce obsahoval i procedury umožňující jednoduchou tvorbu GUI. Mezi další vlastnosti GFA BASICu patří podpora pro tvorbu programů, v nichž se nemusely používat čísla řádků, což je jeden z poměrně zásadních rozdílů mezi tímto jazykem a mnoha BASICy pro osmibitové mikropočítače. Dále tento programovací jazyk podporoval strukturované příkazy určené pro tvorbu programových smyček, podporu pro tvorbu uživatelských procedur a funkcí a taktéž například velmi užitečný příkaz použitelný pro blokové přesuny dat BMOVE, k dispozici byla i celá řada příkazů umožňujících jednoduše provádět operace s maticemi (MATRIX…).

Obrázek 19: Výběr souboru pro načtení do editoru GFA Basicu.

6. Práce se sprity v GFA Basicu

GFA BASIC patřil mezi skupinu programovacích jazyků, které kromě podpory práce s planární grafikou mikropočítačů Amiga podporovaly i práci se sprity. O spritech na Amize jsme se ještě v tomto seriálu nezmiňovali, takže nyní nastal nejvyšší čas tento nedostatek napravit. Podpora pro práci se sprity, tj. s grafickými objekty, které jsou vykreslovány nezávisle na pozadí, se začala ve větší míře objevovat již u některých osmibitových domácích počítačů, například osmibitových Atari i legendárního Commodore C64. Sprity se používaly především ve hrách, například pro vykreslení hráče či protihráčů, ale i v dalších aplikacích zaměřených na počítačovou grafiku.

Obrázek 20: Tento program používá některé možnosti grafického subsystému Amigy – práci se sprity a BOBy.

Velká část grafických subsystémů podporujících práci se sprity (čip GTIA u osmibitových Atari, čip VIC u Commodore C64 apod.) taktéž obsahovala takzvané kolizní registry, do kterých se automaticky ukládaly příznaky překryvu pozadí se sprity nebo mezi několika sprity navzájem. Díky tomu se při práci s pohyblivými obrazy předmětů nemusely provádět zdlouhavé testy mezi všemi zobrazovanými pixely. Originální Amigácký čipset (OCS) práci se sprity, podobně jako výše zmíněné osmibitové domácí počítače, taktéž podporoval. Pracovat bylo možné s osmi sprity (pro každý sprite byl vyhrazen samostatný DMA kanál), jejichž horizontální velikost byla rovna šestnácti pixelům a vertikální velikost byla ve své podstatě libovolná. Skutečná velikost pixelů byla nezávislá na nastaveném grafickém režimu a z něj odvozených velikostí pixelů, protože horizontální velikost pixelů u spritů odpovídala 1/320 šířky obrazovky a vertikální velikost buď 1/200 (NTSC) nebo 1/256 (PAL) její výšky. Pixely ve spritech, z nichž každý byl reprezentován dvojicí bitů, mohly být obarveny jednou ze tří barev, „čtvrtou“ barvou byla průhlednost (díky tomu mohly mít sprity při zobrazení libovolný tvar). Spojením dvojice spritů se dosáhlo zvýšení počtu barev na patnáct, šestnáctá hodnota byla opět rezervována pro průhlednost, tj. pro tu část spritu, přes který prosvítá pozadí.

Obrázek 21: Pokračování programu z předchozího screenshotu.

7. Zvýšení počtu spritů (vsprites) a BOBs

Díky jednoduchému triku známému již z počítačů Commodore C64 či osmibitových Atari, se mohl počet současně zobrazených spritů zvýšit – postačilo měnit horizontální pozici spritů na zvoleném obrazovém řádku spolu s počáteční adresou spritu v paměti, například během přerušení při zpětném běhu elektronového paprsku. Pro tento účel bylo možné využít koprocesor Copper, takže mikroprocesor nemusel být těmito operacemi vůbec zatížený. Prakticky jediným omezením při práci se sprity na počítačích Amiga je tak zobrazení osmi spritů na jednom obrazovém řádku (i to však lze obejít), poněkud složitější práce s kolizními registry při zvýšení počtu spritů a taktéž to, že rastrová data představující všechny sprity musela být umístěna v prvním megabajtu paměti (toto omezení platí především pro originální čipset, protože například modernější čipsety ECS či AGA již dokáží adresovat větší rozsah paměti).

Obrázek 22: Chyba kvůli chybějícím souborům GFA Basicu.

Kromě klasických spritů se taktéž využívaly takzvané BOBs neboli Blitter OBjects (i tyto objekty byly GFA BASICem podporovány). Tyto grafické objekty byly vykreslovány dalším koprocesorem – Blitterem a netrpěly tak omezeními spritů. Především bylo možné namísto tří či šestnácti barev využít všech 32 barev (EHB), velikost těchto objektů byla taktéž volitelná. Jednou z nevýhod bylo poněkud pomalejší vykreslování, protože se musely provádět blokové přesuny dat v paměti. Koprocesor Blitter mohl provádět i další zajímavé grafické operace, například bitový posun dat při jejich přenosu, vyplňování oblastí a dokonce i vykreslování úseček.

8. Blitz Basic

Další variantou programovacího jazyka BASIC je Blitz Basic, jehož autorem je Mark Sibly z Nového Zélandu. Jedná se o jazyk, který je sice v některých ohledech založen na syntaxi klasického Basicu a obsahuje i podobně nazvané procedury a funkce, ovšem při tvorbě aplikací nebylo nutné používat čísla řádků, Blitz Basic podporoval strukturované příkazy atd. Tento jazyk byl orientován především na tvorbu her a grafických programů – a skutečně byl k tomuto účelu používán, například pro vytváření grafických editorů ke hrám, bylo ho možné kombinovat s procedurami psanými v assembleru atd. Blitz Basic však ve skutečnosti není pouhý interpret, ale jedná se o ucelené vývojové prostředí obsahující programátorský textový editor Ted, debugger a v neposlední řadě taktéž překladač. Zajímavé je, že i Blitz Basic „přežil“ počítače Amiga a v současnosti je nabízen v různých variantách pro operační systém Windows: BlitzBasic, BlitzPlus, Blitz3D atd.

Obrázek 23: Obsah disku s Blitz Basicem ve Workbenchi.

Seznam klíčových slov Blitz Basicu lze nalézt na této stránce:

  1. Klíčová slova BlitzBasicu
    http://amiga.sourceforge.net/a­migadevhelp/phpwebdev.php

Obrázek 24: Po spuštění Blitz Basicu 2.

Obrázek 25: Informace o autorech.

Obrázek 26: Zápis programu v editoru TED.

Obrázek 27: Hlavní menu Blitz Basicu.

Obrázek 28: Spuštění testovacího programu.

root_podpora

Obrázek 29: Nastavení parametrů překladu.

9. Odkazy na Internetu

  1. Orthodox File Managers
    http://www.softpanorama.or­g/OFM/index.shtml
  2. File manager
    http://en.wikipedia.org/wi­ki/File_manager
  3. PathMinder
    http://en.wikipedia.org/wi­ki/PathMinder
  4. Commodore CDTV
    http://en.wikipedia.org/wi­ki/Commodore_CDTV
  5. Amiga
    http://en.wikipedia.org/wiki/Amiga
  6. Picasso 2
    http://www.iol.ie/~ecarro­ll/picasso2.html
  7. Hold-And-Modify
    http://en.wikipedia.org/wi­ki/Amiga_Hold-And-Modify
  8. Amiga Halfbrite mode
    http://en.wikipedia.org/wi­ki/Amiga_Hold-And-Modify
  9. HAM8 Explained
    http://www.amigans.net/mo­dules/AMS/article.php?sto­ryid=22
  10. Amiga FAQ (Frequently asked questions) (Part 1 of 4)
    http://www.faqs.org/faqs/a­miga/introduction/part1/
  11. Amiga FAQ (Frequently asked questions) (Part 2 of 4)
    http://www.faqs.org/faqs/a­miga/introduction/part2/
  12. Amiga FAQ (Frequently asked questions) (Part 3 of 4)
    http://www.faqs.org/faqs/a­miga/introduction/part3/
  13. Amiga FAQ (Frequently asked questions) (Part 4 of 4)
    http://www.faqs.org/faqs/a­miga/introduction/part4/
  14. Amiga Coding Wiki
    http://www.amigacoding.com/in­dex.php/Main_Page
  15. Amiga screen
    http://amigadev.elowar.com/re­ad/ADCD2.1/Hardware_Manual_gu­ide/node0061.html
  16. Amiga HAM mode
    http://amigadev.elowar.com/re­ad/ADCD2.1/Hardware_Manual_gu­ide/node008F.html
  17. Copper WAIT instruction
    http://amigadev.elowar.com/re­ad/ADCD2.1/Hardware_Manual_gu­ide/node004B.html
  18. Copper MOVE instruction
    http://amigadev.elowar.com/re­ad/ADCD2.1/Hardware_Manual_gu­ide/node004A.html
  19. GalaxSIM: Solutions for Digital Living
    http://www.amiga.com/
  20. Denise Pin Assignment
    http://www.ntrautanen.fi/com­puters/hardware/misc/deni­se.htm
  21. Custom Chips: Paula
    http://www.amiga-hardware.com/showhardware­.cgi?HARDID=1460
  22. Big Book of Amiga Hardware
    http://www.amiga-resistance.info/bboahfaq/
  23. Amiga Hardware Database
    http://amiga.resource.cx/
  24. ExoticA
    http://www.exotica.org.uk/wi­ki/Main_Page
  25. The absolute basics of Amiga audio
    http://www.sufo.estates.co­.uk/amiga/amimus.html
  26. Wikipedia: Tracker
    http://en.wikipedia.org/wiki/Tracker
  27. Wikipedia: Trackers
    http://en.wikipedia.org/wiki/Trackers
  28. Ultimate Soundtracker
    http://en.wikipedia.org/wi­ki/Ultimate_Soundtracker
  29. Protracker
    http://en.wikipedia.org/wi­ki/ProTracker
  30. Impulse Tracker
    http://en.wikipedia.org/wi­ki/Impulse_Tracker
  31. Scream Tracker
    http://en.wikipedia.org/wi­ki/ScreamTracker
  32. MikMod for Java
    http://jmikmod.berlios.de/
  33. List of audio trackers
    http://en.wikipedia.org/wi­ki/List_of_audio_trackers
  34. Wikipedia: Module File
    http://en.wikipedia.org/wi­ki/Module_file
  35. Wikipedia: Chiptune
    http://en.wikipedia.org/wiki/Chiptune
  36. Amiga Original chipset
    http://www.princeton.edu/~acha­ney/tmve/wiki100k/docs/Ami­ga_Original_chipset.html
  37. The Final Fantasy
    http://www.thefinalfantasy.com/
  38. Final Fantasy: Mystic Quest
    http://www.gamefaqs.com/snes/532476-final-fantasy-mystic-quest
  39. Book:Final Fantasy series
    http://en.wikipedia.org/wi­ki/Book:Final_Fantasy_seri­es
  40. The World of Final Fantasy
    http://www.mobygames.com/fe­atured_article/feature,18/sec­tion,114/
  41. Final Fantasy Style
    http://www.mobygames.com/fe­atured_article/feature,18/sec­tion,116/
  42. List of Final Fantasy video games
    http://en.wikipedia.org/wi­ki/List_of_Final_Fantasy_vi­deo_games
  43. SQUARE ENIX CO.
    http://www.square-enix.com/
  44. Square Enix : Corporate history
    http://www.square-enix.com/jp/company/e/history/
  45. The History of Computer Role-Playing Games Part 1: The Early Years (1980–1983)
    http://www.gamasutra.com/fe­atures/20070223a/barton01­.shtml
  46. The History of Computer Role-Playing Games Part 2: The Golden Age(1985–1993)
    http://www.gamasutra.com/fe­atures/20070223b/barton_pfv­.htm
  47. Dungeon Master – Return To Chaos
    Window port of DM
  48. Dungeon Master (video game)
    http://en.wikipedia.org/wi­ki/Dungeon_Master_(video_ga­me)
  49. Dungeon Master Encyclopaedia
    http://dmweb.free.fr/
  50. Dungeon Master Overview
    http://dmweb.free.fr/?q=node/247
  51. Chaos Strikes Back Overview
    http://dmweb.free.fr/?q=node/249
  52. Dungeon Master II Overview
    http://dmweb.free.fr/?q=node/250
  53. Dungeon Master – Return To Chaos
    http://www.ragingmole.com/RTC/
  54. Dungeon Master Speed Run in 20 minutes! Part 1/2
    http://www.youtube.com/wat­ch?v=Ho5E05Bi3bU
  55. Dungeon Master Speed Run in 20 minutes! Part 2/2
    http://www.youtube.com/wat­ch?v=Fpht4dWOnGE
  56. Dungeon Master CZ
    http://dm.zpc.cz/
  57. Dungeon Master
    http://rpg.yin.cz/d/dungeon-master/
  58. Return to Chaos (CZ info)
    http://dm.zpc.cz/?sekce=rtcinfo
  59. Dungeon Master – kouzla (CZ)
    http://dm.zpc.cz/?sekce=dmkouzla
  60. Dungeon Master Java (CZ info)
    http://dm.zpc.cz/?sekce=dmjavainfo
  61. Dungeon Master Java (CZ novinky a download)
    http://dm.zpc.cz/?sekce=dmja­vadownload
  62. Best of Old Games: Dungeon Master
    http://www.bestoldgames.net/stare-hry/dungeon-master.php
  63. Muzeum: Dungeon Master – klasika všech klasik
    http://www.doupe.cz/defau­lt.aspx?article=124596
  64. Návody – Dungeon Master 1
    http://www.abcgames.cz/?p=na­vody_zobraz&id=1307
  65. Super NES Programming/Initialization Tutorial
    http://en.wikibooks.org/wi­ki/Super_NES_Programming/I­nitialization_Tutorial
  66. SNES Development sites
    http://www.snescentral.com/de­velopment.php
  67. Super NES Programming
    http://en.wikibooks.org/wi­ki/Super_NES_Programming
  68. Super Nintendo Development Wiki
    http://wiki.superfamicom.or­g/snes/show/HomePage
  69. 6502.org
    http://www.6502.org/
  70. The 6502/65C02/65C816 Instruction Set Decoded
    http://www.llx.com/~nparker/a2/op­codes.html
  71. 6502 Addressing Modes
    http://www.obelisk.demon.co­.uk/6502/addressing.html
  72. HuC6280 CPU
    http://shu.emuunlim.com/dow­nload/pcedocs/pce_cpu.html
  73. Hudson Soft HuC6280 (Wikipedia)
    http://en.wikipedia.org/wi­ki/Hudson_Soft_HuC6280
  74. William D. Mensch jr.
    http://www.computerhallof­fame.org/index.php?option=com_con­tent&view=article&id=31&I­temid=4
  75. Bill Mensch
    http://en.wikipedia.org/wi­ki/Bill_Mensch
  76. SPC 700 Documentation
    http://emureview.ztnet.com/de­veloperscorner/SoundCPU/spc­.htm
  77. Super NES Programming/SPC700 reference
    http://en.wikibooks.org/wi­ki/Super_NES_Programming/SPC700_re­ference
  78. Mega Lo Mania
    http://www.mobygames.com/game/mega-lo-mania
  79. Mega Lo Mania
    http://en.wikipedia.org/wi­ki/Mega_Lo_Mania
  80. Cannon Fodder
    http://www.allgame.com/ga­me.php?id=739
  81. Cannon Fodder [European]
    http://www.allgame.com/ga­me.php?id=15717
  82. Retrospective: Cannon Fodder
    http://www.rockpapershotgun­.com/2007/11/11/retrospec­tive-cannon-fodder/
  83. Cannon Fodder
    http://en.wikipedia.org/wi­ki/Cannon_Fodder_(video_ga­me)
  84. BC Racers
    http://en.wikipedia.org/wi­ki/BC_Racers
  85. Desert Strike Advance
    http://www.ign.com/articles/2002/06/03/de­sert-strike-advance
  86. Three Strikes And You're Out
    http://www.eurogamer.net/ar­ticles/three-strikes-and-youre-out-article
  87. Head 2 Head: Desert Strike – SNES vs MegaDrive
    http://www.retrogamescollec­tor.com/head-2-head-desert-strike-snes-vs-megadrive/
  88. Desert Strike: Return to the Gulf
    http://en.wikipedia.org/wi­ki/Desert_Strike:_Return_to_the_Gulf
  89. The Chaos Engine (Soldiers of Fortune USA)
    http://www.bitmap-brothers.co.uk/our-games/past/chaos-engine.htm
  90. The Chaos Engine series
    http://www.mobygames.com/game-group/chaos-engine-series
  91. The Chaos Engine
    http://en.wikipedia.org/wi­ki/Chaos_Engine
  92. The Chaos Engine 2
    http://www.bitmap-brothers.co.uk/our-games/past/chaos-engine2.htm
  93. The Chaos Engine series
    http://www.mobygames.com/game-group/chaos-engine-series
  94. Moby Games: Speedball series
    http://www.mobygames.com/game-group/speedball-series
  95. Bitmap Brothers: Speedball (original)
    http://www.bitmap-brothers.co.uk/our-games/past/speedball.htm
  96. Bitmap Brothers: Speedball 2: Brutal Deluxe
    http://www.bitmap-brothers.co.uk/our-games/past/speedball2.htm
  97. Wikipedia: Speedball (video game)
    http://en.wikipedia.org/wi­ki/Speedball_(video_game)
  98. Golden Axe
    http://strategywiki.org/wi­ki/Golden_Axe
  99. Golden Axe (series)
    http://en.wikipedia.org/wi­ki/Golden_Axe_(series)
  100. Golden Axe II
    http://www.gamespot.com/golden-axe-ii/platform/genesis/
  101. Golden Axe II
    http://strategywiki.org/wi­ki/Golden_Axe_II
  102. Golden Axe III
    http://strategywiki.org/wi­ki/Golden_Axe_III
  103. Game Freaks 365: Sonic the Hedgehog 2
    http://gamefreaks365.com/re­view.php?artid=1631
  104. Sonic The Hedgehog 2 (GENESIS)
    http://web.archive.org/web/20070831062914/htt­p://sonic.neoseeker.com/so­nic_the_hedgehog2/GENESIS/pa­ges/release_dates_backgrou­nd3/
  105. Neoseeker: Sonic the Hedgehog 2 (16-bit)
    http://www.neoseeker.com/Ga­mes/Products/GENESIS/sonic_the_hed­gehog2/
  106. Wikipedia: Sonic the Hedgehog 2 (16-bit)
    http://en.wikipedia.org/wi­ki/Sonic_the_Hedgehog2_(16-bit)
  107. Gamespot: Disney's Aladdin
    http://www.gamespot.com/disneys-aladdin-in-nasiras-revenge/platform/ps/
  108. Moby Games: Disney's Aladdin
    http://www.mobygames.com/game/disneys-aladdin
  109. Internet Movie Database: Aladdin (I) (Video Game 1993)
    http://www.imdb.com/title/tt0204798/
  110. Wikipedia: Disney's Aladdin (video game)
    http://en.wikipedia.org/wi­ki/Disney's_Aladdin_(vide­o_game)
  111. Eric Chahi
    http://en.wikipedia.org/wi­ki/Eric_Chahi
  112. Wikipedia: Another World (video game)
    http://en.wikipedia.org/wi­ki/Another_World_(video_ga­me)
  113. SN76489 sound chip details
    http://web.inter.nl.net/u­sers/J.Kortink/home/articles/sn76489/
  114. SN76464 datasheet
    http://www.ic-on-line.cn/view_online.php?id=1106623&fi­le=0054%5Csn76494_409323.pdf
  115. Texas Instruments SN76489 (Wikipedia)
    http://en.wikipedia.org/wi­ki/Texas_Instruments_SN76489
  116. SN76489
    http://www.smspower.org/De­velopment/SN76489?sid=ae16503f2fb18070f3f40f2af­56807f1
  117. YM2413 FM Operator Type-LL (OPLL) Application Manual
    http://www.smspower.org/ma­xim/Documents/YM2413Appli­cationManual?sid=28c370e1fcac51d57­74319979bf96f4c
  118. Programming the Sega MegaDrive
    http://darkdust.net/writin­gs/megadrive
  119. MegaDrive / SegaGenesis docs
    http://www.genny4ever.net/in­dex.php?page=docs
  120. IGN: Top 25 Consoles
    http://www.ign.com/top-25-consoles/13.html
  121. Sega Mega Drive
    http://sega.jp/archive/segahard/md/
  122. Sega Archives
    http://sega.jp/archive/segahard/
  123. Sega Genesis
    http://www.dmoz.org/Games/Vi­deo_Games/Console_Platfor­ms/Sega/Genesis/
  124. The Retro Gen Plays Genesis Games
    http://uk.gamespy.com/arti­cles/998/998637p1.html
  125. The Sega Mega Drive/Genesis
    http://www.captainwilliam­s.co.uk/sega/megadrive/me­gadrive.php
  126. Sega Game Gear 101: A Beginner's Guide
    http://www.racketboy.com/re­tro/sega/gamegear/sega-game-gear-101-a-beginners-guide
  127. SEGA GameGear | Marc's Realm
    http://darkdust.net/retro­gaming/gamegear
  128. Sega Master System Hardware
    http://www.smspower.org/De­velopment/Documents
  129. Sega Master System Museum
    http://alexkidd.com/
  130. Jadeite's Sega Master System Museum
    http://rp_gamer.tripod.com/SMS/1.html
  131. Sega Master System (Wikipedia)
    http://en.wikipedia.org/wi­ki/Sega_Master_System
  132. Sega Card (Wikipedia)
    http://en.wikipedia.org/wi­ki/Sega_Card
  133. Sega Master System VDP documentation
    http://www.smspower.org/u­ploads/Development/msvdp-20021112.txt?sid=28c370e1fcac51d­5774319979bf96f4c
  134. bee – The Multi-Console Emulator
    http://www.thebeehive.ws/
  135. TurboGrafx-16 TurboExpress
    http://www.allgame.com/plat­form.php?id=17673
  136. HuC6280 CPU
    http://shu.emuunlim.com/dow­nload/pcedocs/pce_cpu.html
  137. Hudson Soft HuC6280 (Wikipedia)
    http://en.wikipedia.org/wi­ki/Hudson_Soft_HuC6280
  138. TurboGrafx-16 (Wikipedia)
    http://en.wikipedia.org/wi­ki/TurboGrafx-16
  139. MagicEngine – TurboGrafx-16 emulator
    http://www.magicengine.com/
  140. Motorola 68000 CPU
    http://en.wikipedia.org/wiki/68000
  141. Motorola 68008
    http://en.wikipedia.org/wi­ki/Motorola_68008
  142. Motorola 68020
    http://en.wikipedia.org/wi­ki/Motorola_68020
  143. Motorola 68030
    http://en.wikipedia.org/wi­ki/Motorola_68030

Byl pro vás článek přínosný?