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



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


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

13 для корпуса DIP64 і ніжка 13 для корпуса SMD (чотирикутного)) а катод
до перемикача. При замиканні перемикача DIP відбудеться генерація сигналу захоплення шин. CPU зупиниться. Після виключення CPU продовжить роботу. На малюнку - це блакитний провід. Діод будь-хто, наприклад КД522 (як в джойстиках).
Плюси: необмежена пауза в будь-якій грі (Mortal Kombat, наприклад).

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