OldComp.cz
http://oldcomp.cz/

Připojení XY4131, XY4150 včetně programu SUPERPLOT
http://oldcomp.cz/viewtopic.php?f=144&t=7023
Stránka 78

Autor:  Czech Human [ 14.05.2020, 09:19 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

Díky moc za skeny :like: , je hezké vidět svůj "produkt" něco umět dělat byť to chce ještě poladit. Vidím že ne moc překvapivě to píše líp zabudované písmo než kreslí grafiku. Asi je Basic trochu moc pomalý na rozpíjivé fixy, co použít nerozpíjející se pisátko? Rovné čáry už moc neurychlím, ty obrazce čtvereček a obdélník jsou jen 4 body, žádné velké výpočty tam nejsou. Se zvedáním hrotu bych se zase trochu bál nekonzistentního obrázku, že se čára pokaždé netrefí přesně a bude to taky pomalejší. Ale zase bez teček... Tohle se holt bez tisku na skutečném HW a zkoušení řešit nedá... Bylo by možné vyfotit jak je fyzicky zapojený ten kabel pro PMD abych ho mohl obšlehnout? Zapojení se sice vyskytuje na netu, ale fyzický kabel je fyzický kabel.

Autor:  Czech Human [ 14.05.2020, 09:26 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

dex píše:
Co je PMD 85-2+?


To znamená PMD 85-2,2A a 3. Prvně jsem si myslel že ten ovladač běhá jen na dvojce. Ale potom jsem jen tak ze srandy zkusil verzi 2A a ejhle, kreslilo to... Tak jsem zkusil i verzi 3 a taky to kreslilo. Je to jen moje teorie založená na emulátoru, ale když se použije správný ROM modul s Basic V2.0 a ovladačem k plotru, kreslilo mi to na obrazovku stejně na všech modelech. Tak předpokládám že na verzi PMD ve finále nezáleží, jen u PMD 85-3 se musí nejdříve skočit do režimu kompatibility s 2A přes JUMP FFF0 a teprve potom si ten Basic natáhne. Kdo případně máte ten modul a jiný model PMD než 2 (2A nebo 3), zkuste to. Já to teď nemůžu fyzicky zkoušet. Pro verzi 1 ovladač existuje taky, ale to jsem nezkoušel ani v emulátoru, těchto PMD je mezi lidmi velice málo a PMDGRAF by musel být napsaný pro verzi prvního Basicu.

Autor:  SCjoe [ 13.02.2021, 19:42 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

Zacalo tohle vlakno Superplotem pro ZX Spectrum.
Moc jsem jej nestihal sledovat, ale najednou tu je PMD s nejakym jinym softem.

Jestli to nebude lepe radeji rozdelit na dve vlakna?

Prikladam spectrackou kazetu pro XY-4150 (ale nektere programy maji ...xx31).

Přílohy:
XY4150.TAP [149.69 KiB]
340 krát

Autor:  Czech Human [ 16.09.2021, 15:14 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

Na rootu nedávno byl pěkný článek o různých křivkách v pythonu co mě zaujal a řekl jsem si, že tohle prostě nesmí v PMD chybět, zejména na XY-4131 by to vypadalo určitě moc pěkně. Tak jsem se rozhodl že ve volných chvílích si přepíšu dané křivky do PMD Basicu a zde je první z nich - Lissajousova křivka :-). Jistě by si zasloužila i nějakou tu HW akceleraci přes MH102, je to tu samý sínus kosínus a floating násobení, docela by mě zajímalo jak by se lišila rychlost vykreslení na IQ-151 s Basicovou násobičkou.

Kód:
10 GCLEAR:SCALE-4,3,-3,4
20 A=3:B=3:T=0:KX=3:KY=2:PI=3.141592
30 FOR T=0 TO 2*PI STEP .02
40 X=A*COS(KX*T)
50 Y=B*SIN(KY*T)
60 PLOT X,Y:MOVE X,Y
70 NEXT T


Přílohy:
Lissajous.jpg
Lissajous.jpg [ 11.5 KiB | Zobrazeno 5895 krát ]

Autor:  Czech Human [ 16.09.2021, 15:30 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

A ještě vizuálně vděčnější hypotrochoida :-) (zde by si násobička smlsla ještě víc...).

Kód:
10 GCLEAR:SCALE-24,18,-18,24
20 R=6:RR=1:D=8:PI=3.141592
30 FOR T=0 TO 2*PI STEP .01
40 X=(R-RR)*COS(T)+D*COS(T*(R-RR/RR))
50 Y=(R-RR)*SIN(T)-D*SIN(T*(R-RR/RR))
60 PLOT X,Y
70 NEXT T


Přílohy:
Hypotrochoida.jpg
Hypotrochoida.jpg [ 9.8 KiB | Zobrazeno 5890 krát ]

Autor:  vanthomas [ 16.09.2021, 18:48 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

Když to mám na stole :)
upraveno takhle:
Kód:
1 DPOKE 8,0
10 CLS:ERASE:SCALE-4,3,-3,4
20 A=3:B=3:T=0:KX=3:KY=2
30 FOR T=0 TO 2*PI STEP .02
40 X=A*COS(KX*T)
50 Y=B*SIN(KY*T)
60 IF T=0 THEN DRAW X,Y,-2
61 IF T>0 THEN DRAW X,Y,-1
70 NEXT T
91 TI=DPEEK(8)/50:TS=INT(TI/60)
92 PRINT "TRVALO MI TO: ";TS;":";TI-TS*60

Kód:
1 DPOKE 8,0
10 CLS:ERASE:SCALE-24,18,-18,24
20 R=6:RR=1:D=8
30 FOR T=0 TO 2*PI STEP .01
40 X=(R-RR)*COS(T)+D*COS(T*(R-RR/RR))
50 Y=(R-RR)*SIN(T)-D*SIN(T*(R-RR/RR))
60 IF T=0 THEN DRAW X,Y,-2
61 IF T>0 THEN DRAW X,Y,-1
70 NEXT T
91 TI=DPEEK(8)/50:TS=INT(TI/60)
92 PRINT "TRVALO MI TO: ";TS;":";TI-TS*60


MH102 to urychlí celkem dost...
Příloha:
lissajous_mh102.jpg
lissajous_mh102.jpg [ 89.24 KiB | Zobrazeno 5862 krát ]

Autor:  Czech Human [ 16.09.2021, 20:09 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

To je slušné, urychlení o 32 a 30 %, ještě by něco málo ubrala ta nepotřebná kontrola počátku souřadnic. :-)

Autor:  Czech Human [ 16.09.2021, 22:07 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

A ještě jedna "křivka" - Archimédova spirála. Samozřejmě čím menší A, tím přesněji se jí výsledek blíží ale tím déle to bude trvat a čím víc Pí, tím víc otoček :-).

Kód:
10 GCLEAR:SCALE -24,24,-24,24:PI=3.141592
15 MOVE 0,0:A=PI/45
20 FOR T=0.01 TO 8*PI STEP A
25 X=Z*COS(T):Y=Z*SIN(T)
30 PLOT X,Y
35 Z=Z+A
40 NEXT T


Přílohy:
Archimedes.jpg
Archimedes.jpg [ 43.3 KiB | Zobrazeno 5812 krát ]

Autor:  MilasPce [ 17.09.2021, 08:10 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

Taky by mě zajímalo jestli to 2*PI nebo 8*PI počítá v každém průchodu a nebylo by rychlejší mu to nějak zadat předpočítat.

Autor:  Czech Human [ 17.09.2021, 08:54 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

Je to dobrá otázka ale ne, počítá se stejně rychle ať je tam 8*PI nebo nějaká proměnná AA=8*PI. Tohle naštěstí Basic bere jako konstantu a tak se to počítá jen jednou. Už jsem to dříve testoval při urychlování kreslení a teď jsem to schválně změřil znovu - v obou případech kdy A=PI/15 aby to šlo rychle jsem naměřil dobu výpočtu spirály shodnou a to 12,86 sekundy. Při hodnotě A=PI/45 je to 37 sekund.

A když jsem byl u toho měření, změřil jsem si též čas výpočtu Lissajouse - 42 sekund (styď se PMD :x ) a Hypotrochoida 120 sekund (no fuj! :roll: ).

Autor:  l00k [ 18.09.2021, 20:44 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

což není případ IQ151 kde to výrazně pomůže - 1:53 vs 1:38 (bez násobičky)
Kód:
5 DPOKE 8,0
10 CLS:ERASE:SCALE-24,18,-18,24
20 R=6:RR=1:D=8:Q=R-RR:P=Q/RR
25 DRAW 13,0,-2
30 FOR T=0 TO 2*PI STEP .01
40 X=Q*COS(T)+D*COS(T*P)
50 Y=Q*SIN(T)-D*SIN(T*P)
61 DRAW X,Y,-1
70 NEXT T
91 TI=DPEEK(8)/50:TS=INT(TI/60)
92 PRINT "TRVALO MI TO: ";TS;":";TI-TS*60


PS.: 3 sekundy ubralo odstranění těch IF (předvýpočtem pro hodnotu 0 a tajemný řádek 25)
PPS.: a to na IQčku trvá ERASE na smazání gr. obrazovky skoro 2 sekundy ;)

Autor:  Czech Human [ 30.09.2021, 20:35 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

Přišel čas trošku přitvrdit a předhodit PMD fraktály... nebo PMD fraktálům? Nevím :twisted:. Napsal jsem proto prográmek co generuje jeden z nejjednodušších a též nejdříve známých fraktálů - Kochovu křivku. Ta má pro nás tu dobrou vlastnost, že její části svírají vždy úhel 90°, což nám značně usnadňuje výpočet i vykreslení obrazce pro našeho floating trhače asfaltu. Program je připravený pro hloubku N 0 až 4, víc by už asi ani nemělo smysl s tím rozlišením co PMD vlastní dělat, nebylo by už nic vidět... Program je rozsahem poněkud delší tak ho nebudu ventilovat v textové podobě a přikládám jako .ptp pásku. A malá soutěž pro lepší programátory než jsem já - nevymyslel jsem nějaký univerzální algoritmus pro výpočet souřadnic X,Y tak to tahají šablony ale věřím že to někdo zvládne. Já už na to nemám chuť díky mizernému rozlišení PMD. Ve spolupráci s XY-4131 by se ale vyšší hloubka (řekněme těch 5, moožná 6) dala zobrazit.

Přílohy:
N=2.jpg
N=2.jpg [ 18.27 KiB | Zobrazeno 5497 krát ]
N=4.jpg
N=4.jpg [ 36.2 KiB | Zobrazeno 5497 krát ]
Koch.zip [751 bajtů]
227 krát

Autor:  ub880d [ 01.10.2021, 01:14 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

Czech Human píše:
Program je rozsahem poněkud delší tak ho nebudu ventilovat v textové podobě a přikládám jako .ptp pásku. A malá soutěž pro lepší programátory než jsem já - nevymyslel jsem nějaký univerzální algoritmus pro výpočet souřadnic X,Y tak to tahají šablony ale věřím že to někdo zvládne.


sice to je pomalsie, ale zas to nie je tak velke a tak sa to da sirit ako text (v style "opis program zo zenitu pionierov", aj ked, na vernejsie vychutnanie "typein" programovania by to asi mal byt len screenshot obrazovky ;]) a samozrejme, daju sa podobnym sposobom napisat aj ine fraktaly alebo by sa program dal aj jednoducho upravit na ploter, ale to len tipujem, s plotrom som na pmd nikdy nerobil, tak neviem ako sa z basicu ovlada:

Kód:
10 CHOD=1000:DOPREDU=2000:VLAVO=3000:VPRAVO=4000
20 SCALE 0,256,0,242:GCLEAR
30 X=0:Y=0:DX=1:DY=0
40 A=243:B=4:GOSUB CHOD
999 STOP
1000 IF B=0 THEN GOSUB DOPREDU:RETURN
1010 A=A/3:B=B-1
1020 GOSUB CHOD:GOSUB VLAVO
1030 GOSUB CHOD:GOSUB VPRAVO
1040 GOSUB CHOD:GOSUB VPRAVO
1050 GOSUB CHOD:GOSUB VLAVO
1060 GOSUB CHOD
1070 B=B+1:A=A*3
1080 RETURN
2000 MOVE X,Y:X=X+DX*A:Y=Y+DY*A:PLOT X,Y:RETURN
3000 DZ=DX:DX=-DY:DY=DZ:RETURN
4000 DZ=DY:DY=-DX:DX=DZ:RETURN


hadam som to z emulatora opisal bez chyby ;] ale vsak, pozorny programator si pripadnu chybu opravi ;]

co sa tyka velkosti obrazca a hlbky vnorenia je program univerzalny a velkost a hlbka sa konfiguruju na riadku 40 (velkost je premenna A, hlbka je premenna B).

urcite sa najdu odbornici, co to zrychlia (minimalne na vlavo a vpravo netreba podprogram ale prehodenie dx/dy sa da napisat aj priamo do "hlavneho kodu", sice sa clovek viac napise, ale verim ze to aspon kusok zrychli).

Autor:  Czech Human [ 01.10.2021, 09:13 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

No bezva, odpoledne vyzkouším. O moc rychleji než vykresluje ten můj bumbrlíček to asi nepůjde protože prakticky nic nepočítá, mění jen souřadnice. Jsem na rychlost vykreslování zvědavý.

Plotr mám v úmyslu vyzkoušet, použití je jednoduché. Stačí mít Basic v2.0 + ovladač a přidat příkaz COPY G na vhodné místo. Jen se musí nastavit správné rozlišení tuším 255x170 či 175 (Basic ovladač série xy používá fyzické rozlišení 2550 x 1700 nebo 1750) , jinak je výsledny obraz deformovaný. Sice to pak zase na obrazovce vypadá blbě, ale výkres je stranově správný.

Včera jsem se také v průběhu práce více dozvěděl o přístupu jazyka LOGO a kreslicí želvě, tento přístup jsem chtěl překlopit do Basicu a využít i na další výpočetně nenáročné fraktály, co vizuálně vypadají hezky. No a už je to tady ;-). Jen ty úhly <> 90 možná budou trošku oříšek z hlediska výkonu pokud se nepoužije nějaká tabulka posunů x,y..

Autor:  Czech Human [ 01.10.2021, 22:52 ]
Předmět příspěvku:  Re: Připojení XY4131, XY4150 včetně programu SUPERPLOT

Tak vyzkoušeno, program běží bez chyby :god: . Jen je poněkud pomalejší, patrně z důvodu že je reálně přítomný rozhodovací algoritmus ale na XY 4131 to je pořád ještě dost rychlé :-).

Stránka 78 Všechny časy jsou v UTC + 1 hodina [ Letní čas ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/