Sisukord:
- Samm: installige ESP32 tugi Arduino jaoks (valikuline)
- 2. samm: FabGL -i kogu lisamine IDE -sse
- 3. samm: RunCPM-i kasutatava täiendava SD-kaardi kogu lisamine
- Samm: laadige alla muudetud RunCPM -i projekt
- Samm: avage RunCPM programm ja vaadake see üle ning kompileerige
- 6. samm: looge SD-kaart, mis on valmis käivitama oma käivitamise CPM-i
- Samm: ühendage VGA -monitor ja klaviatuur
- Samm: probleem VGA32 mooduli SD-kaardiga
Video: Retro CP/M eraldiseisev emulaator: 8 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:45
See projekt kasutab kombinatsiooni käitamiseks VGA32 ESP v1.4 moodulit või RunCPM ja FabGL, et pakkuda eraldiseisvat arvutit, mis töötab samaväärse süsteemiga CP/M 2.2. 1980ndatel populaarne väikeste arvutite operatsioonisüsteemina. Võite minna ajas tagasi ja vaadata uuesti vana tarkvara, nagu Wordstar, Supercalc, Adventure ja Zork.
See on eraldiseisev viisakus FabGL -projektiga, mis pakkus tarkvara tavalise VGA -monitori ja PS/2 klaviatuuri käitamiseks.
Peamine operatsioonisüsteem on RunCPM -i muudetud versioon, see on Githubi algsest tööst hargnenud ja olen lisanud FabGL -i teegi, et seda saaks kasutada jadakonsooli asemel ekraanil.
Tahaksin öelda suured tänud mõlemale projektile. Jätka samas vaimus!
Tarkvara on testitud vähemalt kahel riistvaraversioonil. Üks VGA32 ESP v1.4 (müügil valmis kujul). Teiseks oma vana versiooni, mille ehitasin Wroom ESP32 moodulist ja vanade arvutite jäägid.
Allpool olev Githubi sait sisaldab olulist teavet nende seadistuste ja muudetud installimisvalmis tarkvara kohta.
See projekt puudutab tarkvara installimist, mitte riistvara.
Tarvikud:
VGA32 ESP moodul V1.4 (testitud). Leitud eBayst / aliexpressist / amazonist jne
Arvutisse installitud Arduino IDE, eeldan, et kui seda loete, on see juba olemas.
Installige ESP32 tugipakett Arduino IDE jaoks. https://github.com/espressif/arduino-esp32 Vt 1. samm
FabGL -i teek https://www.fabglib.org/ ei pea midagi alla laadima, arduino IDE saab seda meie jaoks teha, vt 2. samm.
Laadige muudetud RunCPM-i koopia alla aadressilt
Samm: installige ESP32 tugi Arduino jaoks (valikuline)
Võib -olla olete seda juba teinud, kui olete seda teinud, võite selle sammu vahele jätta.
külastage aadressi https://github.com/espressif/arduino-esp32 ja järgige plaatide halduri abil installimise juhiseid, näiteks seda:
Paigaldusjuhised Arduino IDE Boards Manageri abil =========================================== ===============
Stabiilse väljalaske link:
Paigaldage praegune ülesvoolu Arduino IDE tasemele 1,8 või uuem. Praegune versioon on Arduino veebisaidil.
Käivitage Arduino ja avage eelistuste aken.
Sisestage üks ülaltoodud väljalaske linkidest väljale Täiendavad juhatusehalduri URL -id. Saate lisada mitu URL -i, eraldades need komadega.
Avage Boards Manager menüüst Tools> Board ja installige esp32 platvorm (ja ärge unustage pärast installimist valida ESP32 plaat menüüst Tools> Board).
2. samm: FabGL -i kogu lisamine IDE -sse
Kasutades tühja visandit Arduino IDE -s, veenduge, et olete oma ESP -plaadi valinud menüüst Tööriistad, Lauad. (VGA32 ESP kirjutamise ajal ei olnud loendis, valin üldise Dev Kiti plaadi).
Valige eskiismenüüst Kaasa raamatukogu, seejärel valige teegihaldur.
Tippige otsingudialoogi FabGL ja oodake, kuni see ilmub allolevasse loendisse, klõpsake nüüd nuppu Installi.
valmis
3. samm: RunCPM-i kasutatava täiendava SD-kaardi kogu lisamine
See on peaaegu sama mis eelmine samm, kuid FabGL asemel otsige SDFat
Valige Sketch menüüst Include Library, seejärel tehke Library manager. Tippige otsingudialoogi SDFat ja oodake, kuni see ilmub allolevasse loendisse, peate tõenäoliselt loendit allapoole kerima.
Saate valida kahe versiooni vahel:
1, SdFat, Bill Greiman
2, SdFat - Adafruit kahvel
Olen proovinud mõlemat, tundub, et mõlemad töötavad hästi. Kuid RunCPM -i projekt soovitas teist võimalust "Adafruit Fork", kuid viimaste märkmete kohaselt ütleb see nüüd:
Kõik tahvlid kasutavad nüüd SdFati raamatukogu siit:
Nii et nüüd valin selle projekti jaoks esimese variandi.
valmis
Samm: laadige alla muudetud RunCPM -i projekt
Külastage Githubi saiti, Klõpsake nuppu KOOD ja laadige alla ZIP -failina
Salvestage see fail kuhugi (tavaliselt kataloogi nimega Arduino.
Pakkige fail samasse kohta lahti ja see loob kausta nimega RunCPM-master
valmis
Samm: avage RunCPM programm ja vaadake see üle ning kompileerige
Nüüd saate kasutada Arduino IDE -faili, menüüd Ava. Liikuge ülaltoodud kausta.
Selle kausta sees on teine nimega RunCPM. Avage kaust.
Selle kausta sees on.ino fail nimega RunCPM.ino. See on peamine projektifail - avage see.
Nüüd saate projekti vaadata, kommentaare lugeda jne. Kui teil on vaja sobitada oma VGA32 -ESP versiooniga, tehke muudatusi. See peaks olema eelnevalt konfigureeritud plaadi V1.4 jaoks.
Nüüd saate klõpsata käsul Kompileeri ja üles laadida, eeldusel, et teil on ühendatud VGA32 ESP, laadib see emulaatori teie seadmesse üles.
TÄHTIS: VGA32-l võib praegu olla SD-kaardiga probleeme, nii et ärge seda teadmiseks ühendage. Lisateabe saamiseks vaadake allolevat viimast sammu.
6. samm: looge SD-kaart, mis on valmis käivitama oma käivitamise CPM-i
See on võib -olla kõige sammude nipp. Soovitan teil lugeda Githubi saidi README.md, kuidas seda teha. Siin on minu nimekiri, mida teha:
Eeldan, et teil on tühi SD-kaart või te pole huvitatud olemasolevate failide hoidmisest, see kustutab selle.
1, vormindage SD-kaart vormingus FAT-32
2, looge mõned kaustad nimega A, B, C D jne (kuni P on need kettaseadmed CP/M käivitamisel). Pange tähele, et need on pealinnad.
3, Igas loodud kaustas Looge teine kaust nimega 0 (see on null) ja valikuliselt 1, 2, 3 jne (kuni 15). Seejärel on kaustad kasutajapiirkonnad CP/M emulatsioonis. Alustamiseks vajate ainult kausta 0.
4 Leidke arduino kataloogist allalaaditud projekti kaustast kaust nimega CCP. See sisaldab CP/M Command Console Proccessori erinevaid versioone. Kopeerige üks nimega CCP-DR.60K oma SD-kaardi juure.
5, Nüüd leidke kaust projekti kataloogist nimega DISK. See sisaldab A. ZIP-faili, peate selle faili lahti pakkima oma SD-kaardi kataloogi A/ 0/. (lisateabe saamiseks vaadake ka 1. lugemisfaili). Kahjuks pole sellel kaustade loendis "0", nii et peate esmalt ajutise kausta lahti pakkima ja seejärel kopeerima A -kausta sisu SD -kaardile A/ 0/.
6, Kui olete ülaltoodud toimingud teinud, on teil sellise struktuuriga SD-kaart:
F: CCP-DR.60K
/A/0
/1STREAD. ME
/ASM. COM
/…. jne
/B/0
/C/0
jne
Kui saate SD-kaardilt alglaadimisel tõrkeid selle kohta, et CCP-d ei saa laadida jne, kontrollige, kas kõik on õiges tempos!
Püüdes seda etappi natuke lihtsamaks muuta, laadisin üles ülaltoodud valmisversiooni, millele on lisatud ka cp/m tarkvara, ja laadige see siit alla https://github.com/coopzone-dc/RunCPM/blob /master/… ja lihtsalt pakkige see vormindatud SD-kaardi juurest lahti. See peaks alustama, siis saate hiljem ise luua.
Samuti soovitan teil lugeda Github Repo seadistusjuhendit, seal on vajalike kaustade kirjeldus.
Samm: ühendage VGA -monitor ja klaviatuur
Ühendage VGA32 ESP -kaardi toide lahti.
Ühendage oma VGA -monitor
Ühendage PS/2 klaviatuur Ühendage toide uuesti VGA32 ESP kaardiga, peaksite nägema, et klaviatuuri tuled vilguvad ja umbes 10 sekundi pärast ilmub ekraanile pilt koos CP/M viipega!
Tähtis: VGA32-l on probleem SD-kaardi ja pehme lähtestamise kasutamisel, seetõttu on oluline esimese sammuna LÜLITADA VÄLJAKULU, lisateabe saamiseks vaadake viimast sammu.
Eemal sa lähed…
Samm: probleem VGA32 mooduli SD-kaardiga
Ülaltoodud foto näitab minu teist ESP32 kaarti (kodus valmistatud), see töötab hästi ja sellel pole probleemi allpool. Nii et ma tean, et see pole tarkvara probleem, palun lugege allpool VGA32 versiooni kohta.
Minu VG32 ESP moodulil (v1.4) kasutab SD-kaart GPIO12-d. Seda ei soovita Espressif Systems, kuna seda tihvti kasutatakse sisselülitamisel sisemälu tööpinge tuvastamiseks. Ma soovin, et keegi oleks rääkinud mehele, kes selle VGA32 kaardi teeb! Teie puhul võib see olla teistsugune, nii et loodetavasti pole teil seda probleemi.
Probleemid on järgmised:
1, eskiisi ei saa üles laadida, kui kaart on ühendatud.
2, Pärast lähtestamisnupu vajutamist lukustub see kuni SD-kaardi eemaldamiseni. Seejärel käivitatakse veateade, mis ütleb, et SD-kaarti pole! Saate kaardi sisse panna ja uuesti lähtestada ning see töötab teist korda.
See probleem on parandatav (kuid sellel on oht), vt README.md aadressil
või saate alati plaadi käivitamiseks kõvasti välja/sisse lülitada. Millegipärast tundub, et see töötab hästi. Kui teil on vaja RunCPM tarkvara uuesti üles laadida, peate esmalt SD-kaardi eemaldama.
See on väljavõte README. MD -st, mis selgitab probleemi. Olen parandust kasutanud ja see töötab hästi, AGA selle olemuse tõttu on risk teie, lugege edasi …
Tundub, et VGA32 ESP seaded on SD -kaardi GPIO -seadetega vastuolus.
See töötab, kuid üleslaadimiseks peate SD -kaardi eemaldama ja pärast pehmet lähtestamist peate SD -kaardi eemaldama ja seejärel asendama, millele järgneb uus lähtestamine. See töötab korralikult sisselülitamisel või kõva lähtestamise korral. Kui saate aidata seda parandada, andke mulle sellest teada. UUENDAMINE 11. oktoober 2020: VGA32 ESP v1.4 kasutab GPIO12 (MTDI, loe sisselülitamisel/lähtestamisel). See tihvt määrab RAM -i pinge, sisemise LDO pinge (VDD_SDIO). Kui SD-kaart on olemas, tõmbab see selle tihvti kõrgele ja ESP32 arvab, et RAM-i pinge peaks olema 1,8 V, ilma SD-kaardita on sellel tihvtil sisemine tõmbamine, et seada RAM-i pingeks 3,3 V. Seda on tegelikult mainitud FABGL projekti näidete märkustes, tsiteerides: märkused GPIO 2 ja 12 kohta - GPIO2: võivad programmeerimisel probleeme tekitada. Ka jadalaadimisseadmesse sisenemiseks tuleb GPIO2 jätta ühendamata/ujuvaks või sõita madalale. Tavalises alglaadimisrežiimis (GPIO0 kõrge) GPIO2 ignoreeritakse. - GPIO12: tuleks vältida. See valib välklambi pinge. Selle kasutamiseks keelake GPIO12 tuvastussätete efused järgmiselt: python espefuse.py --port /dev/cu. SLAB_USBtoUART set_flash_voltage 3.3V WARN !! Hea 3,3 V pingega ESP32 jaoks (ESP-WROOM-32). See katab teie ESP32 MUGIKA, kui välklamp pole 3,3 V MÄRKUS 1: asendage "/dev/cu. SLAB_USBtoUART" jadapordiga MÄRKUS 2: espefuse.py on allalaaditav aadressilt
See märgib veel, et GPIO12 tuleks vältida, jama, mida keegi ei öelnud VGA32 ESP kaardi tegijale!
Fikseeritud: Olen proovinud võimalust seadistada välklambi pinge GPIO12 kasutamisest üle ja võin oma vga32 ESP -s kinnitada, see töötab! Probleem lahendati, SD -kaardiga pole enam probleeme. Kutsun teid üles kontrollima, uuesti kontrollima ja hoolikalt mõtlema BRICKi loomisele, kui otsustate seda ka proovida. Ma ei soovita seda tegevusena, kuid minu jaoks see töötas.
Soovitan:
Eraldiseisev Arduino 3.3V W / väline 8 MHz kell programmeeritakse Arduino Uno kaudu ICSP / ISP kaudu (jadaseirega!): 4 sammu
Eraldiseisev Arduino 3,3 V W / väline 8 MHz kell programmeeritakse Arduino Uno kaudu ICSP / ISP kaudu (jadaseirega!): Eesmärgid: Ehitada eraldiseisev Arduino, mis töötab 3,3 V toitel 8 MHz välisel kellal. Selle programmeerimine Interneti-teenuse pakkuja (tuntud ka kui ICSP, ahelasisene jadaprogrammeerimine) kaudu Arduino Unost (töötab 5 V juures) Alglaaduri faili redigeerimiseks ja põletamiseks
Teaduslik kalkulaatori emulaator HP-35 Arduino Unoga: 4 sammu
HP-35 teaduslik kalkulaatori emulaator koos Arduino Unoga: Selle projekti eesmärk on käivitada järgmine simulaator https://www.hpmuseum.org/simulate/hp35sim/hp35sim….on Arduino Uno koos TFTLCD ja puuteekraaniga originaalne teaduslik kalkulaator HP-35. See jäljendab algset salvestatud koodi
KIM Uno - 5 -eurone mikroprotsessori arendaja komplekti emulaator: 13 sammu (koos piltidega)
KIM Uno - 5 -eurone mikroprotsessorite arenduskomplekti emulaator: KIM Uno on kaasaskantav tarkvara määratletud arenduskomplekt (retro) mikroprotsessoritele. Kuid lubage mul tutvustada selle ideed, minnes ajas tagasi: 2018. aasta lõpus tuli mulle meelde, et ma tahan ehitada väikese kaasaskantava mikroprotsessori arendajate komplekti, nagu
Võimas eraldiseisev koduautomaatikasüsteem - Pi, Sonoff, ESP8266 ja Node -Red: 9 sammu (koos piltidega)
Võimas eraldiseisev koduautomaatikasüsteem - Pi, Sonoff, ESP8266 ja Node -Red: see juhend peaks viima teid esimesesse baasi, kus saate valguse või seadme sisse/välja lülitada mis tahes seadme kaudu, mis saab teie kohaliku võrguga ühenduse luua, ja suurepärane kohandatav veebiliides. Funktsioonide laiendamise/ lisamise ulatus on suur, sealhulgas
Eraldiseisev akvaariumi ujukandur: 4 sammu (piltidega)
Eraldiseisev akvaariumi ujukiandur: TL; DRSee juhend on pühendatud teadmisele, kui vesi on liiga madal, ja teavitab mind sellest. Selle keskmes on ainult riistvara, praegu pole tarkvara juurutamist. LAHTIÜTLUS: mõõtmised puuduvad ja pole täpsed. See oli idee ja ma lihtsalt viskasin selle