QL mIce / Starmouse — это интерфейс мыши для компьютера Sinclair QL, совместимый с mIce и Starmouse. Проект включает клон оригинальной аппаратной платы (для ремонта) и современную эмуляцию на базе Raspberry Pi Pico.
Лицензия: CERN Open Hardware Licence Version 2 — Strongly Reciprocal (https://ohwr.org/cern_ohl_s_v2.txt)
Введение
ICE (расшифровка не указана) — это ранняя графическая среда для Sinclair QL, распространявшаяся в формате ROM-картриджа. Версия 1 использовала клавиши, а версия 2 добавила поддержку мыши для управления средой.Данный проект клонирует аппаратную плату с сокетом для ROM-чипа ICE и схемой управления мышью. Плата спроектирована 1:1 в соответствие с фотографиями оригинальной платы, поэтому схема и плата могут быть полезны для ремонта оригинального картриджа.
Оригинальная аппаратная мышь (Bus Mouse)
Оригинал использует bus-mouse — ранний тип «неинтеллектуальной» мыши, где сигналы энкодеров по осям X и Y передаются непосредственно на хост-компьютер. Такие мыши также использовались в BBC, Spectrum, Commodore Amiga, Atari ST и ранних PC XT. Сегодня почти невозможно найти такую мышь.Современная эмуляция (Raspberry Pi Pico)
В проект добавлена вторая плата на базе микроконтроллера Raspberry Pi Pico (рекомендуется Waveshare RP2040 Zero), которая эмулирует bus-mouse с помощью стандартной USB-мыши. Эта плата также может использоваться на других компьютерах с соответствующей проводкой.Дополнительная совместимость: Starmouse
Испанская компания разработала другой интерфейс мыши для QL — Starmouse. Этот интерфейс эмулирует нажатия клавиш через второй порт джойстика (который также используется для клавиш F1–F5) и получает питание от порта картриджа.Вторая плата (на Pico) может эмулировать и этот режим при подключении соответствующего кабеля к порту джойстика.
Переключатель на плате позволяет выбирать (даже на лету), какую мышь эмулировать.
Технические ограничения и недостатки
| Ограничение | Описание |
|---|---|
| Драйверы | Для данного типа мышей нет драйверов в современных многозадачных ОС. Программы сами должны постоянно опрашивать устройство для отслеживания движения |
| ICE toolkit | Для среды ICE производитель предоставил библиотеку (toolkit) для упрощения интеграции, но, насколько известно, нет дополнительного ПО, использующего мышь |
| Starmouse | Существует только одна программа, использующая этот интерфейс. Нет сопутствующего toolkit'а |
| Указатель среды | Нет драйвера указателя ни для одной из этих мышей |
Полезные ссылки
- ICE на QL Wiki
- Starmouse на QL Wiki
- Статья о Starmouse (SinclairQL.speccy.org)
- Статья о Escarabajo (SinclairQL.speccy.org)
- Waveshare RP2040 Zero
Файлы для загрузки
| Название файла / Папка | Описание | GitHub | Yandex.Диск |
|---|---|---|---|
| case (папка) | Корпус (PDF с наклейкой и 3D-модель для печати) | Ссылка на GitHub | Ссылка на Яндекс.Диск |
| gerber_to_order (папка) | Gerber-файлы для заказа платы (автоматически сгенерированы, не проверены) | Ссылка на GitHub | Ссылка на Яндекс.Диск |
| pizero_mouse_usb (папка) | Исходный код и бинарный файл (.UF2) прошивки для Raspberry Pi Pico | Ссылка на GitHub | Ссылка на Яндекс.Диск |
| ibom.html | Интерактивный BOM (Interactive Bill of Materials) | Ссылка на GitHub | Ссылка на Яндекс.Диск |
| QL_mIce_Starmouse.kicad_pcb | Файл печатной платы KiCad | Ссылка на GitHub | Ссылка на Яндекс.Диск |
| QL_mIce_Starmouse.kicad_sch | Принципиальная схема KiCad | Ссылка на GitHub | Ссылка на Яндекс.Диск |
| QL_mIce_Starmouse.pdf | Схема в формате PDF | Ссылка на GitHub | Ссылка на Яндекс.Диск |
| QL_mIce_Starmouse.step | 3D модель платы | Ссылка на GitHub | Ссылка на Яндекс.Диск |
| QL_mIce_Starmouse__Assembly.pdf | Сборочный чертёж (Assembly drawing) в PDF | Ссылка на GitHub | Ссылка на Яндекс.Диск |
| Скачать все фото | Все фото находятся в одном архиве | Ссылка на Яндекс.Диск | |
| Скачать все файлы | Все файлы находятся в одном архиве | Ссылка на GitHub | Ссылка на Яндекс.Диск |
Полезные ссылки проекта:
- ICE на QL Wiki — https://qlwiki.qlforum.co.uk/doku.php?id=qlwiki:ice
- Starmouse на QL Wiki — https://qlwiki.qlforum.co.uk/doku.php?id=qlwiki:starmouse
- Статья о Starmouse (SinclairQL.speccy.org) — https://sinclairql.speccy.org/articulos/historia/starmouse.htm
- Статья о Escarabajo (SinclairQL.speccy.org) — https://sinclairql.speccy.org/articulos/hardware/escarabajo.htm
- Waveshare RP2040 Zero — https://www.waveshare.com/rp2040-zero.htm
- Лицензия CERN OHL v2 (Strongly Reciprocal) — https://ohwr.org/cern_ohl_s_v2.txt
- Репозиторий проекта — GitHub