Ú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
Nahráno od adresy 4400H – 8BC7H
Programové vybavení je napsáno v assembleru a zařazeno do BASICu V5.0/G pro SAPI 1. Tvoří je soubor programů pro jednotlivé příkazy. Do souboru se vstupuje pomocí klíčového slova KRES. Za tímto klíčovým slovem následují jednotlivé příkazy se svými vstupními parametry. Všechny vstupní parametry (jako např. souřadnice, měřítka, úhly pootočení atd.) je možno zadávat jako výraz. Platí při tom stejná pravidla jako u kteréhokoliv jiného příkazu v Basicu.
Programové vybavení je společné pro Minigraf a XY 4130. Liší se pouze nastavením bytu na adrese 7D1CH.
0. a 1.bit | - 00 | Minigraf |
- 01 | XY 4130 | |
2.bit | - 0 | Připojeno na desku JPR-1 |
- 1 | Připojeno na desku DPP-1 | |
3.bit | - 0 | Klávesnice ANK-1 |
- 1 | Klávesnice Zbrojovka Brno |
Kabel pro připojení Minigrafu a
XY 4130.
MINIGRAF | Signál | DPP-1/X2 | JPR-1/X3 |
Port/špička | Port/špička | ||
X0 | PB-0/28 | P2-0/3 | |
X1 | PB-1/26 | P2-1/5 | |
X2 | PB-2/23 | P2-2/6 | |
Y0 | PB-3/27 | P2-3/8 | |
Y1 | PB-4/29 | P2-4/10 | |
Y2 | PB-5/25 | P2-5/2 | |
PEN | PB-7/30 | P2-7/7 | |
Zem | 17,19 | 11,21 | |
XY 4130 (4131) | |||
1 PEN | PB-7/30 | P2-7/7 | |
2 MOVE | PB-0/28 | P2-0/3 | |
3 X/Y | PB2/23 | P2-2/6 | |
4 +/- | PB-3/27 | P2-3/8 | |
5 READY | PB-5/25 | P2-5/2 | |
6 Zem | 17,19 | 11,21 | |
7 NC |
Přepínač na desce DPP-1 nastavit na S1-35H
Konektor Minigrafu – pohled zepředu
| | | | | | | | | | | | Zem Y2 Y1 Y0 PEN x klíč X2 X1 X0 zem x
Přehled příkazů:
#I | Inicializace |
#N | Nastavení pisátka pomocí tlačítek |
#H | Nastavení hranice kreslení |
#R | Rychlost kreslení |
#P | Souřadnice počátku lokálních souřadnicových os |
#M | Měřítka na lokálních souřadnicových osách |
#U | Úhly pootočení lokálních souřadnicových os |
#C | Typ čáry |
Přesun nebo nakreslení úsečky pomocí lokálních souřadnic | |
#V | Přesun nebo nakreslení úsečky pomocí přírustku souřadnic |
#T | Psaní textu zadaného stringem |
#K | Nakreslení kružnice |
#S | Šrafování |
Příkazy se píší za klíčovým slovem KRES do řádky. Počet příkazů je omezen pouze délkou řádky. Mezery mezi příkazy a parametry se ignorují. Délky se zadávají v [mm], úhly natočení souřadnicových os ve stupních.
, | čárka odděluje parametry a ukončuje příkaz při vyčerpání možných parametrů |
,, | dvě čárky ukončují příkaz |
; | středník zvedne pisátko a provede přesun do bodu zadaného souřadnicemi nebo přírůstkem souřadnic |
# | začátek příkazu (součást příkazu) |
[ ] | při psaní textu mají tyto znaky druhý výynam, při šrafování ohraničují parametry pro příkaz kružnice |
: | konec posledního příkazu |
<CR> | konec řádku a posledního příkazu |
Syntaxe příkazu:
( ) | nepovinné |
{ } | jedno z uvedeného |
INICIALIZACE
# I (X,Y)
Vynuluje absolutní i lokální souřadnice, souřadnice počátku lokálních souřadnic, úhly natočení lokálních souřadnicových os, a nastaví max. rychlost kreslení, měřítka na 1, normální typ čáry. Jsou-li uvedeny souřadnice posunu, provede přesun pisátka z jeho momentální polohy o souřadnic (X,Y) a novou inicializaci.
Po inicializaci je bod daný polohou pisátka počátkem globálních i lokálních souřadnic.
Př.: | KRES #I <CR> | ...provede jen inicializaci |
KRES #I X,Y,, <CR> | ...provede inicializaci, posun pisátka o souřadnice (X,Y) a novou inicializaci |
NASTAVENÍ PISÁTKA POMOCÍ TLAČÍTEK
#N (X,Y)
X,Y ukládá se okamžitá absolutní X-ová a Y-ová souřadnice v [mm]
X a Y mohou být pouze jednoduché proměnné
Pisátko se ovládá pomocí následujících tlačítek:
Klávesnice Zbrojovka Brno:
7 | Počátek lokálních souřadnic |
5 | Pomalý posun |
6 | Rychlý posun |
šipka nahoru | Posun ve směru +Y |
šipka dolu | Posun ve směru -Y |
šipka doprava | Posun ve směru -X |
šipka doleva | Posun ve směru +X |
šipka domu | Inicializace |
< | Abs. Xová a Yová souřadnic levého dolního rohu hrany kreslení |
> | Abs. Xová a Yová souřadnice pravého horního rohu hrany kreslení |
space | Návrat do BASICu |
Posun pisátka se zastaví stisknutím jakékoliv jiné klávesy
Klávesnice ANK-1
1 | Posun ve směru -X |
2 | Posun ve směru +X |
3 | Posun ve směru +Y |
4 | Posun ve směru -Y |
5 | Pomalý posun |
6 | Rychlý posun |
7 | Počátek lokálních souřadnic |
8 | Inicializace |
9 | Xová a Yová souřadnic levého dolního rohu hrany kreslení |
0 | Xová a Yová souřadnice pravého horního rohu hrany kreslení |
CR | Návrat do BASICu |
Pisátko se posunuje pokud se drží příslušná klávesa.
NASTAVENÍ HRANICE KRESLENÍ
# H XD,YD, XH, YH
XD,YD ... Xová a Yová abs. Souřadnice levého dolního rohu hranice
XH,YH ... Xová a Yová abs. Souřadnice pravého horního rohu hranice
Pomocí výše uvedených parametrů lze vymezit obdélník nebo čtverec umístěný vzhledem k počátku globálních souřadnic. Ty části obrázku, které jsou mimo vymezenou plochu se nekreslí. To umožňuje pomocí příkazu #H, případně v kombinaci s příkazy pro transformaci lokálních souřadnic, kreslit detaily obrázku.
Př.: KRES # I # H –100,-140,100,140
Nastaví počátek globálních souřadnic v bodě kde právě stojí pisátko a vymezí pro kreslení obdélník 200 x 280 mm s počátkem globálních souřadnic uprostřed tohoto obdélníku.
RYCHLOST KRESLENÍ
# I RK
RK ... kód rychlosti kreslení
0 – nejmenší rychlost
1 – střední rychlost
2 – největší rychlost
Nastavená rychlost platí do nového nastavení nebo do inicializace. Psaní textu a šrafování se provádí vždy nejmenší rychlostí nezávisle na nastavené rychlosti.
Př.: KRES # R TR <CR>
SOUŘADNICE POČÁTKU LOKÁLNÍCH SOUŘADNICOVÝCH OS
# P XP,YP
XP ... Xová souřadnice počátku
YP ... Yová souřadnice počátku
Souřadnice počátku nejsou transformovány měřítky ani úhly.
Př.: KRES #I #P XP,YP <CR>
provede inicializaci a nastaví počátek lokálních souřadnic XP,YP.
MĚŘÍTKA NA LOKÁLNÍCH SOUŘADNICOVÝCH OSÁCH
# M XM,YM
XM … měřítko na Xové lokální souřadnicové ose
YM … měřítko na Yové lokální souřadnicové ose
Pomocí měřítek se nezávisle na sobě transformují lokální souřadnice nebo přírůstek souřadnic
Př.: KRES #M XM,YM,,X,Y <CR>
Nastaví měřítka na XM, YM a vykreslí úsečku z bodu polohy pisátka do bodu o souřadnicích X,Y.
ÚHLY POOTOČENÍ LOKÁLNÍCH SOUŘADNICOVÝCH OS
# U XU,YU
XU ... úhel pootočení Xové lokální souřadnice ve stupních
YU ... úhel pootočení Yové lokální souřadnice ve stupních
Pomocí úhlu pootočení se nezávisle na sobě transformují lokální souřadnice nebo přírůstky souřadnic. Kladný smysl otáčení je proti směru hodinových ručiček.
Př.: KRES #U XU,YU <CR>
nastaví úhly na XU, YU
TYP ČÁRY
# C TC
TC … kód typu čáry
0 ----------------------
1 -- -- -- -- -- --
2 - - - - - - - - - - - -
3 ---- - ---- - ---- -
Nastavený typ platí do nového nastavení nebo do inicializace.
Př.: KRES #C TC <CR>
PŘESUN NEBO NAKRESLENÍ ÚSEČKY POMOCÍ LOKÁLNÍCH SOUŘADNIC
(;) X1,Y1;X2,Y2,X3,Y3
X ... Xová lokální souřadnice [mm]
Y ... Yová lokální souřadnice [mm]
Operace se provede z bodu daného polohou pisátka do bodu určeného souřadnicí v lokálním souřadném systému. Xová i Yová souřadnice jsou nezávisle na sobě transformovány měřítkem a úhlem natočení lokálních souřadnicových os.
Př.: KRES X1,Y1;X2,Y2,X3,Y3 <CR>
Nakreslí úsečku z bodu pisátka do bodu o souřadnici (X1,Y1), provede přesun z bodu (X1,Y1) do bodu o souřadnici (X2,Y2) a nakreslí úsečku z bodu (X2,Y2) do bodu o souřadnici (X3,Y3)
PŘESUN NEBO NAKRESLENÍ ÚSEČKY (VEKTORU) POMOCÍ PŘÍRUSTKU SOUŘADNIC
# V (;) X1,Y1
X ... Xový přírůstek souřadnic [mm]
Y ... Yový přírůstek souřadnic [mm]
Operace se provede z bodu daného polohou pisátka do bodu určeného Xovým a Yovým přírůstkem souřadnic. Přírůstky jsou nezávisle na sobě transformovány pomocí měřítek a úhlů natočení lokálních souřadnicových os.
Př.: KRES #V ; X1,Y1,,X2,Y2 <CR>Provede přesun z bodu pisátka daný vektorem (X1,Y1), nakreslí vektor z bodu (X1,Y1) o souřadnicích (X2,Y2)
PSANÍ TEXTU ZADANÉHO STRINGEM
# T X,Y,V,STR
X,Y | ... Xová a Yová lokální souřadnice začátku nápisu daného stringem |
V | ... výška písma [mm] |
SRT | ... stringová konstanta nebo proměnná |
Repertoár znaků je uveden v přiložené tabulce na obr.1. Znaky uzavřené do [ ] mají význam znaku z druhé poloviny tabulky – např. [ABC] se vypíše jako malá písmena abc. Šipka vpravo je "-", vlevo "\", nahoru "^". Nápis daný stringem začíná v bodě daném parametry X,Y. Znaky " ! [ ] nelze kreslit.
Při uvedení stringové konstanty ("XXXX") více jak třikrát za sebou hlásí program "ERROR ST". Doporučuje se proto používat stringových proměnných.
Př.: KRES #T10,20,7,"ABCD" nebo A$="ABCD" KRES #T10,20,7,A$
Vypíší se velká písmena ABCD 7 mm vysoká. Celý nápis začíná v bodě o lokální souřadnici 0 a 20 mm.
NAKRESLENÍ KRUŽNICE
# K XS,YS,R,K ( ,UP,UO)
XS | ... Xová souřadnice středu [mm] |
YS | ... Yová souřadnice středu [mm] |
R | ... poloměr [mm] |
K | ... počet kroků, tj. počet úseček ze kterých se kružnice skládá |
UP | ... úhel počátku kreslení. Při nulovém úhlu začíná na kladné Xové souřadnicové ose |
UO | ... úhel určuje délku oblouku, implicitní je 360. Při –UO se kreslí záporným směrem |
Kladný směr kreslení je proti směru hodinových ručiček. Nejsou-li uvedeny parametry UP a UO, jsou vzaty implicitní hodnoty (0,360) a nakreslí se celá kružnice. Při –R, -K, nebo K=0 hlásí program syntaktickou chybu.
Př.: KRES # K 10,20,30,36
Nakreslí kružnici se středem o souřadnicích 10,20 mm o poloměru 30 mm. Kružnice je složená z 36 úseček, kreslí se v kladném směru a začíná na začátku 1. kvadrantu
Př.: KRES #K 10,20,30,20,-90,-180
Nakreslí půlkružnici ve 2. a 3. kvadrantu se středem o souřadnicích 10,20 mm, o poloměru 30 mm, složenou z 20 úseček. Kružnice se kreslí v opačném směru (-180), začátek kreslení je na konci 3. kvadrantu (-90).
ŠRAFOVÁNÍ
# S TS,SI,X1,Y1 ... ([XS,YS,R(,UP,UO)]) .... X2,Y2 ....
TS | ... kód typu šrafování | 1 – 0 stupňů |
2 – 45 stupňů | ||
3 – 90 stupňů | ||
4 – 135 stupňů | ||
SI | ... šířka šrafování [mm] | |
X | ... Xová souřadnice vrcholu šrafovaného obrazce | |
Y | ... Yová souřadnice vrcholu šrafovaného obrazce | |
XS,YS,R | ... parametry šrafované kružnice |
Program hledá průsečíky šrafy s hranicí šrafovaného obrazce v pořadí, v jakém jsou dány souřadnice vrcholů. Podle toho je třeba volit směr a počátek zadávání souřadnic.
Souřadnice vrcholů se ukládají do bufferu o kapacitě 63 vrcholů. Při větším počtu vrcholů hlásí program chybu přetečení paměti (ERROR OM)
Př.: KRES #S 2,4,X1,Y1,X2,Y2,X3,Y3
Vyšrafuje trojúhelník se souřadnicemi vrcholů X1,Y1,X2,Y2,X3,Y3 šrafováním širokým 4 mm ve sklonu 45 stupňů.
Př.: KRES #S 1,5 [10,20,40,6]
Vyšrafuje šestiúhelník se středem o souřadnicích 10,20 mm o poloměru 40 mm šrafováním širokým 5 mm
Poznámky – tato část není součástí původní dokumentace – není kompletní!
Adresy pro případné úpravy programu:
Adr. pův. obsah JiM 7D1C 0D konfigurační byte 0C 7950 D3 33 výstup na DPP D3 F3 7AB4 DB31 vstup z DPP DB F1 7B02 7C22 7CC1 7CC5 7AB9 32 00 2C výstup na JPR-1 nepoužito 7B07 7C25 7CCA 7CCF ??? vstup z ANK-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