From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <424E32FD.7090504@msx.ru> Date: Sat, 02 Apr 2005 09:51:57 +0400 From: "Denis A. Yurashkou" Organization: VRG User-Agent: Mozilla Thunderbird 1.0.2 (X11/20050329) X-Accept-Language: en-us, en MIME-Version: 1.0 To: "[sisyphus]" Subject: Re: [sisyphus] =?KOI8-R?Q?=FC=CD=D5=CC=D1=D4=CF=D2_=E2=EB_=28?= =?KOI8-R?Q?=CF=C2=DF=D1=D7=CC=C5=CE=C9=C5=29?= References: <1112328516.1888.6.camel@alpha.fastlink.ru> <424D0988.4070801@msx.ru> <1112383820.1924.12.camel@alpha.fastlink.ru> In-Reply-To: <1112383820.1924.12.camel@alpha.fastlink.ru> Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 8bit Cc: X-BeenThere: sisyphus@altlinux.ru X-Mailman-Version: 2.1.5 Precedence: list Reply-To: dayfuaim@msx.ru, ALT Linux Sisyphus discussion list List-Id: ALT Linux Sisyphus discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 02 Apr 2005 05:52:02 -0000 Archived-At: List-Archive: 'Вячеслав Диконов' wrote on 01.04.2005 23:30: > В Птн, 01/04/2005 в 12:42 +0400, Denis A. Yurashkou пишет: > >>'Вячеслав Диконов' wrote on 01.04.2005 08:08: >> >>>По просьбам общественности из рассылки о Сизифе :) >>>выложен в incoming ностальгический пакет с эмулятором >>>БК-0010/БК-0011М и ... американской БК - TERAK ! >>>Прошу любить и жаловать :) >>> >>>Странички проекта: >>>http://mailcom.com/bk0010/ >>>http://sourceforge.net/projects/bk-terak-emu/ >>> >>>Несколько дисков для БК с осями и игрушками (маловато) >>>http://bk0010.leob.com/ >>>У меня есть большой архив (почти полный CD). Если меня уговорите, то >>>тоже упакую или пришлю. Также есть большая часть подшивки ПК-БК. >>> >>>Кое-что можно найти в сети. Десяточникам рекомендую посмотреть на 11М и >>>16-цветные гульки. А спектрумисты пусть гуляют 8-/. >>> >>>О глюках: эмуляция TERAK может не работать (нужны прошивки и >>>программы). В некоторых случаях не слышно COVOX (и тогда лучше включить >>>AY). Из-за странной непойманной ошибки некоторые игры (Attack to >>>earth :( ) думают, что постоянно нажата кнопка джойстика. И самое >>>обидное - не работает Киберноид. Нет планируемой эмуляции винчестера, >>>так что увидеть систему OSA-WASP (требует HALT-расширитель) не >>>получится. >>> >>>Для загрузки переименуйте образы дискет в A.img, B.img, C.img и D.img. >>>Они ищутся в текущем каталоге. Ждать графической оболочки выбора образов >>>дискет и конфигурации, пока я разберусь в загадках форкания перловых >>>скриптов может оказаться скучно... >>> >> >>Блин (прошу прощения за эмоцию)... Как классно! :) >>Супер-спасибо! >> >>Живы наши, живы. :) >> >>"..И сейчас живее всех живых." >> >>P.S.: С Perl могу помочь. > > Да у меня стандартная проблема, но найти хорошее решение никак не могу: > > Для разных задач нужны скрипты-оболочки. Нужно > > а) Perl-Tk, как правило Windows > Задача: Расфоркать выполнение одного скрипта и передавать данные (текст) > из дочернего процесса в родительский через пайп или еще как-нибудь. > > Проблема: _Это должно работать в ActivePerl_. Я сделал это в Линуксе > двумя способами (open -| и fork), но в винде оба варианта роняют кривой > интерпертатор. несмотря на заверения ActivePerl.об эмуляции fork(). > Рекомендуемый же способ эмуляции open -| в ActivePerl не падает, но > страдает описанной в случае б) болезнью. > > > б) perl-GTK2, только Линукс. > Задача: запустить долго выполняющийся чужой perl-скрипт и синхронно > получать и обрабатывать от него вывод на stdout и stderr. > > Проблема: запущенный консольный скрипт долго выполняется и изредка > выдает сообщения с помощью print "text\n"; > > Их нужно показывать или обрабатывать "в реальном времени" по мере > поступления. > > Вот этот код взят из FAQ по perl-GTK2: > > #!/usr/bin/perl -w > use strict; > use Gtk2 -init; > my $window = Gtk2::Window->new; > $window->set_default_size(400,300); > my $scroll = Gtk2::ScrolledWindow->new; > my $textview = Gtk2::TextView->new; > my $buffer = $textview->get_buffer; > $window->add ($scroll); > $scroll->add ($textview); > $window->show_all; > $window->signal_connect (destroy => sub { Gtk2->main_quit }); > > open(IN, q^./tst.pl -|^) or die "Failed running perl subprocess\n"; > > Glib::IO->add_watch ( fileno(IN), ['in', 'hup'], sub { > my ($fileno, $condition) = @_; > if ($condition eq 'hup') { > warn "done\n"; > close IN; > return 0; # uninstall > } > warn "reading...\n"; > my $line; > sysread IN, $line, 1024; > warn "read $line\n"; > $buffer->insert($buffer->get_end_iter, $line); > return 1; > }); > > Он работает неверно. Вместо появляющихся постоянно через приблизительно > равные промежутки времени сообщений долго ничего не происходит, а затем > все строки мгновенно появляются вместе одним комом. Мешает дурная > буферизация. (C fileevent из perl-TK в этом месте все работает как > следует.) > > > На самом деле мне очень нужны работающие примеры или ссылки на них. > Буду очень рад, если удастся их найти, так как сам никак не могу обойти > происходящие в обоих случаях глюки. Это поможет и написанию запускалки > эмулятора. ОК. На выходных поиграемся с ActivePerl-ом. Попробую его уломать. -- ---------------- Best regards, Denis A. Yurashkou [DAY] (dayfuaim@msx.ru) Origin: Stop the World -- I Wanna Get Off!..