Мазмұны:

Ретро CP/M автономды эмуляторы: 8 қадам
Ретро CP/M автономды эмуляторы: 8 қадам

Бейне: Ретро CP/M автономды эмуляторы: 8 қадам

Бейне: Ретро CP/M автономды эмуляторы: 8 қадам
Бейне: Лучшие внедорожники до 30 тысяч долларов США в 2022 году 2024, Шілде
Anonim
Ретро CP/M автономды эмуляторы
Ретро CP/M автономды эмуляторы

Бұл жоба комбинацияны іске қосу үшін VGA32 ESP v1.4 модулін немесе CP/M 2.2 баламалы жүйемен жұмыс істейтін дербес компьютерді қамтамасыз ету үшін RunCPM және FabGL модулін пайдаланады. 1980 жылдары шағын компьютерлерге арналған операциялық жүйе ретінде танымал болды. Сіз уақытқа оралып, Wordstar, Supercalc, Adventure және Zork сияқты ескі бағдарламалық жасақтаманы қайта қарай аласыз.

Бұл стандартты VGA мониторы мен PS/2 пернетақтасын іске қосуға арналған бағдарламалық қамтамасыз етуді қамтамасыз ететін FabGL жобасының дербес рұқсаты.

Негізгі ОЖ - бұл RunCPM -дің өзгертілген нұсқасы, ол Github -дегі түпнұсқалық жұмыстан алынған және мен оны сериялық консольде емес, экранда қолдануға мүмкіндік беретін FabGL кітапханасын қостым.

Мен екі жобаға да үлкен рахмет айтқым келеді. Еңбектеріңіз жалғаса берсін!

Бағдарламалық қамтамасыз ету аппараттық құралдардың кем дегенде екі нұсқасында сыналған. VGA32 ESP v1.4 бірі (дайын түрде сатылады). Екіншіден, менің ескі нұсқам, мен Wroom ESP32 модулінен және ескі компьютерлердің биттерінен құрдым.

Төмендегі Github сайты осы қондырғылар туралы маңызды ақпаратты, сондай-ақ өзгертілген орнатуға дайын бағдарламалық жасақтаманы қамтиды.

Бұл жоба аппараттық құралдар туралы емес, бағдарламалық қамтамасыз етуді орнату туралы.

Жабдықтар:

VGA32 ESP V1.4 модулі (сыналған). EBay / aliexpress / amazon және т.б.

Arduino IDE компьютерде орнатылған, егер сіз оны оқыған болсаңыз, сізде бұл бар деп ойлаймын.

Arduino IDE үшін ESP32 қолдау бумасын орнатыңыз. https://github.com/espressif/arduino-esp32 1-қадамды қараңыз

FabGL кітапханасы https://www.fabglib.org/ сізге ештеңе жүктеудің қажеті жоқ, arduino IDE мұны біз үшін жасай алады, 2 -қадамды қараңыз.

Өзгертілген RunCPM көшірмесін https://github.com/coopzone-dc/RunCPM сайтынан жүктеп алыңыз

1 -қадам: Arduino үшін ESP32 қолдауын орнатыңыз (міндетті емес)

Arduino үшін ESP32 қолдауын орнатыңыз (міндетті емес)
Arduino үшін ESP32 қолдауын орнатыңыз (міндетті емес)

Сіз мұны әлдеқашан жасаған боларсыз, егер сізде бұл қадамды өткізіп жіберуге болады.

github.com/espressif/arduino-esp32 сайтына кіріңіз және тақта менеджерінің көмегімен орнату нұсқауларын орындаңыз, мысалы:

Arduino IDE Boards Manager көмегімен орнату нұсқаулары ======================================== ================

Тұрақты шығарылым сілтемесі:

Arduino IDE ағымдағы ағынын 1.8 немесе одан жоғары деңгейге орнатыңыз. Қазіргі нұсқасы Arduino веб -сайтында.

Arduino бағдарламасын іске қосыңыз және Параметрлер терезесін ашыңыз.

Қосымша тақта менеджерінің URL мекенжайлары өрісіне жоғарыдағы босату сілтемелерінің бірін енгізіңіз. Бірнеше URL мекенжайларын үтірмен бөліп қосуға болады.

Тақталар менеджерін Құралдар> Тақта мәзірінен ашыңыз және esp32 платформасын орнатыңыз (және орнатқаннан кейін Құралдар> Тақта мәзірінен ESP32 тақтасын таңдауды ұмытпаңыз).

