ROM

Z PMD 85 Infoserver

Revízia z 18:41, 22. máj 2014; Rombor (Diskusia | príspevky)
(rozdiel) ← Staršia verzia | Zobrazenie aktuálnej úpravy (rozdiel) | Novšia verzia → (rozdiel)
ROM pamäte


Obsah


PMD 85, rovnako ako mnoho iných počítačov, obsahuje pamäte typu ROM, v ktorých je uložený firmvér, tzv. MONITOR. PMD 85 obsahuje aj tzv. vymeniteľný ROM Modul, v ktorom je štandardne umiestnený jazyk BASIC G. Do ROM Modulu sa však umiestňovali aj iné programovacie jazyky a nástroje, ovládače tlačiarní a plotrov alebo i rôzne hry. Vzhľadom na možnosti doby, kedy počítač vznikol, sú použité PROM alebo EPROM (asi podľa toho, čo bolo práve k dispozícii) o veľkosti 1kB (MHB8608, MHB8708, 2708, К573РФ1) alebo 2kB (MHB2616, MHB2716, К573РФ5).

Základný MONITOR

Umiestnenie ROM Monitora na DPS PMD 85
Umiestnenie ROM Monitora na DPS PMD 85

MONITOR je základné programové vybavenie, ktoré umožňuje komunikáciu s mikropočítačom na najnižšej úrovni. Vytvára isté oddelenie a súčasne prepojenie medzi technickým vybavením mikropočítača a používateľom. MONITOR je uložený rezidentne v pamätiach typu (E)PROM. Monitor má v PMD 85 veľkosť 4kB alebo 8kB a je umiestnený na hlavnej DPS v štyroch (E)PROM 1kB, resp. 2kB. Existujú ale aj rozšírené verzie MONITORov s odlišnou veľkosťou, vyžadujúce obvykle hardvérovú úpravu PMD 85.

(E)PROM MONITORa v PMD 85 (0, 1, 2, 2A) sú označované písmenami E, D, C a B. Tieto písmenové označenia mávajú buď prefix 00, 01 alebo 02 (zvyčajne PROM-ky), alebo postfix 1, 2, A (zvyčajne EPROM-ky s nálepkou). Ale možno existovali aj iné varianty. PMD 85-3, ktoré nám prešli rukami, mali vždy osadené PROM 2616 a označenie bolo robené iba nálepkami. PROM MONITORa PMD 85-3 sú rovnako označované písmenami B až E a mávajú k označeniu pridané číslo 3. ROM sa umiestňujú v poradí E-D-C-B od mikroprocesora.

Súbory s obsahom jednotlivých ROM majú príponu .bin. V názve súboru je postfix podľa písmenného označenia. Súbory s príponou .rom predstavujú spojenie jednotlivých obsahov ROM do jedného súboru a sú určené pre Emulátor PMD 85.

PMD 85-1

Základný MONITOR, ktorý je v prvých modeloch s označením PMD 85, PMD 85-1 a aj v "prototypovom" PMD 85-0. Okrem pôvodnej verzie existovali aj upravené verzie.

  • monit1 - pôvodná verzia
    • veľkosť 4kB (4x 1kB)
    • umiestnenie v pamäťovom priestore od adresy 8000h
  • monit1u - upravená verzia
    • upravená inicializácia systémového PIO (8004h)
    • mazanie pamäti 7000h-7EFFh nahradené inicializáciou časovača 8253 (8276h)
    • veľkosť 4kB (4x 1kB)
    • umiestnenie v pamäťovom priestore od adresy 8000h
  • monit1cs - rozšírený monit1u
    • rozšírenie o úplnú znakovú sadu vrátane znakov s diakritikou, ktoré sa zapisujú cez kľúčové klávesy K0 až K11 (popis bol uvedený v Mikrobáze č. 8, str. 34)
    • nutná HW úprava
    • veľkosť 5kB (5x 1kB)
    • umiestnenie v pamäťovom priestore od adresy 8000h

PMD 85-2(A)

Základný MONITOR, ktorý je v modeloch s označením PMD 85-2 a PMD 85-2A. Uvedené verzie MONITORov sú tu označené ako 2, 2A a 2B, sú však použiteľné pre ktorýkoľvek model PMD 85-2 a aj PMD 85-2A, pretože v žiadnej z týchto verzií MONITORa sa nijako neriešia HW rozdiely medzi modelmi PMD 85-2 a PMD 85-2A. Ak je potrebné z nejakého dôvodu vymeniť ROM MONITORa v PMD 85-2 alebo PMD 85-2A, tak odporúčame použiť verziu 2B.

Oproti MONITORu pre PMD 85-1 boli prevedené mnohé zmeny:
  • ak je založený ROM Modul, po zapnutí alebo po Resete sa do pamäti načíta BASIC G (alebo iný program, ak je na to prispôsobený) a ihneď sa spustí
  • obsahuje úplnú znakovú sadu ISO-7, tzn. malú aj veľkú abecedu a ďalšie rôzne znaky, ktoré síce nie sú na klávesnici, ale sú prístupné užívateľovi
  • automatické opakovanie klávesov pri pridržaní klávesu
  • akustická signalizácia pri stlačení klávesu
  • mnohé klávesy majú ďalšie významy
  • nie je potrebná medzera medzi príkazom a parametrami
  • príkaz DUMP vypisuje obsah pamäte bez prestávky s možnosťou pozastavenia pomocou klávesu Shift a zastavenia klávesom Stop
  • grafický interpolátor aj vypisovanie znakov sú niekoľkonásobne zrýchlené
  • pri snímaní údajov z magnetofónu je signál programovo analyzovaný, čo umožnilo vyriešiť fázovo nezávislé snímanie nahrávok, tzn. záznam dát je nezávislý na type magnetofónu
  • číslo nahrávky môže byť 00 až 99


  • monit2.rom - verzia 2
    • veľkosť 4kB (4x 1kB)
    • umiestnenie v pamäťovom priestore od adresy 8000h
  • monit2A.rom - verzia 2A
    • veľkosť 4kB (4x 1kB)
    • umiestnenie v pamäťovom priestore od adresy 8000h
    • monit2A.rom sa od monit2.rom líši iba v rutine HEADIN na adrese 8EBEh
  • monit2B.rom - verzia 2B
    • veľkosť 4kB (4x 1kB)
    • umiestnenie v pamäťovom priestore od adresy 8000h
    • rutiny ROLL (808Eh), WRCHAR (854Ah) a ERASE (85A7h) sú upravené tak, že nepoužívajú register SP a tak nie je problém s využívaním prerušenia

PMD 85-3(B)

Základný MONITOR, ktorý je v modeloch s označením PMD 85-3 a PMD 85-3B. Oba modely sa od seba hardvérovo nelíšia. Rozdiel je iba v samotnom MONITORe. Ak je potrebné z nejakého dôvodu vymeniť ROM MONITORa v PMD 85-3 alebo PMD 85-3B, tak odporúčame použiť verziu 3B.

