Přejít na obsah
ARCHIVEKArchiv e-mailových konferencí o 8bitových počítačích Archiv Pandory 1999 až 2013

Zpět na zprávu

Celé vlákno · 26 zpráv

Tiskárna v CP/M

melsoft SAPI-1

Včera jsem připojil k SAPI-ELIS zobrazovací jednotku (z terminálu) AZJ-462. 
Zadařilo se, nicméně kvalita zobrazení mě nijak zvlášť nenadchla. Asi na
Bytefest pojede Merkur - aspoň nikoho nezbije proud. Přece jen vystavovat
něco s odkrytým zdrojem VN to asi není dobrý nápad.

Dnes jsem se pokusil připojit k ELISu jehličkovou tiskárnu. Použil jsem
zapojení z popisu připojení tiskárny v Mikosu a když jsem na ni poslal
soubor, rozblikala se ledka READY (jakoby indikovala každý přenášený znak)
ale nic se nevytisklo. Nemáte někdo nějaký další popis připojení
tiskáren k SAPI? Hrabal jsem se v různých kódech biosů ale to zapojení z
Mikosu by mělo být správně. Help!

Re: Tiskárna v CP/M

melsoft SAPI-1

Ještě pro pořádek - tohle by měla být tisknoucí rutina v ELISU:
; rutina LIST - vystup znaku (z A !!!) na tiskarnu
;
LIST:	out	3		; f44b  d3 03		vystup znaku na port tiskarny (Centronics)
Xf44d:	in	3		; f44d  db 03		nacteni stavu tiskarny
	ani	40h		; f44f  e6 40		maskuj BUSY
	jz	Xf44d		; f451  ca 4d f4	je BUSY opakuj
	mvi	a,2		; f454  3e 02		neni BUSY, priprav 1 do STROBE
	out	2		; f456  d3 02		nahod STROBE
Xf458:	in	3		; f458  db 03		cti status
	ani	40h		; f45a  e6 40		maskuj BUSY
	jnz	Xf458		; f45c  c2 58 f4	je BUSY opakuj
	mvi	a,0		; f45f  3e 00		priprav 0 do STROBE
	out	2		; f461  d3 02		shod STROBE
	ret			; f463  c9		navrat s nulou ve stradaci!!!
;
a tohle zapojení kabelu:
   K6313                SAPI-1          SIGNAL
   ===========================================
KONEKTOR                JPR-1, X3
XS11                    FRB-30
   B5  -------------------  3           DAT1	;P2-OUT0
   B6  -------------------  5           DAT2	;P2-OUT1
   B7  -------------------  6           DAT3	;P2-OUT2
   B8  -------------------  8           DAT4	;P2-OUT3
   B9  ------------------- 10           DAT5	;P2-OUT4
   B10 -------------------  2           DAT6	;P2-OUT5
   B11 -------------------  4           DAT7	;P2-OUT6
   B12 -------------------  7           DAT8	;P2-OUT7
   B2  ------------------- 26           STROBE	;P1-OUT1
   C11 ------------------- 15           BUSY	;P2-IN6
A10 AZ A12 --------------- 11           ZEM
   C5  ------------------- 11           ZEM
C6 AZ C9 ----------------- 21           ZEM

nevidím (jako obvykle), v čem je problém.

Re: Re: Tiskárna v CP/M

EC1045 SAPI-1

ja mel opacni problem kdi jsem posilal data z PC do ridiciho pocitace (JPR-1) pro plotr od aritmy problem se projevoval v tom ze data bila odeslana neuveritelne richle a nic se nevikreslilo ale kdiz jsem to pripojil k didaktiku gama tak vse fungovalo po delsim laborovani jsem prisel nato proc to nefunguje problem bil v tom z PC testovalo jen hladinu a ne prechod mezi urovnemi az jsem mezi PC a zidici pocitac (JPR-1) vrazil PMI-80 s druhou 8255 a obe v modu 1 (jedna vstupli a druha vystupni) a preposilal jsem to prez tu 8255 tak to zacalo fungovat

celi problem bil v tom ze zidici pocitac (JPR-1) bil pomali a signal potvrzeni prijmu trval moc dlouho

jak jsem taky zistil nektere rutiny psane pro 8bitu a pouzivalici pouze porty se choval podobne tj. spatne napsana obsluha

kdibi na druhem konci sedela moderni tiskarna tak bich se nedivil ze to netiskne ale s robotronem bi to melo fungovat

jestli se nepletu tak signali STROBE je inverzni takze aktivni v nule a rutina posila jako odpovet jednicku takze asi zde je chyba

Re: Tiskárna v CP/M