2 -қадам: FabGL кітапханасын IDE -ге қосу

IDE -ге FabGL кітапханасын қосу
IDE -ге FabGL кітапханасын қосу
IDE -ге FabGL кітапханасын қосу
IDE -ге FabGL кітапханасын қосу

Arduino IDE -де бос эскизді қолдана отырып, тақталар мәзірінен ESP тақтасын таңдағаныңызға көз жеткізіңіз. (Жазу кезінде VGA32 ESP тізімделмеген, мен Dev Device жалпы тақтасын таңдаймын).

Эскиз мәзірінен Кітапхананы қосу, содан кейін Кітапхана менеджері таңдаңыз.

Іздеу диалогында FabGL теріңіз және оның келесі тізімде пайда болуын күтіңіз, енді Орнату түймесін басыңыз.

аяқталды

3-қадам: RunCPM қолданатын қосымша SD-карталық кітапхананы қосу

RunCPM қолданатын қосымша SD-карталық кітапхананы қосу
RunCPM қолданатын қосымша SD-карталық кітапхананы қосу

Бұл алдыңғы қадаммен бірдей, бірақ FabGL орнына SDFat іздеу

Эскиз мәзірінен Кітапхананы қосу, содан кейін Кітапхана менеджері таңдаңыз. Іздеу диалогында SDFat теріңіз және оның келесі тізімде пайда болуын күтіңіз, бәлкім, тізімді төмен айналдыруға тура келеді.

Сіз екі нұсқаны таңдай аласыз:

1, SdFat Билл Грейман

2, SdFat - Adafruit Fork

Мен екеуін де сынап көрдім, екеуі де жақсы жұмыс істейтін сияқты. Бірақ RunCPM жобасы «Adafruit Fork» екінші нұсқасын ұсынды, бірақ ол соңғы ескертулерде былай дейді:

Енді барлық тақталар осы жерден SdFat кітапханасын пайдаланады:

Енді мен бұл жобаның бірінші нұсқасын таңдаймын.

аяқталды

4 -қадам: Өзгертілген RunCPM жобасын жүктеңіз

Өзгертілген RunCPM жобасын жүктеңіз
Өзгертілген RunCPM жобасын жүктеңіз
Өзгертілген RunCPM жобасын жүктеңіз
Өзгертілген RunCPM жобасын жүктеңіз

Github сайтына кіріңіз, CODE түймесін басып, ZIP файлы ретінде жүктеңіз

Бұл файлды бір жерде сақтаңыз (әдетте Arduino деп аталатын каталогта.

Файлды сол орынға ашыңыз, ол RunCPM-master деп аталатын қалтаны шығарады

аяқталды

5 -қадам: RunCPM бағдарламасын ашып, қарап шығыңыз және құрастырыңыз

RunCPM бағдарламасын ашып, қарап шығыңыз және құрастырыңыз
RunCPM бағдарламасын ашып, қарап шығыңыз және құрастырыңыз

Енді сіз Arduino IDE файлын, Ашу мәзірін пайдалана аласыз. Жоғарыда ашылған қалтаға өтіңіз.

Бұл қалтаның ішінде RunCPM деп аталатын басқасы бар. Қалтаны ашыңыз.

Бұл қалта ішінде RunCPM.ino деп аталатын.ino файлы бар. Бұл жобаның негізгі файлы - оны ашыңыз.

Енді сіз жобаны көре аласыз, түсініктемелерді оқи аласыз және т. Ол V1.4 тақтасы үшін алдын ала конфигурацияланған болуы керек.

Сіз VGA32 ESP қосылғанын ескере отырып, компиляция мен жүктеуді басуға болады, ол эмуляторды сіздің құрылғыңызға жүктейді.

МАҢЫЗДЫ: VGA32-де SD-картаға қатысты мәселе туындауы мүмкін, сондықтан оны білу үшін қоспаңыз. Қосымша ақпарат алу үшін төмендегі соңғы қадамды қараңыз.

6-қадам: RunCPM жүктеуге дайын SD картасын жасаңыз

Бұл, мүмкін, қадамдардың ең қулықтары. Мен мұны қалай жасау керектігі туралы Github сайтының README.md файлын оқуды ұсынамын. Міне, менің не істеу керек екенімнің тізімі:

Менің ойымша, сізде бос SD картасы бар немесе сізде бар файлдарды сақтағыңыз келмейді, бұл оны жояды.

1, SD-картаны FAT-32 ретінде форматтаңыз

2, A, B, C D және т. Олардың астанасы екенін ескеріңіз.

3, Сіз әр қалтада 0 (нөлге тең) және қалауыңыз бойынша 1, 2, 3 т.б (15 дейін) атты басқа қалта жасаңыз, содан кейін қалталар CP/M эмуляциясындағы Пайдаланушылар аймағы болып табылады. Бастау үшін сізге тек 0 қалтасы қажет.

4, arduino каталогындағы жүктелген жоба қалтасынан CCP деп аталатын қалтаны табыңыз. Бұл CP/M командалық консоль проректорының әр түрлі нұсқаларын қамтиды. CCP-DR.60K деп аталатын картаны SD картасының түбіріне көшіріңіз.

5, Енді DISK деп аталатын жобалық каталогтан қалтаны табыңыз, оның құрамында A. ZIP файлы бар, оны SD картасындағы A/ 0/ деп аталатын каталогқа ашу керек. (Қосымша ақпарат алу үшін 1streadme файлын қараңыз). Өкінішке орай, қалта тізімінде «0» жоқ, сондықтан алдымен уақытша қалтаны ашу керек, содан кейін A қалтасының мазмұнын A/ 0/ SD картасына көшіру керек.

6, Жоғарыда көрсетілген әрекеттерді орындағаннан кейін сізде келесідей құрылымы бар SD картасы болады:

F: CCP-DR.60K

/А/0

/1STREAD. ME

/ASM. COM

/…. т.б.

/B/0

/С/0

т.б.

Егер сіз SD-картадан жүктеу кезінде CCP жүктеу мүмкін емес және т.б. туралы қате алсаңыз, сізде бәрі дұрыс қарқынмен екенін тексеріңіз!

Бұл кезеңді жеңілдету үшін мен жоғарыда дайын нұсқаны жүктедім, оған қосымша cp/m бағдарламалық жасақтамасы бар, оны мына жерден жүктеп алыңыз https://github.com/coopzone-dc/RunCPM/blob /master/… және оны пішімделген SD-картаның түбіріне ашыңыз. Бұл сізге бастау керек, содан кейін оны өзіңіз жасай аласыз.

Мен сізге Github Repo -да орнату нұсқаулығын оқуды ұсынамын, онда сізге қажет қалталардың сипаттамасы бар.

7 -қадам: VGA мониторы мен пернетақтаны қосыңыз

VGA мониторы мен пернетақтаны қосыңыз
VGA мониторы мен пернетақтаны қосыңыз

VGA32 ESP картасының қуатын ажыратыңыз.

VGA мониторын қосыңыз

PS/2 пернетақтасын қосыңыз Қуатты VGA32 ESP картасына қайта қосыңыз, сіз пернетақта шамдарының жыпылықтағанын көресіз және шамамен 10 секундтан кейін экранда CP/M шақыруы бар сурет пайда болады!

Маңызды: VGA32-де SD-картаны пайдалану кезінде және жұмсақ қалпына келтіруде ақау бар, сондықтан жоғарыдағы бірінші қадам ретінде ҚУАТТЫ ӨШІРУ маңызды. Қосымша ақпарат алу үшін соңғы қадамды қараңыз.

Кетші сен…

8-қадам: VGA32 модулінде SD-картаға қатысты мәселе

VGA32 модуліндегі SD-картаға қатысты мәселе
VGA32 модуліндегі SD-картаға қатысты мәселе
VGA32 модуліндегі SD-картаға қатысты ақаулық
VGA32 модуліндегі SD-картаға қатысты ақаулық

Жоғарыдағы суретте менің екінші ESP32 картасы (үйде жасалған) көрсетілген, бұл жақсы жұмыс істейді және төменде мәселе жоқ. Мен білемін, бұл бағдарламалық жасақтама мәселесі емес, төмендегі VGA32 нұсқасы туралы оқыңыз.

Менің VG32 ESP модулімде (v1.4) SD-карта GPIO12-ді қолданады, оны Espressif Systems ұсынбайды, себебі бұл түйісу ішкі жадтың жұмыс кернеуін анықтау үшін қосылады. Мен бұл VGA32 картасын жасайтын жігітке біреу айтқанын қалаймын! Бұл сіздікінен өзгеше болуы мүмкін, сондықтан сізде бұл мәселе болмайды деп үміттенемін.

Мәселелер мыналар:

1, карта қосылған кезде эскизді жүктеу мүмкін емес.

2, Қалпына келтіру түймесін басқаннан кейін, SD-картаны алғанға дейін құлыпталады. Содан кейін ол SD-картасы жоқ деп қате экранына шығады! Сіз картаны салып, қайта орната аласыз, ол екінші рет жұмыс істейді.

Бұл мәселені шешуге болады (бірақ қауіп бар) https://github.com/coopzone-dc/RunCPM/blob/master/… сайтындағы README.md қараңыз.

немесе тақтаны іске қосу үшін сіз әрқашан қатты қуатты өшіре/қосуға болады. Кейбір себептермен бұл жақсы жұмыс істейтін сияқты. Егер сізге RunCPM бағдарламалық жасақтамасын қайта жүктеу қажет болса, алдымен SD-картаны алып тастау керек.

Бұл мәселені түсіндіретін README. MD үзіндісі. Мен түзетуді қолдандым және ол жақсы жұмыс істейді, бірақ табиғатына байланысты тәуекел сіздікі, оқыңыз …

Алайда, VGA32 ESP параметрлері SD картасының GPIO параметрлеріне қайшы келетін сияқты.

Бұл жұмыс істейді, бірақ жүктеу үшін сіз SD картасын алып тастауыңыз керек, ал жұмсақ қалпына келтіруден кейін SD картасын алып тастауыңыз керек, содан кейін оны қайта орнатыңыз. Ол қуатты қосудан немесе қатты қалпына келтіруден жақсы жұмыс істейді. Егер сіз бұл мәселені шешуге көмектесе алсаңыз, маған хабарлаңыз. UPDATE 11Oct2020: VGA32 ESP v1.4 GPIO12 (MTDI, қосу/қалпына келтіру кезінде оқу) қолданады. Бұл түйін ЖЖҚ кернеуін анықтайды, Ішкі LDO кернеуі (VDD_SDIO). SD картасы болған кезде, бұл түйреуішті жоғары тартады, ал ESP32 жедел жады кернеуі 1,8 В болуы керек деп ойлайды, ал SD картасыз бұл істікшеде ЖЖҚ кернеуін 3,3 В орнату үшін ішкі тартқыш бар. Бұл FABGL жобасында келтірілген мысалдардан алынған ескертулерде келтірілген: GPIO 2 және 12 - GPIO2 туралы ескертулер: бағдарламалауда қиындық тудыруы мүмкін. Сериялық жүктеушіге кіру үшін GPIO2 қосылмайтын/өзгермелі күйде немесе төмен басқарылуы керек. Қалыпты жүктеу режимінде (GPIO0 жоғары) GPIO2 еленбейді. - GPIO12: аулақ болу керек. Ол жарқыл кернеуін таңдайды. Оны пайдалану үшін GPIO12 анықтау параметрін өшіріңіз: python espefuse.py --port /dev/cu. SLAB_USBtoUART set_flash_voltage 3.3V ЕСКЕРТУ !! 3.3В кернеуі бар ESP32 үшін жақсы (ESP-WROOM-32). Егер флэш 3.3V ЕСКЕРТУ1 болмаса: бұл «/dev/cu. SLAB_USBtoUART» сериялы портына ауыстырыңыз NOTE2: espefuse.py https://github.com/espressif/esptool сайтынан жүктеуге болады

Бұл GPIO12 -ден аулақ болу керек екенін айтады, бұл VGA32 ESP картасын жасаушыға ешкім айтқан жоқ!

ТҮЗЕТІЛДІ: Мен GPIO12 -ді қолданудан бас тарту үшін жарқыл кернеуін орнату мүмкіндігін қолданып көрдім және менің vga32 ESP -те растай аламын, ол жұмыс істейді! SD картасында проблемалар жойылды. Егер сіз оны сынап көруді шешсеңіз, BRICK құру туралы тексеруге, қайталап тексеруге және мұқият ойлануға шақырамын. Мен оны акция ретінде ұсынбаймын, бірақ мен үшін бұл жұмыс істеді.

Ұсынылған: