ÚVOD | Novinky | 8 Bitů | Příslušenství | Drobnosti | TTL | Kontakt
SAPI-1 | ONDRA | PMI-80 | PMD-85 | klony PMD-85 | klony SM50/40 | PETR | PLAN-80A | IQ151 | TNS | FK-1 | HVĚZDA | SP 830 | PCS 1-QR6000
ZPS | Technické prostředky | Programové vybavení | Dokumentace
Prirucka uzivatele programu TOOL-48 V2.1
Získáno ze společného úložiště (DROPBOX). Autor mi není znám.
***********************************************************************
***********************************************************************
TTTTTTTTT OOOO OOOO LLL 444 8888
TTTTTTTTT OOOOOOOO OOOOOOOO LLL 444 888 888
TTT OOO OOO OOO OOO LLL 444 888 888
TTT OOO OOO OOO OOO LLL 444 888 888
TTT OOO OOO OOO OOO LLL XXX 444 444 8888
TTT OOO OOO OOO OOO LLL XXX 44444444444 888 888
TTT OOO OOO OOO OOO LLL 444 888 888
TTT OOOOOOOO OOOOOOOO LLLLLLL 444 888 888
TTT OOOOO OOOOO LLLLLLL 444 8888
***********************************************************************
***********************************************************************
Verze:
------
TOOL-48 V2.1 brezen 1986
P R I R U C K A U Z I V A T E L E
-------------------------------------
Revize:
-------
2.4.1986
TOOL-48 V2.1 strana: 1
O B S A H
---------
prikaz : str.
1. UVOD . . . . . . . . . . . : 3
1.1 Charakteristika . . . . . . . . : 3
1.2 Implementace . . . . . . . . . : 3
1.3 Obsazeni pameti . . . . . . . . : 4
2. SPOUSTENI PROGRAMU . . . . . . . : 5
3. POPIS PRIKAZU . . . . . . . . . : 6
3.1 Pouzita symbolika . . . . . . . . : 5
3.2 Zadavani ciselnych paramteru . . . . . : 5
3.3 Systemove prikazy . . . . . . . . : 6
3.3.1 Assembler . . . . . . . . . . A : 6
3.3.1.1 Volba modu . . . . . . . . . : 6
3.3.1.2 Volba zpracovani pri druhem pruchodu . . . : 6
3.3.1.3 Omezeni assembleru ASM48 . . . . . . : 7
3.3.2 Simulace RESET. . . . . . . . . B : 7
3.3.3 Hexadecimalni aritmetika . . . . . . H : 7
3.3.4 Start zavedeneho programu . . . . . . J : 7
3.3.5 Restart editoru EDIT . . . . . . . P : 8
3.3.6 Ukonceni prace simulatoru . . . . . . Q : 8
3.3.7 Nacteni obsahu pameti ze souboru HEX . . . R : 8
3.3.8 Zpetny preklad. . . . . . . . . V : 8
3.3.9 Zapis obsahu pameti do souboru . . . . W : 8
3.3.10 Zapis koncoveho bloku formatu HEX . . . E : 9
3.3.11 Tabulka symbolu . . . . . . . . IDC S : 9
3.4 Volba rezimu simulace . . . . . . . : 10
3.4.1 Body zastaveni, oblasti trasovani . . . . IDC[BT] : 10
3.4.2 Zpracovani podprogramu . . . . . . IDC[PR] : 10
3.4.3 Krokovani . . . . . . . . . . T S : 11
3.4.4 Beh programu . . . . . . . . . T G : 11
3.4.5 Rychly beh programu . . . . . . . T F : 11
3.4.6 Volba trasovani podminenych skoku . . . . T L : 12
3.4.7 Zpracovani instrukci vstupu a vystupu . . . T I : 12
3.4.8 Hexadecimalni/binarni tvar vstupu/vystupu portu T B : 12
3.4.9 Volba vypisu kodu, stradace a stavoveho slova . T C : 12
3.4.10 Volba vypisu mnemotechnickeho tvaru instrukce . T V : 12
3.4.11 Volba vypisu hw. priznaku . . . . . . T H : 13
3.4.12 Volba vypisovanych registru . . . . . T R : 13
3.4.13 Volba vypisovanych portu . . . . . . T P : 13
3.4.14 Volba vypisu oblasti pameti . . . . . T M : 14
3.4.15 Volba simulace vnejsi datove pameti . . . T D : 14
TOOL-48 V2.1 strana: 2
3.5 Vypis a zmena obsahu simulovanych casti obvodu : 14
3.5.1 Naplneni oblasti pameti konstantou . . . F : 14
3.5.2 Presun oblasti pameti . . . . . . . M : 14
3.5.3 Vypis a zmena obsahu pameti . . . . . : 14
3.5.3.1 Vypis a zmena obsahu pameti registru . . . S R : 14
3.5.3.2 Vypis a zmena obsahu vnejsi pameti dat . . S D : 15
3.5.3.3 Vypis obsahu pameti programu . . . . . S C : 15
3.5.3.4 Zmena obsahu pameti programu . . . . . S P : 15
3.5.3.5 Oblasti vypisu pameti . . . . . . IDC M : 15
3.5.3.6 Vypis obsahu oblasti pameti . . . . . S <n> : 15
3.5.4 Vypis a zmena obsahu registru . . . . . X R : 16
3.5.5 Vypis a zmena obsahu portu . . . . . X P : 16
3.5.6 Vypis a zmena obsahu hardwarovych priznaku . X H : 16
3.5.7 Vypis a nulovani citace strojnich cyklu . . DC C : 16
3.6 Rizeni interpretace . . . . . . . : 17
3.6.1 Znovuspusteni interpretu . . . . . "mezera" : 17
3.6.2 Pocet kroku . . . . . . . . . 0-9 : 17
3.6.3 Simulace vnejsiho preruseni . . . <ctrl/shift I> : 17
3.6.4 Inkrementace citace udalsoti . . . <ctrl/shift T> : 18
3.6.5 Dokonceni podprogramu mimo rizenou simulaci <ct R/sh M> : 18
3.6.6 Spusteni interpretu instrukci . . . . . G : 18
4. STRUCNY PREHLED PRIKAZU . . . . . . : 19
5. CHYBOVA HLASENI . . . . . . . . : 20
5.1 Chybova hlaseni simulatoru . . . . . : 20
5.2 Chybova hlaseni assembleru ASM48 . . . . : 20
TOOL-48 V2.1 strana: 3
1. U V O D
=======
1.1 CHARAKTERISTIKA
---------------
Program TOOL-48 je urcen k vyvoji programoveho vybaveni pro jedno-
cipove mikropocitace rady MHB 8048 na mikropocitaci SAPI-1 s monitorem
V4+.
System TOOL-48 se sklada z modulu:
EDIT - program slouzici k priprave a modifikaci textovych souboru,
ulozenych v pameti nebo na vnejsim mediu.
Prikazy tohoto programu jsou shodne s prikazy editoru
z TOOL ASM-80.
ASM48 - krizovy assembler, umoznujici preklad zdrojoveho textu do stro-
joveho kodu procesoru 8048 do programove pameti systemu TOOL-48.
Zdrojovy text lze cist z pameti editoru EDIT nebo z v vnejsiho
media.
SIM48 - interaktivni ladici program, ktery umoznuje provadeni uzivatel-
skeho programu a vypis jeho stavu po jednotlivych instrukcich
nebo na predem definovanych bodech zastaveni.
Tvar vypisu je volitelny a lze do nej zaradit zobrazeni vsech
simulovanych casti obvodu 8048, operacniho kodu i mnemotechnic-
keho tvaru provedene instrukce. Dale umoznuje simulaci preruse-
ni, zmeny obsahu vsech simulovanych casti obvodu. Ladeni neni
provadeno v realnem case, interaktivni zpusob prace je vsak
velmi efektivni.
Jeho jadrem je uplny simulator instrukci procesoru 8048, ktery
spolupracuje s dalsimi simulovanymi castmi obvodu:akumulatorem,
stavovym slovem, porty(BUS, P1,P2,P4,P5,P6,P7), citacem/casova-
cem, interni pameti RAM - 64 byte (dale pamet registru), exter-
ni pameti RAM - 256 byte (dale pamet dat), prerusovaci logikou
a testovatelnymi vstupy. Pro uzivatelsky program je k dispozici
pamet programu s kapacitou 4 Kbyte.
REAS48 - program pro zobrazeni obsahu programove pameti TOOL-48 v mnemo-
technickem tvaru
SYST - soubor systemovych prikazu, ktere vyuzivaji sluzeb MONITORU V4+
Lze jich vyuzit pro praci se soubory a tez pro prenaseni dat do
emulatoru TEMS-49, pokud bude tento pouzit k ladeni programu
v realnem case.
1.2 IMPLEMENTACE
------------
Z MONITORU V4+ systemu SAPI-1 pouziva TOOL-48 podprogramy:
CI (consol input), CO (consol output), CSTS (consol status),
RI (reader input), PO (punch output), LO (list output), dale
funkce pro obsluhu displeje (EDIT) a funkce MIKOSU pro praci s kazetou.
TOOL-48 V2.1 strana: 4
1.3 OBSAZENI PAMETI
---------------
==========================================
FFFFH ENDRAM:
textovy buffer editoru
A1DDH ETSYMB:
------------------------------------------
tabulka symbolu
89DDH BTSYMB:
------------------------------------------
pamet programu MB0, MB1
79DDH PROGM:
------------------------------------------
MAPA+6: ENDRAM stop adr. TEXTBUF
MAPA+4: ETSYMB stop adr. TSYMB
MAPA+2: BTSYMB start adr. TSYMB
79D7H MAPA: PROGM start adr. pameti programu
------------------------------------------
pracovni oblast assembleru
------------------------------------------
pracovni oblast simulatoru
------------------------------------------
pracovni oblast editoru
760EH
==========================================
==========================================
7601H
ASM-48
------------------------------------------
SIM-48
------------------------------------------
SYST
4C00H START:
------------------------------------------
EDIT
4400H
==========================================
TOOL-48 V2.1 strana: 5
2. S P O U S T E N I S I M U L A T O R U
========================================
System TOOL-48 se spousti prikazem "T" monitoru (od adresy 4C00H).
Program vypise hlavicku "TOOL-48 Vx.x" a ohlasi se napovednym znakem
dekoderu prikazu ":". Pritom se inicializuji parametry a pracovni rezim
simulatoru:
- rezim krokovani (Single Step)
- trasovani podminenych skoku je potlaceno
- vypis kodu, stradace, stavoveho slova na bodu zastaveni je nastaven
- vypis mnemotechnickeho tvaru instrukce na bodu zastaveni je potlacen
- vypis registru, portu, hw.priznaku a oblasti pameti je potlacen
- adresy bodu zastaveni, obasti trasovani, oblasti s podprogramy ke
zpracovani mimo rizenou simulaci a adresy podprogramu zpracovavanych
mimo rizenou simulaci jsou 0000H
- adresy oblasti vypisu pameti jsou P:0000H
- vstup/vystup na porty je v sestnactkovem tvaru
- simulace vnejsi datove pameti je povolena
- simulace instrukci IN, INS, OUTL na konsoli je povolena
- simulace instrukci JNI, JTi, JNTi z konsole je povolena
- citac strojnich cyklu je vynulovan
Dale se inicializuje textovy buffer editoru a nektere funkce si-
mulovaneho obvodu (analogie hw. RESET). Popis viz prikaz B.
Nyni je mozno nacist uzivatelsky program ve tvaru HEX do pameti
programu simulatoru prikazem RP.
Nyni muzeme v implicitnim stavu simulatoru krokovat uzivatelsky
program prikazem "mezera".
Pri restartu systemu - prikazem "J" monitoru (od adresy 4C03H) se
ohlasi dekoder prikazu ":". V tomto pripade neni provedena inicializce
parametru simulatoru, takze simulator bude pracovat ve stavu, ve kterem
byl opusten.
TOOL-48 V2.1 strana: 6
3. P O P I S P R I K A Z U
==========================
3.1 POUZITA SYMBOLIKA
-----------------
- parametry uzavrene v [] jsou nepovinne
- symbol <CR> oznacuje nutnost stisknuti klavesy "RETURN"
- symbol <shift ZNAK> oznacuje soucasne stisknuti klaves "shift" a "ZNAK"
u klavesnice ANK-1
- symbol <ctrl ZNAK> oznacuje soucasne stisknuti klaves "ctrl" a "ZNAK"
u klavesnice CONSUL
jako omezovac lze pouzit znaky "," nebo "mezera"
3.2 ZADAVANI CISELNYCH PARAMETRU
----------------------------
Ciselne paramtery lze v prikazech zadavat:
- v hexadecimalnim tvaru, tj.cislicemi 0 - F
- v symbolickem tvaru, kde prvnim znakem je "." a za ni nasleduje symbo-
licky nazev parametru (napr.".NAV0"). Tabulku symbolu je mozno vytvorit
prikazem IS nebo prekladem uzivatelskeho programu assemblerem ASM48
- jednoduchym aritmetickym vyrazem, ktery obsahuje vyse uvedene operandy
a operatory "+", "-"
Vyjimku tvori prikaz T kde se zadavaji parametry binarne, tj. cisli-
cemi 0 a 1.
Chybne zadane znaky je mozno zrusit znakem "DEL". Ke zpracovani
se parametr preda az zadanim omezovace (znak "mezera", ",", <CR> ).
3.3 SYSTEMOVE PRIKAZY
-----------------
3.3.1 Assembler ( A )
Tvar zdrojoveho radku:
[<label>:] [<label>: ... ] [<mnemonika><opernad>] [;<komentar>]
[$<prikaz> ]
3.3.1.1 Volba modu
Assembler muze zpracovat zdrojovy text ulozeny v textovem bufferu
editoru nebo cteny ze zarizeni R. Volba se provede jednopismenovou odpo-
vedi na dotaz.
MODE (M/R)? M ... z pameti
R ... ze zarizeni READER
3.3.1.2 Volba zpracovani pri druhem pruchodu
Pro druhy pruchod lze volit nasledujici moznosti zpracovani:
PASS II, MODE (N/L/P/Q)? N ... nolist, pise pouze chybne radky
L ... list, souvisly vypis
P ... list, strankuje po cca 66 radcich
Q ... vychod do TOOL-48
TOOL-48 V2.1 strana: 7
3.3.1.3 Omezeni assembleru ASM48
Assembler ASM48 umoznuje pouzivat nasledujici pseudoinstrukce:
ORG <expr>
END [<expr>]
EQU <expr>
SET <expr>
DB <expr1>[,<expr2>,...]
DW <expr1>[,<expr2>,...]
DS <expr>
Vyraz <expr> muze byt tvoren:
<expr>:: = [+-] <operand> [+- <operand> ... ]
<opernad>:: = <konstanta> / <symbolicka adresa> / $
<konstanta>:: = xx B / xx Q / xx O / xx D / xx H / 'xx'
<symb.adresa>::= zacina A...Z,? dale 0...9,A...Z,?
rozlisi se max. 6 znaku
$ = aktualni hodnota citace adres
Assembler je mozno ridit prikazy vlozenymi do zdrojoveho textu. Pri-
kazova radka zacina znakem "$".
<prikaz>:: = TITLE ('text') hlavicka stranky
EJECT odstrankovani
LIST povoleni vypisu
NOLIST potlaceni vypisu
3.3.2 Simulace RESET ( B )
: B
Prikaz B provede inicializaci simulovaneho obvodu 8048, analogickou
hw. signalu RESET:
- preruseni INT, TCNTI jsou zakazana
- vsechny linky portu jsou uvedeny do stavu "1"
- PC = 0000, SP = 0, vyber RB0, MB0
- STOP TIM/CNT
- uzivatelske priznaky F0, F1 jsou ve stavu "0"
3.3.3 Hexadecimalni aritmetika ( H )
: H <1param> [<2param>] <CR>
Prikazem H lze vypsat hodnotu <1param> resp. souctu a rozdilu obou
parametru v soustavach hexadecimalni, dekadicke, binarni a v ASCII tvaru.
3.3.4 Start zavedeneho programu ( J )
: J
Start zavedenehoo programu. Viz prikaz J monitoru.
TOOL-48 V2.1 strana: 8
3.3.5. Restart editoru EDIT ( P )
: P
Prechod do rezimu editace noveho textoveho souboru. Popis funkci
editoru viz dokumentace TOOL ASM-80.
Rozsireni: Prikazem <shift LF> lze provest zruseni znaku v rezimu
VIDEOMODE s klavesnici ANK-1, znakem <LF> navic u klavesnice CONSUL.
3.3.6. Ukonceni prace simulatoru ( Q )
: Q
Prikazem Q se preda rizeni z dekoderu prikazu simulatoru zpet do
monitoru. Po pouziti prikazu Q si simulator uchovava svuj stav a lze se
do nej vratit a pokracovat v simulaci. Pokud se navrat provede pres ad-
resu 4C00H, uvedou se volitelne funkce smulatoru do implicitniho stavu.
3.3.7 Nacteni obsahu pameti ze souboru HEX ( R )
: R <typ> <CR>
Prikazem R se nacte obsah specifikovaneho typu pameti ze souboru
v HEX formatu. Prikaz umoznuje plnit vsechny typy pametovych prostoru:
<typ>= P - pamet programu
R - pamet registru
D - vnejsi pamet dat.
Pri nacitani pameti programu se nacte i tabulka symbolu, pokud byla do
souboru zapsana. Ukonceni prikazu je ohlaseno zvukovym signalem.
3.3.8 Zpetny preklad ( V )
: V [stadr] , [endadr]
Prikaz V slouzi ke zpetnemu prekladu programu ze strojoveho kodu do
mnemotechnickeho tvaru, pocinaje adresou danou implicitne citacem adres
uzivatele, explicitne parametrem <stadr>. Vypis je implicitne zastaven
po 16 instrukcich, pokracovat lze znakem "mezera", znak <CR> vypis ukon-
ci. Explicitne je vypis ukoncen na adrese <endadr>.
3.3.9 Zapis obsahu pameti do souboru v formatu HEX ( W )
: W <typ> [N] [S] <adrs> , <adrk> <CR>
Prikazem W se zapise obsah oblasti specifikovaneho typu pameti do
vystupniho souboru v formatu HEX. Volba typu pameti je popsana v 3.3.7
(prikaz R). Oblast se vymezi zadanim pocatecni a koncove adresy. Pri za-
pisu pameti programu je nutno urcit, zda bude zapsan pouze program (N),
nebo zda se do souboru zapise i tabulka symbolu (S).
TOOL-48 V2.1 strana: 9
3.3.10 Zapis koncoveho bloku formatu HEX ( E )
: E
Prikaz provede vystup koncoveho bloku HEX formatu s adresou 0000.
3.3.11 Tabulka symbolu ( IS, DS, CS )
: IS
Prikazem I S lze zarazovat nove polozky do tabulky symbolu, nebo
menit hodnotu u polozek stavajicich.
: DS
Prikazem D S lze zobrazit na konzoli obsah tabulky symbolu.
: CS
Prikazem C S se rusi obsah tabulky symbolu.
TOOL-48 V2.1 strana: 10
3.4 VOLBA REZIMU SIMULACE
---------------------
3.4.1 Body zastaveni, oblasti trasovani (IB,IT,DB,DT,CB,CT)
: IB [adr1],[adr2], ... ,[adr10] <CR>
Prikazem IB lze zadat az 10 bodu zastaveni (Break Points). Jakmile
simulace provede instrukci na adrese bodu zastaveni, vypise se protokol.
Implicitni hodnota vsech adres je 0000H.
: IT [sadr1],[kadr1], ... [sadr5],[kadr5] <CR>
Prikazem IT lze zadat az 5 oblasti trasovani (zadanim pocatecni
a koncove adresy oblasti). Kazda instrukce uvnitr oblasti trasovani je
zpracovana jako bod zastaveni (tj. vypisem protokolu). Implicitni hodno-
ta vsech hranic oblasti trasovani je 0000H.
: DB
Kontrolni vypis vsech deseti adres bodu zastaveni na konzoli.
: DT
Kontrolni vypis hranic vsech oblasti trasovani na konzoli.
: CB
Prikaz CB slouzi ke zruseni vsech deseti adres bodu zastaveni, de-
finovanych prikazem IB. Po provedeni prikazu CB maji vsechny adresy
implicitni hodnotu 0000H.
: CT
Prikaz CT slouzi ke zruseni adres hranic oblasti trasovani, defino-
vanych prikazem IT. Po provedeni prikazu CB maji adresy vsech hranic
implicitni hodnotu 0000H.
3.4.2 Zpracovani podprogramu (IP,DP,CP,IR,DR,CR)
: IP [adr1],[adr2], ... ,[adr10] <CR>
Prikazem IP lze zadat az 10 adres podprogramu (volanych instrukci
CALL), ktere budou provedeny mimo rizenou simulaci. V tomto modu je pod-
program zpracovan bez ohledu na zvoleny rezim ladeni a je tedy proveden
drive nez pri beznem ladeni v rezimech behu a rychleho behu programu.
Stejnym zpusobem jsou zpracovany i vsechny vnorene podprogramy. Jelikoz
nejsou testovany body zastaveni ani oblasti trasovani, nedojde k vypisu
protokolu ani k zastaveni simulace pred ukoncenim podprogramu provedenim
instrukce RET (popr. RETR) odpovidajici urovni vstupu do podprogramu.
Rezim lze prerusit libovolnym znakem z klavesnice. Implicitni hodnota
vsech adres podprogramu je 0000H.
: IR [sadr1],[kadr1], ... [sadr5],[kadr5] <CR>
Prikazem IR lze zadat az 5 oblasti pameti programu, v nichz je kaz-
da adresa zpracovana jako vstup do podprogramu, ktery ma byt proveden
mimo rizenou simulaci. Kazda instrukce CALL smerujici do nektere z tech-
to oblasti, preda rizeni podprogramu, ktery bude zpracovan mimo rizenou
simulaci. Implicitni hodnota vsech hranic oblasti je 0000H.
TOOL-48 V2.1 strana: 11
: DP
Kontrolni vypis vsech adres podprogramu zpracovavanych mimo rizenou
simulaci na konzoli.
: DR
Kontrolni vypis adres hranic vsech oblasti pameti, v nichz jsou
podprogramy ke zpracovani mimo rizenou simulaci, na konzoli.
: CP
Prikaz CP slouzi ke zruseni vsech deseti adres podprogramu, defino-
vanych prikazem IP. Po provedeni prikazu CP maji vsechny adresy impli-
citni hodnotu 0000H.
: CR
Prikaz CR slouzi ke zruseni adres hranic oblasti pameti, definova-
nych prikazem IR. Po provedeni prikazu CR maji adresy vsech hranic im-
plicitni hodnotu 0000H.
3.4.3 Krokovani ( T S )
: T S
Prikazem T S (Single Step) se voli rezim krokovani. K zastaveni,
vypisu protokolu a napovedneho znaku ":" dojde v tomto rezimu za kazdou
instrukci, bez ohledu na oblasti trasovani, body zastaveni. Ke zpracova-
ni dalsi instrukce dojde az po zadani nektereho z prikazu interpretu
instrukci (viz 3.6). Rezim krokovani je implicitni.
3.4.4 Beh programu ( T G )
: T G
Prikazem T G (Go mode) se voli rezim bezneho ladeni. V tomto rezimu
je zpracovani instrukci interpretem instrukci zastavovano k vypisu pro-
tokolu a napovedneho znaku ":" pouze na bodech zastaveni, popr. uvnitr
oblasti trasovani. Ke zpracovani dalsi instrukce uzivatelskeho programu
dojde az po zadani nektereho z prikazu interpretu instrukci (viz 3.6).
3.4.5 Rychly beh programu ( T F )
: T F
Prikazem T F (Fast run mode) se voli rezim rychleho zpracovani
programu. V tomto rezimu neni zpracovani uzivatelskeho programu preruso-
vano ani na bodech zastaveni ani v oblastech trasovani, ale na techto
adresach se v tomto rezimu prubezne vypisuje protokol ve zvolenem nebo
implicitnim tvaru. Preruseni prace simulatoru v tomto rezimu lze provest
zadanim kterehokoliv znaku z klavesnice.
TOOL-48 V2.1 strana: 12
3.4.6 Volba trasovani podminenych skoku ( T L )
: T L
Prikazem T L se voli rezim trasovani podminenych skoku. V tomto re-
zimu je na bodu zastaveni (v oblasti trasovani) vypisovan aktualizovany
citac adres po provedeni instrukce podmineneho skoku, popr. JMPP @A. Po
zastaveni lze pokracovat zadanim nektereho z prikazu interpretu instruk-
ci (viz 3.6). Opetovnym zadanim prikazu T L se rezim potlaci. Implicit-
ni stav je potleceni trasovani podminenych skoku.
3.4.7 Zpracovani instrukci vstupu/vystupu ( T I )
: T I
Prikazem T I se zrusi simulace instrukci IN, INS, OUTL a MOVD z/na
konzoli. Soucasne se zrusi simulace vstupu T0, T1, INT v podminenych sko-
cich z konzole. Opetovnym zadanim prikazu T I se simulace vstupnich
a vystupnich instrukci z/na konzoli povoli.
3.4.8 Hexadecimalni/binarni tvar vstupu/vystupu portu ( T B )
: T B
Zadanim prikazu B se nastavi binarni tvar vstupu/vystupu portu pri
simulaci z/na konzoli. Opetovnym zadani prikazu T B je nastaven hexade-
cimalni tvar, ktery je implicitni.
3.4.9 Vypis kodu, stradace a stavoveho slova ( T C )
: T C
Zadanim prikazu T C se potlaci vypis kodu instrukce, obsahu strada-
ce a stavoveho slova do protokolu na bodu zastaveni. Opetovnym zadanim
prikazu se vypis nastavi. Implicitne je tento vypis nastaven.
3.4.10 Volba vypisu mnemotechnickeho tvaru instrukce ( T V )
: T V
Zadanim prikazu T V se povoli vypis mnemotechnickeho tvaru prove-
dene instrukce do protokolu na bodu zastaveni. Opetovnym zadanim prikazu
se vypis potlaci. Implicinte je vypis mnemoniky potlacen.
TOOL-48 V2.1 strana: 13
3.4.11 Volba vypisu hw. priznaku ( T H )
: T H
Zadanim prikazu T H se nastavi vypis simulovanych hardwarovych pri-
znaku obvodu do protokolu na bodu zastaveni. Implicitne je vypis potla-
cen. Opetovnym zadanim prikazu se vypis potlaci.
Tvar vypisu jednotlivych priznaku:
EDT=0 EDI=0 STT/C=0 INT=0 TF=0 T1=1 T0=0 F1=0
I I I I I I I I
I I I I I I I uzivatelsky priznak 1
I I I I I I test. vstup 0
I I I I I test. vstup 1
I I I I priznak casovace
I I I vstup vnejsiho preruseni
I I start/stop TIMER/COUNTER (volbu T/C provadi instrukce
I enable/disable INT STRT T/CNT)
enable/disable TCNT ( 1/0 )
3.4.12 Volba vypisovanych registru ( T R )
: T R [cislo] <CR>
Prikazem T R lze volit registry, ktere maji byt vypisovany na bodu
zastaveni. Sada registru je dana posledni provedenou instrukci SEL RBi
nebo nastavenim bitu REGISTR BANK SELECT stavoveho slova (4.bit). Volba
pozadovaneho tvaru vypisu se provede zadanim parametru <cislo>. Parametr
se zadava binarne, pricemz binarni rady paramteru, kdy "1" znamena vypis
a "0" potlaceni vypisu, odpovidaji jednotlivym registrum takto:
bit 7 6 5 4 3 2 1 0
--------------------------------------------
REGISTR 0 1 2 3 4 5 6 7
Implicitne je vypis vsech registru potlacen.
Pozn.: Pokud prvnim znakem parametru <cislo> je omezovac (tj. ","
nebo "mezera") nedojde ke zmene volby.
3.4.13 Volba vypisovanych portu ( T P )
: T P [cislo] <CR>
Prikazem T P lze volit porty, ktere maji byt vypisovany na bodu
zastaveni. Zpusob volby je shodny s volbou vypisu registru (viz 3.4.12)
s tim rozdilem, ze binarni rady parametru odpovidaji jednotlivym portum
takto:
bit 7 6 5 4 3 2 1 0
--------------------------------------------------
PORT BUS P1 P2 P4 P5 P6 P7 TIM/CNT
Vypis je provaden v hexadecimalnim/binarnim tvaru (viz prikaz T B).
Implicitne je vypis vsech portu potlacen.
TOOL-48 V2.1 strana: 14
3.4.14 Volba vypisu oblasti pameti ( T M )
: T M [1][2][3][4][5][R][D] <CR>
Prikazem T M lze zaradit vypis oblasti pameti (definovanych prika-
zem IM), pameti registru a vnejsi pameti dat do protokolu na bodu zasta-
veni. Vypis zvolene oblasti se nastavi zadanim prislusneho znaku. Ope-
tovnym zadanim se vypis potlaci. Implicitni stav je potlaceny vypis
vsech oblasti.
3.4.15 Volba simulace vnejsi datove pameti ( T D )
: T D
Prikazem T D lze zrusit adresovani vnejsi datove pameti pres regis-
try R0, R1. Instrukce MOVX tak pracuji vzdy s bytem na adrese 00, coz
simuluje zapis a cteni pouze signaly WR a RD. Opetovnym zadanim se adre-
sovani povoli.
3.5 VYPIS A ZMENA OBSAHU SIMULOVANYCH CASTI OBVODU
----------------------------------------------
3.5.1 Naplneni oblasti pameti konstantou ( F )
: F <typ> [adrs] [adrk] [data] <CR>
Prikazem F lze naplnit oblast pameti konstantou. Plnena oblast se
vymezi zadanim typu pameti (viz 3.3.7 - prikaz R), pocatecni a koncovou
adresou oblasti. Prikaz umoznuje plnit vsechny typy pametovych prostoru.
Implicitni hodnota obou adres a konstanty je 0000.
3.5.2 Presun oblasti pameti ( M )
: M <typ> [stadr] [endadr] [ciladr] <CR>
Prikaz M slouzi k prenosu obsahu oblasti pameti. Nejprve se zada
typ pameti (viz 3.3.7 - prikaz R), dale se urci zdrojova oblast pocatec-
ni a koncovou adresou. Poslednim parametrem prikazu je cilova adresa,
odkud budou data ulozena. Pokud zapis prekroci kapacitu daneho typu pa-
meti, je na konci pameti ukoncen. Implicitni hodnota vsech paramteru je
0000.
3.5.3 Vypis a zmena obsahu pameti
3.5.3.1 Vypis a zmena obsahu pameti registru ( S R )
: S R <CR>
Prikazem S R lze vypsat obsah cele pameti registru.
: S R <adr>, XX-[data] [, XX-[data]] <CR>
Prikazem S R <adr> lze prohlizet a popr. modifikovat obsah jednot-
livych slabik pameti registru pocinaje od adresy <adr>.
TOOL-48 V2.1 strana: 15
3.5.3.2 Vypis a zmena obsahu vnejsi pameti dat ( S D )
: S D <CR>
Prikazem S D lze vypsat obsah cele vnejsi pameti dat.
: S D <adr>, XX-[data] [, XX-[data]] <CR>
Prikazem S D <adr> lze prohlizet a popr. modifikovat obsah jednot-
livych slabik vnejsi pameti dat pocinaje od adresy <adr>.
3.5.3.3 Vypis obsahu pameti programu ( S C )
: S C <adrz>,<adrk> <CR>
Prikazem S C lze zobrazit oblast pameti programu od adresy <adrz>
po adresu <adrk> vcetne v hexadecimalnim tvaru na konzoli.
3.5.3.4 Zmena obsahu pameti programu ( S P )
: S P <adr>, XX-[data] [, XX-[data]] <CR>
Prikazem S P <adr> lze prohlizet a popr. modifikovat obsah jednot-
livych slabik pameti programu pocinaje od adresy <adr>.
3.5.3.5 Oblasti vypisu pameti ( IM, DM, CM )
: IM [<typ> sadr1],[kadr1], ... [<typ> sadr5],[kadr5] <CR>
Prikazem I M lze zadat az pet oblasti pameti (registru, dat, pro-
gramu), ktere lze vypsat v hexadecimalnim tvaru prikazem S <n>, popr.
zaradit do protokolu na bodu zastaveni prikazem T M <n>. Oblast se za-
dava znakem typu pameti ( <typ> viz prikaz R ), pocatecni a koncovou
adresou.
: DM
Kontrolni vypis hranic vsech peti oblasti vypisu pameti.
: CM
Prikaz C M slouzi ke zruseni adres hranic oblasti pameti defi-
novanych prikazem I M. Po provedeni prikazu C M maji vsechny adresy
ipmlicitni hodnotu P0000H.
3.5.3.6 Vypis obsahu oblasti pameti ( S <n> )
: S [1] [2] [3] [4] [5]
Prikazem S <n> lze vypsat na konzoli obsah oblasti pameti definova-
nych prikazem I M.
Pozn.: Delsi vypisy obsahu pameti je mozno prerusit znakem <CR>,
nebo strankovat znakem "mezera".
TOOL-48 V2.1 strana: 16
3.5.4 Vypis a zmena obsahu registru ( X R )
: X R <CR>
: X R [reg] ,XX-[data] [, XX-[data]] <CR>
Prikazem X R lze prohlizet popr. menit obsah akumulatoru, stavoveho
slova a aktualni sady registru simulovaneho obvodu. Po zadani XR se vzdy
nejdrive vypise obsah citace adres. Potom lze zobrazit obsah vsech re-
gistru v poradi ACC, SW, 0, 1...7 zadanim <CR>, nebo postupne vypisovat
obsahy jednotlivych registru v uvedenem poradi s moznosti pripadne zmeny
jejich obsahu z konzole. Registr, ktery ma byt vypsan jako prvni, zada
uzivatel jeho znakem po vypisu citace adres. V tomto pripade lze ukoncit
prikaz prirozene, vypisem vsech registru, nebo zadanim znaku <CR>.
Pozn.: Vypis registru 0...7 je proveden se sadou zvolenou posledne
provedenou instrukci SEL RBi nebo nastavenim bitu REGISTR BANK SELECT
stavoveho slova (4.bit). Pokud je prikazem X R zmenen bit REGISTR BANK
SELECT ve stavovem slove, jsou nasledujici registry 0...7 vypisovany jiz
z nove zvolene sady.
3.5.5 Vypis a zmena obsahu portu ( X P )
: X P [port] <CR>
Prikazem X P lze prohlizet a pripadne menit stavy portu simulovane-
ho obvodu a to v hexadecimalnim/binarnim tvaru (viz prikaz T B). Impli-
citni tvar je hexadecimalni. Funkce prikazu je obdobna prikazu X R (viz
3.5.4).
3.5.6 Vypis a zmena obsahu hardwarovych priznaku ( X H )
: X H [stav] <CR>
Prikazem X H lze prohlizet a popr. modifikovat stav hardwarovych
priznaku simulovaneho obvodu. Vyznam jednotlivych bitu je uveden v 5.5.9.
Parametr <stav> se zadava binarne.
3.5.7 Vypis a nulovani citace strojnich cyklu ( DC, CC )
: D C
Prikazem D C se provede vypis citace strojnich cylku. Citac obsahu-
je pocet strojnich cyklu (max. 65 535 ) vykonanych v prubehu sledovane
programove sekvence a umoznuje urcit dobu jejiho trvani. Citac je vypsan
dekadicky.
: C C
Nulovani citace strojnich cyklu.
TOOL-48 V2.1 strana: 17
3.6 RIZENI INTERPRETACE
-------------------
K preruseni probihajici simulace uzivatelskeho programu muze dojit
pouze v jednom ze ctyr pripadu
- v rezimu krokovani (volba TS) po vykonani jednoho kroku nebo zvolene-
ho poctu kroku (viz dale).
- v rezimu behu programu (TG) pri dosazeni bodu zastaveni nebo v oblasti
trasovani.
- v rezimu rychleho behu programu (TF) stisknutim libovolneho znaku na
klavesnici
- v rezimu dokonceni podprogramu mimo rizenou simulaci (prikaz
<ctrl R>/<shift M>) po provedeni instrukce RET, RETR.
Ve vsech ctyrech pripadech se krome vypisu protokolu, jehoz tvar
lze predem definovat, vypise napovedny znak ":".
Pro rizeni interpretu instrukci jsou urceny nasledujici prikazy:
3.6.1 Znovuspusteni interpretu ( "mezera" )
: "mezera"
Stisknuti mezery po ":", ktere je signalizovano vypisem znaku ">",
zpusobi v rezimu krokovani (volba TS) provedeni dalsiho kroku, v rezimu
behu programu (TG) a rychleho behu programu (TF) provede znovuspusteni
interpretu instrukci.
3.6.2 Pocet kroku ( <n> )
: <n>
V rezimu krokovani lze zadat parametrem 0 < <n> <= 9 pocet kroku,
ktere se maji provest bez preruseni simulace.
3.6.3 Simulace vnejsiho preruseni ( <ctrl/shift I> )
: <ctrl/shift I>
Prikaz <ctrl/shift I> zpusobi cinnost analogickou prechodu "1"->"0"
signalu INT u skutecneho obvodu, tj. pokud je povoleno vnejsi preruseni
instrukci EN I, dojde k ulozeni navratove adresy a stavoveho slova pro-
gra mu do zasobniku a rizeni je predano na adresu 0003H.
TOOL-48 V2.1 strana: 18
3.6.4 Inkrementace citace vnejsich udalosti ( <ctrl/shift T> )
: <ctrl/shift T>
Prikaz <ctrl/shift T> zpusobi cinnost analogickou prechodu "1"->"0"
na vstupu T1 u skutecneho obvodu. Byl-li spusten citac vnejsich udalosti
instrukci STRT CNT, provede se jeho inkrementace. Preteceni citace je
signalizovano nastavenim bitu TF a pokud je povoleno preruseni od citace
/casovace instrukci EN TCNTI, dojde k ulozeni navratove adresy a stavo-
veho slova programu do zasobniku a rizeni je predano na adresu 0007H.
Pozn.: Prikazy <ctrl/shift I> a <ctrl/shift T> lze zadat i v prube-
hu simulace, tj. v rezimech behu a rychleho behu programu.
3.6.5 Dokonceni podprogramu mimo rizenou simulaci (<ctrl R>/<sh M>)
: <ctrl R>/<shift M>
Prikazem <ctrl R>/<shift M> se spusti interpretace instrukci mimo
rizenou simulaci, kdy jsou ignorovany body zastaveni a oblasti trasovani
(a neni tedy vypisovan protokol). Prechod do tohoto rezimu potvrzuje si-
mulator zpravou "<citac adres> JMP". Mimo rizenou simulaci jsou zpra-
covany i vsechny vnorene podprogramy (volane instrukci CALL a ukoncene
instrukci RET (popr. RETR). Po provedeni instrukce RET (popr. RETR)
puvodni urovne je rezim ukoncen. Nasleduje vypis protokolu ve zvolenem
tvaru. Rezim lze prerusit libovolnym znakem z klavesnice, v tomto pripa-
de je protokol doplnen textem "BR".
Tento prikaz lze pouzit k dokonceni jiz odladenych podprogramu,
popr. k dokonceni obsluhy preruseni v rezimu krokovani, popr. v oblasti
trasovani.
3.6.6 Spusteni interpretu instrukci ( G )
: G [adr] <CR>
Zadanim prikazu G se preda rizeni interpretu instrukci a to na ad-
resu danou implicitne okamzitym stavem citace adres uzivatele nebo ex-
plicitne paramterem <adr>. Simulator dale pracuje v implicitnim resp.
zvolenem rezimu.
TOOL-48 V2.1 strana: 19
4. P R E H L E D P R I K A Z U T O O L - 48 V2.0
======================================================
SYSTEMOVE PRIKAZY
A assembler
B simulace "RESET"
H [adr1][adr2] hexadecimalni aritmetika
J start zavedeneho progarmu
Q vychod do MONITORU
P restart editoru EDIT
R <typ> <CR> nacteni obsahu pameti (HEX)
<typ>: R pamet registru
D vnejsi pamet dat
P pamet programu
V [adrz][,adrk] <CR> ... zpetny prekladac
W [R,D] <CR> zapis pameti do souboru HEX (registry, vnesji data)
W P N <CR> - " - programu do souboru HEX
W P S <CR> zapis tabulky symbolu
a pameti programu so souboru HEX
E zapis koncoveho bloku do souboru HEX
VOLBA REZIMU SIMULACE A VYPISU
C [B,M,P,T,R,S,C] zruseni adres oblasti
B body zastaveni
M oblasti vypisu pameti
P vstupy do podprogramu mimo rizenou simulaci
T oblasti trasovani
R oblasti s ppgm mimo rizenou simulaci
S tabulka symbolu
C citac strojnich cyklu
D [B,M,P,T,R,S,C] ... vypis adres oblasti
IM [<typ>adrz1...<typ>adrk5] ... nastaveni adres oblasti vypisu pameti
IS.SYMB = adr vytvoreni polozky tabulky symbolu
I [B,P,T,R] [adr1...adr10] <CR> ... nastaveni adres oblasti
T <rezim> volba rezimu simulace
<rezim>: S krokovani STEP MOD
G beh programu RUN MOD (zastaveni na B,T)
F rychly beh programu FAST MOD (vypis na B,T)
L trasovani podminenych skoku
I simulace vstupu/vystupu z konzole
B simulace vstupu/vystupu hexadecimalne/binarne
C volba vypisu kodu, stradace, stavoveho slova
V volba vypisu mnemotechnickeho tvaru instrukce
H volba vypisu hw. priznaku
R [XXXXXXXX] <CR> bin.volba vypisu registru - 01234567
P [XXXXXXXX] <CR> bin.volba vypisu portu - B124567T
M [1,2,3,4,5,R,D] <CR> ... volba vypisu oblasti pameti
VYPISY A MODIFIKACE OBSAHU PAMETOVYCH MIST
F <T>[adrz][adrk][data] ... plneni oblasti pameti konstantou
M <T>[adrz][adrk][adrc] ... presun oblasti pameti
S R [adr] [<CR>] ... vypis a zmena obsahu pameti registru
S D [adr] [<CR>] - " - vnejsi pameti dat
S P adr zmena obsahu pameti programu
S C adr1,adr2 <CR> vypis - " -
S [1,2,3,4,5] vypis oblasti pameti definovanych IM
X R [reg] <CR> vypis a zmena obsahu registru
X P [port] <CR> - " - portu
X H [stav] <CR> - " - hw. priznaku
TOOL-48 V2.0 strana: 20
PRIKAZY INTERPRETU INSTRUKCI
"mezera" provedeni jedne instrukce
1 ... 9 - " - <n> instrukci
<ctrl R>/<shift M> dokonceni podprogramu v mimo rizenou simulaci
<ctrl/shift I> simulace vnejsiho preruseni
<ctrl/shift T> inkrementace citace udalosti
G [adr] <CR> start interpretu
5. C H Y B O V A H L A S E N I
=============================
5.1 CHYBOVA HLASENI SIMULATORU
--------------------------
A ... neni znama hodnota
C ... chyba kontrolniho souctu v HEX souboru
F ... chyba v HEX souboru (nepripustny znak apod.)
I ... nepripustny znak
L ... adresa mimo pripustny rozsah
N ... chybny zapis symbolickeho jmena
O ... preteceni tabulky symbolu
T ... chybna specifikace typu pameti (oblasti)
S ... SYNTAX ERROR
U ... jmeno neni definovano
V ... nepripustne velka hodnota konstanty
Chybove hlaseni je doprovazeno zvukovou signalizaci.
5.2 CHYBOVA HLASENI ASSEMBLERU
--------------------------
EOF ERROR ... chybi END - predcasny konec souboru
INTERNAL ERROR ... preteceni tabulek
A ... AKVIZICE neni znama hodnota (chyba EQU, SET)
B ... BOUND ERROR chybi '...' u textu
C ... chybne ukonceni radku
E ... EXPRESSION chyba ve vyrazu
I ... ILLEGAL CHAR nepripustny znak
L ... LONG BRANCH dlouhy skok mimo "PAGE"
adresa mimo pripustny rozsah
M ... MULTIPLE DEF vicenasobna definice jmena
N ... NAME ERROR chybny zapis symbolickeho jmena
O ... preteceni tabulky symbolu
P ... chyba faze (dopredny odkaz, vicenasobna definice)
R ... REGISTR chyba syntaxe n-registru
S ... SYNTAX ERROR
U ... UNDEFINED LABEL jmeno neni definovano
V ... VAULE OWERFLOW nepripustne velka hodnota konstanty
X ... chybne ukonceni programu/radku
------------------------------------------------------------------------
( Konec prirucky uzivatele programu TOOL-48 V2.1 )
ÚVOD | Novinky | 8 Bitů | Příslušenství | Drobnosti | TTL | Kontakt
SAPI-1 | ONDRA | PMI-80 | PMD-85 | klony PMD-85 | klony SM50/40 | PETR | PLAN-80A | IQ151 | TNS | FK-1 | HVĚZDA | SP 830 | PCS 1-QR6000
ZPS | Technické prostředky | Programové vybavení | Dokumentace