Satura rādītājs:

Retro CP/M atsevišķs emulators: 8 soļi
Retro CP/M atsevišķs emulators: 8 soļi

Video: Retro CP/M atsevišķs emulators: 8 soļi

Video: Retro CP/M atsevišķs emulators: 8 soļi
Video: CPM Software Transfer: Where to find it & how to get into a CP/M computer #retro #retrogaming 2024, Novembris
Anonim
Retro CP/M atsevišķs emulators
Retro CP/M atsevišķs emulators

Šis projekts izmanto VGA32 ESP v1.4 moduli, lai palaistu kombināciju vai RunCPM un FabGL, lai nodrošinātu atsevišķu datoru, kurā darbojas līdzvērtīga sistēma CP/M 2.2. Astoņdesmitajos gados populāra kā mazu datoru operētājsistēma. Jūs varat atgriezties pagātnē un atkārtoti apmeklēt veco programmatūru, piemēram, Wordstar, Supercalc, Adventure un Zork.

Tas ir atsevišķs, pateicoties FabGL projektam, kas nodrošināja programmatūru standarta VGA monitora un PS/2 tastatūras darbināšanai.

Galvenā OS ir modificēta RunCPM versija, tā ir atdalīta no sākotnējā Github darba, un esmu pievienojis FabGL bibliotēku, lai to varētu izmantot ekrānā, nevis sērijas konsolē.

Es gribētu pateikt lielu paldies abiem projektiem. Tā turpināt!

Programmatūra ir pārbaudīta vismaz divās aparatūras versijās. Viens no VGA32 ESP v1.4 (tiek pārdots gatavs). Otrkārt, manu veco versiju, es izveidoju no Wroom ESP32 moduļa un atgriezu gabalus no veciem datoriem.

Tālāk esošajā Github vietnē ir svarīga informācija par šiem iestatījumiem, kā arī modificētā instalēšanai gatava programmatūra.

Šis projekts ir par programmatūras instalēšanu, nevis par aparatūru.

Piegādes:

VGA32 ESP modulis V1.4 (pārbaudīts). Atrasts eBay / aliexpress / amazon utt

Arduino IDE ir instalēts datorā, es pieņemu, ka, lasot šo, jums tas jau ir.

Instalējiet ESP32 atbalsta pakotni Arduino IDE. https://github.com/espressif/arduino-esp32 Skatiet 1. darbību

FabGL bibliotēkā https://www.fabglib.org/ jums nekas nav jālejupielādē, arduino IDE to var izdarīt mūsu vietā, skatiet 2. darbību.

Lejupielādējiet modificētā RunCPM kopiju no vietnes

1. darbība: instalējiet ESP32 atbalstu Arduino (pēc izvēles)

Instalējiet ESP32 atbalstu Arduino (pēc izvēles)
Instalējiet ESP32 atbalstu Arduino (pēc izvēles)

Jūs, iespējams, jau esat to izdarījis, ja esat to izdarījis, varat izlaist šo darbību.

apmeklējiet vietni https://github.com/espressif/arduino-esp32 un izpildiet norādījumus par instalēšanu, izmantojot dēļu pārvaldnieku, piemēram:

Uzstādīšanas instrukcijas, izmantojot Arduino IDE Boards Manager =========================================== ===============

Stabila izlaišanas saite:

Instalējiet pašreizējo augšējā Arduino IDE 1.8 vai jaunākā līmenī. Pašreizējā versija ir Arduino vietnē.

Sāciet Arduino un atveriet logu Preferences.

Laukā Papildu pārvaldnieka vietrāži URL ievadiet vienu no iepriekš minētajām laidiena saitēm. Varat pievienot vairākus URL, atdalot tos ar komatiem.

Atveriet Boards Manager no izvēlnes Tools> Board un instalējiet platformu esp32 (un pēc instalēšanas neaizmirstiet izvēlēties ESP32 tāfeli izvēlnē Tools> Board).

2. darbība. FabGL bibliotēkas pievienošana IDE

FabGL bibliotēkas pievienošana IDE
FabGL bibliotēkas pievienošana IDE
FabGL bibliotēkas pievienošana IDE
FabGL bibliotēkas pievienošana IDE

