Talaan ng mga Nilalaman:

Z80 MBC2 - Muling isulat ang QP / M Bios at Loader: 6 na Hakbang
Z80 MBC2 - Muling isulat ang QP / M Bios at Loader: 6 na Hakbang

Video: Z80 MBC2 - Muling isulat ang QP / M Bios at Loader: 6 na Hakbang

Video: Z80 MBC2 - Muling isulat ang QP / M Bios at Loader: 6 na Hakbang
Video: HUNGRY SHARK WORLD EATS YOU ALIVE 2024, Hulyo
Anonim
Z80 MBC2 - Muling isulat ang QP / M Bios at Loader
Z80 MBC2 - Muling isulat ang QP / M Bios at Loader

Kung, tulad ng sa akin, nahanap mo ang iyong sarili sa isang posisyon kung saan kailangan mong muling isulat ang mga QP / M bios para sa iyong MBC2 - kung gayon ganito mo ito gagawin.

Naitala ko ang proseso, kung paano muling buuin ang mayroon nang bersyon. Nasa sa iyo ang gumawa ng mga pagbabago sa aktwal na mga file ng Bios, kung kailangan mo. Gumawa lang ako ng mga pagbabago upang mapanatili ang aking pag-install ng QP / M na nakahanay sa bersyon ng CP / M 2.2 Bios na ginagamit ko (ang mga pagbabagong ito ay hindi ipinakita lamang sa proseso ng kung paano)

Ang unang bahagi ng proseso ay halos magkapareho sa CP / M 2.2 Bios, kaya kung mayroon ka nang set up ng iyong computer na huwag mag-atubiling laktawan ang bahaging iyon.

Ang pangunahing pagkakaiba ay ang QP / M ay kailangang mag-load mula sa unang track ng boot disk - hindi isang.bin file tulad ng CP / M 2.2, na inilarawan sa ibaba.

Mga gamit

Ang isang windows machine upang patakbuhin ang tagatala. Gumamit ako ng windows xp virtual machine na tumatakbo sa isang KVM, sapagkat napakaliit nito at hindi kailanman pupunta sa internet. Ngunit gumagana ito sa ilalim ng windows 10 perpektong ok.

Ang tagatala ng TASM 3.2 z80, hanapin ito sa google, dapat kang magtapos sa

Isang kopya ng SD zip file mula sa home page ng z80-mbc2, sa oras ng pagsulat nito ay

Ang mga CPMTools para sa mga bintana mula sa https://www.cpm8680.com/cpmtools/cpmtoolsWin32.zip ito ay isang bersyon ng 32bit ngunit gumagana nang ok sa mga 64bit system.

Hakbang 1: Pagdaragdag ng Software sa Iyong Build Computer

Pagdaragdag ng Software sa Iyong Build Computer
Pagdaragdag ng Software sa Iyong Build Computer
Pagdaragdag ng Software sa Iyong Build Computer
Pagdaragdag ng Software sa Iyong Build Computer

Kapag nakuha mo na ang iyong windows machine at tumatakbo, kopyahin o i-download ang mga file na nabanggit sa seksyong "kakailanganin mo" sa itaas.

Lumikha ng isang gumaganang direktoryo sa iyong machine, iminumungkahi ko (upang maiwasan ang maraming pagta-type at typo's) lumikha ka ng isang direktoryo sa drive C, halimbawa c: / z80mbc. Masidhi kong inirerekumenda na iwasan mo ang mga puwang sa mga pangalan, kung maaari at mahaba ang mga path ng direktoryo. Panatilihing simple.

Lumikha ng isang folder sa loob ng direktoryong ito upang mapasok ng mga file na TASM, c: / z80mbc / tasm

Lumikha ng isang folder para mapasok ang imahe ng SD card, c: / z90mbc / SD

Mag-right click sa bawat isa sa mga file at kunin ang mga nilalaman sa mga direktoryo na iyong nilikha sa itaas. Kaya ang tasm.zip ay nakuha sa c: / z80mbc / tasm at ang natakot na zip file sa c: / z80mbc / SD

Upang gawing mas madali ang ilan sa mga susunod na hakbang maaari mo ring i-unpack ang cpmtool32.zip sa isa pang direktoryo, halimbawa c: / z80mbc / cpmtools.

Hakbang 2: Pagdaragdag ng Iyong Mga Tool sa Windows Path

Pagdaragdag ng Iyong Mga Tool sa Windows Path
Pagdaragdag ng Iyong Mga Tool sa Windows Path
Pagdaragdag ng Iyong Mga Tool sa Windows Path
Pagdaragdag ng Iyong Mga Tool sa Windows Path

Nakasalalay sa iyong bersyon ng windows gawin ang isa sa mga sumusunod

Windows 10

Buksan ang menu ng mga pag-aari sa pamamagitan ng pag-right click sa item na "PC na Ito" mula sa isang explorer window.

Mag-click sa "Mga advanced na setting ng system", magbubukas ito ng isang window na tinatawag na "Mga Katangian ng System" (Maaari ka ring makapunta sa mga pag-aari ng system sa ibang mga paraan, ngunit hindi ko masyadong ginagamit ang mga bintana kaya't ito ang aking paraan!)

Mag-click sa "Mga variable ng Kapaligiran"

Windows XP

I-click ang pindutan ng pagsisimula, mag-right click sa "aking computer", pagkatapos ay maaari mong i-click ang mga pag-aari upang makakuha ng "mga pag-aari ng system".

Mag-click sa Advanced Tab

Mag-click sa "Mga variable ng Kapaligiran"

Kapag mayroon kang window ng Mga variable ng Kapaligiran sa screen kailangan mong gumawa ng dalawang bagay;

Magdagdag ng isang bagong variable

Sa tuktok na bahagi ng mga bintana, sa ilalim ng "mga variable ng gumagamit para sa …"

Mag-click Bago

Para sa uri ng Pangalan sa TASMTABS

Para sa uri ng Halaga sa c: / z80mbc / tasm

Baguhin ang variable na PATH

Sa ibabang bahagi ng window, sa ilalim ng "Mga Variable ng System"

piliin ang (highlight) Path, pagkatapos ay i-click ang I-edit

Sa pagtatapos ng mayroon nang nilalaman idagdag; c: / z80mbc / tasm; c: / z80mbc / cpmtools

(Huwag kalimutan ang semi-colon sa simula!)

Kailangan mo ngayong i-restart ang computer para magkabisa ang mga pagdaragdag na ito.

Hakbang 3: Pagsubok sa Tasm

Pagsubok Tasm
Pagsubok Tasm
Pagsubok Tasm
Pagsubok Tasm
Pagsubok Tasm
Pagsubok Tasm

Upang masubukan maaari naming makatipon ng isang eksaktong kopya ng umiiral na QP / M BIOS, kailangan naming gumawa ng kaunti pang paghahanda. Ang mga file sa direktoryo na ito ay:

BIOS QPM271 - S150918.asm - Ang pangunahing file ng BIOS, malamang na ito ang file na iyong babaguhin.

QPM271_ColdLoader - S160918.asm - ito ang QP / M loader, binabasa nito ang mga unang track mula sa imahe ng disk sa memorya. Sa isang mas tradisyonal na CP / m system na ito ay tinutukoy bilang isang bootstrap at magiging sa EEPROM o ROM. Hindi mo kailangang baguhin ang file na ito ay naipon na at sa imahe ng SD card bilang QPMLDR. BIN

SYSGENQ - S140918.asm - Ang program na ito ay ginagamit kasabay ng QP / M installer, muli mong hindi kailangan na baguhin ito, mayroon na ito sa imahe ng boot disk na handa nang gamitin. Mahalagang basahin at isusulat nito ang mga track na ginamit ng malamig na loader sa itaas.

Bago namin subukan ang aming pag-install ng TASM kailangan mo ng isa pang file, cpm22_Z80MBC2.asm, wala ito sa direktoryo na ito bilang default dahil ito ang parehong file na ginamit para sa cpm 2.2. Kailangan namin ang file na ito upang maibigay ang orihinal na CBIOS / CCP para sa paunang boot ng QP / M. Maaari mong kopyahin ang form ng file na ito sa direktoryo ng CPM_22_Custom_BIOS.

Alinmang gumamit ng windows explorer upang kopyahin ito o mula sa isang command (CMD) prompt gawin

cd c: / z80mbc / sd / src / QPM_271_Custom_BIOS

kopyahin.. / CPM_22_Custom_BIOS / cpm22_Z80MBC2.asm

Kailangan mo ngayong baguhin ang file na ito upang isama ang QP / M BIOS, buksan ang file gamit ang notepad:

maghanap para sa "QPM" (CTRL-F, o i-edit ang menu at hanapin) Tingnan ang larawan sa itaas

baguhin ang file mula sa:

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

; Z80-MBC2; ----------------- -----------------; # isama ang "BIOS QPM271 - S150918.asm"; Kasamang CBIOS para sa Z80-MBC2 # isama ang "BIOS CPM22 - S030818-R140319.asm"; Kasamang CBIOS para sa Z80-MBC2

Sa:

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

; Z80-MBC2; ----------------- ----------------- # isama ang "BIOS QPM271 - S150918.asm"; Kasamang CBIOS para sa Z80-MBC2; # isama ang "BIOS CPM22 - S030818-R140319.asm"; Kasamang CBIOS para sa Z80-MBC2

Dapat mo ring suriin ang halaga ng iLoadMode sa nakopya na cpm22_Z80MBC2.asm file, sa paligid ng linya 40:

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

; Z80-MBC2; ----------------- ----------------- iLoadMode.equ 0; Itakda sa 1 para sa iLoad mode (para sa pagsubok),; itakda sa 0 para sa track 0 pagbuo ng imahe,; itakda sa 2 para sa cpm22.bin binary file na pagbuo; ----

Kailangan itong nasa 0, ito ang default - ngunit suriin pa rin!

Kapag tapos na, i-save ang file.

maaari mo nang patakbuhin ang tasm:

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

Tandaan ang iba't ibang filename ng output, kung maayos ang lahat dapat mong makita ang output na tulad nito:

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

TASM Z80 Assembler. Bersyon 3.2 Setyembre, 2001. Copyright (C) 2001 Squak Valley Software tasm: pumasa sa 1 kumpleto. tasm: pass 2 complete. tasm: Bilang ng mga error = 0 c: / z80mbc / sd / src / QPM_271_Custom_BIOS>

Handa ka na gumawa ng anumang mga pagbabago na kailangan mo sa BIOS! file

Hakbang 4: Hanapin ang Iyong Tunay na Oras ng Orasan ng Orasan

Bago mo mai-install ang bagong bersyon ng BIOS, bahagi ng pag-install ng QP / M ay kailangang malaman ang address ng pagpasok para sa mga gawain sa real time na orasan. Kung hindi mo itatakda ito anumang oras na ang mga pagpapaandar sa QP / M ay babalik ang "Walang Clock" bilang isang mensahe ng error.

Upang makuha ang address, i-edit ang LST file na ginawa kapag naipon mo ang qpm22.bin file, ibig sabihin.

notepad cpm22_Z80MBC2.lst

Paghahanap para sa label na TIMDAT, Ctrl-f (o hanapin) na paghahanap para sa TIMDAT, mahahanap mo ang isang seksyon na tulad nito:

0855+ EC16; =_ ====;

0856+ EC16; TIMDAT; 0857+ EC16; =_ ====; 0858+ EC16; Ito ay isang tiyak na gawain ng QP / M para sa interface ng QP / M-to-real-time-relo; 0859+ EC16; upang ganap na magamit ang mga tampok sa oras / petsa ng panlililak ng QP / M.; 0860+ EC16; Ang address ng TIMDAT ay dapat na tinukoy sa panahon ng QINSTALL sa pamamagitan ng pagpipilian ng; 0861+ EC16; ang menu ng pag-install ng QDOS (tingnan ang mga pahina 26-27 ng Patnubay sa Pag-install ng QP / M); 0862+ EC16;; 0863+ EC16; TANDAAN: Kung ang RTC ay wala, bibigyan ng IOS ang lahat ng byte. Ito ay; 0864+ EC16; "binigyang kahulugan" ng QP / M bilang isang "WALANG CLOCK".; 0865+ EC16; =_ ====; 0866+ EC16 TIMDAT 0867+ EC16 C3 19 EC jp USERCLK

Gumawa ng isang tala ng pangalawang haligi ng HEX address, sa kasong ito EC16. Alisin ang halaga sa linya sa ibaba ng mga komento, sa itaas lamang ng tagubilin sa pagtalon ng JP USERCLK. Kung saan sinasabi nitong TIMDAT.

Ngayon ay mayroon ka ng libing, maaari kang lumabas sa file at magpatuloy sa QP / M intsall

Hakbang 5: Idagdag ang Bios sa isang Bagong Disk Image

Sa hakbang na ito gagawa kami ng aming sariling kopya ng DS1N00. DSK boot disk at idagdag ang aming sariling bersyon ng BIOS dito handa na upang makumpleto ang pag-install ng QP / M

Upang magsimula sa paggawa ng isang temp folder ng drive C upang mapanatili ang iyong mga gumaganang kopya. Buksan ang isang prompt ng CMD at i-type ang sumusunod

cd c: / z80mbc

mkdir temp cd temp

Susunod na kopyahin ang orihinal na imahe ng disk mula sa direktoryo ng SD

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

Kunin ang kasalukuyang mga file mula sa imahe ng disk:

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

Ang pagkakasunud-sunod sa itaas ay lilikha ng isa pang pansamantalang folder sa loob ng direktoryo ng temp na tinatawag na disk0, kinopya nila ang lahat ng mga mayroon nang mga file mula sa imahe ng disk papunta sa direktoryo. Gumamit ng DIR pagkatapos upang matiyak na mayroon ka ng mga file.

Susunod maaari nating mai-format ang imahe ng disk bilang isang bagong disk, ito lamang ang madaling paraan upang idagdag ang mga track ng boot sa imahe ng disk, nang hindi kinakailangang lumikha ng isang bagong bagong disk mula sa simula. Tandaan na ang opsyong "-b" ay gumagamit ng BIOS na aming naipon sa itaas.

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

Ngayon ang mga track ng boot ay na-update, maaari mong idagdag ang orihinal na mga file pabalik sa imahe:

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

Mayroon ka na ngayong isang bootable disk, talagang boot nito ang CP / M hindi QP / M sa susunod na hakbang na ginagamit namin ang QP / M installer upang mapalitan ang bahagi ng CBIOS ng CP / M system

Tiyaking mayroon kang isang gumaganang kopya ng iyong boot up SD card, pagkatapos ay kopyahin ang DS1N00. DSK file na iyong nilikha sa hakbang na ito sa root folder ng SD card papalitan nito ang mayroon nang file.

Hakbang 6: Mag-boot Sa Iyong Bagong Disk Image

Ikonekta ang isang serial terminal sa z80mbc2

hawakan ang switch ng gumagamit, panatilihin itong hawak, pindutin at palabasin ang pag-reset ng switch. Kapag ang LED ng gumagamit ay namatay at ang ilaw ng IOS ay kumalas na pinakawalan ang switch ng gumagamit.

Dapat ay nasa screen ka na ng "Boot" sa terminal, tulad nito: Z80-MBC2 - A040618

IOS - I / O Subsystem - S220718-R240620 IOS: Z80 na itinakda sa 8MHz IOS: Natagpuan RTC DS3231 Module (26/10/20 16:46:45) IOS: RTC DS3231 temperatura sensor: 20C IOS: Natagpuan ang Opsyon ng GPE IOS: Ang CP / M Autoexec ay NAKA-OFF IOS: Piliin ang mode ng boot o mga parameter ng system: 0: Walang pagbabago (3) 1: Pangunahing 2: Forth 3: Load OS mula sa Disk Set 1 (QP / M 2.71) 4: Autoboot 5: iLoad 6: Baguhin ang bilis ng orasan ng Z80 (-> 4MHz) 7: I-toggle ang CP / M Autoexec (-> ON) 8: Baguhin ang Disk Set 1 (QP / M 2.71) 9: Baguhin ang oras / petsa ng RTC Ipasok ang iyong napili>

Gumamit ng Opsyon 8 upang baguhin ang disk na nakatakda sa QP / M, Kapag pinili mo ito dapat mong i-load ang iyong QP / M BIOS. Inirerekumenda ko rin ang pagpindot sa pag-reset, tulad ng nakita ko ang unang pag-load pagkatapos ng pagpipiliang 8 na nabigo nang maraming beses. Ganito:

IOS: Kasalukuyang Disk Set 1 (QP / M 2.71)

IOS: Naglo-load ng programa ng boot (QPMLDR. BIN)… Tapos na IOS: Z80 ay tumatakbo mula ngayon Z80-MBC2 QP / M 2.71 Cold Loader - S160918 Nilo-load… tapos na Custom na Bersyon ng Z80-MBC2 QP / M 2.71 BIOS - S150918 A>

Tandaan na idinagdag ko ang "Pasadyang Bersyon" sa itaas nang na-edit ko ang BIOS File, bilang isang demo para sa hakbang na ito.

Sa puntong ito ay talagang nagpapatakbo ka ng CP / M 2.2 Cbios gamit ang pasadyang BIOS para sa QP / M, kaya ang mga bagay tulad ng TIME utos ay hindi gumana, halimbawa kung nagta-type ka ng TIME (dapat tumugon sa petsa + oras) makukuha mo ang CP / M 2.2 na tugon ng TIME? - Sa palagay nito ito ay isang utos sa disk at hindi ito mahahanap.

Panahon na ngayon upang mai-install ang QP / M kapalit na CBIOS papunta sa imahe ng disk.

Simulan ang programa ng qinstall.com:

Isang> qinstall

QP / M 2.7 Programang Pag-install / Configuration v2.1 Ginagamit ng QINSTALL ang iyong SYSGEN program upang mai-install ang QP / M sa iyong disk. Matapos mai-configure ang iyong system, sasabihan ka para sa pangalan ng iyong programa na SYSGEN. Ang utility na ito ay dapat na magagamit sa isa sa iyong mga disk. Upang matagumpay na matapos ang QINSTALL, ang imahe ng system sa disk at ang system na kasalukuyang nasa memorya ay DAPAT magkapareho. (Ginamit upang i-abort ang programa.) Nais mo bang magpatuloy? (Y / N):

Pagkatapos sagutin ang Y upang magpatuloy.

Susunod na tatanungin ka tungkol sa Mga Setting ng QCP (maaari kang maglaro sa ibang pagkakataon!) Sa ngayon sabihin N

Nais mo bang suriin at / o baguhin

ang mga default na setting ng QCP? (Y / N): N

Susunod tatanungin ka tungkol sa Mga setting ng QDOS, pindutin ang Y

Nais mo bang suriin o baguhin

ang mga default na setting ng QDOS? (Y / N): Y

Magkakaroon ka ng isang menu na tulad nito:

*** Mga setting ng Pag-install ng QDOS System ***

I-save ang character na nakuha sa panahon ng pag-scan ng console.. Sinusuportahan ng YES BIOS ang talahanayan ng code ng error sa BDOS ………. WALANG Address ng oras / petsa ng jump vector …………. Hindi pinagana ang tampok na Paghimok / paghahanap ng gumagamit ……………….. PINAG-ENDLIGA Ang awtomatikong pag-log ulit ng disk …………………… ENABLED Ibalik ang mga paunang setting Lumabas sa pag-install ng QDOS Ipasok ang pagpipilian:

Sa puntong ito kailangan mong ipasok ang numero ng HEX mula sa Hakbang 4 sa itaas (hanapin ang iyong real time na orasan address)

Pindutin ang 2, at ipasok ang HEX address EC16, kung wala kang mga pagbabago sa mga bios, sa aking kaso ito ay EC04 dahil nagdagdag ako ng ilang teksto atbp.

Ipasok ang address ng oras / petsa ng vector sa hex (0 hanggang I-disable): EC04

Ngayon ay maaari kang lumabas sa menu ng QDOS at magpatuloy.

Ipinapakita ang susunod na screen:

Ipasok ang pangalan ng iyong SYSGEN na programa at pindutin ang BALIK.

(Tukuyin ang drive kung kinakailangan; huwag gumamit ng. COM extension): SYSGENQ

Ipasok ang espesyal na bersyon ng sysgen, na tinatawag na SYSGENQ

Makikita mo pagkatapos:

*** Lumilikha ng 59k QP / M na imahe ***

Gagawa ng QINSTALL ngayon ang A: SYSGENQ. COM. Dapat mong turuan ang A: SYSGENQ. COM na basahin ang mga track ng system. Kapag nakumpleto na ang READ, lumabas sa programa ng SYSGEN. Ang mensaheng "*** QINSTALL na naghahanap ng imahe ng system ***" ay lilitaw na sinusundan ng karagdagang mga tagubilin. Pindutin upang magpatuloy -OR- upang mag-abort -

Pindutin ang C upang magpatuloy:

SYSGENQ - S140918 - Z80-MBC2

CP / M 2.2 SYSGEN-like Utility Gumamit lamang upang mai-install ang QP / M 2.71 gamit ang QINSTALL. COM WARNING: Ang utos ng W ay mai-o-overtake ang track ng system! Basahin ang mga track ng system at i-load sa RAM o isulat ang mga ito pabalik sa disk? [R / W]>

Sa unang pagkakataon na makita mo ang mensaheng ito pumili ng R upang basahin ang mga track ng system, makakakuha ka ng:

Pagbasa… tapos na

*** QINSTALL naghahanap para sa imahe ng system *** Ang imahe ng system ay matatagpuan simula 0900H. Pag-install ng QP / M. Ang iyong SYSGEN na programa ay magpapatuloy na ngayon sa pagpapatupad. Dapat mong turuan ang programa na magsulat sa mga track ng system. Pindutin upang magpatuloy -OR- upang mag-abort -

Muli pindutin ang C upang magpatuloy:

SYSGENQ - S140918 - Z80-MBC2

CP / M 2.2 SYSGEN-like Utility Gumamit lamang upang mai-install ang QP / M 2.71 gamit ang QINSTALL. COM WARNING: Ang utos ng W ay mai-o-overtake ang track ng system! Basahin ang mga track ng system at i-load sa RAM o isulat ang mga ito pabalik sa disk? [R / W]>

Sa oras na ito pindutin ang W upang isulat ang bagong QP / M at BISO pabalik sa mga track ng disk:

Nagsusulat… tapos na

A>

Maaari mo na ngayong pindutin ang pag-reset at pag-boot pabalik sa iyong bagong QP / M bios. Kung nagta-type ka ngayon ng TIME sa prompt na ito ay tatakbo ang buong bersyon ng QP / M at tutugon tulad nito:

Z80-MBC2 - A040618

IOS - I / O Subsystem - S220718-R240620 IOS: Z80 na itinakda sa 8MHz IOS: Nahanap ang RTC DS3231 Module (26/10/20 17:10:48) IOS: RTC DS3231 temperatura sensor: 20C IOS: Natagpuan ang Opsyon ng GPE IOS: Naka-OFF ang CP / M Autoexec IOS: Kasalukuyang Disk Set 1 (QP / M 2.71) IOS: Naglo-load ng boot program (QPMLDR. BIN)… Tapos na IOS: Tumatakbo ang Z80 mula ngayon Z80-MBC2 QP / M 2.71 Cold Loader - S160918 Nilo-load… tapos na Custom na Bersyon ng Z80-MBC2 QP / M 2.71 BIOS - S150918 A> oras 26-Okt-20 17:10:56 A>

Ang iyong pataas at pagpapatakbo ng bagong BIOS, tandaan ang teksto na "Pasadyang Bersyon" sa itaas. Marahil ay dapat mong basahin ang natitirang dokumentasyon ng QP / M sa

Fin

Inirerekumendang: