Isi kandungan:

Z80 MBC2 - Susun semula QP / M Bios dan Loader: 6 Langkah
Z80 MBC2 - Susun semula QP / M Bios dan Loader: 6 Langkah

Video: Z80 MBC2 - Susun semula QP / M Bios dan Loader: 6 Langkah

Video: Z80 MBC2 - Susun semula QP / M Bios dan Loader: 6 Langkah
Video: Z80-MBC2: Z80 homebrew computer playing Startrek with CP/M 2024, Julai
Anonim
Z80 MBC2 - Susun semula QP / M Bios dan Loader
Z80 MBC2 - Susun semula QP / M Bios dan Loader

Sekiranya, seperti saya, anda mendapati diri anda berada dalam kedudukan di mana anda perlu menyusun semula bios QP / M untuk MBC2 anda - maka ini adalah cara anda melakukannya.

Saya mendokumentasikan proses, bagaimana menyusun semula versi yang ada. Terserah anda untuk membuat perubahan pada fail Bios sebenar, jika anda memerlukannya. Saya hanya membuat perubahan untuk memastikan pemasangan QP / M saya sesuai dengan versi CP / M 2.2 Bios yang saya gunakan (perubahan ini tidak ditunjukkan hanya proses bagaimana)

Bahagian pertama proses ini hampir sama dengan CP / M 2.2 Bios, jadi jika anda sudah menyiapkan komputer binaan anda, jangan ragu untuk melewati bahagian tersebut.

Perbezaan utama ialah QP / M harus dimuat dari trek pertama cakera but - bukan fail.bin seperti CP / M 2.2, yang dijelaskan di bawah.

Bekalan

Mesin tingkap untuk menjalankan penyusun. Saya menggunakan mesin maya windows xp yang berjalan di KVM, kerana sangat kecil dan tidak akan pernah melalui internet. Tetapi ia berfungsi di bawah windows 10 ok.

Penyusun TASM 3.2 z80, cari ini di google, anda mesti berakhir di

Salinan fail zip SD dari laman utama z80-mbc2, pada saat penulisannya adalah

CPMTools for windows dari https://www.cpm8680.com/cpmtools/cpmtoolsWin32.zip ini adalah versi 32bit tetapi berfungsi dengan baik pada sistem 64bit.

Langkah 1: Menambah Perisian ke Komputer Binaan Anda

Menambah Perisian ke Komputer Binaan Anda
Menambah Perisian ke Komputer Binaan Anda
Menambah Perisian ke Komputer Binaan Anda
Menambah Perisian ke Komputer Binaan Anda

Setelah mesin Windows anda dihidupkan, salin atau muat turun fail yang disebutkan di bahagian "anda akan memerlukan" di atas.

Buat direktori yang berfungsi pada mesin anda, saya sarankan (untuk mengelakkan banyak ketik dan kesalahan ketik) anda membuat direktori pada pemacu C, misalnya c: / z80mbc. Saya sangat mengesyorkan agar anda mengelakkan ruang dalam nama, jika boleh dan jalan direktori yang panjang. Pastikan ia sederhana.

Buat folder di dalam direktori ini untuk masuk fail TASM, c: / z80mbc / tasm

Buat folder untuk gambar kad SD masuk, c: / z90mbc / SD

Klik kanan pada setiap fail dan ekstrak kandungannya ke direktori yang anda buat di atas. Jadi tasm.zip diekstrak ke c: / z80mbc / tasm dan fail zip yang takut ke c: / z80mbc / SD

Untuk mempermudah beberapa langkah seterusnya, anda juga boleh membongkar cpmtool32.zip ke direktori lain, misalnya c: / z80mbc / cpmtools.

Langkah 2: Menambah Alat Anda ke Laluan Windows

Menambah Alat Anda ke Laluan Windows
Menambah Alat Anda ke Laluan Windows
Menambah Alat Anda ke Laluan Windows
Menambah Alat Anda ke Laluan Windows

Bergantung pada versi windows anda, lakukan perkara berikut

Windows 10

Buka menu sifat dengan mengklik kanan pada item "Ini PC" dari tetingkap penjelajah.

Klik pada "Tetapan sistem lanjutan", ini akan membuka tetingkap yang disebut "Properties Sistem" (Anda juga boleh mendapatkan sifat sistem dengan cara lain, tetapi saya tidak menggunakan tingkap sangat banyak jadi ini adalah cara saya!)