Roman Bórik SAPI-1

Nuž, tá rutina mi jednak pripadá trošku divne, ale zároveň mi je divné aj
 to, že sa používajú vstupno-výstupné inštrukcie IN a OUT.
Podľa popisu JPR-1 v ARB-83-01 sú porty adresované ako pamäť. Alebo mi
niečo uniká?

Druhá vec je, prečo je strobovanie do log.1. Signál STROBE býva zvyčajne
aktívny v nule. Ale môžem sa mýliť a možno to záleží aj od zapojenia
samotných portov a bižutérie okolo.

Ak by sme ale mali naďalej predpokladať prístup k portom pomocou IN a OUT,
/STB aktívne v nule a BUSY aktívne v log.1, napísal by som to takto:

LIST: MOV C,A    ; odpamätaj posialaný byte
        IN  3            ; test na pripravenosť tlačiarne
        ANI 40h        ; BUSY ?
        JNZ  LIST     ; ano, čakaj
        MOV A,C     ; posielaný byte nazad do A
        OUT 3         ; pošli na tlačiareň
        XRA A         ; vytvor impulz /STROBE
        OUT 2
        NOP            ; počkáme chvíľu
        MVI A,2       ; /STB nazad do log.1
        OUT 2
        RET


Zobrazit citovaný text (36 řádků)
> Ještě pro pořádek - tohle by měla být tisknoucí rutina v ELISU:
> ; rutina LIST - vystup znaku (z A !!!) na tiskarnu
> ;
> LIST: out 3 ; f44b  d3 03 vystup znaku na port tiskarny (Centronics)
> Xf44d: in 3 ; f44d  db 03 nacteni stavu tiskarny
> ani 40h ; f44f  e6 40 maskuj BUSY
> jz Xf44d ; f451  ca 4d f4 je BUSY opakuj
> mvi a,2 ; f454  3e 02 neni BUSY, priprav 1 do STROBE
> out 2 ; f456  d3 02 nahod STROBE
> Xf458: in 3 ; f458  db 03 cti status
> ani 40h ; f45a  e6 40 maskuj BUSY
> jnz Xf458 ; f45c  c2 58 f4 je BUSY opakuj
> mvi a,0 ; f45f  3e 00 priprav 0 do STROBE
> out 2 ; f461  d3 02 shod STROBE
> ret ; f463  c9 navrat s nulou ve stradaci!!!
> ;
> a tohle zapojení kabelu:
>   K6313                SAPI-1          SIGNAL
>   ===========================================
> KONEKTOR                JPR-1, X3
> XS11                    FRB-30
>   B5  -------------------  3           DAT1 ;P2-OUT0
>   B6  -------------------  5           DAT2 ;P2-OUT1
>   B7  -------------------  6           DAT3 ;P2-OUT2
>   B8  -------------------  8           DAT4 ;P2-OUT3
>   B9  ------------------- 10           DAT5 ;P2-OUT4
>   B10 -------------------  2           DAT6 ;P2-OUT5
>   B11 -------------------  4           DAT7 ;P2-OUT6
>   B12 -------------------  7           DAT8 ;P2-OUT7
>   B2  ------------------- 26           STROBE ;P1-OUT1
>   C11 ------------------- 15           BUSY ;P2-IN6
> A10 AZ A12 --------------- 11           ZEM
>   C5  ------------------- 11           ZEM
> C6 AZ C9 ----------------- 21           ZEM
> 
> nevidím (jako obvykle), v čem je problém.---------------------

Re: Re: Tiskárna v CP/M

melsoft SAPI-1

Nelame tě zrak. Na JPR-1 jsou skutečně porty v adresním prostoru ale já
 pokusničím na JPR-1A resp. JPR-1Z a tam jsou skutečně adresovány jako IO
(1h-3h). 

Re: Re: Tiskárna v CP/M

EC1045 SAPI-1

pokut jede na CP/M  tak tam ma JPR-1A nebo JPR-1Z a porty jsou adresovany jako porty a zadna dalsi bizuterie na portech neni (primi vystup z 3212 jen na vstupnich portech jsou odpory na zajisteni urovne "H")

Re: Re: Tiskárna v CP/M

Roman Bórik SAPI-1

OK, chápem.
Ja som sa chytil toho popisu kábla a tam máš uvedenú JPR-1.

Roman


Zobrazit citovaný text (3 řádky)
> Nelame tě zrak. Na JPR-1 jsou skutečně porty v adresním prostoru ale já
 pokusničím na JPR-1A resp. JPR-1Z a tam jsou skutečně adresovány jako IO
(1h-3h). ---------------------

