nedoPC.org

Community of electronics hobbyists established in 2002

...
Atom Feed | View unanswered posts | View active topics It is currently 26 Nov 2020 12:01



Reply to topic  [ 6 posts ] 
Тайминги DENDY 
Author Message
Junior
User avatar

Joined: 13 Oct 2008 10:38
Posts: 3
Location: 89.169.159.125
Reply with quote
Итак, за прошедшие годы было выяснено, что существуют 3 типа таймингов.

1. Официальный NTSC NES и Famicom.
2. Официальный PAL NES.
3. Пиратский PAL Famiclone, к которому относятся и наши Dendy.


В большинстве современных эмуляторов этот тайминг именуется режимом Dendy
в силу исторических причин (так сложилось).

Он представляет из себя гибрид NTSC/PAL, а именно:

Quote:
- Тактовая частота кварцевого резонатора (XTAL) = 26.601712 МГц
- Тактовая частота CPU (XTAL:15) = 1.7734475 МГц, что намного ближе к NTSC NES/Famicom, чем к оригинальной европейской PAL NES.
- Тактовая частота PPU (XTAL:5) = 5.3203424 МГц, эквивалентна PAL NES.

- Таким образом, соотношение тактовых частот CPU:PPU одинаково для NTSC и Dendy, и равняется 1:3
Иными словами PPU рендерит 3 пиксела за 1 такт CPU. Для PAL NES это cоотношение равняется 1:3.2

- Длина VBlank после NMI одинакова у NTSC и Dendy (20 сканлайнов), и отличается от PAL NES (70 сканлайнов).
Полная длина VBlank эквивалентна PAL NES, но пострендер длинее на 50 дополнительных сканлайнов,
соответственно NMI наступает ближе к концу VBlank (строка 291 вместо 241)
Этот трюк позволяет сохранить длину VBlank после NMI в точности такой же, как у NTSC-систем.

- Логика работы аудиоканалов (LUT-таблицы Noise и DMC) соответствует NTSC-системам.

Это означает, что Dendy и им подобные PAL-фамиклоны были разработаны с целью обеспечения максимальной совместимости
с японскими и американскими играми NTSC-региона, в ущерб официальной библиотеке PAL NES (мало распространенной в Азии)
Иными словами, Dendy позволяет запускать NTSC-игры со скоростью 50 к/с, сохраняя с ними совместимость, в отличие от PAL NES.

* Если попытаться запустить NTSC игры на официальной PAL NES (в обход lockout-чипа), или на эмуляторе в режиме PAL,
они также будут работать со скоростью 50 к/с, но многие начнут артефачить, а некоторые даже зависать.
Ко всему прочему мы будем слышать дисбаланс между высотой тона PSG и DMC аудиоканалов.
На dendy же будет правильный баланс.
Всё это происходит из-за несовместимости таймингов.

Благодарю HardWareMan, без которого эти исследования не воплотились бы в реальность,
а также комьюнити nesdev.com и авторов популярных эмуляторов, охотно поддержавших инициативу.

Список эмуляторов, поддерживающих Dendy-режим:
Quote:
- RetroArch [libretro] (nestopia, fceumm, mesen)
- Nestopia 1.40, Nestopia UE
- FCEUX 2.2.3
- Nintendulator
- Mesen
- puNES
- BizHawk
- My NES
- Nintaco
- RetroCopy
- NESICIDE
- nes.emu (iOS/Android)
- nsfplay 2.3 (плеер NSF)


F.A.Q:

- Почему этот тайминг назван "Dendy"? Не лучше ли было назвать его PAL Famiclone?
Ведь на нём работала куча самых разных клонов по всему миру.

 
Краткий ответ - так сложилось по историческим причинам.

Когда наша команда на emu-russia начинала эти исследования в 2007-2008 годах, эти подробности еще не были известны.
Мы начали исследовать отличия Dendy от Famicom и NES, а вышло так, что нашли общий тайминг, на котором работают почти все PAL-фамиклоны.
Эти приставки были распространены в Азии, странах СНГ и восточной Европы под сотней разных марок.

Технически-грамотное название этого тайминга:
"PAL-Famiclone with NTSC-like timing" или "NTSC/PAL Hybrid", но это звучит громоздко. Поэтому зарубежное сообщество официально согласилось называть его "Dendy".
К тому же это название было уже знакомо западным людям.
Marat Fayzullin и Alex Krasivsky, стоявшие у истоков эмуляции NES, ранее упоминали его в своих документах.