Klik pada "Pemboleh ubah Persekitaran"

Windows XP

Klik butang mula, klik kanan pada "komputer saya", kemudian anda dapat mengklik sifat untuk mendapatkan "sifat sistem".

Klik pada Tab Lanjutan

Klik pada "Pemboleh ubah Persekitaran"

Apabila anda mempunyai tetingkap Pemboleh ubah Lingkungan di skrin, anda perlu melakukan dua perkara;

Tambahkan pemboleh ubah baru

Di bahagian atas tetingkap, di bawah "pemboleh ubah pengguna untuk …"

Klik Baru

Untuk jenis Nama dalam TASMTABS

Untuk jenis Nilai di c: / z80mbc / tasm

Ubah suai pemboleh ubah PATH

Di bahagian bawah tetingkap, di bawah "Pembolehubah Sistem"

pilih (highlight) Path, kemudian klik Edit

Di akhir kandungan yang ada tambahkan; c: / z80mbc / tasm; c: / z80mbc / cpmtools

(Jangan lupa titik koma di awal!)

Anda kini perlu menghidupkan semula komputer agar penambahan ini berlaku.

Langkah 3: Menguji Tasm

Menguji Tasm
Menguji Tasm
Menguji Tasm
Menguji Tasm
Menguji Tasm
Menguji Tasm

Untuk menguji kita dapat menyusun salinan tepat dari QP / M BIOS yang ada, kita harus melakukan sedikit lagi persiapan. Fail dalam direktori ini adalah:

BIOS QPM271 - S150918.asm - Fail BIOS utama, kemungkinan besar fail yang akan anda ubah.

QPM271_ColdLoader - S160918.asm - ini adalah pemuat QP / M, ia membaca trek pertama dari gambar cakera ke memori. Dalam sistem CP / m yang lebih tradisional ini akan disebut sebagai bootstrap dan akan berada di EEPROM atau ROM. Anda tidak perlu mengubah suai fail ini yang sudah disusun dan pada gambar kad SD sebagai QPMLDR. BIN

SYSGENQ - S140918.asm - Program ini digunakan bersama dengan pemasang QP / M, sekali lagi anda norammly tidak perlu mengubahnya, ia sudah ada dalam imej cakera but yang siap digunakan. Ini pada dasarnya membaca dan menulis trek yang digunakan oleh pemuat sejuk di atas.

Sebelum kami menguji pemasangan TASM kami, anda memerlukan satu fail lagi, cpm22_Z80MBC2.asm, ia tidak ada dalam direktori ini secara lalai kerana fail yang sama digunakan untuk cpm 2.2. Kami memerlukan fail ini untuk menyediakan CBIOS / CCP asal untuk boot awal QP / M. Anda boleh menyalin fail ini dari direktori CPM_22_Custom_BIOS.

Sama ada menggunakan windows explorer untuk menyalinnya atau dari perintah (CMD) lakukan

cd c: / z80mbc / sd / src / QPM_271_Custom_BIOS

salin.. / CPM_22_Custom_BIOS / cpm22_Z80MBC2.asm

Anda sekarang perlu menukar fail ini untuk memasukkan QP / M BIOS, buka fail dengan notepad:

cari "QPM" (CTRL-F, atau edit menu dan cari) Lihat gambar di atas

tukar fail dari:

;-----------------------------------------------------------------------

; Z80-MBC2; ---------------------------------------------- -------------------------; #sertakan "BIOS QPM271 - S150918.asm"; CBIOS yang disertakan untuk Z80-MBC2 #masuk "BIOS CPM22 - S030818-R140319.asm"; Termasuk CBIOS untuk Z80-MBC2

Kepada:

;-----------------------------------------------------------------------

; Z80-MBC2; ---------------------------------------------- ------------------------- #masuk "BIOS QPM271 - S150918.asm"; CBIOS yang disertakan untuk Z80-MBC2; #masuk "BIOS CPM22 - S030818-R140319.asm"; Termasuk CBIOS untuk Z80-MBC2

Anda juga harus memeriksa nilai iLoadMode dalam fail cpm22_Z80MBC2.asm yang disalin, di sekitar baris 40:

;-----------------------------------------------------------------------

; Z80-MBC2; ---------------------------------------------- ------------------------- iLoadMode.equ 0; Tetapkan ke 1 untuk mod iLoad (untuk ujian),; tetapkan ke 0 untuk penjanaan imej trek 0,; tetapkan ke 2 untuk penghasilan fail binari cpm22.bin; --------------------------------------- --------------------------------