Re: Re: Re: Tiskárna v CP/M

melsoft SAPI-1

Mě s euž nezdálo to, že v původní rutině je STROBE vlastně po celou dobu
 v nule a jen před potřebou sestupné hrany ho na chvíli nahodí. Já bych
dal už do inicializace BIOSu nahození do 1 a pak už přesně jak to máš
napsané ty. Jen mi připadá, že by se střadač nemusel schovávat ale poslat
rovnou na port jak to mají původně ale odzkouším obě varianty... (zítra).

Re: Re: Re: Tiskárna v CP/M

Roman Bórik SAPI-1

Máš pravdu. V úvodnej inicializácii je vhodné STB nahodiť do Log.1.

Je možné, že máš pravdu aj s tým odoslaním bytu na výstup ešte pred testovaním BUSY. V tomto okamihu zrejme tlačiareň stav datového portu "nesleduje", takže by to mohlo chodiť. Osobne som sa ale stretol iba s variantou, ktorú som uviedol.

R.

> Mě s euž nezdálo to, že v původní rutině je STROBE vlastně po celou
> dobu v nule a jen před potřebou sestupné hrany ho na chvíli nahodí. Já
> bych dal už do inicializace BIOSu nahození do 1 a pak už přesně jak to
> máš napsané ty. Jen mi připadá, že by se střadač nemusel schovávat ale
> poslat rovnou na port jak to mají původně ale odzkouším obě varianty...
> (zítra).

Re: Re: Re: Re: Tiskárna v CP/M

melsoft SAPI-1

Ještě jsem našel tohle:
In the polled mode of printing, the character bits are put on the DATA lines,
 BUSY is tested repeatedly until it is found to be low, then the ~STROBE pulse
is sent. The printer sets BUSY high when the character data have been latched
and sets it low again when the character has been processed. (The Centronics
protocol specifies that the DATA lines be stable from at least 500 ns before to 
at least 500 ns after the ~STROBE pulse, and the ~STROBE pulse be at least 500
ns long. These times may of course be shortened for a specific printer, at the
risk of loss of generality.) Programs using the polled mode should include a
"timeout"  counter to guard against a permanent BUSY condition. BIOS calls and
DOS functions use this mode for printing.

Potvrzuje to moji domněnku s inicializací /STROBE a v podstatě i to zapsání
dat přímo do portu tiskárny (bez nutnosti úschovy v C). Kolik NOPů musím
dát na 500ns? To je jeden takt procesoru ne?

Re: Re: Re: Re: Tiskárna v CP/M

Roman Bórik SAPI-1

Pre i8080 je
1T je 488,28125ns  18,432MHz XTal
alebo
1T je 500ns  18MHz XTal

NOP trvá 4T, takže jeden NOP je myslím až-až.
Dokonca je možné, že by tam žiadny NOP ani nemusel byť, keďže inštrukcia
 OUT 
trvá (pokiaľ si dobre pamätám) 11T, čo by mala byť (bez NOP) vlastne aj 
dostačujúca doba trvania toho impulzu - od jedného OUT k druhému.

R.

Zobrazit citovaný text (4 řádky)
> Potvrzuje to moji domněnku s inicializací /STROBE a v podstatě i to 
> zapsání dat přímo do portu tiskárny (bez nutnosti úschovy v C). Kolik
NOPů 
> musím dát na 500ns? To je jeden takt procesoru ne?

Re: Re: Re: Re: Re: Tiskárna v CP/M

melsoft SAPI-1

Tak záhada vyřešena. Tiskárna co mám netiskne ani s PC. Chová se úplně
 stejně jako se SAPI - zhasne kontrolka READY po dobu "tisku" a nic se
nevytiskne. Asi vyhořelý port. Tím pádem není s čím testovat.
Zajímavé, že v selftestu tiskne krásně...

Re: Tiskárna v CP/M

+GAMA SAPI-1

Zobrazit citovaný text (5 řádků)
>
> Tak záhada vyřešena. Tiskárna co mám netiskne ani s PC. Chová se  
> úplně stejně jako se SAPI - zhasne kontrolka READY po dobu "tisku"  
> a nic se nevytiskne. Asi vyhořelý port. Tím pádem není s čím
 testovat.
Byla teď na Aukru Robotron 6304, k CP/M dokonalá (nehlučná, tisk na  
faxový papír).
Bohužel ji má parchant zadraho (999) a nemá uvedeno, zda má rozhraní  
Centronics nebo V24 (které se k těmto tiskárnam taky dávalo).

Další nevýhoda je, že tisk na faxovém papíře časem vybledá.

