1
Ремонт, схеми, документация, литература / Re: аркадни игри платки идеи проекти
« Последна публикация от vasil.lyutskanov - Днес в 09:44:51 »Благодаря за помоща 
Ето обобщението до момента,на някой може да му е интересно :
1. Диагностика на Circus Charlie платката
Установих, че оригиналният KONAMI-1 CPU на позиция 10H е практически мъртъв.
Проверено беше:
+5V / GND към CPU = OK
clock на pin 15 и pin 17 ≈ 1.536 MHz = OK
reset pin 19 = цикли 0V около 25 ms / HIGH около 80 ms
pin 21 / 23 / 24 / 25 = HIGH, pull-up около 4.7k към +5V
адреси pin 30–33 = няма активност, стоят около 1.8V
R/W pin 13 = няма активност, около 1.8V
няма късо по адресните линии
цокълът и пиновете са почистени
CPU е студен
После сложих Roc’n Rope / Rope Man RR-324 SUB платката с MC6809EP на мястото на KONAMI-1.
Circus Charlie се събуди, стигна до екран след теста и после reset loop. Това доказа две неща:
оригиналният KONAMI-1 е виновен
основната Circus Charlie платка е поне частично жива
Reset loop-а със RR-324 реших да го оставя за друг етап.
2. ROM-овете
Потвърдих, че program ROM-ове са за:
MAME set: circusc4
Описание: Circus Charlie no level select
Петте main CPU ROM-а са:
380_r05.3h CRC ed52c60f адрес 0x6000
380_n04.4h CRC fcc99e33 адрес 0x8000
380_n03.5h CRC 5ef5b3b5 адрес 0xA000
380_n02.6h CRC a5a5e796 адрес 0xC000
380_n01.7h CRC 70d26721 адрес 0xE000
Значи ROM-ите са здрави.
3. Отпадналият лесен път
Първо мислех за:
прост 6809E adapter + decrypted/plain 6809 ROM-и
Но не намерих готов decrypted/plain circusc4 ROM set.
Затова смених посоката към по-реалистичен вариант:
MC6809E + хардуерен KONAMI-1 opcode decrypt
Тоест да работи с оригиналните encrypted circusc4 ROM-и.
4. Избраната архитектура
Избрах проект:
KONAMI-1 replacement
MC6809E / 68A09E / 68B09E
+
GAL16V8D
+
74LS245
+
74LS244
Целта е модулът да влиза в оригиналния KONAMI-1 цокъл и да работи с оригиналните ROM-и.
Основна идея
U1 = MC6809E
U2 = 74LS245 raw read/write data path
U3 = 74LS244 opcode path към CPU
U4 = GAL16V8D decrypt + OPFETCH control
5. Data path логика
Board data bus от KONAMI-1 socket-а:
BD0 = J1 pin 12
BD1 = J1 pin 10
BD2 = J1 pin 9
BD3 = J1 pin 8
BD4 = J1 pin 7
BD5 = J1 pin 6
BD6 = J1 pin 5
BD7 = J1 pin 4
CPU data bus към 6809E:
CD0 = U1 pin 31
CD1 = U1 pin 30
CD2 = U1 pin 29
CD3 = U1 pin 28
CD4 = U1 pin 27
CD5 = U1 pin 26
CD6 = U1 pin 25
CD7 = U1 pin 24
U2 / 74LS245
Нормален read/write път:
BD0–BD7 ↔ CD0–CD7
DIR = RW
/OE = OPFETCH
При normal read/write U2 е активен.
При opcode fetch U2 се изключва.
U3 / 74LS244
Opcode път:
BD0, BD2, BD4, BD6 минават директно към CD0, CD2, CD4, CD6
DEC_D1, DEC_D3, DEC_D5, DEC_D7 от GAL-а отиват към CD1, CD3, CD5, CD7
/OE1 и /OE2 = N_OPFETCH
При opcode fetch U3 се включва.
6. GAL16V8D логика
GAL входове:
pin 1 = LIC_POL
pin 2 = A1
pin 3 = A3
pin 4 = RW
pin 5 = LIC
pin 6 = BD1
pin 7 = BD3
pin 8 = BD5
pin 9 = BD7
pin 11 = GND / output enable active
GAL изходи:
pin 12 = DEC_D1
pin 13 = DEC_D3
pin 14 = DEC_D5
pin 15 = DEC_D7
pin 17 = OPFETCH
pin 18 = N_OPFETCH
pin 16 = NC
pin 19 = NC
Декрипт формули
DEC_D1 = BD1 XOR /A3
DEC_D3 = BD3 XOR A3
DEC_D5 = BD5 XOR /A1
DEC_D7 = BD7 XOR A1
OPFETCH логика
Има jumper за LIC polarity:
LIC_POL = 0 → OPFETCH = RW & /LIC
LIC_POL = 1 → OPFETCH = RW & LIC
JP1/R5 блокът беше проверен:
JP1 pin 1 → LIC_POL
JP1 pin 2 → +5V
R5 10k → LIC_POL към GND
Без джъмпер LIC_POL е 0.
С джъмпер LIC_POL става 1.
7. KiCad схема
Схемата е направена с:
J1 = 42-pin KONAMI-1 socket / DIP-42 footprint
U1 = MC6809E / DIP-40
U2 = 74LS245 / DIP-20
U3 = 74LS244 / DIP-20
U4 = GAL16V8D / DIP-20
C1–C4 = 100nF decoupling
C5 = 10µF bulk capacitor
R5 = 10k pull-down
JP1 = 2-pin jumper
Добавих No Connect markers на:
J1 pin 11, 14, 16, 18, 27
U1 pin 33 / BUSY
U1 pin 36 / AVMA
U4 pin 16
U4 pin 19
ERC беше чист:
Errors: 0
Warnings: само lib_symbol_mismatch за Conn_01x42
Това предупреждение не е електрически проблем.
8. PCB status
Footprint-ите са зададени и PCB-то е подредено компактно:
J1 KONAMI-1 → U2/U3/U4 data/decrypt логика → U1 MC6809E
Подредбата я харесах и я заключих.
Направих Edge.Cuts outline.
След това:
експортираhх DSN;
FreeRouting plugin даде грешка;
после го подкарах със standalone/Specctra workflow;
autorouting-ът мина;
импортна обратно SES в KiCad.
9. Последен DRC статус
След autorouting първо имаше:
83 unconnected pads
После след FreeRouting падна до:
7 unconnected
След като GND зоната беше направена Solid, резултатът стана:
DRC violations: 3
Unconnected pads: 5
Footprint errors: 0
Важното: вече няма конкретни GND пинове като U1 pin 1, U2 pin 10 и т.н. несвързани.
Останаха:
3 silkscreen warnings
5 zone-to-zone unconnected съобщения за GND зона
Тези 5 изглеждат като GND zone/island artifact, не като реално несвързан пин.
10. Оттук продължих
Първата следваща стъпка е само една:
Проверявам/чистя GND зоната.
Редът е:
1. трия GND зоната и я създавам наново:
B.Cu
net = GND
pad connection = Solid
remove islands = Always
2. Натискам B за refill.
3. Пускаме DRC.
4. Ако пак останат същите 5 Zone [GND] ↔ Zone [GND], приемам ги като артефакт, стига да няма конкретен несвързан GND пин.
5. После оправям трите silkscreen warnings.
схемата :

развитието следва
: https://www.facebook.com/groups/1266646425584964

Ето обобщението до момента,на някой може да му е интересно :
1. Диагностика на Circus Charlie платката
Установих, че оригиналният KONAMI-1 CPU на позиция 10H е практически мъртъв.
Проверено беше:
+5V / GND към CPU = OK
clock на pin 15 и pin 17 ≈ 1.536 MHz = OK
reset pin 19 = цикли 0V около 25 ms / HIGH около 80 ms
pin 21 / 23 / 24 / 25 = HIGH, pull-up около 4.7k към +5V
адреси pin 30–33 = няма активност, стоят около 1.8V
R/W pin 13 = няма активност, около 1.8V
няма късо по адресните линии
цокълът и пиновете са почистени
CPU е студен
После сложих Roc’n Rope / Rope Man RR-324 SUB платката с MC6809EP на мястото на KONAMI-1.
Circus Charlie се събуди, стигна до екран след теста и после reset loop. Това доказа две неща:
оригиналният KONAMI-1 е виновен
основната Circus Charlie платка е поне частично жива
Reset loop-а със RR-324 реших да го оставя за друг етап.
2. ROM-овете
Потвърдих, че program ROM-ове са за:
MAME set: circusc4
Описание: Circus Charlie no level select
Петте main CPU ROM-а са:
380_r05.3h CRC ed52c60f адрес 0x6000
380_n04.4h CRC fcc99e33 адрес 0x8000
380_n03.5h CRC 5ef5b3b5 адрес 0xA000
380_n02.6h CRC a5a5e796 адрес 0xC000
380_n01.7h CRC 70d26721 адрес 0xE000
Значи ROM-ите са здрави.
3. Отпадналият лесен път
Първо мислех за:
прост 6809E adapter + decrypted/plain 6809 ROM-и
Но не намерих готов decrypted/plain circusc4 ROM set.
Затова смених посоката към по-реалистичен вариант:
MC6809E + хардуерен KONAMI-1 opcode decrypt
Тоест да работи с оригиналните encrypted circusc4 ROM-и.
4. Избраната архитектура
Избрах проект:
KONAMI-1 replacement
MC6809E / 68A09E / 68B09E
+
GAL16V8D
+
74LS245
+
74LS244
Целта е модулът да влиза в оригиналния KONAMI-1 цокъл и да работи с оригиналните ROM-и.
Основна идея
U1 = MC6809E
U2 = 74LS245 raw read/write data path
U3 = 74LS244 opcode path към CPU
U4 = GAL16V8D decrypt + OPFETCH control
5. Data path логика
Board data bus от KONAMI-1 socket-а:
BD0 = J1 pin 12
BD1 = J1 pin 10
BD2 = J1 pin 9
BD3 = J1 pin 8
BD4 = J1 pin 7
BD5 = J1 pin 6
BD6 = J1 pin 5
BD7 = J1 pin 4
CPU data bus към 6809E:
CD0 = U1 pin 31
CD1 = U1 pin 30
CD2 = U1 pin 29
CD3 = U1 pin 28
CD4 = U1 pin 27
CD5 = U1 pin 26
CD6 = U1 pin 25
CD7 = U1 pin 24
U2 / 74LS245
Нормален read/write път:
BD0–BD7 ↔ CD0–CD7
DIR = RW
/OE = OPFETCH
При normal read/write U2 е активен.
При opcode fetch U2 се изключва.
U3 / 74LS244
Opcode път:
BD0, BD2, BD4, BD6 минават директно към CD0, CD2, CD4, CD6
DEC_D1, DEC_D3, DEC_D5, DEC_D7 от GAL-а отиват към CD1, CD3, CD5, CD7
/OE1 и /OE2 = N_OPFETCH
При opcode fetch U3 се включва.
6. GAL16V8D логика
GAL входове:
pin 1 = LIC_POL
pin 2 = A1
pin 3 = A3
pin 4 = RW
pin 5 = LIC
pin 6 = BD1
pin 7 = BD3
pin 8 = BD5
pin 9 = BD7
pin 11 = GND / output enable active
GAL изходи:
pin 12 = DEC_D1
pin 13 = DEC_D3
pin 14 = DEC_D5
pin 15 = DEC_D7
pin 17 = OPFETCH
pin 18 = N_OPFETCH
pin 16 = NC
pin 19 = NC
Декрипт формули
DEC_D1 = BD1 XOR /A3
DEC_D3 = BD3 XOR A3
DEC_D5 = BD5 XOR /A1
DEC_D7 = BD7 XOR A1
OPFETCH логика
Има jumper за LIC polarity:
LIC_POL = 0 → OPFETCH = RW & /LIC
LIC_POL = 1 → OPFETCH = RW & LIC
JP1/R5 блокът беше проверен:
JP1 pin 1 → LIC_POL
JP1 pin 2 → +5V
R5 10k → LIC_POL към GND
Без джъмпер LIC_POL е 0.
С джъмпер LIC_POL става 1.
7. KiCad схема
Схемата е направена с:
J1 = 42-pin KONAMI-1 socket / DIP-42 footprint
U1 = MC6809E / DIP-40
U2 = 74LS245 / DIP-20
U3 = 74LS244 / DIP-20
U4 = GAL16V8D / DIP-20
C1–C4 = 100nF decoupling
C5 = 10µF bulk capacitor
R5 = 10k pull-down
JP1 = 2-pin jumper
Добавих No Connect markers на:
J1 pin 11, 14, 16, 18, 27
U1 pin 33 / BUSY
U1 pin 36 / AVMA
U4 pin 16
U4 pin 19
ERC беше чист:
Errors: 0
Warnings: само lib_symbol_mismatch за Conn_01x42
Това предупреждение не е електрически проблем.
8. PCB status
Footprint-ите са зададени и PCB-то е подредено компактно:
J1 KONAMI-1 → U2/U3/U4 data/decrypt логика → U1 MC6809E
Подредбата я харесах и я заключих.
Направих Edge.Cuts outline.
След това:
експортираhх DSN;
FreeRouting plugin даде грешка;
после го подкарах със standalone/Specctra workflow;
autorouting-ът мина;
импортна обратно SES в KiCad.
9. Последен DRC статус
След autorouting първо имаше:
83 unconnected pads
После след FreeRouting падна до:
7 unconnected
След като GND зоната беше направена Solid, резултатът стана:
DRC violations: 3
Unconnected pads: 5
Footprint errors: 0
Важното: вече няма конкретни GND пинове като U1 pin 1, U2 pin 10 и т.н. несвързани.
Останаха:
3 silkscreen warnings
5 zone-to-zone unconnected съобщения за GND зона
Тези 5 изглеждат като GND zone/island artifact, не като реално несвързан пин.
10. Оттук продължих
Първата следваща стъпка е само една:
Проверявам/чистя GND зоната.
Редът е:
1. трия GND зоната и я създавам наново:
B.Cu
net = GND
pad connection = Solid
remove islands = Always
2. Натискам B за refill.
3. Пускаме DRC.
4. Ако пак останат същите 5 Zone [GND] ↔ Zone [GND], приемам ги като артефакт, стига да няма конкретен несвързан GND пин.
5. После оправям трите silkscreen warnings.
схемата :
развитието следва
: https://www.facebook.com/groups/1266646425584964
Начало
Активни теми
Търси
Вход
Регистрация
Последни публикации
... и когато такъв чип се пресели в електронния рай 