Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

Releases: xrip/RP8086

HDD images supported

03 Dec 06:59

Choose a tag to compare

💾 Поддержка жестких дисков (XTIDE контроллер)

Реализована полная эмуляция XTIDE/ATA контроллера на портах 0x300-0x308:

  • Режимы адресации: LBA28 и CHS (16 heads, 63 sectors per track)
  • Поддерживаемые команды: IDENTIFY DEVICE (0xEC), READ SECTOR(S) (0x20), WRITE SECTOR(S) (0x30), READ VERIFY (0x40/0x41)
  • Работа с образами: загрузка HDD образов (hdd.img) с SD карты через FAT файловую систему
  • Емкость: поддержка дисков до 8GB (ограничено FatFS)
  • Производительность: эффективный 512-байтный буфер секторов с автоматическим инкрементом LBA для multi-sector операций

Теперь система может загружаться не только с дискет, но и с жестких дисков, что открывает возможность установки полноценных DOS систем с расширенным набором утилит.

🎮 Улучшенная совместимость с IBM PCjr/Tandy 1000

  • Расширенная видеопамять: увеличена до 32KB (совместимость с Tandy/PCjr графическими режимами)
  • Поддержка двух флоппи-дисководов: возможность работы с двумя FDD одновременно
  • Улучшенная эмуляция портов: корректная обработка специфичных для PCjr регистров

📺 Оптимизация и улучшение видеодрайвера

  • Исправлена CGA палитра: теперь используется точная палитра IBM 5153 для аутентичных цветов
  • Border/Overscan цвета: полная поддержка управления цветом границ экрана через CRTC регистры
  • Interlace mode: корректная работа режима чересстрочной развертки с учетом параметров MC6845
  • Text mode pages: исправлена работа с текстовыми страницами видеопамяти
  • Упрощение кода: рефакторинг драйвера VGA для повышения производительности и читаемости (сокращено ~160 строк)

🖥️ Экспериментальная поддержка композитного видеовыхода

  • NTSC Composite TV out: добавлен драйвер для вывода композитного NTSC сигнала с композитными цветами
  • TGA режимы: поддержка графических режимов Tandy Graphics Adapter
  • CSYNC опция: опциональный Composite Sync вместо раздельных HSYNC+VSYNC (экспериментально)
  • Sync-on-Green: хакерский Sync-on-Green для совместимости с некоторыми мониторами

🔧 Улучшения и исправления

Клавиатура и ввод

  • USB клавиатура: полностью рабочая интеграция USB HID клавиатуры через TinyUSB stack
  • USB мышь: эмуляция Microsoft Serial Mouse через COM1 для работы с DOS драйверами (CTMOUSE, MOUSE.COM)
  • Автоопределение устройств: Plug & Play детекция USB HID устройств при подключении

Дисковая подсистема

  • SD карта: стабильное монтирование FAT12/FAT16/FAT32 файловых систем
  • Поддержка образов: загрузка как floppy (.img), так и HDD образов с SD карты
  • Исправления FDC: улучшена стабильность контроллера дискет Intel 8272A
  • DMA оптимизация: исправлена работа Intel 8237 DMA контроллера для корректной передачи данных

Отладка и разработка

  • Semihosting: опциональная поддержка ARM Semihosting для отладки через OpenOCD/GDB
  • Чистка кода: масштабный рефакторинг main.c, выделение debug функций в отдельный модуль
  • Улучшенная документация: детальное описание архитектуры, GPIO распиновки и работы всех компонентов в README.md и CLAUDE.md

📊 Технические улучшения

  • Оптимизация памяти: улучшена организация кода для более эффективного использования 512KB RAM
  • Производительность: стабильная работа на частоте 4.75-6 MHz без деградации
  • Совместимость: успешная загрузка DR-DOS 7 и других DOS систем как с дискет, так и с HDD
  • Код качество: рефакторинг критических модулов для повышения читаемости и поддерживаемости

🐛 Известные ограничения

  • Композитный NTSC выход находится в экспериментальной стадии
  • CSYNC режим может работать нестабильно на некоторых мониторах
  • Максимальный размер HDD образа ограничен 8GB (FatFS limitation)

ALPHA-1

19 Nov 12:24

Choose a tag to compare

All diagnostic roms test passes. IBM PC Jr. graphic modes added.

ALPHA-0

12 Nov 16:23

Choose a tag to compare

  • USB HID: Полная поддержка USB клавиатур через TinyUSB Host
  • Intel 8253 PIT: Исправлена логика чтения/записи счетчиков
  • Частота i8086: Увеличена до 5.75 МГц (RP2350) со стабильной работой
  • PIO оптимизация: Убрана лишняя задержка sideset
  • BIOS: Обновлена версия GLaBIOS 4.1
  • Дискета: Обновлен загрузочный образ
  • CMake: Интеграция TinyUSB Hos

Full Changelog: WIP-0...ALPHA-0

Рабочий вариант, почищенный с минимальным кодом

27 Oct 10:27

Choose a tag to compare

WIP-0

Перемещены файлы исходного кода в каталог `src` для улучшения структу…