Ia mesti berada di 0, ini adalah lalai - tetapi periksa juga!

Setelah selesai, simpan fail.

anda kini boleh menjalankan tasm:

tasm -b -g3 -80 cpm22_Z80MBC2.asm qpm22.bin

Perhatikan nama fail output yang berbeza, jika semuanya berjalan lancar, anda akan melihat output seperti ini:

c: / z80mbc / sd / src / QPM_271_Custom_BIOS> tasm -b -g3 -80 cpm22_Z80MBC2.asm qpm22.bin

Penyusun TASM Z80. Versi 3.2 September 2001. Hak Cipta (C) 2001 Tasak Perisian Squak Valley: lulus 1 lengkap. tasm: lulus 2 lengkap. tasm: Bilangan ralat = 0 c: / z80mbc / sd / src / QPM_271_Custom_BIOS>

Anda sudah bersedia untuk membuat perubahan yang anda perlukan pada BIOS! fail.

Langkah 4: Cari Alamat Jam Masa Nyata Anda

Sebelum anda memasang versi baru BIOS, sebahagian daripada pemasangan QP / M perlu mengetahui alamat kemasukan untuk rutin jam masa nyata. Sekiranya anda tidak menetapkannya, fungsi dalam QP / M akan mengembalikan "No Clock" sebagai mesej ralat.

Untuk mendapatkan alamat, edit fail LST yang dihasilkan semasa anda menyusun fail qpm22.bin, iaitu.

notepad cpm22_Z80MBC2.lst

Cari label TIMDAT, Ctrl-f (atau cari) cari TIMDAT, anda akan menemui bahagian seperti ini:

0855+ EC16; ================================================== =========================;

0856+ EC16; TIMDAT; 0857+ EC16; ================================================== =========================; 0858+ EC16; Ini adalah rutin khusus QP / M untuk antara muka jam QP / M-ke-masa-nyata; 0859+ EC16; untuk menggunakan sepenuhnya ciri cap masa / tarikh QP / M.; 0860+ EC16; Alamat TIMDAT mesti dinyatakan semasa QINSTALL melalui pilihan; 0861+ EC16; menu pemasangan QDOS (lihat halaman 26-27 Panduan Pemasangan QP / M); 0862+ EC16;; 0863+ EC16; CATATAN: Sekiranya RTC tidak ada, IOS akan memberikan semua bait 0s. Ini adalah; 0864+ EC16; "ditafsirkan" oleh QP / M sebagai "TIADA JAM".; 0865+ EC16; ================================================== =========================; 0866+ EC16 TIMDAT 0867+ EC16 C3 19 EC jp PENGGUNA

Buat catatan alamat HEX lajur kedua, dalam kes ini EC16. Ambil nilai dari garis bawah komen, tepat di atas arahan lompat JP USERCLK. Di mana tertulis TIMDAT.

Sekarang anda mempunyai vale, anda boleh keluar dari fail dan meneruskan QP / M intsall

Langkah 5: Tambahkan Bios ke Imej Cakera Baru

Dalam langkah ini kita akan membuat salinan cakera boot DS1N00. DSK kita sendiri dan menambahkan versi BIOS kita sendiri untuk siap menyelesaikan pemasangan QP / M

Untuk memulakan dengan membuat folder temp drive C untuk menyimpan salinan kerja anda. Buka prompt CMD dan ketik berikut

cd c: / z80mbc

mkdir temp cd temp

Seterusnya salin gambar cakera asal dari direktori SD

salin c: / z80mbc / sd / DS1N00. DSK.

Dapatkan fail semasa dari imej cakera:

cd c: / z80mbc / temp cpmcp -f z80mbc2-d0 DS1N00. DSK 0: * disk0

Urutan di atas akan membuat folder sementara lain di dalam direktori temp yang disebut disk0, mereka menyalin semua fail yang ada dari gambar cakera ke dalam direktori. Gunakan DIR setelahnya untuk memastikan anda mempunyai fail.

Selanjutnya kita dapat memformat gambar cakera sebagai cakera baru, ini adalah satu-satunya cara mudah untuk menambahkan trek boot ke gambar cakera, tanpa harus membuat cakera baru dari awal. Perhatikan pilihan "-b" menggunakan BIOS yang kami susun di atas.

mkfs.cpm -f z80mbc2-d0 -b c: / z80mbc / sd / src / QPM_271_Custom_BIOS / qpm22.bin DS1N00. DSK