В документации на nesdev.wiki и в исходных кодах практически всех эмуляторов этот тайминг назван "Dendy", и переименование всего с нуля приведет к огромной путанице.

Более того, выяснилось, что существовали PAL-фамиклоны, работающие на таймингах официальной PAL NES, но они были малораспространенными и впоследствии были вытеснены моделями, имеющими Dendy-тайминг.
Поэтому название "PAL Famiclone", как общее для всех приставок работающих в этом режиме, также не подходит.


- Я запутался. На моей Dendy (Lifa/Kenga/Subor/MicroGenius/Pegasus и т.д.) написано PAL.
Значит ли это, что я должен использовать игры для PAL-региона (Europe)?

 
Краткий ответ - нет, не значит.

Не путайте тайминг железа со стандартом видеовыхода.
PAL NES и PAL-фамиклоны (включая Dendy) выдают PAL-сигнал (50Гц).
Некоторые клоны выводят SECAM, но в данном контексте это не имеет значения, и его можно приравнять к PAL.

Исходя из аппаратных различий:
- PAL NES должна использовать PAL-ромы (Europe)
- PAL-фамиклоны (с Dendy-таймингом), Famicom и NTSC NES должны использовать NTSC-ромы (USA, Japan)
Почему так - подробно описано в шапке темы.
И лишь немногие PAL-фамиклоны имеют оригинальный тайминг PAL NES, но шанс найти их вживую очень невелик.

Можно сделать дополнительное пояснение:
У пиратов стояла задача - распространить уже существующие фамикомовские NTSC-игры на обширный
PAL-регион (страны Азии, СНГ, Восточной Европы, Латинской Америки), где Nintendo не выпускала PAL NES официально.

Но просто сделать клон PAL NES было нельзя, так как её тайминг не подходил для этой задачи.
Nintendo видимо специально сломала в нём совместимость с уже существующими NTSC-играми,
сделав другой Vblank в PPU, сильно занизив частоту СPU, и разрушив кратное соотношение частот CPU:PPU (1:3)
Так что разработчикам игр пришлось хорошенько твикать большинство из них для выпуска в Европе.

Поэтому тайваньские пираты придумали свой альтернативный PAL, совместимый с таймингами NTSC.
И в таком случае не требовалось ничего перевыпускать.
Уже существующие NTSC-игры просто работали, только медленнее, практически не имея при этом глюков.
Иными словами, пираты сделали более грамотный PAL, чем это сделала Nintendo в PAL NES.
По крайней мере, разработчики эмуляторов и инженеры с nesdev высказали именно такую позицию.


- Как мне проверить тайминг моей приставки?
Как проверить ROM в разных режимах работы с помощью эмулятора?

 
Если у вас есть флеш-картридж, лучше всего скачать тестовый ROM 240pee (от Damian Yerrick)
В правом нижем углу будет отображаться тайминг (NTSC/PAL/Dendy), а если зайти в раздел "CPU Clock Speed"
мы увидим дополнительные подробности.
Привожу скриншот, где показано, какие значения соответствуют разным режимам.
Именно их и должно показывать реальное железо, а также тактово-точные эмуляторы:
Mesen, puNES, Nintendulator, BizHawk, Nestopia. FCEUX немного врёт в этом синтетическом тесте.

Если флеш-картриджа нет, можно взять игру, предельно чувствительную к таймингам, и оценить её поведение визуально.
В качестве наглядного примера возьмём NTSC-версию Battletoads and Double Dragon (U).

- при запуске на NTSC NES и Famicom она будет работать без артефактов.
- при запуске на PAL NES (не забудьте обойти защиту lockout-чипа)
игра будет артефачить на стартовом экране и на экране выбора персонажей,
а также зависать перед началом 1 уровня. Если с помощью чита перейти сразу на третий уровень,
мы увидим смещённый/трясущийся бэкграунд. Это показано здесь.
- при зауске на PAL-Фамиклоне (c Dendy-таймингом) стартовый экран и
экран выбора персонажей будет изредка дёргаться в такт удару барабана, как показано здесь.
Других глюков не должно наблюдаться. Это однозначно доказывает высокую совместимость фамиклонов,
ведь если длина VBlank после NMI отличается от NTSC, эта игра вообще зависает.

Верен и обратный пример. Европейская PAL-версия Battletoads and Double Dragon (E)
также является крайне чувствительной к таймингам, и будет нормально работать только
на официальной PAL NES. Желающие могут проверить это самостоятельно.

Существует множество других игр для тестов, но этот пример весьма нагляден,
и его вполне достаточно в рамках данного F.A.Q.
Все вышеперечисленные процедуры с жабами можно провести используя эмуляторы.


- Что такое перепутанная скважность? Я что-то слышал о ней, но не знаю, что это.

 
Звукогенератор NES умеет генерировать прямоугольные волны (square waves),
модуляция ширины импульса которых может принимать значения 12%, 25%, 50% и 75%.
Это позволяет получить 3 разных тембра волны.
Четвертый тембр (75%) является отзеркаливанием 25%, и звучит одинаково с ним.

Некоторые модели чипов, использовавшихся в NTSC- и PAL-фамиклонах имели аппаратный баг,
заключавшийся в том, что тембры 25% и 50% были перепутаны.
Ничего страшного в этом нет, просто "муз.инструменты" звучат чуть иначе.
Особенно хорошо это слышно в игре Prince of Persia.

Многие эмуляторы, включая FCEUX, puNES и Mesen, умеют имитировать этот баг.
См. опцию "Swap Duty Cycles".

Если у вас есть флеш-картиридж, вы можете узнать, перепутана ли скважность на вашем клоне
используя этот тест.

- "select" = 12%
- "start" = 25%
- "B" = 50%
- "A" = 75%

Проверяется просто: если чип имеет нормальную скважность, то 25% и 75% звучат одинаково.
Если скважность в чипе перепутана - тогда 50% и 75% будут звучать одинаково.


- Я помню, в детстве на моём фамиклоне "Принц Персии" зависал, "Jungle Book" был очень тёмный,
а заставка "Lion King" вообще была зеленая. Сплошные глюки. Неужели и это нужно эмулировать?

 
Краткий ответ - нет.

Фамиклоны основывались на множестве различных чипов от разных производителей.
Этих чипов ("рассыпушных", однокристальных) наберется несколько десятков, если считать все их ревизии.
И почти каждый из них имел свои специфические баги/недоработки. Где-то была перепутана скважность,
где-то наблюдались явные проблемы со звуком (проблемы с DMC, щелчки triangle-канала),
где-то биты насыщения цвета (emphasis bits) окрашивали/затемняли картинку сильнее, чем нужно.
А в некоторых ранних моделях UM6561 имелись даже явные проблемы с совместимостью.

Но несмотря на все недостатки конкретных чипов, всех их объединял общий тайминг.
И нашей основной задачей являлось отделить главное от второстепенного:
Заэмулировать тайминг, позволяющий запускать NTSC-игры с высокой совместимостью,
но не эмулировать баги, мешающие нормальной работе, да к тому же разные от модели к модели.

Исключением является только перепутанная скважность. Она не влияет отрицательно на работу игр,
и даже больше похожа на "фичу", придающую некоторым моделям фамиклонов свой "уникальный" звук.
Эта функция - строго опциональна, и выключена везде по умолчанию.


- Зачем вообще нужна эмуляция этой пиратчины?
NTSC-игры должны играться на NTSC-тайминге со скоростью 60FPS.
Именно так, как это было задумано разработчиками.

 
Ответ - это в первую очередь, технический и исторический интерес,
а затем уже пресловутая "ностальгия".

Нас, в первую очередь, интересует эмуляция этого уникального тайминга.
Сообщество nesdev.com признало его весьма любопытным, и даже технически более грамотным,
чем сделала Nintendo в официальной версии PAL NES.
Во многом благодаря режиму "Dendy" авторы эмуляторов додумались до идеи реализации
"оверклока" методом добавления дополнительных сканлайнов
в пре- и пост-рендер.

Также существует около десятка пиратских игр, которые корректно работают исключительно на
этом гибридном тайминге.

Никто силком не заставляет использовать Dendy-режим лишь потому, что подавляющая часть населения форума родом из СНГ.
А значит, играла в детстве на PAL-фамиклонах на замедленной скорости.
Пользоваться им, или не пользоваться - каждый решает для себя сам.

От себя хотим добавить, что нам кажется весьма странным отсутствие даже минимального интереса к этому режиму в русскоязычном сегменте интернета,
в то время как за рубежом его весьма оценили.
И теперь разработчики добавляют его в эмуляторы как обязательный стандарт, идущий наравне с официальными таймингами NTSC и PAL NES.


Тема на emu-russia
Тема на zx-pk
Тема на emu-land
Topic on nesdev

Подробная техническая информация:

CYCLE REFERENCE CHART - nesdev wiki
CPU Signals and Frequencies - nesdev wiki
Detect TV System - nesdev wiki
UMC UA6538 PPU die-shot


ENGLISH VERSION
 
So it has been found over the years that there are 3 types of NES timing:

1. Official NTSC NES and Famicom.
2. Official PAL NES.
3. Pirate PAL Famiclone, including Dendy.


This timing is called Dendy mode in most of modern emulators due to historical reasons.
It is an NTSC/PAL hybrid, a described below:
Quote:
- Crystal oscillator freq. (XTAL) = 26.601712 Mhz
- CPU clock freq. (XTAL/15) = 1.7734475 MHz, which is much closer to NTSC NES/Famicom, than to original European PAL NES.
- PPU clock freq. (XTAL/5) = 5.3203424 Mhz, which is same as European PAL NES.

- So, CPU:PPU clock ratio is the same for NTSC and Dendy, and equal to 1:3
In other words PPU renders 3 pixels per 1 CPU cycle. For the PAL NES this ratio is 1:3.2

- The length of VBlank after NMI is the same for NTSC and Dendy (20 scanlines), and differs from PAL NES (70 scanlines).
The full length of VBlank is as long as PAL's, but postrender period is longer (by 50 additional scanlines)
so NMI occurs toward the end of VBlank (line 291 instead of 241).
This trick makes VBlank length after NMI remain the same as NTSC, so any game using a CPU cycle-counting mapper working.

- Noise and DMC logic (APU LUTs in emulators) are same as NTSC NES/Famicom.


It means that Dendy and similar PAL Famiclones were designed in order to provide the maximum compatibility to Japanese and American games of NTSC region, to the detriment of the official PAL NES library (not widely used in Asia). In other words Dendy allows running NTSC games at 50 FPS while maintaining compatibility with them, unlike official PAL NES.

* If you try running NTSC games on an official PAL NES (bypassing the lockout chip), or on an emulator in PAL mode, they will also run at 50 FPS, but many of them will start artifacting, and some will even freeze.
In addition, we will hear an imbalance between the pitch of the PSG and DMC channels (Sunsoft games with DPCM-bass for example).
On dendy it sounds correct.
All this happens due to the incompatibility of timings.

Many thanks to HardWareMan, without whom these studies would not have become reality; as well as nesdev.com community and the authors of popular emulators, who willingly supported the initiative.

The list of emulators supporting Dendy mode:
Quote:
- RetroArch [libretro] (nestopia, fceumm, mesen)
- Nestopia 1.40, Nestopia UE
- FCEUX 2.2.3
- Nintendulator
- Mesen
- puNES
- BizHawk
- My NES
- Nintaco
- RetroCopy
- NESICIDE
- nes.emu (iOS/Android)
- nsfplay 2.3 (NSF player)


F.A.Q:

1. - Why is this timing called "Dendy"? Wouldn’t it be better to call it “PAL Famiclone”?
After all, a bunch of different clones all over the world worked on these timings!

Quote:
The short answer is that it happened so due to historical reasons.

When our emu-russia team began this research in 2007-2008, such details were not yet known. We started to investigate the differences between Dendy and Famicom and NES, and it turned out that we found a common timing that almost all PAL Famiclones work on.
These consoles were used in Asia, the CIS countries and Eastern Europe under hundred of different brand names.

The technically correct name for this timing:
"PAL-Famiclone with NTSC-like timing" or "NTSC / PAL Hybrid", but it sounds cumbersome. Therefore, the foreign community officially agreed to call it "Dendy". Moreover, this name was already familiar to westerners. Marat Fayzullin and Alex Krasivsky, who were at the origin of NES emulation, previously mentioned it in their documents.

This timing is called "Dendy" in nesdev.wiki documentation and in the source code of almost all emulators, thus renaming everything from scratch would be a huge mess.

Moreover, it turned out that there were PAL Famiclones operating on the official PAL NES timings, but they were rare and were finally replaced by models with Dendy timing. Thus "PAL Famiclone" name can’t be used as common for all consoles operating in this mode.


2. - I'm confused! It’s written PAL on my Dendy (Lifa / Kenga / Subor / MicroGenius / Pegasus, etc.)!
Does that mean I have to use games for PAL region (Europe)?

Quote:
The short answer is no, it doesn't.

Do not confuse hardware timing with video output standard. PAL NES and PAL Famiclones (including Dendy) output PAL signal (50Hz). Some clones output SECAM, but it doesn't matter in this context, and it can be equated with PAL.

Due to hardware differences:
- PAL NES must use PAL ROMs (Europe)
- PAL Famiclones (with Dendy timing), Famicom and NTSC NES must use NTSC ROMs (USA, Japan)
It’s described in detail up above why it’s so.
Only few PAL Famiclones have the original PAL NES timing, but the chance of finding them is very low.

An additional explanation can be made:
The pirates had a task: to present the already existing Famicom NTSC games to the vast PAL region (countries of Asia, CIS, Eastern Europe, Latin America), where Nintendo did not officially release PAL NES.
But you couldn’t simply make a clone of the PAL NES, since its timing wasn’t suitable for this task. It’s likely Nintendo intentionally broke its compatibility with existing NTSC games,
making different Vblank length after NMI in PPU, greatly decreasing CPU frequency, and ruining multiple CPU:PPU clock ratio (1:3). So the game developers had to tweak most of them for European release.

Therefore, the Taiwanese pirates invented their alternative PAL, compatible with NTSC timing. You didn’t need to tweak anything in this case. Existing NTSC games just worked, only slower, with virtually no glitches. In other words, pirates made more adequate PAL than Nintendo had made in PAL NES. At least that was the opinion of emulators’ developers and engineers at nesdev.


3. - How can I check the timing of my console? How to check ROM in different operating modes using an emulator?
Quote:
If you have a flash cartridge your best bet is to download the test ROM 240pee (by Damian Yerrick).
Timing (NTSC / PAL / Dendy) will be displayed in the lower right corner, and we can see additional details if we go to the "CPU Clock Speed" section.
Here is a screenshot showing which values correspond to different modes. That’s what real hardware should show, as well as cycle-accurate emulators: Mesen, puNES, Nintendulator, BizHawk, Nestopia. FCEUX is less accurate in this test.

If you don't have a flash cartridge you can take a game that is extremely sensitive to timing and evaluate its behavior visually.
For example let’s take the NTSC version of Battletoads and Double Dragon (U):

- There are no artifacts if playing on NTSC NES and Famicom.
- If launched on PAL NES (do not forget to bypass the lockout chip protection) the game will show artifact on the start screen and on the character selection screen, and also freeze before the start of level 1. If you jump directly to the third level with some cheating, you will see a shifted/shaky background. This is shown here.
- While running on PAL Famiclone (with Dendy timing), the start screen and the character select screen will occasionally shake simultaneously to the beat of the drum, as shown here.

There should be no other bugs. This solidly proves the high compatibility of Famiclones, since a game will totally freeze if VBlank length after NMI is other than NTSC.
The opposite example is also correct. European PAL version of Battletoads and Double Dragon (E) is also extremely sensitive to timing and will work fine only on the official PAL NES.
You can check that yourself if interested.
There are many other games for testing but the example above is illustrative enough, and it is quite sufficient for this F.A.Q.
All of the procedures with Battletoads described above can be carried out using emulators.


4. - What are the swapped duty cycles? I've heard something about it but I don't know what it is!
Quote:
The NES sound generator can create square waves, which pulse width modulation can be equal to 12%, 25%, 50% and 75%. This allows you to get 3 different tones of the wave. The fourth tone (75%) is mirrored copy of 25% tone and sounds the same.

Some models of the chips used in the NTSC and PAL Famiclones had a hardware bug that the 25% and 50% tones were swapped. It’s not so bad, just "musical instruments" sound a little differently. This is especially well heard in Prince of Persia game.
Many emulators including FCEUX, puNES and Mesen can simulate this bug. See "Swap Duty Cycles" option. Having a flash cartridge you can check if the duty cycles on your clone are swapped using this test.
- "select" = 12%
- "start" = 25%
- "B" = 50%
- "A" = 75%

It's easy to check: If the chip has normal duty cycles then 25% and 75% sound the same.
If the duty cycles in the chip are swapped then 50% and 75% will sound the same.


5. - In my childhood Prince of Persia was freezing on my Famiclone, Jungle Book was very dark, and Lion King’s starting animation was completely green!
Glitches all around! Do you really want to emulate this too?

Quote:
The short answer is no.

Famiclones were based on many different chips from different manufacturers. If you try to count all revisions there were several dozen of these chips (separated CPU/PPU, single-crystal CPU/PPU with external RAM, fully NoACs). And almost each of them had its own specific bugs/flaws.
Somewhere the duty cycles were swapped; somewhere there were obvious sound troubles (problems with the DMC, clicks of triangle channel); somewhere emphasis bits colored/darkened the picture more than necessary. And some of early UM6561 models even had serious issues with compatibility.

But despite all the flaws of specific chips they were all united by a common timing. And our main goal was to separate the main point from the secondary: Emulate the timing to run NTSC games with high compatibility, but not to emulate bugs that interfere with normal operation and which differs from model to model.
The only exception is the swapped duty cycles. It doesn’t negatively affect the operation of games, and it’s even can be considered as a feature that gives some Famiclone models its unique sound. This feature is strictly optional and is disabled everywhere by default.


6. - And why do we need emulation of this pirate staff?
NTSC games must be played on NTSC timing at 60FPS. Exactly how it’s intended to be by developers!

Quote:
The answer is that first of all it is a technical and historical interest, and only after that the notorious "nostalgia".

We are primarily interested in emulating this unique timing. The nesdev.com community found it to be quite interesting, and technically even more adequate than in Nintendo’s official PAL NES.

Mainly due to Dendy mode the emulators creators came up with the idea of implementing an "overclock" by adding additional scanlines to pre- and post-render (Goodbye, Contra Force slowdowns!).
Besides there are around a dozen of pirate games that work correctly only on this hybrid timing.

We would like to add that this mode was highly appreciated abroad. And now the developers add it to emulators as a mandatory standard along with the official NTSC and PAL NES timings; similar as they do with Pentagon timings for ZX-spectrum.

emu-land and emu-russia topics

Technical information:
CYCLE REFERENCE CHART
CPU Signals and Frequencies
Detect TV System
UMC UA6538 PPU die-shot


Attachments:
tech_info.zip [224.21 KiB]
Downloaded 52 times


Last edited by evgs on 01 Oct 2020 09:22, edited 17 times in total.

25 Dec 2008 12:50
Profile
Banned
User avatar

Joined: 20 Mar 2005 14:41
Posts: 2145
Location: От туда
Reply with quote
Post 
Что-то мне подсказывает, что ты ошибся форумом...


25 Dec 2008 21:01
Profile
Junior
User avatar

Joined: 13 Oct 2008 10:38
Posts: 3
Location: 89.169.159.125
Reply with quote
Post 
Привет, HardWareMan :idea:
Я понимаю, тут люди другими проектами заняты. Но попытка - не пытка...

Уже кое-что удалось выяснить:
http://www.zx.pk.ru/showthread.php?t=9117

Получается, ты правильно догадался про частоту ЦП


26 Dec 2008 00:19
Profile
Banned
User avatar

Joined: 20 Mar 2005 14:41
Posts: 2145
Location: От туда
Reply with quote
Post 
Хых. Интуиция, брат, сильная штука....


26 Dec 2008 04:31
Profile
Junior
User avatar

Joined: 13 Oct 2008 10:38
Posts: 3
Location: 89.169.159.125
Reply with quote
Тайминги найдены. Шапка топика обновлена спустя 12 лет.
Возможно, эта информация будет кому-то полезна.


08 Jun 2020 15:54
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 18968
Location: Silicon Valley
Reply with quote
Flamer wrote:
Тайминги найдены. Шапка топика обновлена спустя 12 лет.
Возможно, эта информация будет кому-то полезна.

Вау круто! :kruto:

P.S. По просьбе топик-стартера его ник был изменён на evgs

_________________
:eugeek: https://twitter.com/Shaos1973


08 Jun 2020 15:57
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 6 posts ] 

Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.