Dingoo A320

Материал из Emuverse
Этот документ создан для Emuverse и распространяется на условиях лицензии CC-BY-SA-3.0.

Dingoo A320 — портативный медиа-плеер с возможностью эмуляции игровых консолей. Выпускается компанией Shenzhen Dingoo Digital Co., Ltd. с марта 2009 года.

Технические характеристики

  • Процессор: Ingenic JZ4740 на тактовой частоте 300 МГц — System-on-Chip, архитектура MIPS
  • Память:
    • ОЗУ: 32 Мб SDRAM (2 чипа Hynix HY57V281620 по 16 МБ каждый)
    • Встроенная флеш-память: 4 Гб (чип Hynix H27UBG8U5MTR)
  • Дисплей: 2,8 дюйма LCD с разрешением 320 × 240 при 16 млн цветов (FPC-FTP280P04N-00) [1]
  • Источник питания: аккумулятор LiIon 3,7В 1700 mAH; время работы без подзарядки — около 7 часов
  • Размеры: 125 × 55,5 × 14 мм
  • Слот MiniSD/SDHC: поддерживаются карты miniSD (официально — до 8 ГБ, реально использовались и 16 ГБ карты)
  • FM-тюнер: цифровой, в диапазоне 76—108 МГц, с функцией автопоиска, хранение до 40 настроенных частот
  • Выходы:
    • Гнездо наушников
    • Видеовыход на телевизор (RCA-кабель прилагается в комплекте) — видео + аудио, PAL/NTSC
    • USB 2.0 с коннектором формата mini-USB (USB-кабель прилагается), подзарядка от USB
  • Устройства управления:
    • На лицевой стороне слева: D-pad и кнопка Select; справа: кнопки X, Y, A, B и кнопка Start
    • На верхней стороне: кнопки-плечи L и R
    • На левой стороне: кнопка сброса и микрофон
    • На правой стороне: ползунок включения/блокирования, выход на наушники
    • На нижней стороне: встроенные микро-динамики, USB-порт, mini-SD слот, выход на ТВ

Firmware

Встроенное программное обеспечение (firmware) допускает обновление, и на официальном сайте выкладываются образы для обновления прошивки. Кроме «родных» прошивок доступен ряд модифицированных вариантов от сторонних разработчиков.[2]

Версии родной прошивки:

  • V1.01
  • V1.02
  • V1.03
  • V1.1 — май 2009
  • V1.20 — ноябрь 2009

Программное обеспечение

Имеется бесплатно доступный SDK, позволяющий разрабатывать для устройства собственные приложения.[3] SDK включает в себя библиотеку cygwin, кросс-инструменты (mipseltools), библиотеку s2d (содержащую упоминания копирайта компании Dingoo Games [4]) и техническую документацию к ней, а также эмулятор, для выполнения программ целевого устройства на ПК. Этот эмулятор, по всей видимости, не является точным эмулятором устройства, а лишь создаёт для пользовательской программы необходимое окружение.

Кроме «родного» SDK (не развивается с момента выпуска) существует «любительский» SDK для «родной» операционки, активно развивающийся.

µC/OS-II

«Родная» операционная система, используемая на устройстве (в официальных прошивках) — это µC/OS-II — ОС реального времени c поддержкой вытесняющей многозадачности.

Dingux

Энтузиастами выполнена работа по приспособлению Linux для A320, проект носит название Dingux. Под Dingux активно портируются программы с других систем.

Эмуляция

На данный момень (июнь 2010) не существует полноценных эмуляторов устройства.

Технические детали

Разработчиком Firmware является компания ChinaChip, см. ChinaChip — информация об основных форматах, используемых на Dingoo.

Карта памяти приведена в документе jz4740_03_emc_spec.pdf, стр. 3 "1.3 Physical Address Space Map".

На адреса 0x1FC00000-0x1FC01000 мапится On-chip Boot ROM (4KB).

Процесс начальной загрузки:

  • BOOT_SEL[1:0] defines whether system boot from Nor or Nand flash and the page size when boot from Nand flash. BOOT_SEL[1:0] = 1 0 — Boot from 512 Byte page NAND flash; BOOT_SEL[1:0] = 1 1 — Boot from 2k Byte page NAND flash.
  • When system is configured to boot from NAND flash, after reset, the program in Boot ROM is executed and the program will copy the first 4K bytes of NAND flash to internal memory for further initialization.
  • ...
  • В память загружается ccpmp.bin по адресу 0x80004000
  • Управление передаётся на адрес 0x80004008
  • ...

За нажатия/отжатия кнопок отвечают биты в 32-разрядном слове состояния, доступном через функции kbd_get_key() и kbd_get_status():

Button:	Up	Down	Left	Right	A	B	X	Y	L	R	Select	Start	Power
Bit:	20	27	28	18	31	21	16	6	8	29	10	11	7
  • GPIO — использование пинов ввода/вывода Jz4740 в Dingoo A320
  • Coding for the Dingoo A-320(англ.) — статья об опыте программирования под Dingoo

Ссылки