Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Эмуляторы отечественных компьютеров (http://zx-pk.ru/forumdisplay.php?f=61)
-   -   Эмулятор терминала типа VT52 (http://zx-pk.ru/showthread.php?t=20092)

form 10th June 2014 22:19

Quote:

Originally Posted by MiX (Post 716236)
Тогда в чем эмулятор работает?

В W8.1 x64 ;)

Quote:

Originally Posted by MiX (Post 716236)
Для никсов есть свои терминалы в т.ч. и с телнет.

Для никсов (да и для виндовсов) лично для меня вопросов нет - по определению ;)
Вопросы есть конкретно к реализации связки VT52 эмулятора (представленного в этой теме) через сеть :)
Начал я с малого - с просьбы реализовать BREAK для COM, а дальше по ситуации - нареканий множество (не к терминалу как к таковому, а к HX), с другой стороны - пока что HX в принципе непригоден для работы - только как начальный шаг для установки системы - а значит и вопросов особо нет :)

Patron 11th June 2014 02:32

Quote:

Originally Posted by form (Post 716239)
HX в принципе непригоден для работы

Я сделал вариант драйвера HX, работающий по прерываниям, но он в десятки ( если не в сотни ) раз медленнее, потому что входит в системный обработчик драйверных прерываний при приёме каждого байта.

form 11th June 2014 04:32

Quote:

Originally Posted by Patron (Post 716327)
Я сделал вариант драйвера HX, работающий по прерываниям, но он в десятки ( если не в сотни ) раз медленнее, потому что входит в системный обработчик драйверных прерываний при приёме каждого байта.

Ну тут выбор между работоспособностью системы и скоростью которую можно применить только в ограниченном объеме :)
Кстати DD тоже входит в обработчик, но скорость его отнюдь не ниже чем у HX.

Patron 11th June 2014 12:41

Quote:

Originally Posted by form (Post 716333)
Кстати DD тоже входит в обработчик, но скорость его отнюдь не ниже чем у HX.

Во-первых ( в смысле числа тактов процессора на один байт ), скорость у DD раза в 3 ниже ( что не играет роли при скорости процессора 1 MIPS, потому что максимальная скорость порта при этом в ~10 раз ниже максимальной пропускной способности драйвера ), а во-вторых там используют хитрый способ, не вызывая INTEN при приёме байтов пакета.

Сейчас альтернативный драйвер HX выглядит так: HY.zip

form 11th June 2014 12:46

Quote:

Originally Posted by Patron (Post 716412)
хитрый способ, не вызывая INTEN при приёме байтов пакета.

Чего ж тут хитрого - все элементарно - если не требуется долгих действий, никто не заставляет. Вручную пишешь xxINT: и сам обрабатываешь все прерывание :)

form 12th June 2014 09:51

Посмотрел HY немного.
Проверял как чистый диск - без совмещения (если он вообще предусматривает такое).
Насчет скорости - проигрыша не заметил.
В XM/ZM работает.

Беглый взгляд на исходники:

Code:

.IIF NDF MMG$T,  MMG$T  =: 0
.IIF NDF ERL$G,  ERL$G  =: 0
.IIF NDF TIM$IT, TIM$IT =: 0

бесполезные строчки, они уже есть в .DRDEF, если же хочется переопределять, то лучше сделать файл префикса в котором определять настройки и подключать его прилагаемым COM файлом... в этом случае драйвер будет совместим с SYSGEN (против драйвера в котором эти параметры задаются вручную без отдельного файла).

Code:

.DrSet  ERLG,    1,  O.GEN,  NO
.DrSet  TIMIT,    4,  O.GEN,  NO

смело в мусорку как нерабочий код - нельзя перестроить драйвер с поддержкой/без поддержки device timeout и error logging в драйвер с поддержкой и наоборот всего лишь изменением H.GEN. Такое возможно только если драйвер не использует прерываний (или использует свою реализацию) или содержит полный вектор для системных подпрограмм драйвера и при перенастройке меняет ссылки на него (что опять таки требует отказаться от макрокоманд .DRAST, .FORK), что в любом случае требует дополнительных шагов которые не выполнены (попутно, добавка .BLKW в конце не поможет)

Code:

        .ASCIZ  /R HY.SYS/
тут нужно или учесть, что драйвер может называться не HY.SYS (XM, ZM к примеру), в идеале лучше вообще отказаться от использования команды "R", а просто подгружать драйвер прямо из SET и запускать (или даже не выходить за рамки пространства SET вовсе - как это сделать можно посмотреть например в LD)

Code:

.Word  CHAIN$ ! OVLY$
...и соответственно OVLY$ станет не нужен ибо будет по определению...

Patron 12th June 2014 13:23

Quote:

Originally Posted by form (Post 716645)
Проверял как чистый диск - без совмещения (если он вообще предусматривает такое)

Это чистый диск. Совмещение (по идее) невозможно.

form 12th June 2014 13:24

Quote:

Originally Posted by Patron (Post 716675)
Это чистый диск. Совмещение (по идее) невозможно.

Ну я так и понял из сообщения которое он выводит.
В целом вполне работает.
Чуть позже сделаю патч чтобы драйвер и под TSX собирался - пусть будет :)

Patron 12th June 2014 13:26

Quote:

Originally Posted by form (Post 716645)
просто подгружать драйвер прямо из SET

Здесь меня ограничило непонимание, как из обработчика SET узнать спецификацию файла "сетуемого" драйвера или получить открытый канал чтения/записи к этому файлу.

form 12th June 2014 13:31

Quote:

Originally Posted by Patron (Post 716677)
Здесь меня ограничило непонимание, как из обработчика SET узнать спецификацию файла "сетуемого" драйвера или получить открытый канал чтения/записи к этому файлу.

Знать не надо, он открыт на канале 17 (15.).

---------- Post added at 15:31 ---------- Previous post was at 15:27 ----------

И еще на тему запускаемых драйверов полезно посмотреть исходники SL - там для ON делается проверка, что это последняя опция в строке и дается предупреждение, что остальное игнорится если не так.

Patron 12th June 2014 14:46

Quote:

Originally Posted by form (Post 716645)
Насчет скорости - проигрыша не заметил.

Когда нет управления потоком - байты не могут приходить медленнее скорости порта. Разница между различными драйверами только в том, успеет драйвер обработать предыдущий байт до прихода следующего или нет. Если (например) HX тратит 4 цикла шины на каждый принимаемый байт, а HY - 20 циклов шины, то при скорости процессора 1 MIPS и скорости порта 9600 - оба дайвера успеют обработать байты, а на ДВК-1 при скорости порта 57600 - HX успеет, а HY - нет.

Можно провести тест, запустив HY при максимальной скорости порта и при выключенном кеше процессора. Если HY справится в таких условиях - справится и на УКНЦ.

form 12th June 2014 14:52

Quote:

Originally Posted by Patron (Post 716703)
Когда нет управления потоком

А это всегда для DL(V)-11. Ибо в оригинале там даже сигналов таких не предусмотрено. Есть специальные DL(V)11-E/-F для сетевых функций (и полностью специализированные сетевые сериал контроллеры вроде DU(V)11. Но и там есть только управление сигналами, а взять это управление на себя должен софт. Так что управление потоком - это отдельный конкретный случай...

Quote:

Originally Posted by Patron (Post 716703)
57600

Даже при скорости 19200 уже терминальный драйвер не будет успевать за клавиатурой на родных DL(V)11. На всех без исключения. Достаточно попробовать включить такую скорость и попытаться в SL поредактировать командную строку. Опять таки речь об обычных DL(V)11...

Patron 12th June 2014 15:00

Quote:

Originally Posted by form (Post 716704)
Даже при скорости 19200 уже терминальный драйвер не будет успевать за клавиатурой на родных DL(V)11

Ну, в HY всё же гораздо меньше накладных расходов на байт, чем в терминальном драйвере. Просто в HY в разы больше накладных расходов, чем в HX.

form 12th June 2014 15:02

Quote:

Originally Posted by Patron (Post 716705)
Ну, в HY всё же гораздо меньше накладных расходов на байт, чем в терминальном драйвере. Просто в HY в разы больше накладных расходов, чем в HX.

Их легко уменьшить если убрать .DRAST - он там по сути не нужен - не так много там действий выполняется на уровне прерывания, чтобы считаться с остальными устройствами.

Patron 12th June 2014 15:09

Quote:

Originally Posted by form (Post 716706)
Их легко уменьшить

Если будет работать на всех скоростях порта при выключенном кеше - на первое время сойдёт и так.

form 12th June 2014 15:13

Quote:

Originally Posted by Patron (Post 716708)
Если будет работать на всех скоростях порта при выключенном кеше - на первое время сойдёт и так.

На всех наверное не будет ни при включенном ни при выключенном ибо, как уже говорил, у обычных DL(V)11 никакого управления потоком нету. Но не уверен, что и без прерываний будет :)
Могу проверить до 38400 - это максимум для DL(V)11...

