Russian version
English version
ОБ АЛЬЯНСЕ | НАШИ УСЛУГИ | КАТАЛОГ РЕШЕНИЙ | ИНФОРМАЦИОННЫЙ ЦЕНТР | СТАНЬТЕ СПОНСОРАМИ SILICON TAIGA | ISDEF | КНИГИ И CD | ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ | УПРАВЛЕНИЕ КАЧЕСТВОМ | РОССИЙСКИЕ ТЕХНОЛОГИИ | НАНОТЕХНОЛОГИИ | ЮРИДИЧЕСКАЯ ПОДДЕРЖКА | АНАЛИТИКА | КАРТА САЙТА | КОНТАКТЫ
 
Программное обеспечение
 
Для зарегистрированных пользователей
 
РАССЫЛКИ НОВОСТЕЙ
IT-Новости
Новости компаний
Российские технологии
Новости ВПК
Нанотехнологии
 
Поиск по статьям
 
RSS-лента
Подписаться
Документация

Эмулятор - друг человека

Александр Чижов

Я, честно говоря, вообще не хотел вступление писать, но ведь многие могут и не знать, что такое MSX, и какие для него есть игрушки. Хотя мне и кажется, что все поколение нынешних программистов выросло на этих компах.

причем вообще достаточно виртуальная знать процессора машина fmsx msx z80 эмулятор работает игрушки звукового
 процессор эмуляция ведь конечно настолько именно
Vamire Killer - игра всех времен и народов :)

Конечно, играм на MSX ни с Quake, ни c Diablo не сравниться по масштабности. Но ведь, согласитесь, когда ребенок просит поиграть на компьютере, ту же Diablo не поставишь. Маленький еще, интерес у них несколько не тот. Им бы пострелять, да понагляднее. А MSX - это, я бы сказал, идеал для домашнего использования. Причем, эмулятор его может запросто бегать и на 486DX100 с 4-8 метрами памяти. Просто под DOS'ом. Ну еще бы - ведь сами MSX были всего со 128kb памяти (правда, плюс столько же видео). Я имею в виду MSX-2 модификацию, которая вышла в 1986 году. А самая первая MSX появилась в 1982.

Э... как-то я не с того начал. Надо, наверное, сначала сказать, что "MSX" - это аббревиатура от "MicroSoft eXtended". То есть Microsoft и сюда пробрался - BASIC для этих машин именно он написал. Вообще, это были компьютеры, выполненные на процессоре Z80 (который работал на 3.58МГц), но так как их модификации выпускало просто огромное количество фирм (Sony, Sanyo, Panasonic, Mitsubishi, National, Philips, Talent, Telematica, Toshiba, Yamaha, Daewoo), то как-то прижилось общее название MSX. Первые так и назывались, потом появились MSX-2 - эти уже были настолько хороши, что дальнейших модификаций и не было, если не считать "MSX2+" и "TurboR". А к 1988 году стандарт MSX практически умер.

Но компьютеры стали настолько популярными, что основанные на них компьютерные классы (со своей очень неплохой локальной сеткой) были в России уже, насколько мне не изменяет память, с 1985г., и продержались достаточно долго. Сам по себе компьютер выглядел так: продвинутый цветной монитор (512х460 - вот точно не помню максимума) со встроенными колонками внутри, корпус с 2 дисководами (стандартная поставка - без HDD, но там навесок было достаточно), двумя слотами для картриджей, обязательный встроенный весьма нехилый звуковой процессор (AY-3-8910 - такой же стоял и в "Sinclair ZXSpectrum "), графический процессор (TI9928 VDP). А также - принтер, клавиатура, джойстик и мышь. Нелишним будет упомянуть, что операционная система там была и называлась она CP/M. Тогдашним ДВК-2 и ДВК-3 за ними было просто не угнаться. Конечно! Один графический сопроцессор чего стоил. Интересно было реализовано решение аппаратных спрайтов. 32 виртуальных плоскости, заботу о прозрачности отдельных частей и задачу перемещения, отслеживания перекрытия и столкновения которых брала на себя аппаратура. Для домашнего компьютера и для начального обучения программировать их и делать на их основе свои простецкие игрушки было ну очень интуитивно и просто. Звуковой процессор там настолько приближен к пользователю, что прямо в BASIC'е можно было писать ноты, длительность, тон и пр., а он все это потом играл фоном. Причем нагрузки на сам soft верхнего уровня никакой и не было, это был практически ассемблер. Нынешний SoundBlaster конечно крут, но попрограммируй-ка его на нижнем уровне…

Короче говоря, вся архитектура была настолько приспособлена под игры, что игр было сделано великое множество. Причем на серьезном уровне (KONAMI, например).

Впрочем, рассуждать про этот компьютер можно много и долго, но задача данной статьи несколько иная.

Сейчас эти компьютеры давно ушли, а актуальность их простеньких игрушек осталась. Что же делать? Здесь вам помогут эмуляторы. В принципе, проэмулировать можно все. Только вот с какой это скоростью будет происходить…

Уж скорости нынешних PC, казалось бы, с лихвой хватает, чтобы эмулировать Z80 с его копейками мегагерц. Но все было бы хорошо, если бы только его! Ведь еще надо пересматривать команды звукового процессора и как-то переделывать все команды графического сопроцессора. Причем, еще и на ходу разбираясь с памятью (она в MSX блоками по 16к), биосом, дисковой системой и прочими делами. Кстати, интересный момент: эмуляция позволяет избавиться от некоторых аппаратных недоделочек и неприятностей. Например, в MSX была проблемка как раз со спрайтами - когда происходило перекрытие 5 и 9 слоев, они начинали мигать. Эмулятор конечно, это дело поправил. Как впрочем, и неудобства с картриджами. Их же надо было покупать (!). А тут - просто его образ в файле. Цепляй - не хочу.

Пожалуй, самый лучший на сегодняшнее время эмулятор - это fMSX by Marat Fayzullin. Достаточно быстрый даже на 486DX100. Есть версия для Windows, но у меня прекрасно работает в DOS сессии и версия для DOS'а. Как конкретно с ним обращаться и какие ему нужны навески - читайте в ближайших номерах на сайте http://cooler.irk.ru, там же будут и образы картриджей с играми. Хотя, для нетерпеливых я уже дал ссылку выше - там, кроме самого эмулятора, и игры есть.

Именно эмулятор fMSX отличается тем, что очень корректно отрабатывает звук - а без него игрушки тем, кто играл в них со звуком, даже запускать неинтересно.

Впрочем, не одним MSX жива индустрия игр. Никак нельзя забывать Sony Playstation. Этот-то вообще монстром игровым стал. Цвет и звук никак не уступает писишному. Играем с CD - объемы сами можете представить - есть где развернуться. Правда, вот стоимость... нет не угадали, не компьютера, а именно дисков - она достаточно велика. И кроме как на Sony PS их нигде не поиграешь.

причем вообще достаточно виртуальная знать процессора машина fmsx msx z80 эмулятор работает игрушки звукового
 процессор эмуляция ведь конечно настолько именно

Если не знать про эмулятор, который называется "Bleem!". Он может приемлемо эмулировать Playstation на PC 166MMX с 16 Мб памяти (это, правда, самый минимум). Нелишней будет 3D карточка - Bleem понимает это дело и переваливает весь 3D рендеринг на могучие плечи видеоакселератора. Получается очень неплохо. Работает эмулятор под управлением операционной системы Windows95/98. Эмуляция собственных джойстиков с SPS переносится на клавиатуру или джойстик.

Ну ладно, это все эмуляторы просто компьютеров. Причем, надо отметить, что на самом деле существует уйма всяких эмуляторов, наверное, уже всех мелких компьютеров - Atari, Sinclair, GameBoy и еще таких, что и не упомнишь их все…

Не менее, а может, даже и более интересен эмулятор не компьютера, а операционной системы. Например, Windows95 (и WindowsNT тоже).

причем вообще достаточно виртуальная знать процессора машина fmsx msx z80 эмулятор работает игрушки звукового
 процессор эмуляция ведь конечно настолько именно

Vmware интересен тем, что это не эмулятор в прямом смысле, а виртуальная машина.

Чем они отличаются: эмулятор старается перевести какие-то команды или дествия эмулируемого объекта в присутствующую часть аппаратуры или софта, а виртуальная машина вообще может не знать никаких тонкостей об эмулируемой системе. В принципе, она даже может не знать о системе команд. Виртуальная машина программным образом эмулирует железо (и микропрограммное обеспчение). Именно железо для софта, который надо запустить под виртуальной машиной. Т.е. оценивая и сравнивая эмулятор и виртуальную машину вполне можно сказать, что виртуальная машина - это неизмеримо более крутая вещь. И более правильная и корректная.

Представьте себя в роли создателя эмулятора - вам нужно практически досконально изучить систему команд не только процессора, но и графической системы, звука, узнать как работает софт, как происходит обмен данными и еще кучу мелочей. А потом еще и придумать как это все делать на имеющемся софте и железе. Да еще и не все удастся сэмулировать. Да и дырки кое-где из-за лени останутся. А виртуальная машина просто эмулирует устройство типа HDD и всех делов. Софт, к примеру, хочет записать на винт какой-то файл, естественно, делая в конце-концов, обращение на самом низком уровне к железу - вот тут-то его виртуальная машина и ловит! Берет, где-то создает образ винта и производит обмен данными через себя. Всех делов. Таким же образом со звуком. Просто нужно получать байтики из звукового потока от софтины, которая думает, что она их пихает в звуковую карточку. И посылать их на микшер реальной карточки.

Конечно, с виртуальной машиной все просто, когда мы обманываем софт, в принципе работающий на том же железе, где и виртуальная машина. Но ведь, согласитесь, никто не мешает эмулировать программным образом работу неродного звукового чипа (если он не слишком крут). Ведь например, чистая эмуляция процессора Z80 - это и есть виртуальная машина под названием "процессор z80".

Между прочим, вполне можно провести эксперимент - запустить под виртуальной машиной Windows95, а в нем - fMSX эмулятор. Должно быть красиво.


  Рекомендовать страницу   Обсудить материал Написать редактору  
  Распечатать страницу
 
  Дата публикации: 03.06.2006  

ОБ АЛЬЯНСЕ | НАШИ УСЛУГИ | КАТАЛОГ РЕШЕНИЙ | ИНФОРМАЦИОННЫЙ ЦЕНТР | СТАНЬТЕ СПОНСОРАМИ SILICON TAIGA | ISDEF | КНИГИ И CD | ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ | УПРАВЛЕНИЕ КАЧЕСТВОМ | РОССИЙСКИЕ ТЕХНОЛОГИИ | НАНОТЕХНОЛОГИИ | ЮРИДИЧЕСКАЯ ПОДДЕРЖКА | АНАЛИТИКА | КАРТА САЙТА | КОНТАКТЫ

Дизайн и поддержка: Silicon Taiga   Обратиться по техническим вопросам  
Rambler's Top100 Rambler's Top100