Oproti MONITORu pre PMD 85-2(A) boli prevedené rôzne zmeny:
  • MONITOR je umiestnený od adresy 0E000h namiesto 8000h (prekrýva sa tak s VideoRAM
  • využíva pamäť RAM v oblasti 0BC00h-0BFFFh pre SW kľúče, buffer dialógového riadku a stránkovacie rutiny
  • po zapnutí počítača sa vykonáva test pamäti ROM na kontrolný súčet a test pamäti RWM pomocou zápisu a čítania 4 vzoriek - 00h, 55h 0AAh, 0FFh
  • po teste pamätí sa testuje prítomnosť disketovej jednotky PMD 32 a ak je pripojená, pokúsi sa z nej naBOOTovať
  • obsahuje modifikovanú znakovú sadu v kódovaní KOI-8čs, vrátane znakov s diakritikou
  • obsahuje rutiny pre prácu s textovými a grafickými oknami, ktoré využíva BASIC V3.0
  • obsahuje ovládač PMD 32 a základ rutín BIOSu pre operačný systém MIKROS
  • obsahuje rutiny pre prechod do režimu kompatibility s PMD 85-2
  • oblasť pre SW kľúče je presunutá z adresy 7E00h na 0BC00h
  • buffer dialogového riadku a zásobník CPU sú presunuté z aresy 7F00h na 0BE00h


  • monit3.rom - verzia 3
    • veľkosť 8kB (4x 2kB)
    • umiestnenie v pamäťovom priestore od adresy 0E000h
  • monit3B.rom - verzia 3B
    • veľkosť 8kB (4x 2kB)
    • umiestnenie v pamäťovom priestore od adresy 0E000h
    • rutiny ROLL (0E08Eh), ROLL2 (0FF70h), WRCHAR (0E54Ah) a ERASE (0E5A7h) sú upravené tak, že nepoužívajú register SP a tak nie je problém s využívaním prerušenia
    • kvôli týmto úpravám bola upravená aj rutina pre režim kompatibility (0FB64h) a tabuľky s tým súvisiace

Basic G

PMD 85 bolo štandardne vybavené ROM Modulom s programovacím jazykom BASIC G. Jednotlivé modely PMD 85 majú odlišnú verziu BASICu G, ktorá je ale vždy spätne kompatibilná.

(E)PROM BASICu v PMD 85 (0, 1, 2, 2A) sú označované písmenami F až N. Tieto písmenové označenia mávajú buď prefix 00, 01 alebo 02 (zvyčajne PROM-ky), alebo postfix 1, 2, A (zvyčajne EPROM-ky s nálepkou). Ale možno existovali aj iné varianty. PMD 85-3, ktoré nám prešli rukami, mali vždy osadené PROM 2616 a označenie bolo robené iba nálepkami. PROM BASICu PMD 85-3 sú označované číslicami 1 až 5. ROM sa umiestňujú v poradí, ako je to ukázané na obrázkoch.

Súbory s obsahom jednotlivých ROM majú príponu .bin. V názve súboru je postfix podľa písmenného/číselného označenia. Súbory s príponou .rmm predstavujú spojenie jednotlivých obsahov ROM do jedného súboru a sú určené pre Emulátor PMD 85.

Umiestnenie ROM BASICu v ROM Module 16kB (16x1KB)
Umiestnenie ROM BASICu v ROM Module 16kB (16x1KB)
Umiestnenie ROM BASICu v ROM Module 32kB (16x2KB)
Umiestnenie ROM BASICu v ROM Module 32kB (16x2KB)
Umiestnenie ROM BASICu v3 v ROM Module 32kB (16x2KB)
Umiestnenie ROM BASICu v3 v ROM Module 32kB (16x2KB)

PMD 85-1

BASIC-G V1.0 pre PMD 85-1. Spúšťa sa z Monitora príkazom BASIC G.

  • basic1.rmm
    • veľkosť 9kB (9x 1kB)
    • umiestnenie v ROM module od adresy 0000h
    • cieľové umiestnenie v pamäti od adresy 0000h

PMD 85-2

BASIC-G V2.0 pre PMD 85-2. Ak je ROM Modul s BASICom zasunutý, po zapnutí počítača alebo po Resete sa spustí automaticky.

Oproti predošlej verzii BASICu V1.0 obsahuje BASIC V2.0 mnoho zmien:
  • číslo riadku môže byť iba v intervale <0,32769>
  • v jednom riadku môže byť viac grafických príkazov
  • premenné X a Y je možné používať, ako bežné premenné, aj keď sa používajú grafické príkazy
  • goniometrické funkcie sa počítajú presne na plných 6 až 7 desatinných miest
  • prepínanie medzi počítaním v stupňoch (DEG) alebo v radiánoch (RAD)
  • príkaz MONIT bol nahradený stlačením Shift+RCL
  • riadky programu dlhšie ako 48 znakov sa vypíšu do dvoch riadkov
  • možnosť zmeniť dĺžku vypisovaného riadku
  • možnosť nastavenia miesta pre výpis textu na obrazovku pomocou príkazu PRINT AT
  • možnosť nastavenia farby/spôsobu zobrazovania pomocou príkazov PEN a INK namiesto POKE
  • možnosť pozastaviť vykonávanie programu a výpisu textu pomocou klávesu Shift
  • možnosť zápisu celých čísel v šestnástkovej sústave
  • možnosť jednoduchej ochrany programu proti prezeraniu a kopírovaniu


  • basic2.rmm
    • veľkosť 9kB (9x 1kB)
    • umiestnenie v ROM module od adresy 0000h
    • cieľové umiestnenie v pamäti od adresy 0000h

PMD 85-2A

BASIC-G V2.A pre PMD 85-2A. Ak je ROM Modul s BASICom zasunutý, po zapnutí počítača alebo po Resete sa spustí automaticky.

Oproti predošlej verzii BASICu V2.0 obsahuje BASIC V2.A drobné zmeny:
  • využíva rozšírenú pamäť 9000h-9FFFh a 0BE00-0BFFFh
  • zápisník BASICu G je presunutý z adresy 5E00h na 0BE00h
  • voľná pamäť pre program je predĺžená o 4,5kB na 19kB
  • oblasť pre reťazce je presunutá z adresy 6000h na 9000h


  • basic2A.rmm
    • veľkosť 9kB (9x 1kB)
    • umiestnenie v ROM module od adresy 0000h
    • cieľové umiestnenie v pamäti od adresy 0000h

PMD 85-3

BASIC-G V3.0 pre PMD 85-3. Ak je ROM Modul s BASICom zasunutý a nie je pripojená disketová jednotka PMD 32, po zapnutí počítača alebo po Resete sa spustí automaticky.

Oproti predošlej verzii BASICu V2.0 obsahuje BASIC V3.0 mnohé zmeny:
  • využíva pamäť RAM v oblasti 8000h-0BBFFh
  • oblasť pre reťazce je presunutá z adresy 6000h na 9E00h
  • zápisník BASICu G je presunutý z adresy 5E00h na 0AE00h
  • oblasť pre načítanie 1kB ROM z ROM Modulu je presunutá z adresy 7000h na 0B000h
  • voľná pamäť pre program je až 30,5kB
  • rozšírený príkaz BEEP, ktorým je možné generovať tóny rôznej výšky a dĺžky
  • nové príkazy WINDOWA a WINDOWG pre definovanie grafických a textových okien
  • nové príkazy GCLEARA a GCLEARG pre zmazanie definovaných grafických a textových okien
  • nový príkaz REN na prečíslovanie riadkov programu
  • rozšírený príkaz NEW pre zmazanie a obnovenie časti programu


  • basic3.rmm
    • veľkosť 10kB (5x 2kB)
    • umiestnenie v ROM module od adresy 0000h
    • cieľové umiestnenie v pamäti od adresy 0000h (9kB) a 0B800h (1kB)

ROM Modul

Existovalo niekoľko verzií DPS ROM Modulu. V modeloch PMD 85-1, 2 a 2A sa najčastejšie objavovali verzie 16x1kB. 16x2kB veľmi zriedka. V PMD 85-3 už boli iba 16x2kB verzie ROM Modulu, ale DPS bola odlišná od 16x2kB DPS pre predošlé modely (viď. obrázky vyššie).


Consul 2717

Didaktik Alfa

Maťo