ZXDOS+ как NES/Famicom/Dendy
Продолжаем «мучать» испанскую железяку ZXDOS+. Тему её основного использования как ZX Spectrum и как ZX Spectrum Next я уже достаточно охватил, теперь пришло время затронуть дополнительные варианты её использования. Ну и действительно, раз уж девайс основан на FPGA-чипе (с 25-ю тысячами ячеек), который позволяет «заливать» в него любую влезающую в него железную схему, то странно было бы останавливаться исключительно на одной. И меня это устройство заинтересовало в том числе и возможностью использования его в качестве других 8-битных ПК того же периода существования, что и Спектрум.
Самым интересным для меня показалась возможность установки ядра NES (Nindendo Entertainment System), поэтому начну именно с него. Ну и никак нельзя упустить из виду это ядро, поскольку ну у кого же из детей 90-х не было Dendy (российский клон NES/Famicom)? У меня-то вот лично не было (я сознательно выбрал Спектрум), но у многих родственников и знакомых он был, поэтому мне удалось вволю поиграть на этой приставке в разные игры.
Вполне логично, что Денди, являясь в первую очередь игровой приставкой, а не компьютером, была более распространена чем тот же ZX Spectrum, который был хоть и 8-битным, но всё-таки компьютером. Да и графика в Денди была лучше, чем у Спектрума с его конфликтом атрибутов (раскраска экрана квадратами 8 на 8 пикселей давала специфический узнаваемый эффект), плюс к этому в Денди была поддержка аппаратных спрайтов и аппаратной прокрутки экрана. Также на пользу клона NES играло то, что его стоимость была не очень высокая ($30-35), да и картриджи продавались почти на каждом углу, а за счёт опять же широкого распространения приставки этими картриджами можно было спокойно обмениваться, экономя свои деньги. А мне вот, например, дискетами для Спектрума обмениваться было особо не с кем…
Ну и в использовании Dendy был более простым, чем тот же Спектрум. Например, для подключения клона Спектрума к телевизору требовался специфический модуль понимающий RGB-сигнал, который нужно было сначала впаять в телевизор (не всякий родитель ещё и позволял подобные штуки), да ещё и денег это опять же требовало — добавляя их к цене самого Спектрума. Денди же можно было просто воткнуть в антенный вход любого телевизора и сразу получить картинку. Плюс к этому в комплекте шло два проводных геймпада, которые сразу позволяли играть сразу двум игрокам — либо против друг друга, либо в кооперативе. Это резко увеличивало интерес к играм (вдвоём всё-таки веселее), в отличие от того же Спектрума, в котором, теоретически, играть вдвоём было можно (при наличии джойстика, либо вдвоём на одной клавиатуре), но вот самих игр для двоих было катастрофически мало (недавно специально отбирал из всех имеющихся — с трудом нашёл два десятка). Я думаю, что именно по этим причинам Денди был более популярной игровой платформой начала 90-х годов в России.
Я-то выбрал Спектрум потому что он был более универсальной вещью и на нём можно было не только играть, но большая часть его пользователей на нём именно играли, вызывая этим гнев самого сэра Клайва Синклера. Ну а мне, в итоге, больше нравились не аркадные игры Денди, а более «умные» на Спектруме — стратегии, квесты, головоломки и т.п. Но и Денди я до сих пор вспоминаю с теплотой и ностальгия по знакомым играм ещё присутствует, поэтому приобретя ZXDOS+, я практически сразу закачал на него ядро NES, а на SD-карту несколько образов игр с расширением nes.
В мануале ZXDOS+ написано, что ядро позволяет включить HD-фильтр сглаживающий пиксели, заточен под NTSC (60 герц) и соответственно PAL-версии игр будут быстрее, чем положено. Должен быть подключен как минимум один геймпад с несколькими клавишами (для удара). И поддерживается только видеорежим VGA (хотя в ZXDOS+ только выход VGA и есть), причём с неточной синхронизацией, из-за чего может не работать с некоторыми дисплеями.
И хотя ядро успешно запустилось и можно было побродить по каталогам SD-карты и даже попытаться загрузить образы игр:
Но все загрузки игр в формате NES приводили только к чёрному (очень темно-серому) экрану, либо иногда на нём промелькивали цветные полосы:
Возможно, именно это следствия некорректной работы с выводом на экран, хотя вряд ли — звука-то тоже нет. Можно было снова открыть главное меню и опять попытаться загрузить образ игры или сначала сбросить NES и потом загрузить, но все мои попытки ни к чему не приводили. Вот так облом!
Я связался и с разработчиком ZXDOS+, но тот заявил, что ядро нестабильное, поэтому лучше спросить в телеграмм-канале. Там я тоже спросил и мне даже ответил разработчик этого ядра (точнее тот, кто его портировал под ZXDOS+), но тот тоже сообщил, что это его первый опыт с FPGA и не все игры запускаются. Но обещал в будущем посмотреть на его работоспособность. Так что будем подождать. Но у некоторых владельцев ZXDOS+ это ядро отлично всё загружает и всё работает, я это на видео видел:
Вот видео с примером работы ядра NES
Может быть, это из-за того что у меня ZXDOS+ LX25, а у них LX16 (для неё идут совсем другие сборки ядер: не с расширением ZXD, а ZX2).
Но вот всё-таки это ядро показывает основную проблему самого девайса. Это не только (пусть и отличная) аппаратная платформа, под неё должны быть созданы и отлажены программные «ядра», которые и позволяют использовать это самое устройство. А вот с этим не всё гладко, как и видно на примере ядра NES. Точно такая же штука вылезла в ядре ZX Spectrum, когда оказалось, что хоть коннектор шины расширения ZX BUS и выведен на левую грань устройства, но он никак не задействован в самом ядре, поэтому и не работает. Писать заново — не всякий сможет, портировать — тоже не каждый справится. Я вот хоть и программист, но с FPGA никак до этого не сталкивался, и даже при наличии исходников не так-то просто всё это освоить и заставить работать на реальной железке.
- dukeyusupov
- 0
- 857