Re: Re: Tiskárna v CP/M

melsoft SAPI-1

Tiskárnu jsem podrobil zkoumání a zjistil jsem, že má kromě Centronicsu
 také rozhraní HP-IB. To bude asi problém, protže k ní nemám žádný
návod s konfigurací DIP-switchů a tudíž nevím, jestli jenom není
nasetupovaná jako HP-IB a data z Centronicsu tudíž ignoruje ???

Re: Re: Re: Tiskárna v CP/M

melsoft SAPI-1

A pan gůgl mlčí, jedinou závažnou informaci, kterou vyblil je, že
 "HP82906A was obsoleted in 1985". Tedy věkově ideální partnerka k SAPI !!!

Re: Re: Re: Re: Tiskárna v CP/M

melsoft SAPI-1

Dostal jsem záchvat nezvladatelného smíchu.
Amputace destičky s rozhraním HP-IB sice způsobila, že tiskárna začala
 tisknout i přes Centronics (z PC naprosto normálně) ale po připojení k
SAPI tiskne jakoby odzdola nahoru. Papír prostě místo aby vylézal z
tiskárny tak do ní zalézá a text se musí číst od spodní řádky směrem 
nahoru. Báječný systém šifrování.. :-)

 

Re: Tiskárna v CP/M

+GAMA SAPI-1

Zobrazit citovaný text (5 řádků)
> Amputace destičky s rozhraním HP-IB sice způsobila, že tiskárna  
> začala tisknout i přes Centronics (z PC naprosto normálně) ale po  
> připojení k SAPI tiskne jakoby odzdola nahoru. Papír prostě místo  
> aby vylézal z tiskárny tak do ní zalézá a text se musí číst od  
> spodní řádky směrem nahoru. Báječný systém šifrování.. :-)
že by ty switche? nesprávná reakce na konec řádku?

Re: Re: Re: Re: Re: Tiskárna v CP/M

melsoft SAPI-1

Pokus v tuto chvíli nepřináší uspokojivé výsledky, datové soubory CP/M
 zřejmě neobsahují správné formátovací znaky, kterým by tiskárna
rozuměla.

Nicméně považuji za ověřené, že fungují všechny druhy ovladače tj. jak
původní tak úpravy navržené Romanem, tak moje modifikace. Zapojení kabelu 
je taky správně. Tak aspoň něco....

Re: Re: Tiskárna v CP/M

melsoft SAPI-1

Nepochybně by přestavení switchů pomohlo (takovéto CR=CR+LF apod) ale kde
 vzít a nekrást (manuál)? 

Re: Re: Re: Re: Re: Tiskárna v CP/M

EC1045 SAPI-1

HP-IB = IMS-2 = IEEE488 lisi se jen konektory

kazde zarizeni ma prepinace (obvikle 8) kdi ctiri udavaji adresu a dalsi rikaji dalsi funkcni vlastnosti tj. mluvci, posluchac, mluvci a posluchac, a dalsi vecicky a

pokut pozivas HP-IB misis stihnou odpovedet do 500nS (pokut se nepletu) coz CPU 8080 nema sanci stihnou jedine logika a kevsemu se pouzivaji tri ridici signali

pkus udelat fotku tech prepinacu mozna neco vimislime

Re: Re: Re: Re: Re: Re: Re: Tiskárna v CP/M

EC1045 SAPI-1

pokut jsem pochopil spravne umi oda duhy jak HP-IB tak CENTRONIX

pokut udelas ty fotky tak nas mozna napadne co tam je blbje nastaveno

jinak mam doma ROBOTRON 6304 (termo tiskarna) s centronixem v krabicce od V24 viz foto dropbox takze pokut ji budes chtit pujcit tak staci rict

Re: Re: Re: Re: Re: Re: Re: Re: Tiskárna v CP/M

melsoft SAPI-1

VYŘEŠENO!
1) HP82906A je přesnou kopií Epsonu FX-80 (snad kromě toho HP-IB), tím
 pádem stažení manuálu bylo dílem okamžiku.
2) nastavení switchů se tak stalo hračkou, nicméně tiskárna stále
couvala.
3) provedl jsem seřízení tření frikčního válce (páčka byla podle
manuálu v poloze "dont use this", čímž se silně odlehčilo posuvovému
krokovému motoru a tento si odfrknul a začal ctít směr otáčený daný mu
sledem fází.
4) namazal jsem ložiska a převody, servisní prohlídka tiskárny měla nastat
v březnu 2004, což se jak předpokládám nestalo.

Tiskárna tiskne jako o život jen to zakládání papírů je docela pruda. Už
jsem zapomněl jaké to je....