Агуулгын хүснэгт:

Retro CP/M Stand Alone Emulator: 8 алхам
Retro CP/M Stand Alone Emulator: 8 алхам

Видео: Retro CP/M Stand Alone Emulator: 8 алхам

Видео: Retro CP/M Stand Alone Emulator: 8 алхам
Видео: Für Machtbegabte und Fans: Der Star Wars Jedi Deluxe Bademantel 2024, Арваннэгдүгээр
Anonim
Retro CP/M Stand Alone Emulator
Retro CP/M Stand Alone Emulator

Энэхүү төсөл нь VGA32 ESP v1.4 модулийг хослуулан ажиллуулах эсвэл RunCPM ба FabGL -ийг ашиглан CP/M 2.2 -тэй тэнцэх системийг ажиллуулдаг бие даасан компьютерээр хангадаг. 1980 -аад оны үед жижиг компьютерт зориулсан үйлдлийн систем гэдгээрээ алдартай. Та цаг хугацааг буцааж, Wordstar, Supercalc, Adventure, Zork зэрэг хуучин програм хангамжийг дахин үзэх боломжтой.

Энэ нь стандарт VGA дэлгэц, PS/2 гар ажиллуулах програм хангамжийг хангаж өгсөн FabGL төслийн бие даасан зөвшөөрөл юм.

Үндсэн OS нь 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 -г ажиллуулаад Preferences цонхыг нээнэ үү.

Дээрх хувилбарын холбоосуудын нэгийг Нэмэлт зөвлөлийн менежерийн URL талбарт оруулна уу. Та олон URL нэмж, тэдгээрийг таслалаар тусгаарлаж болно.

Tools> Board цэснээс Boards Manager -ийг нээгээд esp32 платформыг суулгаарай (суулгасны дараа Tools> Board цэснээс ESP32 самбараа сонгохоо бүү мартаарай).

Алхам 2: FabGL номын санг IDE дээр нэмэх

IDE дээр FabGL номын санг нэмж байна
IDE дээр FabGL номын санг нэмж байна
IDE дээр FabGL номын санг нэмж байна
IDE дээр FabGL номын санг нэмж байна

Arduino IDE дээр хоосон ноорог ашиглан ESP самбарыг Tools цэс болох самбараас сонгосон эсэхээ шалгаарай. (VGA32 ESP -ийг бичиж байх үед би жагсаалтанд ороогүй байсан, би Dev Dev ерөнхий самбарыг сонгосон).

Sketch цэснээс Номын сан оруулах, дараа нь Номын сангийн менежерийг сонгоно уу.

Хайлтын харилцах цонхонд FabGL гэж бичээд доорх жагсаалтад гарч ирэхийг хүлээгээд суулгах товчийг дарна уу.

дууссан

Алхам 3: RunCPM ашигладаг SD картны нэмэлт номын сан нэмэх

RunCPM ашигладаг SD картны нэмэлт номын сан нэмж байна
RunCPM ашигладаг SD картны нэмэлт номын сан нэмж байна

Энэ нь өмнөх алхамтай бараг ижил боловч SDFat -ийг FabGL -ийн оронд хайх болно

Sketch цэснээс Номын сан оруулах, дараа нь Номын сангийн менежерийг сонгоно уу. Хайлтын харилцах цонхонд 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 File, Open цэсийг ашиглаж болно. Дээр дурдсан фолдер руу очно уу.

Энэ хавтас дотор RunCPM гэж нэрлэгддэг өөр нэг хавтас байдаг. Фолдерыг нээнэ үү.

Тэр хавтас дотор RunCPM.ino нэртэй.ino файл байна. Энэ бол төслийн гол файл юм - үүнийг нээнэ үү.

Та одоо VGA32 -ESP -ийн хувилбартай таарч тохирох шаардлагатай бол төслийг үзэх, сэтгэгдлийг унших гэх мэтийг өөрчлөх боломжтой. Үүнийг самбарын V1.4-т зориулж урьдчилан тохируулсан байх ёстой.

Та одоо VGA32 ESP -тэй холбогдсон гэж үзвэл эмуляторыг таны төхөөрөмж рүү оруулах болно гэж үзээд хөрвүүлэх, байршуулах дээр дарна уу.

ЧУХАЛ: VGA32 нь SD карттай холбоотой асуудал үүсгэж болзошгүй тул үүнийг залгах хэрэггүй. Дэлгэрэнгүй мэдээллийг доорх сүүлийн алхамыг үзнэ үү.

Алхам 6: RunCPM-ийг ачаалахад бэлэн SD карт үүсгэнэ үү

Энэ бол магадгүй алхамуудын хамгийн заль мэх юм. Үүнийг хэрхэн хийх талаар Github сайтын README.md -ийг уншихыг танд зөвлөж байна. Миний хийх ёстой зүйлсийн жагсаалт энд байна:

Танд хоосон SD карт байгаа эсвэл өөр дээрээ байгаа файлуудыг хадгалах сонирхолгүй байна гэж бодож байгаа бол энэ нь устах болно.

1, SD картыг FAT-32 гэж форматлана уу

2, A, B, C D гэх мэт хавтас үүсгэх (P хүртэл эдгээр нь CP/M -ийг ажиллуулахад дискний хөтөч байх болно). Тэдгээр нь нийслэл болохыг анхаарна уу.

3, Та үүсгэсэн фолдер бүрт 0 (тэг гэсэн утгатай), 1, 2, 3 гэх мэт (15 хүртэл) нэртэй өөр хавтас үүсгэнэ үү. Дараа нь фолдерууд нь CP/M эмуляц дахь Хэрэглэгчийн талбар юм. Эхлэхийн тулд танд зөвхөн 0 хавтас хэрэгтэй.

4, arduino директор дахь татаж авсан төслийн хавтаснаас CCP нэртэй хавтсыг олоорой. Энэ нь CP/M Command Console Proccessor -ийн янз бүрийн хувилбаруудыг агуулдаг. CCP-DR.60K гэж нэрлэгддэг SD картныхаа эх рүү хуулна уу.

5, Одоо DISK нэртэй төслийн лавлахаас хавтасыг олоорой, үүнд A. ZIP файл байгаа тул та энэ файлыг SD карт дээрх A/ 0/ директор руу задлах хэрэгтэй. (Дэлгэрэнгүй мэдээллийг 1streadme файлыг үзнэ үү). Харамсалтай нь фолдерын жагсаалтад "0" байхгүй тул та түр зуурын фолдерыг задалж, дараа нь A хавтасны агуулгыг SD карт дээрх A/ 0/ руу хуулах хэрэгтэй.

6, Дээрх алхмуудыг хийсний дараа та ийм бүтэцтэй SD карттай болно.

F: CCP-DR.60K

/A/0

/1STREAD. ME

/ASM. COM

/…. гэх мэт

/Б/0

/C/0

гэх мэт

Хэрэв та SD картнаас ачаалах гэж оролдох үед CCP-ийг ачаалж чадахгүй гэх мэт алдаа гарвал бүх зүйл зөв хурдтай байгаа эсэхийг дахин шалгаарай!

Энэ үе шатыг арай хялбар болгохын тулд би дээр дурдсан бэлэн хувилбарыг суулгасан бөгөөд үүнд cp/m програм хангамжийг оруулаад эндээс татаж аваарай https://github.com/coopzone-dc/RunCPM/blob /мастер/… зүгээр л форматлагдсан 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 систем санал болгодоггүй. Энэ 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, асаах/дахин тохируулах талаар уншина уу) ашигладаг. Энэ зүү нь RAM -ийн хүчдэл, дотоод LDO (VDD_SDIO) хүчдэлийг тодорхойлдог. SD карт байгаа үед энэ зүүг өндөрт татаж, ESP32 нь RAM хүчдэлийг 1.8 В байх ёстой гэж боддог бөгөөд SD картгүйгээр энэ зүү нь RAM хүчдэлийг 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.3V хүчдэлтэй ESP32-д сайн (ESP-WROOM-32). Хэрэв флэш нь 3.3V биш бол энэ нь таны ESP32 -ийг BRICK хийх болно.

Энэ нь GPIO12 -ээс зайлсхийх хэрэгтэй гэдгийг VGA32 ESP карт үйлдвэрлэгчдэд хэн ч хэлээгүй болно.

Тогтсон: Би флэш хүчдэлийг GPIO12 -ийг хэтрүүлж тохируулах сонголтыг туршиж үзсэн бөгөөд миний vga32 ESP дээр баталгаажуулж чадна, энэ нь ажилладаг! SD карттай холбоотой асуудал арилсангүй. Хэрэв та үүнийг туршиж үзэхээр шийдсэн бол БРИКС бүтээх талаар сайтар шалгаж, сайтар шалгаж үзэхийг уриалж байна. Би үүнийг арга хэмжээ гэж зөвлөдөггүй, гэхдээ энэ нь миний хувьд үр дүнтэй болсон.

Зөвлөмж болгож буй: