🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.sys.amiga
Article #67058

Re: blizzard

#67058
From: Uzytkownik
Date: Mon, 10 Apr 2017 07:53
77 lines
5329 bytes
W dniu 2017-04-10 o 08:55, Tomasz Kaczanowski pisze:
> W dniu 2017-04-09 o 23:21, Sebastian Biały pisze:
>> On 4/9/2017 10:43 PM, Uzytkownik wrote:
>>> Wszystko za sprawą wyjątkowo sprawnej obsługi portów szeregowych, które
>>> potrafiły łączyć kilka strumieni danych z kilku programów i przesłać je
>>> jednym portem szeregowym.
>>
>> Co było o tyle magiczne że port szeregowy potrafi sprzetowo wysłać tylko
>> pojedyncze bajty i jednocześnie może go obsługiwać tylko jeden program.
>>
>> Jeśli już tworzysz legende, to powstrzymaj się od fantazji.
>
> Pewnie przedpiszcy chodziło o port arexxa... Fajny wynalazek i 
> rzeczywiście się sprawdzał.

Nie chodziło mi o port ARexx-a, ale o fizyczny port RS232 w Amidze.

Uruchamiałem jednocześnie kilka programów z obsługą transmisji 
szeregowej, a konkretnie MIDI. Wszystkie programy wysyłały generowane w 
nich dane do tego, jednego portu i odbywało się to bez zająknięcia czy 
przekłamywania danych. Z portu RS232 poprzez konwerter RS232-MIDI dane 
wędrowały do urządzeń typu instrumenty muzyczne, procesory wokalowe oraz 
sterowniki oświetlenia. Każde z tych urządzeń odbierało przeznaczone dla 
nich dane i wykonywało to, co było trzeba.

ARexx natomiast zajmował się odbieraniem transmisji zdalnego sterowania 
i wyborem określonych pakietów danych, które przy pomocy dodatkowego 
programu, który się uruchamiał tylko na czas przesyłania komunikatów 
MIDI wysyłał do RS232 równolegle z tymi programami, które cały czas 
nadawały już transmisję.

Jednocześnie pracowały programy:

- Sequencer lub Player MIDI, który odtwarzał pliki smf

- MIDI Mixer, którym na bieżąco można było regulować parametry 
instrumentów (brzmienia i efekty wbudowane w instrumenty)

- dodatkowy programik MIDI Player, uruchamiany przez skrypty ARexx-a, 
który zajmował się przesyłaniem pakietów MIDI do ustawiania procesorów 
wokalowych i sterowników oświetlenia

- Skrypty ARexx były podpięte pod Directory Opus i działały równolegle 
ze zdalnym sterowaniem. Skrypty te obsługiwały m.in. sterowanie MIDI 
Playerem poprzez port ARexx-a, zmianą ustawień parametrów procesorów 
wokalowych oraz scenami oświetlenia. Ponadto DO z podpiętymi skryptami 
ARexx-a obsługiwał funkcje PANIC, która wygaszała "powieszone" dźwięki w 
instrumencie np. w razie przekłamań, które czasami powstawały w 
instumencie jeżeli w pobliżu były generowane duże zakłócenia elektryczne 
oraz funkcję RESET, która przywracała bezpieczne ustawienia 
instrumentów. Przed każdym uruchomieniem odtwarzania konkretnych plików 
smf najpierw był odtwarzany specjalnie przygotowany plik smf resetujący 
instrumenty i ustawiający wszystkie parametry na wartości bezpieczne. 
Mam nadzieję, że rozumiesz o czym piszę? Jestem świadomy, że nie każdy 
przecież bawił się standardem MIDI i muzykowaniem i to o czym piszę może 
być niezrozumiałe.

Wszystkie programy jednocześnie generowały dane do portu RS232, a ten 
dalej to przesyłał bez jakichkolwiek przekłamań czy zająknięć. Wszystko 
działo się w czasie rzeczywistym bez jakichkolwiek zauważalnych opóźnień.

Taki sposób transmisji był mi potrzebny, ponieważ każde z urządzeń mogło 
być sterowane zarówno z plików smf, z miksera MIDI jak i z poziomu 
skryptów ARexx-a.

Nie było to nigdy możliwe do uzyskania w przypadku komputerów PC czy to 
RS232 czy też MIDI poprzez Game Port, ponieważ tylko jeden program mógł 
w danym czasie otwierać dany port i po jego otwarciu żaden inny już nie 
mógł mieć dostępu do tego, używanego portu.

Aby to obejść trzeba było doinstalować w PC kilka portów MIDI. Każdemu z 
programów przydzielić inny port, a następnie transmisję z tych 
wszystkich portów skierować najpierw do urządzenia zewnętrznego MIDI 
Merger, które łączyło te wszystkie dane (miksowało) w jeden strumień.

W przypadku Amigi łączenie wszystkich strumieni odbywało się wewnątrz 
komputera na porcie RS232
Technical Details
Message-ID: <58eb39f3$0$15203$65785112@news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin3!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <oa49kv$d0l$1@node1.news.atman.pl> <ocdtk1$elt$1@node2.news.atman.pl> <ocdtti$6h8$1@node1.news.atman.pl> <58ea82e8$0$5163$65785112@news.neostrada.pl> <oce0mh$9jl$1@node1.news.atman.pl> <58ea9cd9$0$5152$65785112@news.neostrada.pl> <oce8ki$q2h$1@node2.news.atman.pl> <ocfa95$on1$2@node2.news.atman.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin3!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Subject: Re: blizzard
Newsgroups: pl.comp.sys.amiga
References: <oa49kv$d0l$1@node1.news.atman.pl> <ocdtk1$elt$1@node2.news.atman.pl> <ocdtti$6h8$1@node1.news.atman.pl> <58ea82e8$0$5163$65785112@news.neostrada.pl> <oce0mh$9jl$1@node1.news.atman.pl> <58ea9cd9$0$5152$65785112@news.neostrada.pl> <oce8ki$q2h$1@node2.news.atman.pl> <ocfa95$on1$2@node2.news.atman.pl>
From: Uzytkownik <adres@serwer.pl>
Date: Mon, 10 Apr 2017 09:53:21 +0200
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0
MIME-Version: 1.0
In-Reply-To: <ocfa95$on1$2@node2.news.atman.pl>
Lines: 78
Message-ID: <58eb39f3$0$15203$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 94.254.177.186
X-Trace: 1491810804 unt-rea-a-02.news.neostrada.pl 15203 94.254.177.186:7525
X-Complaints-To: abuse@news.neostrada.pl
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit