Удосконалення sega mega drive ii

Ось компанія SEGA створила таку прекрасну приставку MegaDrive. Але перш ніж її випустити на ринок, подумала: "Якщо приставка буде популярною, як забезпечити її працездатність на різних країнах, де діють різні стандарти на телебачення? І, що важливіше, як захистити ПО (тобто ігри) від нелегального тиражування і копіювання в різних країнах? ". Виявилося простіше простого: треба в схему впровадити реєстр, читання з якого видасть програмі інформацію про країну / стандарті. Але фірма задумалася: "Це що, для кожної країни робити свій завод і техпроцес виготовлення мікросхем? Ні, так справа не піде! ". І ось рішення - були введені перемички на платі, які і задавали режим і стандарт роботи приставки. Ці перемички виставлялися один раз на заводі. Користувач про них не повинен був знати.

І на перших приставках була ОС. Вона зчитувала стан регістра і дізнавалася, для якої країни зроблена приставка і якої версії вона, відмовляючись запускати "чужі" гри. Гравці стали розчаровуватися, а компанія, схаменувшись, почала думати: "Якщо процес нелегального копіювання не можна повністю припинити, то, може бути, взяти його в свої руки?" І ось з'явився "MegaKey" - спеціальний картридж, який включався між приставкою і картриджем. Він говорив ОС іншу інформацію і гра запускалася. Пізніше ОС прибрали, спростивши ще й схему самої приставки (прибрали RF конвертер і стерео вихід для навушників).

Отже, ясно, що сам ключ вже присутній в приставці. І його можна задіяти. А ось як це зробити, буде сказано нижче. Спочатку розберемо приставку:

Удосконалення sega mega drive ii
Удосконалення sega mega drive ii

Удосконалення sega mega drive ii

TA04 (середній чіп посередині) - арбітр шин. До речі, я його міняв, тому на ньому немає маркування "SEGA". Саме він і став причиною того, що у мене з'явилася ця приставка. Натомість неї, я віддав звичайну MegaDrive 2, і сказав господареві, що ремонт неможливий :). А нижче сфотографований сам звуковий чіп Yamaha YM2612. А так же Z80 і його ОЗУ.

Удосконалення sega mega drive ii
Удосконалення sega mega drive ii

Тепер про найцікавіше. Залишається ще один DIP №4. І щоб він не пропадав даремно, я його використовую для однієї "фішки". Я її назвав "універсальна пауза". Сенс її в тому, що вона "гальмує" головний CPU (M68000). Z80 при цьому продовжує працювати. Для цього використовується сигнал "BR" або "BusReq". Його призначення це захоплення шин процесора. Тобто поки процесор "перетравлює" чергову команду, він не використовує зовнішніх (по відношенню до нього) ресурсів. В цей час їх можна використовувати з іншими пристроями, минаючи процесор. Цим займається контролер DMA (Direct Memory Access - Прямий Доступ до Пам'яті або ПДП).

Для чого це потрібно? Наприклад, щоб "розвантажити" процесор, якщо контролер DMA організовує пересилання однієї порції даних 8 або 16 біт за один машинний цикл CPU. У приставці цей режим не використовується, зате можна пересилати дані зі швидкістю 2х і іноді навіть вище, ніж це зробить CPU з самої оптимізованої програмою. Це тому, що пересилання буде відбуватися кожен такт синхронизирующей частоти, тоді як CPU на виконання однієї команди витратить кілька тактів. Тримати CPU в режимі захоплення шин можна стільки, скільки завгодно. Після надходження сигналу, CPU звільняє шини відразу, як тільки завершить виконання поточної команди.

Удосконалення sega mega drive ii
Висновок підключений до ТА06, що не дивно, адже BR використовує контролер DMA і Z80 при зверненні до ресурсів 68K. Вихід ТА06 виконаний за технологією ОК, тому ми можемо підключити його до нашого перемикача DIP через діод. Анод діода до процесора (ніжка
13 для корпуса DIP64 і ніжка 13 для корпуса SMD (чотирикутного)) а катод
до перемикача. При замиканні перемикача DIP відбудеться генерація сигналу захоплення шин. CPU зупиниться. Після виключення CPU продовжить роботу. На малюнку - це блакитний провід. Діод будь-хто, наприклад КД522 (як в джойстиках).

Плюси: необмежена пауза в будь-якій грі (Mortal Kombat, наприклад).

Удосконалення sega mega drive ii
Протипоказання: в "важких" іграшках, які використовують всі можливості апаратури або прив'язані до часу, може статися зависання. На час зупинки, динамічно змінюване зображення може бути зіпсовано, після пуску відновиться. Якщо музику грає 68К, то буде тиша. Всі проблеми пов'язані з тим, що сигнал BR, через простоту схеми, може прийти в будь-який момент. Наприклад, під час відпрацювання переривання - в найважливіший момент для VDP.

Конструктивно, це виглядає так: знята кришка роз'єму SegaCD. Для паузи дещо не зручно, зате зовнішній вигляд не псується.

Якщо є в наявності приставка, яка вже виконана на інших мікросхемах (як правило, це або дві великі квадратні (TA06 і комплексна, яка об'єднує TA04, TA05, TA07, M68000, Z80) і кілька дрібних (памятюшкі), або один великий чіп на 208 ніжок). Можна іноді теж підключити DIP за умови, що на платі є відповідні Піни. Для цього можна надіслати мені фотографію (бажано з цифрового фотоапарата) і я спробую визначити можливість підключення DIP'ов.