---------- Post added at 17:13 ---------- Previous post was at 17:11 ----------

Но 38400 я могу выставить только для консольного порта. Для DLV11-J надо разматывающиеся перемычки переставлять - не-е-е :)

Patron 12th June 2014 15:21

Quote:

Originally Posted by form (Post 716709)
На всех наверное не будет ни при включенном ни при выключенном ибо, как уже говорил, у обычных DL(V)11 никакого управления потоком нету.

Простая математика. На скорости 9600 передаётся около 1000 байтов в секунду. Процессор успевает провернуть за секунду около 1000'000 циклов шины, т.е. примерно 1000 циклов на байт. Если HY тратит 20 циклов на байт - при скорости процессора 1 MIPS он сможет синхронно работать с портом на скорости до 9600 x 50 = 480'000 bps.

form 12th June 2014 15:24

Сейчас докопируется файлик с ленты, могу попробвать перекльчиться в 38400 и потестить... Какие предложения на предмет того какое действие выполнить для теста?

Patron 12th June 2014 15:28

Любой длительный приём байтов, вроде: DIR/BAD DP:
Худший случай - когда между прерываниями байтов влезают прерывания более высокого уровня ( таймер, например ), поэтому если можно повысить частоту таймера - это дополнительный уровень сложности.

form 12th June 2014 16:15

Quote:

Originally Posted by Patron (Post 716715)
Любой длительный приём байтов, вроде: DIR/BAD DP:
Худший случай - когда между прерываниями байтов влезают прерывания более высокого уровня ( таймер, например ), поэтому если можно повысить частоту таймера - это дполнительный уровень слжности.

OK, сделаю DIR/BAD HY:, переключив скорость LTC на 800Hz :)

---------- Post added at 17:36 ---------- Previous post was at 17:29 ----------

Только сначала вспомнить что там надо поменять в системе чтобы консоль перевесить...

---------- Post added at 17:41 ---------- Previous post was at 17:36 ----------

Хотя в сущности чего вспоминать - сгенерить многотерминалку и не включать 177560/60 в конфигурацию :)

---------- Post added at 18:14 ---------- Previous post was at 17:41 ----------

Пока вопрос - где скорость порта настраивается в конфиге? - навскидку не вижу

---------- Post added at 18:14 ---------- Previous post was at 18:14 ----------

или берется из секции [TerminalPort.ini]?

---------- Post added at 18:15 ---------- Previous post was at 18:14 ----------

впрочем таковой не обнаружилось в VT52

Patron 12th June 2014 16:31

Quote:

Originally Posted by form (Post 716716)
где скорость порта настраивается в конфиге?

Если порт один - скорость порта можно задавать прямо в файле Terminal_ComPort_Adapter.ini ( там находятся настройки порта по-умолчанию ).

form 12th June 2014 19:33

Quote:

Originally Posted by MiX (Post 716738)
BaudRate =CBR_9600

Отлично, DECserver подхватил как 38400.
Сейчас система дособирается, переткну порты чтобы в DECserver торчал первый, а консоль в нотебяку, переключу скорость и посмотрю...

---------- Post added at 20:23 ---------- Previous post was at 18:34 ----------

Начнем, пожалуй...

Конфигурация:
Code:

YLA, 17777560/60, 38400 => HX Server
YLB, 17776500/300, 9600 => RT-11 Console
YLC, 17776510/310, 9600 => TT1

Многотерминальный RT-11, полная поддержка таймера, правильного переключения даты и обслуживания терминалов по таймеру. Тест #1 - минимальные усложнения...

YLA:
Code:

Testing in progress - Please wait
Memory Size is 4088 K Bytes
9 Step memory test
  Step 1 2 3 4 5 6 7 8 9
 
 
Message 04      Entering Dialog mode
 
Commands are Help, Boot, List, Setup, Map and Test.
Type a command then press the RETURN key: B DU2
 
 
Trying DU2
 
Starting system from DU2

YLB:
Code:

RT-11ZM (S) V05.07 

.SET TT QUIET
?ETM-I-Date & time - 12-JUN-2014 19:44:26
?ETM-I-Time server - 70-71-BC-50-EB-D0, OpenBSD 5.5 amd64

.R DATE

.

Мы не ищем легких путей:
Code:

.@D23:TCPIP.RUN

.AS TCP DK

.SR/TE:1/NA:FTP SY:VBGEXE.SAV

.

YLC:
Code:

Argv: -bh form

FTP-11  V02.40  [15-Jun-2008]

Querying the Domain Name Server
Domain lookup successful
Trying to open TCP connection
220 pdp-11.org.ru FTP server ready.
Username: ftp
331 Guest login ok, send your email address as password.
Password:
230 Guest login ok, access restrictions apply.
ftp> cd hidden/tmp
250 CWD command successful.
ftp> bi
200 Type set to I.
ftp> prom
Interactive mode off.
ftp> ha
Hash printing on (1024 bytes/hash mark).
ftp> lcd sy:
Local directory is sy: --> sy:
ftp> mp *

YLB:
Code:

.DIR/BAD HY:
Пока все тестилось, весь SY: успел залиться по FTP на роутер и полная заливка была запущена повторно... и еще раз... и еще раз...
Code:

?DUP-I-No bad blocks detected HY0:
Итого, таймер 50 Hz, параллельно проверке HY идет I/O на DU, NQ и терминальной линии (FTP печатает hash'и и статистику)...

Сейчас запустим усложненный тест...

---------- Post added at 20:26 ---------- Previous post was at 20:23 ----------

Тест #2: таймер 800Hz:
Code:

.VDT

 VDT V05.07
*177520/003007 7007
*^C

.DIR/BAD HY:

Но вот что интересно, CPS показывает 545-550 - примерно такой же как и на 9600... Скорость порта 38400... Там какого-нибудь порога в терминале нету? :)
Запустил просто вывод символов туда - 4096 CPS...

---------- Post added at 20:39 ---------- Previous post was at 20:26 ----------

На блоке 520 HY завис, FTP продолжает себе качать...
Видимо потерял прерывание и подвис на ожидании следующего.

---------- Post added at 21:33 ---------- Previous post was at 20:39 ----------

Ну а насчет TSX-Plus все просто - ничего такого фатального кроме инсталяционной прцедуры драйвер не делает, так, что достаточно заключить ее внутри
Code:

.IIF    NDF, TSX$P  TSX$P=0
.IF    EQ, TSX$P
.ENDC

и все заработает как при загрузке в нижнюю так и в верхнюю память...

Code:

.SH DEV
        Active          Handler  Handler  Handler
Device    I/O  Status  V. base  P. base  size    CSR    Vector
------  ------  ------  -------  -------  -------  ------  ------
  TT        0  000004 
  LD        0  102446 
  CL        0  016057  053342  000000    254 
  DU        0  102450  104170  000000    340    172150  154
  MU        0  017060  104714  000000  3240    174500  260 254
  VM        0  102447  113164  000000    426 
  HY        0  102763  120000  005134  1110    176500  300 304
  DD        0  100034  114036  000000  1242    176510  310 314
  LP        0  030003  120000  005125    406    177514  200
  LS        0  030041  120000  005112    686    176520  320 324
  NL        0  000025  120000  005111    60 
  EQ        0  007061  120000  005021  3528    174440  120

.DIR HY:
 12-Jun-2014
RT11SJ.SYS    78  16-Dec-2012    SWAP  .SYS    30  25-Mar-2003
HX    .SYS    6  08-Feb-2014    TT    .SYS    2  23-Jan-1980
SL    .SYS    10  28-Dec-1987    EM    .SYS    4  04-Mar-2012
LD    .SYS    8  18-Jan-1988    DIR  .SAV    19  04-Jul-2002
PIP  .SAV    30  31-Oct-1998    DUMP  .SAV    9  27-Dec-1983
DUP  .SAV    45  27-Dec-1983    UCL  .SAV    16  18-Jan-1988
UCL  .DAT    9  04-Dec-2011    HAND  .SAV    8  08-Nov-2011
HANDLE.SAV    17  06-Sep-1991    EDIK  .SAV    22  19-Mar-2003
DAY  .SAV    4  13-Apr-2013    DESS  .SAV    20  04-Nov-1993
SPEED .SAV    3  28-Nov-1992    MEMORY.SAV    2  03-Sep-1982
KLOP  .SAV    13  21-Nov-1988    IND  .SAV    58  18-Jan-1988
BINCOM.SAV    24  18-Jan-1988    RESORC.SAV    25  01-Mar-2012
STARTS.COM    1  22-Dec-2012   
 25 Files, 463 Blocks
 1123 Free blocks

