Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
msx:unimapper:unimapper [2023-01-12 20:40] brawaga |
msx:unimapper:unimapper [2023-08-06 10:20] (текущий) GreyWolf [Версия 2.0] |
||
---|---|---|---|
Строка 6: | Строка 6: | ||
* [[#Konami]] | * [[#Konami]] | ||
* [[#Konami SCC]] | * [[#Konami SCC]] | ||
- | * [[#ASC8]] | + | * [[#ASCII8]] |
- | * [[#ASC16]] | + | * [[#ASCII16]] |
(C) Pyhesty 2021–2022, 2022 RBSC | (C) Pyhesty 2021–2022, 2022 RBSC | ||
Строка 113: | Строка 113: | ||
[[msxorg>wiki/MegaROM_Mappers#Konami.27s_MegaROMs_without_SCC|Konami's MegaROMs without SCC ]] | [[msxorg>wiki/MegaROM_Mappers#Konami.27s_MegaROMs_without_SCC|Konami's MegaROMs without SCC ]] | ||
- | ===== ASC8 ===== | + | ===== ASCII8 ===== |
32 страницы × 8 кБайт, объём до 256 кБайт | 32 страницы × 8 кБайт, объём до 256 кБайт | ||
Строка 133: | Строка 133: | ||
---- | ---- | ||
- | [[msxorg>wiki/MegaROM_Mappers#ASC8_.28ASCII.29|ASC8 (ASCII)]] | + | [[msxorg>wiki/MegaROM_Mappers#ASC8_.28ASCII.29|ASCII8]] |
- | ===== ASC16 ===== | + | ===== ASCII16 ===== |
- | + | ||
- | ASC16 (ASCII) | + | |
32 страницы × 16 кБайт, объём до 512 кБайт | 32 страницы × 16 кБайт, объём до 512 кБайт | ||
Строка 158: | Строка 156: | ||
---- | ---- | ||
- | [[msxorg>wiki/MegaROM_Mappers#ASC16_.28ASCII.29|ASC16 (ASCII)]] | + | [[msxorg>wiki/MegaROM_Mappers#ASC16_.28ASCII.29|ASCII16]] |
Строка 176: | Строка 174: | ||
{{:msx:unimapper:unimapper_20_top.jpg|}} {{:msx:unimapper:unimapper_20_bottom.jpg|}} | {{:msx:unimapper:unimapper_20_top.jpg|}} {{:msx:unimapper:unimapper_20_bottom.jpg|}} | ||
+ | |||
+ | [[github>RBSC/Unimapper/tree/master/_OldVersions/Firmware/v2.0|Firmware v2.0]] | ||
+ | |||
Версия 1.0 была максимально гибкой, и содержала излишнее количество элементов, в данном описании не упоминается, хотя присутствует в репозитории. | Версия 1.0 была максимально гибкой, и содержала излишнее количество элементов, в данном описании не упоминается, хотя присутствует в репозитории. | ||
Строка 241: | Строка 242: | ||
- | {{anchor:impl_asc8}} | + | {{anchor:impl_ascii8}} |
- | ===== ASC8 ===== | + | ===== ASCII8 ===== |
Описание работы маппера в режиме | Описание работы маппера в режиме | ||
- | Маппер для [[#ASC8]] аналогичен мапперу для [[#impl_Konami|Konami]], но требуется большее количество бит для дешифровки адреса устанавливаемого сегмента (так как отличается адресация). Также часть функции, отвечающая за сброс по сигналу Reset, одинаковая для всех бит, и сбрасывает их в ноль. | + | Маппер для [[#ASCII8]] аналогичен мапперу для [[#impl_Konami|Konami]], но требуется большее количество бит для дешифровки адреса устанавливаемого сегмента (так как отличается адресация). Также часть функции, отвечающая за сброс по сигналу Reset, одинаковая для всех бит, и сбрасывает их в ноль. |
<code> | <code> | ||
/* 1 - page bit 0 */ | /* 1 - page bit 0 */ | ||
Строка 261: | Строка 262: | ||
</code> | </code> | ||
- | {{anchor:impl_asc16}} | + | {{anchor:impl_ascii16}} |
- | ===== ASC16 ===== | + | ===== ASCII16 ===== |
- | Описание работы маппера в режиме ASC16 | + | Описание работы маппера в режиме ASCII16 |
- | Маппер для ASC16 отличается, для хранения состояния бита сегмента требуется не четыре бита, а только два, поэтому часть битов просто не используется. Нулевой бит адреса сегмента пробрасывает адрес А13. Аналогично [[#impl_Konami|Konami]] и [[#impl_asc8|ASC8]] реализован сброс, установка и чтение. | + | Маппер для ASCII16 отличается, для хранения состояния бита сегмента требуется не четыре бита, а только два, поэтому часть битов просто не используется. Нулевой бит адреса сегмента пробрасывает адрес А13. Аналогично [[#impl_Konami|Konami]] и [[#impl_ascii8|ASCII8]] реализован сброс, установка и чтение. |
<code> | <code> | ||
Строка 301: | Строка 302: | ||
- | Версия 3.0 позволяет за счёт добавления ещё одной PLD реализовать [[#Konami SCC]]-маппер, а также полностью совместимый маппер [[#ASC8]] и аналогичные, объёмом до 512кБ, а также без применений дополнительной PLD-микросхемы (без D3) маппер объёмом до 256кБ. Это может быть особенно важно при использовании ROM, генерированной с применением программы [[msx:dsk2rom:dsk2rom|DSK2ROM]], которая преобразует образ диска в образ ПЗУ. | + | Версия 3.0 позволяет за счёт добавления ещё одной PLD реализовать [[#Konami SCC]]-маппер, а также полностью совместимый маппер [[#ASCII8]] и аналогичные, объёмом до 512кБ, а также без применений дополнительной PLD-микросхемы (без D3) маппер объёмом до 256кБ. Это может быть особенно важно при использовании ROM, генерированной с применением программы [[msx:dsk2rom:dsk2rom|DSK2ROM]], которая преобразует образ диска в образ ПЗУ. |
Теперь каждая GAL на выходе реализует монтажное ИЛИ для 2½ бит адреса сегмента. Для каждой из страниц реализуются все возможные состояния адресов сегмента. GAL1 и GAL2 выполнены фактически симметрично, GAL3 (D3) использует только четыре регистра. | Теперь каждая GAL на выходе реализует монтажное ИЛИ для 2½ бит адреса сегмента. Для каждой из страниц реализуются все возможные состояния адресов сегмента. GAL1 и GAL2 выполнены фактически симметрично, GAL3 (D3) использует только четыре регистра. | ||
Строка 408: | Строка 409: | ||
</WRAP> | </WRAP> | ||
- Выполнить подключение переключателя по схеме:<WRAP> | - Выполнить подключение переключателя по схеме:<WRAP> | ||
- | ^ Контакт ^ Описание ^ | + | ^ Контакт ^ Описание ^ |
- | |Управление|К контакту 6 любой микросхемы GAL| | + | | Управление | Подключить к контакту 6 любой микросхемы GAL | |
- | |Режим "чтение"|Минус питания земле через резистор 1–10кОм| | + | | Режим "чтение" | Подключить к "земле" через резистор 1–10кОм | |
- | |Режим "запись"|Питание (+5В)| | + | | Режим "запись" | Подключить к питанию (+5В) | |
:!: Высокий уровень (5В) на контакте 6 микросхемы GAL меняет режим работы схемы с «чтения» на «запись». В режиме «запись» невозможна загрузка с картриджа! | :!: Высокий уровень (5В) на контакте 6 микросхемы GAL меняет режим работы схемы с «чтения» на «запись». В режиме «запись» невозможна загрузка с картриджа! | ||
Строка 418: | Строка 419: | ||
\\ [[https://radioremont.com/product/knopka_pb22e08_s_fiksaciey_8x8x13_mm/|PB22E08 — кнопка с фиксацией 8×8×13]] + [[https://radioremont.com/product/kolpachok-dlya-knopok-a28-red/|Колпачок для кнопок A28 Red, K243-25]] | \\ [[https://radioremont.com/product/knopka_pb22e08_s_fiksaciey_8x8x13_mm/|PB22E08 — кнопка с фиксацией 8×8×13]] + [[https://radioremont.com/product/kolpachok-dlya-knopok-a28-red/|Колпачок для кнопок A28 Red, K243-25]] | ||
</WRAP> | </WRAP> | ||
- | - Соединить контакт 9 микросхемы GAL (D3) с контактом 18 микросхемы ППЗУ (D4): \\ {{:msx:unimapper:side_slot_gotek_adapter-fix-2.jpg?600|}} | + | - Соединить контакт 9 микросхемы GAL (D3) с контактом 18 микросхемы ППЗУ (D4): \\ |
+ | {{:msx:unimapper:30_back-fix_2.jpg?600|}} | ||
==== Использование ==== | ==== Использование ==== | ||
Строка 438: | Строка 439: | ||
**Что можно проконтролировать в программе записи** | **Что можно проконтролировать в программе записи** | ||
- | - После ввода имени файла происходит поиск ПЗУ. Код ПЗУ SST39SF040: BF B7. | + | - После ввода имени файла происходит поиск ПЗУ. \\ Код SST39SF040: BF B7. |
- Выводится отладочная информация по текущим сегментам в страницах памяти (первые четыре байта). | - Выводится отладочная информация по текущим сегментам в страницах памяти (первые четыре байта). | ||
- После стирания ПЗУ во всех ячейках памяти всех сегментов код FF. | - После стирания ПЗУ во всех ячейках памяти всех сегментов код FF. |