Tiny386 і пропонує емуляцію основного процесора та його додаткового блоку обчислень x87. Проте сам лише процесор не створює ПК, тому Чунхуей портував низку базових периферійних пристроїв із TinyEMU, QEMU та Seabios: BIOS та їх пристрої введення/виведення, відеокарти VGA, контролер диска IDE та навіть звукову карту Sound Blaster 16. Оскільки плата ESP не має портів для цих периферійних пристроїв, вхідні дані з клавіатури та миші передаються на емулятор через Wi-Fi, пише Tom’s Hardware.
Плату мікроконтролера JC3248W535 на базі ESP32-S3, яку використав айтівець, можна придбати за $25–30 на AliExpress, і ця ціна вже включає пристойний 3,5-дюймовий дисплей. SoC всередині має двоядерний процесор, DSP, Wi-Fi та Bluetooth, а також низку роз’ємів вводу/виводу для мікроконтролерів різних форм і розмірів. Але що ще важливіше, ESP32-S3 — це простіший пристрій, який має набагато меншу потужність, ніж, скажімо, Raspberry Pi.
Чунхуей каже, що його емулятор є «простим і тупим» і йому бракує деяких функцій, але він «повинен запускати більшість 16/32-бітних програм». Оскільки Linux давно припинив підтримку процесора i386, Чунхуей додав до свого емулятора деякі інструкції від процесорів 486 та Pentium. Це дозволило віртуальній машині завантажувати сучасний Linux (навіть без BIOS) та Windows NT.
Ядро емулятора складається приблизно з 6000 рядків коду та написано з нуля на C, точніше, Стандарт C99. Це має спростити його портування, на чому автор наголошує в репозиторії GitHub.

Добавить комментарий