.


form 14th June 2014 13:38

Небольшие косметические вставки в HX:
Code:

;      .DrPtr  LOAD=HXLOAD

        . = 0
        .RAD50  /HAN/
        . = 6
        .WORD  HXLOAD
.IF    DF      ...V9
        ...V9 = ...V9!4
.IFF
        .=12
        .WORD  244
.ENDC

...
Code:

HXLOAD: CMP    #12,R3          ;SYSTEM BOOTSTRAP LOAD?
        BNE    10$            ;NOPE
        MOV    @#54,R0        ;RTDATA
        BIS    #1000,300(R0)  ;SET USR NOSWAP
        BIS    #40,370(R0)    ;SET EXIT NOSWAP
10$:    RETURN                  ;RETURN

При загрузке с HX автоматом будет устанавливаться USR и EXIT в NOSWAP.

---------- Post added at 15:38 ---------- Previous post was at 15:30 ----------

В сравнении #12,R3 порядок аргументов важен :)

Patron 14th June 2014 14:35

Quote:

Originally Posted by form (Post 717152)
Небольшие косметические вставки в HX

По теме HX лучше постить сюда: Протокол HX - имитация блочного устройства с последовательным интерфейсом.

MiX 8th July 2014 22:42

Patron, Попробовал загрузится на адрес 176560 но загрузчик по прежнему ждет "собачку",соответственно загрузка не происходит. Что можно сделать?

Patron 9th July 2014 01:05

Quote:

Originally Posted by MiX (Post 723391)
Попробовал загрузится на адрес 176560 но загрузчик по прежнему ждет "собачку",соответственно загрузка не происходит. Что можно сделать?

Если эмулятор VT52 подключен к порту 177560, а сервер HX к порту 176560 - надо использовать файл конфигурации HX_COM_(176560).cfg из комплекта эмулятора терминала VT52.

Если к порту 177560 подключен не эмулятор терминала, а КЦГД - надо использовать файл конфигурации MS7004+HX_COM.cfg из комплекта эмулятора клавиатуры МС 7004.

MiX 9th July 2014 02:04

Quote:

Originally Posted by Patron (Post 723421)
Если эмулятор VT52 подключен к порту 177560, а сервер HX к порту 176560 - надо использовать файл конфигурации HX_COM_(176560).cfg из комплекта эмулятора терминала VT52.

Если к порту 177560 подключен не эмулятор терминала, а КЦГД - надо использовать файл конфигурации MS7004+HX_COM.cfg из комплекта эмулятора клавиатуры МС 7004.

КЦГД используется, эмулятор подключен к плате МС, но я так понимаю что надо и клавиатуру съэмулировать ?

Patron 9th July 2014 03:25

Quote:

Originally Posted by MiX (Post 723443)
я так понимаю что надо и клавиатуру съэмулировать ?

Эмулятор клавиатуры умеет сам вводить в пульте коды загрузчика, имитируя нажатия кнопок. Если не подключать у PC второй COM-порт с эмулятором клавиатуры - надо вручную вводить загрузчик с реальной клавиатуры КЦГД ( или модифицировать реальную клавиатуру так, чтобы она сама вводила загрузчик ).

MiX 9th July 2014 11:25

Понял.Тут скорей всего компромиссный вариант напрашивается - подключится между D9 и D10 КЦГД где РС на время ввода кода блокирует ввод с клавиатуры тем самым имитируя клавиатурный ввод. Но в идеале нужен загрузчик в ПЗУ МС -


$ HX0

или

@B
$ HX1

Где НХ0 это загрузка с 177560 а НХ1 с 176560

Можно на эмуляторе это обкатать я потом прошивку в МС зашить. Вот это было бы здорово.:v2_thumb:

form 9th July 2014 11:27

Quote:

Originally Posted by MiX (Post 723506)
Понял.Тут скорей всего компромиссный вариант напрашивается - подключится между D9 и D10 КЦГД где РС на время ввода блокирует ввод с клавиатуры тем самым имитируя клавиатурный ввод. Но в идеале нужен загрузчик в ПЗУ МС -

@В или @B
$ HX0 $ HX1

Где НХ0 это загрузка с 177560 а НХ1 с 176560

Можно на эмуляторе это обкатать я потом прошивку в МС зашить. Вот это было бы здорово.:v2_thumb:

Реализовать для ДВК загрузчик с возможностью добавления своих как у меня на 11/83 :)

MiX 9th July 2014 11:32

Quote:

Originally Posted by form (Post 723508)
Реализовать для ДВК загрузчик с возможностью добавления своих как у меня на 11/83 :)

Это как?

form 9th July 2014 11:36

Quote:

Originally Posted by MiX (Post 723510)
Это как?

Проще сослаться на описание KDJ11-B чем расписать :)
В общем случае, есть набор встроенных загрузчиков и есть место в епромине для самописных, есть ROM ODT.
Я как-то для HX даже делал на пробу чтобы командой BOOT грузить прямо из диалога KDJ11-B.

---------- Post added at 13:36 ---------- Previous post was at 13:34 ----------

Во, нашел...

MiX 9th July 2014 11:43

form, Где ж такую епромину найти чтоб на шину МПИ сажалась...Давно бы уже сделал.

form 9th July 2014 11:45

Quote:

Originally Posted by MiX (Post 723514)
form, Где ж такую епромину найти чтоб на шину МПИ сажалась...Давно бы уже сделал.

Разработать :)
Хотя бы просто перепрошиваемую из под системы...

MiX 9th July 2014 11:52

Quote:

Originally Posted by form (Post 723515)
Разработать :)
Хотя бы просто перепрошиваемую из под системы...

Эмулятор ПЗУ уже разработан но он не повторяем из за Альтеры (лично мне). Можно конечно и на 588ВГ + РФ2(5) к примеру но габариты... Хочется конечно настоящую епром. А какая у вас стоит?

form 9th July 2014 12:00

Quote:

Originally Posted by MiX (Post 723516)
Эмулятор ПЗУ уже разработан но он не повторяем из за Альтеры (лично мне). Можно конечно и на 588ВГ + РФ2(5) к примеру но габариты... Хочется конечно настоящую епром. А какая у вас стоит?

тут если ткнуть в плату проца видно на фотке что там стоит

---------- Post added at 13:54 ---------- Previous post was at 13:53 ----------

Если плохо читается, могу переснять - есть второй проц никуда не воткнутый - у него только FPA не вставлен, в остальном такой же

---------- Post added at 13:57 ---------- Previous post was at 13:54 ----------

Quote:

Originally Posted by form (Post 723517)
у него только FPA не вставлен, в остальном такой же

Хотя на фотке он и есть - без FPA :)

---------- Post added at 14:00 ---------- Previous post was at 13:57 ----------

вот еще фотка есть - тот что сейчас воткнут в 11/83...

MiX 9th July 2014 12:02

Quote:

Originally Posted by form (Post 723517)
Если плохо читается, могу переснять

Спасибо не надо. Там АМ27128, вам проще...

form 9th July 2014 12:03

Quote:

Originally Posted by MiX (Post 723521)
Спасибо не надо. Там АМ27128, вам проще...

Ну так кто мешает внешнюю плату разработать с чем угодно? :)

MiX 9th July 2014 12:13

form, Ну нет у меня станка для изготовления печатных плат. Те кто предлагают изготовить выпускают партиями за немалые деньги.

form 9th July 2014 12:53

Quote:

Originally Posted by MiX (Post 723523)
form, Ну нет у меня станка для изготовления печатных плат. Те кто предлагают изготовить выпускают партиями за немалые деньги.

У меня есть 5 макетных плат Q-Bus, но они под буржуйскую метрику :(

---------- Post added at 14:53 ---------- Previous post was at 14:51 ----------

Так что если что-то проверить - могу у себя собрать. Правда паяльщик из меня для деталей мельче ГП-5 еще тот :D


All times are GMT +4. The time now is 02:41.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.