Sekarang trek but dikemas kini, anda boleh menambahkan fail asal kembali ke gambar:

cpmcp -f z80mbc2-d0 DS1N00. DSK disk0 / * 0:

Anda sekarang mempunyai cakera yang dapat di-boot, ia sebenarnya akan boot CP / M bukan QP / M pada langkah seterusnya kita menggunakan pemasang QP / M untuk menggantikan bahagian CBIOS dari sistem CP / M

Pastikan anda mempunyai salinan kad SD boot up anda yang berfungsi, kemudian salin fail DS1N00. DSK yang anda buat dalam langkah ini ke folder root kad SD itu akan menggantikan fail yang ada.

Langkah 6: Boot ke Imej Cakera Baru Anda

Sambungkan terminal bersiri ke z80mbc2

tahan suis pengguna, tahan, tekan dan lepaskan suis tetapan semula. Apabila LED pengguna padam dan lampu IOS berkelip melepaskan suis pengguna.

Anda sekarang harus berada di skrin "Boot" di terminal, seperti ini: Z80-MBC2 - A040618

Subsistem IOS - I / O - S220718-R240620 IOS: Jam Z80 ditetapkan pada 8MHz IOS: Modul RTC DS3231 Found (26/10/20 16:46:45) IOS: Sensor suhu RTC DS3231: 20C IOS: Found GPE Option IOS: CP / M Autoexec MATI IOS: Pilih mod but atau parameter sistem: 0: Tidak ada perubahan (3) 1: Asas 2: Keempat 3: Muatkan OS dari Set Disk 1 (QP / M 2.71) 4: Autoboot 5: iLoad 6: Ubah kelajuan jam Z80 (-> 4MHz) 7: Toggle CP / M Autoexec (-> ON) 8: Ubah Set Cakera 1 (QP / M 2.71) 9: Ubah waktu / tarikh RTC Masukkan pilihan anda>

Gunakan Pilihan 8 untuk mengubah set cakera menjadi QP / M, Apabila anda memilihnya, anda harus memuatkan BIOS QP / M anda. Saya juga mengesyorkan menekan reset, kerana saya telah melihat muatan pertama selepas pilihan 8 gagal beberapa kali. Seperti ini:

IOS: Set Cakera Semasa 1 (QP / M 2.71)

IOS: Memuatkan program boot (QPMLDR. BIN)… Selesai IOS: Z80 sedang berjalan dari sekarang Z80-MBC2 QP / M 2.71 Cold Loader - S160918 Memuat… selesai Versi Custom Z80-MBC2 QP / M 2.71 BIOS - S150918 A>

Catatan Saya menambah "Versi Custom" di atas semasa saya mengedit Fail BIOS, sama seperti demo untuk langkah ini.

Pada ketika ini anda benar-benar menjalankan CP / M 2.2 Cbios dengan BIOS khusus untuk QP / M, jadi perkara seperti perintah TIME tidak berfungsi, misalnya jika anda mengetik TIME (harus memberi respons dengan tarikh + waktu) anda akan mendapat CP / M 2.2 tindak balas MASA? - ia menganggap ia adalah perintah pada cakera dan tidak dapat menemuinya.

Sudah tiba masanya untuk memasang CBIOS pengganti QP / M ke gambar cakera.

Mulakan program qinstall.com:

A> qinstall

QP / M 2.7 Program Pemasangan / Konfigurasi v2.1 QINSTALL menggunakan program SYSGEN anda untuk memasang QP / M ke dalam cakera anda. Setelah mengkonfigurasi sistem anda, anda akan diminta untuk nama program SYSGEN anda. Utiliti ini mesti tersedia di salah satu cakera anda. Agar QINSTALL berjaya diselesaikan, imej sistem pada cakera dan sistem yang berada dalam memori HARUS sama. (Gunakan untuk membatalkan program.) Adakah anda ingin meneruskan? (Y / T):

Kemudian jawab Y untuk meneruskan.

Anda akan ditanya seterusnya mengenai Tetapan QCP (anda boleh bermain kemudian!) Untuk sekarang sebut N

Adakah anda ingin memeriksa dan / atau mengubahsuai

tetapan QCP lalai? (Y / N): N

Selanjutnya anda akan ditanya mengenai Tetapan QDOS, tekan Y

Adakah anda ingin memeriksa atau mengubahsuai

tetapan QDOS lalai? (Y / N): Y

Anda akan mempunyai menu seperti ini:

*** Tetapan Pemasangan Sistem QDOS ***

Simpan watak yang diperoleh semasa imbasan konsol.. YA BIOS menyokong jadual kod ralat BDOS ………. TIADA Alamat vektor lompatan masa / tarikh …………. Lumpuhkan Ciri carian / pemacu pengguna ……………….. DIBAYAR Log masuk semula cakera automatik …………………… DIBENARKAN Pulihkan tetapan awal Keluar dari pemasangan QDOS Masukkan pilihan:

Pada ketika ini anda perlu memasukkan nombor HEX dari Langkah 4 di atas (cari alamat jam masa nyata anda)

Tekan 2, dan masukkan alamat HEX EC16, jika anda tidak membuat perubahan pada bios, dalam kes saya itu EC04 kerana saya menambahkan beberapa teks dll.

Masukkan alamat vektor masa / tarikh dalam hex (0 hingga NONAKTIFKAN): EC04

Sekarang anda boleh keluar dari menu QDOS dan teruskan.

Skrin seterusnya menunjukkan:

Masukkan nama program SYSGEN anda dan tekan RETURN.

(Nyatakan pemacu jika perlu; jangan gunakan pelanjutan. COM): SYSGENQ

Masukkan versi khas sysgen, yang disebut SYSGENQ

Anda kemudian akan melihat:

*** Membuat gambar QP / M 59k ***

QINSTALL kini akan melaksanakan A: SYSGENQ. COM. Anda mesti mengarahkan A: SYSGENQ. COM untuk membaca trek sistem. Apabila READ selesai, keluar dari program SYSGEN. Mesej "*** QINSTALL mencari gambar sistem ***" akan muncul diikuti dengan arahan selanjutnya. Tekan untuk meneruskan -OR- untuk membatalkan -

Tekan C untuk meneruskan:

SYSGENQ - S140918 - Z80-MBC2

CP / M 2.2 SYSGEN-like Utility Gunakan hanya untuk memasang QP / M 2.71 menggunakan QINSTALL. COM AMARAN: Perintah W akan menimpa trek sistem! Baca trek sistem dan muatkan ke RAM atau tuliskan kembali ke cakera? [R / W]>

Kali pertama anda melihat mesej ini memilih R untuk membaca trek sistem, anda akan mendapat:

Membaca … selesai

*** QINSTALL mencari imej sistem *** Imej sistem dijumpai bermula jam 0900H. Memasang QP / M. Program SYSGEN anda kini akan disambung semula. Anda mesti mengarahkan program untuk MENULIS trek sistem. Tekan untuk meneruskan -OR- untuk membatalkan -

Sekali lagi tekan C untuk meneruskan:

SYSGENQ - S140918 - Z80-MBC2

CP / M 2.2 SYSGEN-like Utility Gunakan hanya untuk memasang QP / M 2.71 menggunakan QINSTALL. COM AMARAN: Perintah W akan menimpa trek sistem! Baca trek sistem dan muatkan ke RAM atau tuliskan kembali ke cakera? [R / W]>

Kali ini tekan W untuk menulis QP / M dan BISO baru kembali ke trek cakera:

Penulisan … selesai

A>

Anda kini boleh menekan semula dan boot semula ke bios QP / M baru anda. Sekiranya anda sekarang mengetik TIME pada prompt, ia akan menjalankan versi penuh QP / M dan akan bertindak balas seperti ini:

Z80-MBC2 - A040618

Subsistem IOS - I / O - S220718-R240620 IOS: Jam Z80 ditetapkan pada 8MHz IOS: Modul RTC DS3231 Found (26/10/20 17:10:48) IOS: Sensor suhu RTC DS3231: 20C IOS: Dijumpai GPE Option OOS: CP / M Autoexec MATI IOS: Set Cakera Semasa 1 (QP / M 2.71) IOS: Memuatkan program boot (QPMLDR. BIN) … Selesai IOS: Z80 sedang berjalan dari sekarang Z80-MBC2 QP / M 2.71 Cold Loader - S160918 Memuat … selesai Versi Custom Z80-MBC2 QP / M 2.71 BIOS - S150918 A> time 26-Oct-20 17:10:56 A>

Anda dan berjalan dengan BIOS baru, perhatikan teks "Versi Custom" di atas. Anda mungkin harus membaca keseluruhan dokumentasi QP / M di

Sirip

Disyorkan: