Материал из Chipwiki
Перейти к: навигация, поиск
WonderSwan/Программирование — различия между версиями
(Описание)
Строка 599: Строка 599:
 
| 08Fh  || RW  || <nowiki>********</nowiki>
 
| 08Fh  || RW  || <nowiki>********</nowiki>
 
| REG_SND_WAVE_BASE
 
| REG_SND_WAVE_BASE
| Указатель на волновую таблица. Значение регистра должно быть по адресу >> 6.
+
| Указатель на волновую таблицу. Значение регистра должно быть по адресу >> 6.
 
|-
 
|-
 
| 090h  || RW  || <nowiki>***0****</nowiki>
 
| 090h  || RW  || <nowiki>***0****</nowiki>
Строка 1143: Строка 1143:
 
|}
 
|}
 
</spoiler>
 
</spoiler>
 
 
==Ассемблеры==
 
==Ассемблеры==
* nasm
+
* nasm (16-битный)
  
 
==Инструменты==
 
==Инструменты==

Версия 23:02, 15 апреля 2019

Описание

gray

Процессор

Процессорное ядро - NEC V30 MZ на частоте 3.072 Мгц.

NEC V30 MZ - убыстрённая версия V30 с внутренним конвеером (16 байтовый буфер предварительной загрузки). V30MZ примерно в 4 раза быстрее V30. V30 в свою очередь является клоном Intel 8086, но работает на 30% быстрее его, может эмулировать Intel 8080 и содержит собственные инструкции.

В V30 MZ выборка команд, их декодирование и выполнение инструкций выполняется параллельно. По этой причине сложно определить, какая часть программы в настоящее время выполняется путём контроля ввода адресной шины для выборки кода команды.

Если дана команда условного перехода, даже если не выполняются ответвления, адрес назначения перехода выбирается предварительно (1 раз), и поэтому дальнейший мониторинг программы затруднён.

V30 MZ имеет 8 очередей предварительной выборки (16 байт)

Между V30MZ и V30 есть несколько отличий, например, неподдерживаемые опкоды, другая обработка флагов после mul/div.

Память

Клик

Порты ввода/вывода

Клик

Ассемблеры

  • nasm (16-битный)

Инструменты

  • bmp2swan - конвертер 16-цветного BMP-файла в тайлы, палитру и карту. Поддерживается отражение по вертикали и горизонтали.
  • SwanLayer Merger - инструмент для объединения данных, нужен в случае, когда на изображение требуется больше 16 цветов: нужно разделить изображения на несколько 16-цветных BMP, сконвертировать при помощи bmp2swan, затем в SwanLayer Merger объединить данные и создать общие карту, набор плиток и палитры.

Эмуляторы

Хоумбрю