Isi kandungan:
- Langkah 1: Pasang Sokongan ESP32 untuk Arduino (pilihan)
- Langkah 2: Menambah Perpustakaan FabGL ke IDE
- Langkah 3: Menambah Perpustakaan Kad SD Tambahan yang Digunakan oleh RunCPM
- Langkah 4: Muat turun Projek RunCPM yang Diubah
- Langkah 5: Buka dan Semak Program RunCPM dan Kompilasi
- Langkah 6: Buat kad SD yang Sedia untuk Memulakan RunCPM Anda Dari
- Langkah 7: Sambungkan Monitor dan Papan Kekunci VGA
- Langkah 8: Masalah Dengan Kad SD pada Modul VGA32
Video: Retro CP / M Berdiri Sendiri Emulator: 8 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:07
Projek ini menggunakan modul VGA32 ESP v1.4 untuk menjalankan kombinasi atau RunCPM dan FabGL untuk menyediakan komputer yang berdiri sendiri yang menjalankan sistem yang setara dengan CP / M 2.2. Popular pada tahun 1980-an sebagai sistem operasi untuk komputer kecil. Anda boleh kembali ke masa lalu dan melawat semula perisian lama seperti Wordstar, Supercalc, Adventure dan Zork.
Ini adalah penghormatan tersendiri dari projek FabGL yang menyediakan perisian untuk menjalankan monitor VGA standard dan Papan Kekunci PS / 2.
OS utama adalah Versi RunCPM yang diubahsuai, ia telah dicabut dari karya asal di Github dan saya telah menambahkan perpustakaan FabGL untuk membolehkannya digunakan pada skrin dan bukannya pada konsol bersiri.
Saya ingin mengucapkan terima kasih yang besar kepada kedua-dua projek ini. Teruskan kerja yang bagus!
Perisian ini telah diuji pada sekurang-kurangnya dua versi perkakasan. Satu VGA32 ESP v1.4 (seperti dijual siap pakai). Kedua versi lama saya, saya membina dari Modul ESP32 Wroom dan sekerap dari komputer lama.
Laman Github di bawah ini mengandungi maklumat penting mengenai persediaan ini dan juga perisian siap dipasang yang diubah suai.
Projek ini adalah mengenai pemasangan perisian, bukan mengenai perkakasan.
Bekalan:
Modul VGA32 ESP V1.4 (diuji). Terdapat di eBay / aliexpress / amazon dll
Arduino IDE dipasang pada komputer, saya menganggap jika anda membaca ini anda sudah mempunyai ini.
Pasang pek sokongan ESP32 untuk Arduino IDE. https://github.com/espressif/arduino-esp32 Lihat langkah 1
Perpustakaan FabGL https://www.fabglib.org/ anda tidak perlu memuat turun apa-apa, IDE arduino dapat melakukan ini untuk kami, lihat langkah 2.
Muat turun salinan RunCPM yang diubah suai dari
Langkah 1: Pasang Sokongan ESP32 untuk Arduino (pilihan)
Anda mungkin sudah melakukan ini, jika anda boleh melangkau langkah ini.
lawati https://github.com/espressif/arduino-esp32 dan ikuti arahan pemasangan menggunakan pengurus papan, seperti ini:
Arahan pemasangan menggunakan Arduino IDE Boards Manager =========================================== ===============
Pautan pelepasan stabil:
Pasang Arduino IDE hulu semasa pada tahap 1.8 atau lebih baru. Versi semasa ada di laman web Arduino.
Mulakan Arduino dan buka tetingkap Preferences.
Masukkan salah satu pautan pelepasan di atas ke medan URL Pengurus Papan Tambahan. Anda boleh menambahkan beberapa URL, memisahkannya dengan koma.
Buka Pengurus Papan dari Alat> menu Papan dan pasang platform esp32 (dan jangan lupa untuk memilih papan ESP32 anda dari Alat> menu Papan selepas pemasangan).
Langkah 2: Menambah Perpustakaan FabGL ke IDE
Dengan menggunakan lakaran kosong di Arduino IDE, pastikan anda telah memilih Papan ESP anda dari menu Alat, Papan. (Pada masa penulisan VGA32 ESP tidak disenaraikan, saya memilih papan Dev Kit generik).
Dari menu Lakaran, pilih Sertakan Perpustakaan, kemudian pilih Pengurus Perpustakaan.
Dalam dialog carian, ketik FabGL dan tunggu sehingga muncul dalam senarai di bawah, sekarang klik butang Pasang.
selesai
Langkah 3: Menambah Perpustakaan Kad SD Tambahan yang Digunakan oleh RunCPM
Ini hampir sama dengan langkah sebelumnya tetapi bukannya mencari FabGL untuk SDFat
Dari menu Lakaran, pilih Sertakan Perpustakaan, kemudian pilih Pengurus Perpustakaan. Dalam dialog dialog jenis SDFat dan tunggu sehingga ia muncul dalam senarai di bawah, anda mungkin perlu menatal ke bawah senarai.
Anda mendapat pilihan dua versi:
1, SdFat oleh Bill Greiman
2, SdFat - Adafruit Fork
Saya telah mencuba kedua-duanya, kedua-duanya kelihatan baik. Tetapi projek RunCPM memang mengesyorkan pilihan Kedua "Adafruit Fork", namun pada nota terbaru sekarang ia mengatakan:
Semua papan kini menggunakan perpustakaan SdFat, dari sini:
Jadi sekarang saya memilih pilihan pertama untuk projek ini.
selesai
Langkah 4: Muat turun Projek RunCPM yang Diubah
Lawati Laman Github, Klik butang KOD dan muat turun sebagai fail ZIP
Simpan fail ini di suatu tempat (biasanya dalam direktori bernama Arduino.
Buka zip fail ke lokasi yang sama, ia akan menghasilkan folder bernama RunCPM-master
selesai
Langkah 5: Buka dan Semak Program RunCPM dan Kompilasi
Anda kini boleh menggunakan menu Arduino IDE File, Open. Navigasi ke folder yang anda gunakan di atas.
Di dalam folder ini terdapat satu lagi yang disebut RunCPM. Buka folder.
Di dalam folder itu terdapat fail.ino yang disebut RunCPM.ino. Ini adalah fail projek utama - buka.
Anda kini dapat melihat projek, membaca komen dan lain-lain. Buat perubahan jika anda perlu menyamai versi VGA32 -ESP anda. Ia mesti dikonfigurasikan terlebih dahulu untuk V1.4 papan.
Anda kini boleh mengklik kompilasi dan memuat naik, dengan andaian anda mempunyai VGA32 ESP yang tersambung, ia akan memuat naik emulator ke peranti anda.
PENTING: VGA32 mempunyai masalah dengan kad SD pada ketika ini, jadi jangan pasangkannya untuk mengetahui. Lihat langkah terakhir di bawah untuk maklumat lebih lanjut.
Langkah 6: Buat kad SD yang Sedia untuk Memulakan RunCPM Anda Dari
Ini mungkin langkah paling tipu. Saya cadangkan anda membaca README.md dari laman Github mengenai cara melakukannya. Inilah senarai perkara yang perlu saya buat:
Saya menganggap anda mempunyai kad SD kosong atau tidak berminat menyimpan fail pada fail yang anda ada, ini akan menghapusnya.
1, format kad SD sebagai FAT-32
2, Buat beberapa folder bernama A, B, C D dll (hingga P ini akan menjadi pemacu cakera ketika menjalankan CP / M). Perhatikan bahawa mereka adalah ibu kota.
3, Dalam setiap folder anda membuat Buat folder lain bernama 0 (itu nol) dan pilihan 1, 2, 3 dll (hingga 15) Kemudian folder adalah Kawasan Pengguna dalam emulasi CP / M. Anda hanya memerlukan folder 0 untuk memulakan.
4, Dari folder projek yang anda muat turun di direktori arduino, cari folder yang dipanggil CCP. Ini mengandungi pelbagai versi Pemproses Konsol Perintah CP / M. Salin yang disebut CCP-DR.60K ke akar Kad SD anda.
5, Sekarang cari folder di direktori projek yang disebut DISK, Ini berisi fail A. ZIP, anda perlu membuka zip fail ini ke direktori yang disebut A / 0 / pada kad SD anda. (lihat juga fail 1streadme untuk maklumat lebih lanjut). Malangnya ia tidak mempunyai "0" dalam senarai folder jadi anda perlu membuka zip ke folder sementara terlebih dahulu, kemudian salin kandungan untuk folder A ke A / 0 / pada kad SD.
6, Apabila anda telah melakukan langkah-langkah di atas, anda akan mempunyai SD-Card dengan struktur seperti ini:
F: CCP-DR.60K
/ A / 0
/1STREAD. ME
/ASM. COM
/…. dan lain-lain
/ B / 0
/ C / 0
dan lain-lain
Sekiranya anda mendapat kesilapan tentang tidak dapat memuat CCP dll semasa anda cuba boot dari SD-Card, periksa semula bahawa anda mempunyai segalanya dengan kadar yang betul!
Dalam usaha untuk membuat tahap ini sedikit lebih mudah, saya telah memuat naik versi siap pakai di atas, dengan tambahan perisian cp / m di atasnya dan juga memuat turunnya dari sini https://github.com/coopzone-dc/RunCPM/blob / master /… dan hanya unzipnya ke akar SD-Card yang diformat. Ini mesti memulakan anda kemudian anda boleh membuat sendiri kemudian.
Saya juga mengesyorkan anda membaca panduan persediaan di Github Repo, ia mempunyai keterangan mengenai folder yang anda perlukan.
Langkah 7: Sambungkan Monitor dan Papan Kekunci VGA
Putuskan kuasa ke kad VGA32 ESP.
Sambungkan Monitor VGA anda
Sambungkan Papan Kekunci PS / 2 Sambungkan semula kuasa ke kad ESP VGA32, anda akan melihat lampu papan kekunci menyala dan kira-kira 10 saat kemudian gambar akan muncul di skrin dengan arahan CP / M!
Penting: VGA32 menghadapi masalah semasa menggunakan kad SD dan tetapan semula lembut, oleh sebab itu penting untuk MENGHIDUPKAN POWER MATI seperti langkah pertama di atas, Lihat langkah terakhir untuk maklumat lebih lanjut.
Anda pergi …
Langkah 8: Masalah Dengan Kad SD pada Modul VGA32
Foto di atas menunjukkan kad ESP32 kedua saya (buatan rumah), ini berfungsi dengan baik dan tidak ada masalah di bawah ini. Jadi saya tahu bukan masalah perisian, sila baca di bawah mengenai versi VGA32.
Pada modul ESP VG32 saya (v1.4) kad SD menggunakan GPIO12, ini tidak digalakkan oleh Espressif Systems kerana pin ini digunakan semasa daya untuk mengesan voltan kerja untuk memori dalaman. Saya berharap ada yang memberitahu lelaki yang membuat kad VGA32 ini! Mungkin berbeza dengan anda, jadi semoga anda tidak menghadapi masalah ini.
Masalahnya adalah:
1, Tidak dapat memuat naik lakaran semasa kad dipasang.
2, Setelah menekan butang reset, ia terkunci sehingga kad SD dikeluarkan. Kemudian boot ke skrin kesalahan yang mengatakan tidak ada SD-Card! Anda boleh memasukkan kad dan menetapkan semula sekali lagi dan ia akan berfungsi untuk kali kedua.
Masalah ini dapat diperbaiki (Tetapi mempunyai risiko) lihat README.md di
atau anda sentiasa boleh mematikan / mematikan tenaga untuk memulakan papan. Atas sebab-sebab tertentu ini nampaknya berfungsi dengan baik. Sekiranya anda perlu memuat naik semula perisian RunCPM, anda mesti mengeluarkan kad SD terlebih dahulu.
Ini adalah petikan dari README. MD yang menerangkan masalahnya. Saya telah menggunakan kaedah pembaikan dan ia berfungsi dengan baik, TAPI kerana sifatnya risikonya adalah milik anda, baca terus…
Walau bagaimanapun, tetapan untuk VGA32 ESP nampaknya bertentangan pada tetapan GPIO untuk kad SD.
Ia berfungsi tetapi untuk memuat naik, anda mesti mengeluarkan kad SD dan setelah melakukan soft reset, anda mesti mengeluarkan kad SD dan kemudian menggantinya diikuti dengan tetapan semula yang lain. Ia berfungsi dengan baik dari power on atau hard reset. Sekiranya anda dapat membetulkannya, sila beritahu saya. KEMASKINI 11Okt2020: VGA32 ESP v1.4 menggunakan GPIO12 (MTDI, baca pada powerup / reset). Pin ini menentukan voltan untuk RAM, Voltan Dalaman LDO (VDD_SDIO). Semasa kad SD hadir, pin ini menarik pin tinggi dan ESP32 berpendapat voltan RAM harus 1.8V, tanpa kad SD pin ini mempunyai pull-down dalaman untuk menetapkan voltan RAM ke 3.3V. Ini sebenarnya disebut dalam catatan dari contoh yang diberikan pada projek FABGL, untuk memetik: nota mengenai GPIO 2 dan 12 - GPIO2: boleh menyebabkan masalah pada pengaturcaraan. GPIO2 juga mesti dibiarkan tidak terhubung / terapung, atau dipacu Rendah, untuk memasuki pemuat boot bersiri. Dalam mod boot biasa (tinggi GPIO0), GPIO2 tidak diendahkan. - GPIO12: harus dielakkan. Ia memilih voltan kilat. Untuk menggunakannya lumpuhkan efusi tetapan pengesanan GPIO12 dengan: python espefuse.py --port /dev/cu. SLAB_USBtoUART set_flash_voltage 3.3V WARN !! Baik untuk ESP32 dengan voltan 3.3V (ESP-WROOM-32). Ini akan MENJANA ESP32 anda jika denyar tidak 3.3V CATATAN1: ganti "/dev/cu. SLAB_USBtoUART" dengan port bersiri anda CATATAN 2: espefuse.py boleh dimuat turun dari
Ini selanjutnya menyatakan bahawa GPIO12 harus dielakkan, sedikit pun tidak ada yang memberitahu pembuat kad ESP VGA32!
TETAP: Saya telah mencuba pilihan untuk menetapkan voltan kilat untuk mengatasi penggunaan GPIO12 dan dapat mengesahkan pada ESP vga32 saya, Ia Berfungsi! Masalah tidak dapat diselesaikan lagi dengan Kad SD. Saya menggesa anda untuk memeriksa, memeriksa semula dan berfikir dengan teliti tentang membuat BRICK jika anda memutuskan untuk mencubanya juga. Saya tidak mengesyorkannya sebagai tindakan, tetapi bagi saya ia berjaya.
Disyorkan:
Arked Retro Berdiri 2-Pemain oleh Pusat Mikro: 20 Langkah
2-Player Stand-Up Retro Arcade oleh Micro Center: Pusat Micro tempatan anda sekarang membawa semua yang anda perlukan untuk membuat kabinet Retro Arcade berasaskan Raspberry Pi anda sendiri. Kit dapat disesuaikan sepenuhnya, termasuk kabinet, Raspberry Pi, butang, kayu bedik, aksesori audio dan video, dan banyak lagi. Ia
Tablet Akrilik Berdiri untuk Sim Penerbangan Dengan Tombol Sebenar: 4 Langkah
Acrylic Tablet Stand for Flight Sim with Real Knobs: Ini adalah singkatan untuk tablet (mis. IPad) untuk digunakan dengan perisian simulator penerbangan. Dengan menggunakan modul encoder berputar dan Arduino Mega, saya membuat penyelesaian di mana tombol fizikal dapat dipetakan untuk mengawal fungsi instrumen tertentu dalam sim. Oleh kerana
Berdiri Sendiri Arduino ATmega328p: 7 Langkah (dengan Gambar)
Berdiri Sendiri Arduino ATmega328p: Semuanya bermula apabila saya melihat " Permainan Binari " oleh Keebie81https: //www.instructables.com/id/Binary-Game/ Tetapi saya berpendapat bahawa versi yang berdiri sendiri dan bukannya papan Arduino, akan lebih baik untuk membebaskan
Raspberry Pi 3: Emulator Arcade Retro: 7 Langkah
Raspberry Pi 3: Retro Arcade Emulator: Motivasi saya untuk melakukan ini adalah kurangnya literasi teknologi dalam dunia sekarang. Walaupun dengan banyaknya komputer dan peranti kecil orang masih tidak mengetahui fungsi asas perkara yang mereka gunakan setiap hari. Saya berfikir bahawa ini akan
Techduino -- Cara Membuat Arduino Uno R3 buatan sendiri sendiri --: 9 Langkah (dengan Gambar)
Techduino || Cara Membuat Arduino Uno R3 Buatan Sendiri Sendiri ||: Sekiranya anda seperti saya, setelah saya mendapat Arduino saya dan melakukan pengaturcaraan terakhir pada cip pertama saya, saya ingin menariknya dari Arduino Uno R3 saya dan meletakkannya di litar saya sendiri. Ini juga akan membebaskan Arduino saya untuk projek masa depan. Setelah membaca banyak