Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - SEGA-man

Страницы: [1] 2 3 Далее
1
Как вариант, можно поиграться резиками обратной связи оу штатного усилителя, добавив тем самым усиление и ставить доп каскад надобности не возникнет.
Кстати да, скорее всего китайцы намудрили с номиналами резисторов. Как обычно запихнули то, что было под рукой.
Но вообще с этим возиться уже не интересно. Я этот девайс брал чисто чтоб починить другой. Поэтому оставлю все как есть и продам.
Вот если в том, который я восстанавливаю такая же картина обнаружится, то сделаю как сказал Фамиклон  :)

2
Я до последнего исключал нерабочий кварц. И стоило мне подкинуть с рабочей приставки, как синхра появилась  :facepalm:
В общем, если нет синхры надо всегда начинать с кварца и дальше к видеопроцу и тд.
Теперь надо искать нерабочие дорожки и гнилые переходы, которые не дают игре запуститься
Я планирую еще один кварц для NTSC подкинуть 21.47727 мгц, благо место для него есть, как и место для переключателя. Подпаяю тумблер.

Единственный вопрос который остается это номинал конденсатора С68, который стоит в цепи NTSC кварца.
Может обладатели платы T2B с двумя кварцами поделятся значением?  :)

3
Благодарю. Разобрался с разводкой. PSG идет с TA-06SD c 95 пина. В схеме к данному клону он записан как SOUND3
А с TV-16b 82 и 83, отмеченны как SOUND1 и SOUND2
кондеры С31 на PSG и С34, С32 на аудио соответственно.

В общем я подкинул другие кондеры на 10мкф и картина не изменилась.
Затем начал тестить другие игры, и они звучали нормально. Но вот Дюна просто ужасно звучит.
Я чет не понял почему так происходит? это на всех клонах Т2 или у меня картридж такой особенный?
Вообще картридж старый клоновский с каплей

4
В надежде починить один T2B я решил прикупить рабочий для замеров.
И вот я решил перекинуть кодер с нерабочей на рабочую и слышу как звук вообще потух. То есть он слабый и какой-то просаженный. Нет отдельных каналов.
Проверяю на Дюне.
Я выпаял и проверил все кондеры на стороне усилителя на esr и вроде все целые.
На зеленой стороне все пропаял, но звук так и остался хреновым.
Попробовал уменьшить номинал резистора R45 c 33К на 20К а потом и 12К, но это совсем ни на что не повлияло.
Какие ножки на TV16b отвечают за аудио? хочу проследить всю цепочку резисторов и керамики теперь

5
там дорожка /CART снизу под картриджем на землю шла.
Я вообще не понял как там логика устроена и забил на это пока. Может китайцы что-то с завода намудрили  :wacko:
В общем, я бы хотел попросить владельцев таких клонов глянуть как у них устроено определение картриджа

6
Цитата
А как/чем замкнуты? Дорожка на плате или при прозвонке показывает КЗ?
проверил и оказалось что дорожка. то есть так и должно быть  :-\

Цитата
Посмотри контакты А1, А18 на слоте, там тоже должна быть  земля GND
Да, на них земля.

Пины А32 и В32 жестко сидят на земле. Я полагал, что В32 должен идти к логике.
Схему я не смогу нарисовать( Здесь на форуме были схемы для клонов Т2В, может и на этот клон есть?


7
Нашел вот такую тему
С похожей проблемой, но с другим чипом.
В моем случае А32 и В32 замкнуты без картриджа. Получается надо копать в сторону логики?

8
Имеется клон на чипе АТТ6005, девайс работает норм с картриджем, но вот встроенные игры не запускает.
Хотелось бы узнать мож кто сталкивался и в чем может быть причина?
зы. Какие же все-таки ужасные были клоны в нулевых: пластик, текстолит, флюс ...

9
Из видоса по первой ссылке можно понять,что кз в катушках приводит к перегреву драйвера и выводу его из строя. После замены драйвера работоспособность восстановилась,но новый драйвер сильно грелся и так же бы вышел из строя.
Убедись что сопротивление катушки на каждой стороне не занижено,а драйвер,на другой тушке,как с родной бошкой,так и при перестановке бошки с проблемной тушки,не перегревается
Кстати да, спасибо. Да, надо будет замерить
Видел на ютюбе как один чел устанавливал защиту в виде стабилизатора и зеннера кажется, там занижалось напряжение с 8 до 6.8В, но я уже не помню что и куда. Вот бы на алишке найти эту защиту.
А для слимки видел комбинацию из диодов, которая призвана защитить лазер

10
Да 4.43 кварц для пал. Но будет проблема, будет мыргать изображение, тут 50\50, частоты не кратны получаются.
Я кажись ошибся.
Если у меня уже генератор паловский, разве мне не нужен NTSC 3.57954mhz ??

11
ну в моем случае предохранители целые, и лазер который был установлен там тоже нормально работал на другой приставке.
Изначально был установлен модчип messiah 3.2. он не самый хороший, и я могу полагать, что он тоже оставил свой след. Сейчас надо 6805 запаять чтоб отмести эту версию

12
Досталась мне когда-то давно фатка PS1 с несколькими геймпадами. Давно ее продал с геймпадами, но вот один нерабочий остался. И решил я его посмотреть и починить.
Думал что резинки, но проблема глубже: геймпад не определяется. То есть курсор не появляется в меню.
С консолью все нормально, предохранители целые, другой пад норм работает.
Прозвонил провод, но он целый. Стал прозванивать переходы, и вроде как они тоже целые. Хотя я пока еще не все отзвонил.
Микруха установлена CXD8771. Было ли у кого такое что микруха откинулась?
Я все же склоняюсь к тому, что могла попасть жидкость и сгнить переход, надо сейчас это момент уточнить

Добавлено позже:
Лампочка аналога тоже не загорается при нажатии

13
Ну вот я и хочу внешний кварц установить. Полагаю что нужен 4.433619MHZ. Поправьте если не прав

14
В данной схеме хотелось бы узнать номинал конденсатора С38

15
Значения плохие показываются как не крути шестерни

Добавлено 17 мая 2026 года:
Прикупил LA6805 буду менять и пробовать. Но потом)

16
Как понять проходит? Ну никаких ошибок при коннекте нет. Но вот значеия при чтении диска были очень плохие

17
Да, это ранний клон МД1. Простите, а как сменить регион в таком случае?

Добавлено позже:
Нашел тему, где обсуждалась похожая доработка на таком же клоне - https://www.emu-land.net/forum/index.php?topic=91265.0
Разве что только моторола в другом корпусе.
Я проверил на консоли и ножка 25 на ТА-05 не сидит на земле, перемычка отпаяна. То есть регион не япония получается

18
Наконец добрался до своей консоли, которую я использовал только с FreeHDDboot.
Мне она досталась с пробитым предохранителем PS14 (из-за кондера на модчипе, который коротнул).
Предохранитель я заменил и консоль ожила (все остальные предохранители рабочие). Но обнаружилась проблема с чтением дисков.
Консоль без чипа и ведет себя следующим образом: ставлю оригинальный PS2 диск и он крутится долго на медленной скорости, минуты 3, а потом просто останавливается.
Я никак не могу понять в чем причина: менял шлейф на лазере, менял сам лазер с рабочей консоли и все одно - проблема не исчезла
Плата у меня вот такая - https://fasttechstore.com/playstation-2-parts/p/ps2-mainboard-scph-50010-gh-026

Добавлено 5 мая 2026 года:
Забыл упомянуть, что я пробовал изменить настройки mechacon при помощи pmap. Но он показывал вообще далекие значения.
Я вот думаю, может стоит заменить LA6805 теперь? Может предыдущий модчип Messiah 3.2 покалечил его?

19
Захотелось реализовать 60Гц на своем стародельном клоне МД1.
Заметил место под кварц рядом с 7805, я полагаю нужен генератор для NTSC. Но тогда вопрос в переключении.
Место джампера я не обнаружил на плате

20
благодарю, теперь предстоит долгий процесс)
А вообще при отпайке чипов заметил какой дерьмовый флюс китайцы использовали и не отмыли

21
4 поколение / Ремонт клона Sega Mega Drive 1
« : 23 Апрель 2026, 17:32:44 »
Можно ведь взять схему от Т2А и прозвонить все, что надо, не?
Да, сейчас лишь это и остается. Не поможете со схемой?

22
4 поколение / Ремонт клона Sega Mega Drive 1
« : 18 Апрель 2026, 16:11:00 »
Приобрел а затем заменил видеопроц и мульт с памятью. И ничего не поменялос. Видеопроц все так же греется относительно других микрух.
При включении есть лишь щелчок из динамиков и больше ничего. Сталкивался ли кто с такой проблемой?
Забыл отзвонить переходы под мультом, когда выпаивал(

23
Судя по всему тут проблема в пленке. Поискал по форуму и тут это уже обсуждалось
Надо закупиться на алишке и поменять

24
Ну так я пленку выпаял а проблема не ушла. И судя по сопротивлениям на кнопках пленки, она-то впорядке. Тут что-то другое

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

Пробовал припаять 10ком резистор между 7 и 8 дорожкой, но все тщетно. Пропаял чип, прозвонил все кондеры, но все в норме.
Сталкивался ли кто с такой проблемой?

26
Прочитав статьи по данной тематике, как например здесь и при помощи ИИ, мне удалось написать код на С который легко можно залить через Arduino Nano по SPI.
Для разработки и заливки решил использовать Platformio. Теперь хочется ревью от более опытного программиста, кто мог бы указать на баги.
/*
 * Sega Mega Drive / Genesis controller
 * 3-button + proper 6-button extension
 *
 * MCU: ATmega8 / ATmega88
 * Clock: 8 MHz (internal)
 */

#include <avr/io.h>
#include <avr/interrupt.h>
#include <stdbool.h>
#include <stdint.h>

/* ================= Sega DB9 mapping =================
 *
 * PD2  UP / X
 * PD3  DOWN / Y
 * PD4  LEFT / Z
 * PD5  RIGHT / MODE
 * PD6  A / B
 * PD7  START / C
 *
 * PB7  TH / SELECT (input from console)
 *
 * All outputs are ACTIVE LOW
 */

/* ================= Button source =================
 * Replace these macros with your real button inputs
 * Note: Buttons are assumed to be active-low (pressed = LOW)
 */
#define BTN_UP()     ((PINB & (1 << PB0)) == 0)
#define BTN_RIGHT()  ((PINB & (1 << PB1)) == 0)
#define BTN_DOWN()   ((PINB & (1 << PB2)) == 0)
#define BTN_LEFT()   ((PINB & (1 << PB3)) == 0)
#define BTN_START()  ((PINB & (1 << PB4)) == 0)
#define BTN_A()      ((PINB & (1 << PB5)) == 0)
#define BTN_B()      ((PINC & (1 << PC0)) == 0)
#define BTN_C()      ((PINC & (1 << PC4)) == 0)
#define BTN_MODE()   ((PINC & (1 << PC5)) == 0)
#define BTN_X()      ((PINC & (1 << PC3)) == 0)
#define BTN_Y()      ((PINC & (1 << PC2)) == 0)
#define BTN_Z()      ((PINC & (1 << PC1)) == 0)


/* ================= Internal state ================= */

static volatile uint8_t phase = 0;
static volatile uint8_t isSix = 0;
static volatile uint8_t prevTH = 1;
static volatile uint8_t idleTicks = 0;

/* ================= Helpers ================= */

static inline void writeLo(uint8_t pin)
{
    PORTD &= ~(1 << pin);
}

static inline void writeHi(uint8_t pin)
{
    PORTD |= (1 << pin);
}

static inline uint8_t th_level(void)
{
    return (PINB & (1 << PB7)) ? 1 : 0;
}

/* ================= Timer0 overflow (~1 ms) ================= */

#if defined(__AVR_ATmega8__)
ISR(TIMER0_OVF_vect)
#else
ISR(TIMER0_COMPA_vect)
#endif
{
    /* Increment idleTicks atomically */
    uint8_t ticks = idleTicks;
    ticks++;
    idleTicks = ticks;

    if (ticks > 12) {
        /* Disable interrupts to prevent race condition with main loop */
        cli();
        phase = 0;
        isSix = 0;     /* fallback to 3-button */
        sei();
    }
}

/* ================= TH polling ================= */

static inline void sega_poll_th(void)
{
    uint8_t th = th_level();

    if (th != prevTH) {
        prevTH = th;
        idleTicks = 0;

        /* Disable interrupts to prevent race condition with ISR */
        cli();
        uint8_t p = phase;
        if (++p >= 8) {
            p = 0;
            isSix = 1;   /* successful 6-button detect */
        }
        phase = p;
        sei();
    }
}

/* ================= Sega output ================= */

static inline void sega_output(void)
{
    uint8_t th = th_level();

    /* release all lines */
    writeHi(PD2); writeHi(PD3); writeHi(PD4);
    writeHi(PD5); writeHi(PD6); writeHi(PD7);

    /* ---------- 3 BUTTON MODE ---------- */
    if (!isSix) {
        if (th) {
            BTN_B() ? writeLo(PD6) : writeHi(PD6);
            BTN_C() ? writeLo(PD7) : writeHi(PD7);
        } else {
            BTN_UP()    ? writeLo(PD2) : writeHi(PD2);
            BTN_DOWN()  ? writeLo(PD3) : writeHi(PD3);
            BTN_LEFT()  ? writeLo(PD4) : writeHi(PD4);
            BTN_RIGHT() ? writeLo(PD5) : writeHi(PD5);
            BTN_A()     ? writeLo(PD6) : writeHi(PD6);
            BTN_START() ? writeLo(PD7) : writeHi(PD7);
        }
        return;
    }

    /* ---------- 6 BUTTON MODE ---------- */
    switch (phase) {

    case 0:
    case 1:
    case 2:
        if (!th) {
            BTN_UP()    ? writeLo(PD2) : writeHi(PD2);
            BTN_DOWN()  ? writeLo(PD3) : writeHi(PD3);
            BTN_LEFT()  ? writeLo(PD4) : writeHi(PD4);
            BTN_RIGHT() ? writeLo(PD5) : writeHi(PD5);
        }
        break;

    case 3:
        if (th) {
            BTN_B() ? writeLo(PD6) : writeHi(PD6);
            BTN_C() ? writeLo(PD7) : writeHi(PD7);
        } else {
            BTN_A()     ? writeLo(PD6) : writeHi(PD6);
            BTN_START() ? writeLo(PD7) : writeHi(PD7);
        }
        break;

    case 4:
        /* 6-button ID phase */
        writeLo(PD2); writeLo(PD3);
        writeLo(PD4); writeLo(PD5);
        break;

    case 5:
        if (!th) {
            BTN_X()    ? writeLo(PD2) : writeHi(PD2);
            BTN_Y()    ? writeLo(PD3) : writeHi(PD3);
            BTN_Z()    ? writeLo(PD4) : writeHi(PD4);
            BTN_MODE() ? writeLo(PD5) : writeHi(PD5);
        }
        break;

    case 6:
    case 7:
        /* These phases are not used in 6-button mode output */
        /* Controller should be idle during these phases */
        break;
    }
}

/* ================= Main ================= */

int main(void)
{
    /* Disable ADC (digital I/O only) */
    ADCSRA &= ~(1 << ADEN);

    /* PD2–PD7 outputs */
    DDRD |= (1 << PD2) | (1 << PD3) | (1 << PD4) |
            (1 << PD5) | (1 << PD6) | (1 << PD7);

    /* TH input (PB7) - no pull-up needed, console drives it */
    DDRB &= ~(1 << PB7);
   
    /* Button inputs: PB0-PB5 */
    DDRB &= ~((1 << PB0) | (1 << PB1) | (1 << PB2) | (1 << PB3) | (1 << PB4) | (1 << PB5));
    PORTB |= (1 << PB0) | (1 << PB1) | (1 << PB2) | (1 << PB3) | (1 << PB4) | (1 << PB5);  /* Enable pull-ups */
   
    /* Button inputs: PC0-PC5 */
    DDRC &= ~((1 << PC0) | (1 << PC1) | (1 << PC2) | (1 << PC3) | (1 << PC4) | (1 << PC5));
    PORTC |= (1 << PC0) | (1 << PC1) | (1 << PC2) | (1 << PC3) | (1 << PC4) | (1 << PC5);  /* Enable pull-ups */

#if defined(__AVR_ATmega8__)
    /* ---------- ATmega8 : Timer0 overflow ---------- */
    /* F_CPU = 8 MHz
     * Prescaler = 64
     * Overflow period ≈ 2.048 ms
     * idleTicks > 12 gives ~24.6 ms timeout
     */

    TCCR0 = (1 << CS01) | (1 << CS00);   /* clk/64 */
    TCNT0 = 0;                           /* initialize counter */
    TIMSK |= (1 << TOIE0);               /* enable overflow interrupt */
#elif defined(__AVR_ATmega88__) || defined(__AVR_ATmega88A__) || defined(__AVR_ATmega88PA__)
    /* ---------- ATmega88 / ATmega88A / ATmega88PA / ATmega88PB ---------- */
    /* F_CPU = 8 MHz
    * Prescaler = 64
    * OCR0A = 124 → 1 ms
    */

    TCCR0A = (1 << WGM01);               /* CTC */
    TCCR0B = (1 << CS01) | (1 << CS00);  /* clk/64 */
    TCNT0  = 0;                          /* initialize counter */
    OCR0A  = 124;
    TIMSK0 = (1 << OCIE0A);
#endif

    sei();

    while (1) {
        sega_poll_th();
        sega_output();
    }
}

27
Можно, только я отпустил до 8, и это в пределах допустимого. Учитывая что PS One работают от блоков питания для PS2 на которых 8.5В


Добавлено позже:

а 3 Ампера БП даст?

Добавлено позже:
Когда ты меняешь делитель, петля обратной связи пересчитывается под другое напряжение но компенсация (RC-цепи) остаётся рассчитанной на 12 V.

Ну и как следствие возможны осцилляции, пульсации на выходе, нестабильная работа под динамической нагрузкой (лазер + мотор). Лучше бы оригинальный БП восстановил.
Да, лучше бы. Я бы тоже так хотел. И там не 3А на оригинальном БП а 2А. 2А потребляются в пике, если прям все работает одновременно.
БП который я использовал был хороший и выдавал 12В 1.5А, так что он подошел нормально и даже не грелся сильно

Добавлено позже:
Eugeniy_59
Для эксперимента купил такой же нерабочий блок на барахолке. И по твоему совету начал искать отвалившуюся пайку. Таковая обнаружилась на высоковольтном кондере 22мкф. Пропаял его и все что выглядело подозрительно. Появилось напряжение на выходе. Но!
Напряжение проседало под нагрузкой. Это электролиты! Те что на выходе были в норме, а вот С3 показал высокий ESR, хотя емкость была норм.
В общем причины было две - пропайка и конденсатор С3. Это для тех кто столкнется с ремонтов такого БП  :cool:

Добавлено 9 января 2026 года:
В итоге я снова перепроверил тот оригинальный блок питания, обнаружил пробитые, после моих экспериментов стабилиитроны на 18В.
Заменил два стабилитрона и конденсатор С3 и все заработало.
Всего-то надо было проверить ESR :(

28
Да, обновил но я чет не разобрался со сборкой, поэтому через ИИ сделал кода на Си.
Прикрепил архив с файлом.

У меня пока нет возможности его затестить, но может кто попробует и отпишет?
Он совместим с atmega88

29
Картриджи / диски / Виснет картридж sega
« : 10 Декабрь 2025, 22:33:26 »
Подниму старый пост, так как попался картридж с фифа97.
Я сразу решил проверить чемпионат, и он сработал! То есть после матча игра не зависла как это было в детстве.
Я открыл коробку и там лежит плата на подобие той, что в первом посте. С разницей, что верхняя капля нанесена на саму плату а не отдельную платформу.
Этой проблемой страдали все игры серии фифа в детстве. Кстати, чемпионат можно было проходить если ставить крестик и давать возможность компьютеру самому решать какой счет будет.
Зачастую это был узкий набор комбинаций счетов, который случайным образом присваивался, ну или определенным алгоритмом)

Добавлено позже:
Вот такой картридж и вот такая приставка T2. логика 74HC00

30
4 поколение / Ремонт клона Sega Mega Drive 1
« : 05 Декабрь 2025, 21:12:22 »
в таком случае есть опасность что видеопамять будет битая. мне не хочется всякий хлам собирать)

Страницы: [1] 2 3 Далее