Izmantojot tukšu skici Arduino IDE, pārliecinieties, vai esat izvēlējies savu ESP paneli izvēlnē Rīki, Dēļi. (Rakstīšanas laikā VGA32 ESP nebija uzskaitīts, es izvēlos vispārēju Dev Kit dēli).

Izvēlnē Skice izvēlieties Iekļaut bibliotēku, pēc tam izvēlieties Bibliotēkas pārvaldnieks.

Meklēšanas dialogā ierakstiet FabGL un gaidiet, līdz tas parādās zemāk esošajā sarakstā, tagad noklikšķiniet uz pogas Instalēt.

pabeigts

3. darbība. Papildu SD karšu bibliotēkas pievienošana, ko izmanto RunCPM

Papildu SD karšu bibliotēkas pievienošana, ko izmanto RunCPM
Papildu SD karšu bibliotēkas pievienošana, ko izmanto RunCPM

Tas ir gandrīz tāds pats kā iepriekšējā darbība, bet FabGL vietā meklējiet SDFat

Izvēlnē Skice izvēlieties Iekļaut bibliotēku, pēc tam izvēlieties Bibliotēkas pārvaldnieks. Meklēšanas dialogā ierakstiet SDFat un gaidiet, līdz tas parādās zemāk esošajā sarakstā, iespējams, jums būs jāritina saraksts uz leju.

Jūs varat izvēlēties divas versijas:

1, SdFat, Bils Greimans

2, SdFat - Adafruit dakša

Esmu izmēģinājis abus, šķiet, ka abi strādā labi. Bet RunCPM projekts ieteica otro iespēju "Adafruit Fork", tomēr jaunākajās piezīmēs tas tagad saka:

Visi dēļi tagad izmanto SdFat bibliotēku, šeit:

Tāpēc tagad es izvēlos pirmo variantu šim projektam.

pabeigts

4. darbība: lejupielādējiet modificēto RunCPM projektu

Lejupielādējiet modificēto RunCPM projektu
Lejupielādējiet modificēto RunCPM projektu
Lejupielādējiet modificēto RunCPM projektu
Lejupielādējiet modificēto RunCPM projektu

Apmeklējiet Github vietni, Noklikšķiniet uz pogas KODS un lejupielādējiet kā ZIP failu

Saglabājiet šo failu kaut kur (parasti direktorijā ar nosaukumu Arduino.

Izsaiņojiet failu tajā pašā vietā, tas izveidos mapi ar nosaukumu RunCPM-master

pabeigts

5. darbība: atveriet un pārskatiet programmu RunCPM un kompilējiet

Atveriet un pārskatiet programmu RunCPM un kompilējiet
Atveriet un pārskatiet programmu RunCPM un kompilējiet

Tagad varat izmantot Arduino IDE failu, Atvērt izvēlni. Dodieties uz mapi, kuru uzipējāt iepriekš.

Šajā mapē ir vēl viens nosaukums RunCPM. Atveriet mapi.

Šīs mapes iekšpusē ir.ino fails ar nosaukumu RunCPM.ino. Šis ir galvenais projekta fails - atveriet to.

Tagad varat apskatīt projektu, lasīt komentārus utt. Veiciet izmaiņas, ja nepieciešams, lai tās atbilstu jūsu VGA32 -ESP versijai. Tam jābūt iepriekš konfigurētam tāfeles V1.4.

Tagad varat noklikšķināt uz apkopot un augšupielādēt, pieņemot, ka jums ir pievienots VGA32 ESP, un tas emulatoru augšupielādēs jūsu ierīcē.

SVARĪGI: VGA32 pašlaik var būt problēmas ar SD karti, tāpēc, lai uzzinātu, nepievienojiet to. Plašāku informāciju skatiet zemāk esošajā pēdējā solī.

6. darbība: izveidojiet SD karti, kas ir gatava sākšanai

Tas, iespējams, ir visnozīmīgākais soļu triks. Es iesaku jums izlasīt Github vietnes README.md, kā to izdarīt. Šeit ir mans saraksts ar to, ko darīt:

Es pieņemu, ka jums ir tukša SD karte vai neesat ieinteresēts saglabāt failus tajā, kas jums ir, tas to izdzēsīs.

1, formatējiet SD karti kā FAT-32

2, izveidojiet dažas mapes ar nosaukumu A, B, C D utt. (Līdz P tie būs diska diskdziņi, palaižot CP/M). Ņemiet vērā, ka tie ir galvaspilsētas.

3, Katrā izveidotajā mapē Izveidojiet citu mapi ar nosaukumu 0 (tas ir nulle) un pēc izvēles 1, 2, 3 utt. (Līdz 15). Tad mapes ir lietotāja apgabali CP/M emulācijā. Lai sāktu darbu, nepieciešama tikai mape 0.

4, no lejupielādētās projekta mapes arduino direktorijā atrodiet mapi ar nosaukumu CCP. Tas satur dažādas CP/M komandu konsoles procesora versijas. Kopējiet to, ko sauc par CCP-DR.60K, uz SD kartes sakni.

5, Tagad atrodiet mapi projekta direktorijā ar nosaukumu DISK. Tajā ir A. ZIP fails, jums ir jāizpako šis fails direktorijā ar nosaukumu A/ 0/ jūsu SD kartē. (sīkāku informāciju skatiet arī failā 1streadme). Diemžēl mapju sarakstā nav “0”, tāpēc vispirms ir jāizarķē pagaidu mape, pēc tam kopējiet A mapes saturu uz A/ 0/ SD kartē.

6, Kad esat veicis iepriekš minētās darbības, jums būs SD karte ar šādu struktūru:

F: CCP-DR.60K

/A/0

/1STREAD. ME

/ASM. COM

/…. utt

/B/0

/C/0

utt

Ja rodas kļūdas par to, ka nevar ielādēt CCP utt., Mēģinot palaist no SD kartes, vēlreiz pārbaudiet, vai viss ir pareizajā tempā!

Mēģinot nedaudz atvieglot šo posmu, esmu augšupielādējis iepriekš sagatavotu versiju ar papildu cp/m programmatūru, kā arī lejupielādējiet to šeit: https://github.com/coopzone-dc/RunCPM/blob /master/… un vienkārši izpakojiet to formatētas SD kartes saknē. Tam vajadzētu sākt darbu, pēc tam varat izveidot savu.

Es arī iesaku jums izlasīt Github Repo iestatīšanas rokasgrāmatu, tajā ir vajadzīgo mapju apraksts.

7. darbība: pievienojiet VGA monitoru un tastatūru

Pievienojiet VGA monitoru un tastatūru
Pievienojiet VGA monitoru un tastatūru

Atvienojiet VGA32 ESP kartes strāvu.

Pievienojiet VGA monitoru

Pievienojiet PS/2 tastatūru Atkārtoti pievienojiet barošanu VGA32 ESP kartei, jums vajadzētu redzēt, kā mirgo tastatūras gaismas, un apmēram 10 sekundes vēlāk ekrānā parādīsies attēls ar CP/M uzvedni!

Svarīgi: VGA32 ir problēma, izmantojot SD karti un mīksto atiestatīšanu, tāpēc ir svarīgi IZSLĒGT IZSLĒGŠANU kā pirmo soli iepriekš, lai iegūtu papildinformāciju.

Prom ej…

8. darbība. Problēma ar SD karti VGA32 modulī

Problēma ar SD karti VGA32 modulī
Problēma ar SD karti VGA32 modulī
Problēma ar SD karti VGA32 modulī
Problēma ar SD karti VGA32 modulī

Iepriekš redzamajā fotoattēlā ir redzama mana otrā ESP32 karte (mājās gatavota), tā darbojas labi, un tai nav problēmas. Tāpēc es zinu, ka tā nav programmatūras problēma, lūdzu, izlasiet zemāk par VGA32 versiju.

Manā VG32 ESP modulī (v1.4) SD karte izmanto GPIO12. Espressif Systems to neiesaka, jo šo tapu izmanto, ieslēdzot, lai noteiktu iekšējās atmiņas darba spriegumu. Es vēlos, lai kāds būtu teicis puisim, kurš izgatavo šo VGA32 karti! Iespējams, ka jums tas ir savādāk, tāpēc cerams, ka jums nebūs šīs problēmas.

Problēmas ir šādas:

1, Nevar augšupielādēt skici, kad karte ir pievienota.

2, Pēc atiestatīšanas pogas nospiešanas tas tiek bloķēts, līdz tiek izņemta SD karte. Pēc tam tiek atvērts kļūdas ekrāns, kurā teikts, ka nav SD kartes! Jūs varat ievietot karti un atiestatīt to vēlreiz, un tā darbosies otro reizi.

Šī problēma ir labojama (bet tai ir risks), skatiet README.md vietnē

vai arī jūs vienmēr varat izslēgt/ieslēgt strāvu, lai sāktu dēļa darbību. Kādu iemeslu dēļ šķiet, ka tas darbojas labi. Tāpat, ja jums ir nepieciešams atkārtoti augšupielādēt RunCPM programmatūru, vispirms ir jāizņem SD karte.

Šis ir izraksts no README. MD, kas izskaidro šo problēmu. Esmu izmantojis labojumu, un tas darbojas labi, BET sava rakstura dēļ risks ir jūsu ziņā, lasiet tālāk …

Tomēr šķiet, ka VGA32 ESP iestatījumi ir pretrunā ar SD kartes GPIO iestatījumiem.

Tas darbojas, bet, lai augšupielādētu, jums ir jāizņem SD karte, un pēc mīkstas atiestatīšanas jums ir jāizņem SD karte un pēc tam jānomaina, kam seko cita atiestatīšana. Tas darbojas labi no ieslēgšanas vai cietās atiestatīšanas. Ja jūs varat palīdzēt to novērst, lūdzu, informējiet mani. UPDATE 11 Oct2020: VGA32 ESP v1.4 izmanto GPIO12 (MTDI, lasiet ieslēgšanas/atiestatīšanas laikā). Šī tapa nosaka RAM spriegumu, iekšējā LDO spriegumu (VDD_SDIO). Kad SD karte ir klāt, tā izvelk šo tapu augstu, un ESP32 uzskata, ka RAM spriegumam jābūt 1,8 V, bez SD kartes šai tapai ir iekšēja nolaižamā daļa, lai RAM spriegumu iestatītu uz 3,3 V. Tas faktiski ir minēts piezīmēs no piemēriem, kas sniegti FABGL projektā, citējot: piezīmes par GPIO 2 un 12 - GPIO2: var radīt problēmas programmēšanā. Lai ievadītu sērijveida sāknēšanas ielādētāju, GPIO2 arī jāatstāj nesaistīts/peldošs vai jābrauc zemā līmenī. Parastā sāknēšanas režīmā (GPIO0 augsts) GPIO2 tiek ignorēts. - GPIO12: jāizvairās. Tas izvēlas zibspuldzes spriegumu. Lai to izmantotu, atspējojiet GPIO12 noteikšanas iestatījumu efektus, izmantojot: python espefuse.py --port /dev/cu. SLAB_USBtoUART set_flash_voltage 3.3V WARN !! Piemērots ESP32 ar 3,3 V spriegumu (ESP-WROOM-32). Tas sabojās jūsu ESP32, ja zibspuldze nav 3.3V PIEZĪME1: aizstājiet “/dev/cu. SLAB_USBtoUART” ar seriālo portu

Tas vēl vairāk norāda, ka jāizvairās no GPIO12, par to neviens neteica VGA32 ESP kartes veidotājam!

FIKSĒTS: Esmu izmēģinājis iespēju iestatīt zibspuldzes spriegumu virs GPIO12 lietošanas un varu apstiprināt savā vga32 ESP, tas darbojas! Problēma ar SD karti vairs nav novērsta. Es aicinu jūs pārbaudīt, vēlreiz pārbaudīt un rūpīgi padomāt par BRICK izveidi, ja arī jūs nolemjat to izmēģināt. Es to neiesaku kā darbību, bet man tas darbojās.

Ieteicams: