Cuprins:
- Provizii
- Pasul 1: Adăugarea software-ului la computerul dvs. de construcție
- Pasul 2: Adăugarea instrumentelor dvs. la calea Windows
- Pasul 3: Testarea Tasmului
- Pasul 4: Găsiți adresa de ceas în timp real
- Pasul 5: Adăugați BIOS-ul la o nouă imagine de disc
- Pasul 6: Porniți în noua dvs. imagine de disc
Video: Z80 MBC2 - Recompilați QP / M Bios și încărcător: 6 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Dacă, la fel ca mine, vă aflați într-o poziție în care trebuie să recompilați bios-ul QP / M pentru MBC2 - atunci așa procedați.
Am documentat procesul de recompilare a versiunii existente. Depinde de dvs. să faceți modificări la fișierele BIOS reale, dacă este necesar. Am făcut modificări doar pentru a-mi putea păstra instalarea QP / M în linie cu versiunea CP / M 2.2 Bios pe care o folosesc (aceste modificări nu sunt afișate doar procesul de procedură)
Prima parte a procesului este aproape identică cu CP / M 2.2 Bios, deci dacă aveți deja configurat computerul de construire, nu ezitați să treceți peste acea parte.
Principala diferență este că QP / M trebuie să se încarce de la prima pistă a discului de boot - nu un fișier.bin precum CP / M 2.2, descris mai jos.
Provizii
O mașină Windows pentru a rula compilatorul. Am folosit o mașină virtuală Windows XP care rulează pe un KVM, deoarece este foarte mică și nu va intra niciodată pe internet. Dar funcționează sub Windows 10 perfect ok.
Compilatorul TASM 3.2 z80, căutați acest lucru pe google, ar trebui să ajungeți la
O copie a fișierului zip SD de pe pagina de pornire z80-mbc2, la momentul redactării, era
CPMTools pentru Windows de la https://www.cpm8680.com/cpmtools/cpmtoolsWin32.zip aceasta este o versiune pe 32 de biți, dar funcționează ok pe sistemele pe 64 de biți.
Pasul 1: Adăugarea software-ului la computerul dvs. de construcție
După ce ați pornit automatul Windows, copiați sau descărcați fișierele menționate în secțiunea „veți avea nevoie” de mai sus.
Creați un director de lucru pe mașina dvs., vă sugerez (pentru a evita o mulțime de tastare și greșeli de tipare) să creați un director pe unitatea C, de exemplu c: / z80mbc. Vă recomandăm cu tărie să evitați spațiile din nume, dacă este posibil și căile de directoare lungi. Nu te complica.
Creați un folder în acest director pentru a intra fișierele TASM, c: / z80mbc / tasm
Creați un dosar pentru a intra în imaginea cardului SD, c: / z90mbc / SD
Faceți clic dreapta pe fiecare dintre fișiere și extrageți conținutul în directoarele pe care le-ați creat mai sus. Deci tasm.zip este extras în c: / z80mbc / tasm și fișierul zip speriat în c: / z80mbc / SD
Pentru a ușura câțiva pași următori, puteți despacheta cpmtool32.zip într-un alt director, de exemplu c: / z80mbc / cpmtools.
Pasul 2: Adăugarea instrumentelor dvs. la calea Windows
În funcție de versiunea dvs. de Windows, faceți una dintre următoarele
Windows 10
Deschideți meniul de proprietăți făcând clic dreapta pe elementul „Acest computer” dintr-o fereastră de explorare.
Faceți clic pe „Setări avansate de sistem”, aceasta va deschide o fereastră numită „Proprietăți de sistem” (Puteți de asemenea să accesați proprietățile sistemului în alte moduri, dar nu folosesc Windows prea mult, așa este și modul meu!)
Faceți clic pe „Variabile de mediu”
Windows XP
Faceți clic pe butonul Start, faceți clic dreapta pe „computerul meu”, apoi puteți face clic pe proprietăți pentru a obține „proprietăți de sistem”.
Faceți clic pe fila Advanced
Faceți clic pe „Variabile de mediu”
Când aveți fereastra Variabile de mediu pe ecran, trebuie să faceți două lucruri;
Adăugați o nouă variabilă
În partea de sus a ferestrelor, sub „Variabile de utilizator pentru …”
Faceți clic pe Nou
Pentru tipul Name în TASMTABS
Pentru tipul Value în c: / z80mbc / tasm
Modificați variabila PATH
În partea de jos a ferestrei, sub „Variabile de sistem”
alegeți (evidențiați) Calea, apoi faceți clic pe Editare
La sfârșitul conținutului existent adăugați; c: / z80mbc / tasm; c: / z80mbc / cpmtools
(Nu uitați de punct și virgulă la început!)
Acum trebuie să reporniți computerul pentru ca aceste adăugiri să aibă efect.
Pasul 3: Testarea Tasmului
Pentru a testa putem compila o copie exactă a BIOS-ului QP / M existent, trebuie să facem ceva mai multă pregătire. Fișierele din acest director sunt:
BIOS QPM271 - S150918.asm - Fișierul principal BIOS, acesta este cel mai probabil fișierul pe care îl veți modifica.
QPM271_ColdLoader - S160918.asm - acesta este încărcătorul QP / M, citește primele piste de pe imaginea discului în memorie. Într-un sistem CP / m mai tradițional, acest lucru ar fi denumit bootstrap și ar fi în EEPROM sau ROM. Nu trebuie să modificați acest fișier, acesta este deja compilat și pe imaginea cardului SD ca QPMLDR. BIN
SYSGENQ - S140918.asm - Acest program este utilizat împreună cu programul de instalare QP / M, iarăși nu va trebui să-l modificați, acesta există deja în imaginea discului de încărcare gata de utilizare. În esență, citește și scrie piesele folosite de încărcătorul rece de mai sus.
Înainte de a testa instalarea noastră TASM, mai aveți nevoie de un fișier, cpm22_Z80MBC2.asm, nu se află implicit în acest director, deoarece este același fișier folosit pentru cpm 2.2. Avem nevoie de acest fișier pentru a furniza CBIOS / CCP original pentru pornirea inițială a QP / M. Puteți copia acest fișier din directorul CPM_22_Custom_BIOS.
Fie utilizați Windows Explorer pentru a-l copia, fie de la o comandă (CMD) faceți
cd c: / z80mbc / sd / src / QPM_271_Custom_BIOS
copiați.. / CPM_22_Custom_BIOS / cpm22_Z80MBC2.asm
Acum trebuie să modificați acest fișier pentru a include QP / M BIOS, deschideți fișierul cu notepad:
căutați „QPM” (CTRL-F, sau editați meniul și găsiți) Vedeți imaginea de mai sus
schimbați fișierul din:
;-----------------------------------------------------------------------
; Z80-MBC2; ---------------------------------------------- ------------------------; #include "BIOS QPM271 - S150918.asm"; CBIOS inclus pentru Z80-MBC2 #include "BIOS CPM22 - S030818-R140319.asm"; Inclus CBIOS pentru Z80-MBC2
La:
;-----------------------------------------------------------------------
; Z80-MBC2; ---------------------------------------------- ------------------------- #include "BIOS QPM271 - S150918.asm"; CBIOS inclus pentru Z80-MBC2; #include "BIOS CPM22 - S030818-R140319.asm"; Inclus CBIOS pentru Z80-MBC2
De asemenea, ar trebui să verificați valoarea iLoadMode în fișierul cpm22_Z80MBC2.asm copiat, în jurul liniei 40:
;-----------------------------------------------------------------------
; Z80-MBC2; ---------------------------------------------- ------------------------- iLoadMode.equ 0; Setați la 1 pentru modul iLoad (pentru testare); setat la 0 pentru generarea imaginii pistei 0; setat la 2 pentru generarea de fișiere binare cpm22.bin; --------------------------------------- --------------------------------
Trebuie să fie la 0, acesta este valoarea implicită - dar verificați oricum!
După ce ați terminat, salvați fișierul.
acum puteți rula tasm:
tasm -b -g3 -80 cpm22_Z80MBC2.asm qpm22.bin
Rețineți numele fișierului de ieșire diferit, dacă totul merge bine, ar trebui să vedeți ieșirea astfel:
c: / z80mbc / sd / src / QPM_271_Custom_BIOS> tasm -b -g3 -80 cpm22_Z80MBC2.asm qpm22.bin
Asamblator TASM Z80. Versiunea 3.2 septembrie 2001. Copyright (C) 2001 Squak Valley Software tasm: pass 1 complete. tasm: treceți 2 complet. tasm: Număr de erori = 0 c: / z80mbc / sd / src / QPM_271_Custom_BIOS>
Sunteți gata să faceți orice modificări de care aveți nevoie în BIOS! fişier.
Pasul 4: Găsiți adresa de ceas în timp real
Înainte de a instala noua versiune a BIOS-ului, o parte din instalarea QP / M trebuie să cunoască adresa de intrare pentru rutinele ceasului în timp real. Dacă nu setați acest lucru, funcțiile de timp din QP / M vor afișa „Fără ceas” ca mesaj de eroare.
Pentru a obține adresa, editați fișierul LST produs atunci când compilați fișierul qpm22.bin, adică.
notepad cpm22_Z80MBC2.lst
Căutați eticheta TIMDAT, Ctrl-f (sau găsiți) căutați TIMDAT, veți găsi o secțiune ca aceasta:
0855+ EC16; =================================================== ==========================;
0856+ EC16; TIMDAT; 0857+ EC16; =================================================== ==========================; 0858+ EC16; Aceasta este o rutină specifică QP / M pentru interfața de ceas QP / M-timp real; 0859+ EC16; pentru a utiliza pe deplin caracteristicile de ștampilare a orei / datei QP / M.; 0860+ EC16; Adresa TIMDAT trebuie specificată în timpul QINSTALL prin opțiunea; 0861+ EC16; meniul de instalare QDOS (vezi paginile 26-27 din Ghidul de instalare QP / M); 0862+ EC16;; 0863+ EC16; NOTĂ: Dacă RTC nu este prezent, IOS va da toți 0s octeți. Aceasta este; 0864+ EC16; „interpretat” de QP / M ca „FĂRĂ Ceas”.; 0865+ EC16; =================================================== ==========================; 0866+ EC16 TIMDAT 0867+ EC16 C3 19 EC jp USERCLK
Notați adresa celei de-a doua coloane HEX, în acest caz EC16. Scoateți valoarea de pe linia de mai jos de comentarii, chiar deasupra instrucțiunii de salt JP USERCLK. Unde scrie TIMDAT.
Acum aveți valea, puteți ieși din fișier și puteți continua cu QP / M intsall
Pasul 5: Adăugați BIOS-ul la o nouă imagine de disc
În acest pas vom face propria copie a discului de boot DS1N00. DSK și vom adăuga propria versiune a BIOS-ului gata să finalizeze instalarea QP / M
Pentru început, creați un folder temporar al unității C pentru a vă păstra copiile de lucru. Deschideți o solicitare CMD și tastați următoarele
cd c: / z80mbc
mkdir temp cd temp
Apoi copiați imaginea de disc originală din directorul SD
copiați c: / z80mbc / sd / DS1N00. DSK.
Obțineți fișierele curente din imaginea discului:
cd c: / z80mbc / temp cpmcp -f z80mbc2-d0 DS1N00. DSK 0: * disc0
Secvența de mai sus va crea un alt folder temporar în directorul temporar numit disk0, le va copia toate fișierele existente din imaginea discului în director. Utilizați DIR după pentru a vă asigura că aveți fișierele.
Apoi putem formata imaginea discului ca un disc nou, acesta este singurul mod ușor de a adăuga piesele de boot la imaginea discului, fără a fi nevoie să creați un disc complet nou de la zero. Rețineți că opțiunea „-b” folosește BIOS-ul pe care l-am compilat mai sus.
mkfs.cpm -f z80mbc2-d0 -b c: / z80mbc / sd / src / QPM_271_Custom_BIOS / qpm22.bin DS1N00. DSK
Acum piesele de boot sunt actualizate, puteți adăuga fișierele originale înapoi la imagine:
cpmcp -f z80mbc2-d0 DS1N00. DSK disc0 / * 0:
Acum aveți un disc bootabil, acesta va porni de fapt CP / M nu QP / M în pasul următor folosim programul de instalare QP / M pentru a înlocui partea CBIOS a sistemului CP / M
Asigurați-vă că aveți o copie de lucru a cardului SD de pornire, apoi copiați fișierul DS1N00. DSK pe care îl creați în acest pas în folderul rădăcină al cardului SD, acesta va înlocui fișierul existent.
Pasul 6: Porniți în noua dvs. imagine de disc
Conectați un terminal serial la z80mbc2
țineți comutatorul de utilizator, țineți-l apăsat, apăsați și eliberați comutatorul de resetare. Când LED-ul utilizatorului se stinge și lumina IOS clipește, eliberați comutatorul utilizatorului.
Ar trebui să vă aflați acum la ecranul „Boot” de pe terminal, astfel: Z80-MBC2 - A040618
IOS - Subsistem I / O - S220718-R240620 IOS: Ceas Z80 setat la 8MHz IOS: Modul RTC DS3231 găsit (26/10/20 16:46:45) IOS: Senzor de temperatură RTC DS3231: 20C IOS: Opțiune GPE găsită IOS: CP / M Autoexec este OFF IOS: Selectați modul de pornire sau parametrii de sistem: 0: Nicio modificare (3) 1: De bază 2: Înainte 3: Încărcați sistemul de operare din setul de discuri 1 (QP / M 2.71) 4: Autoboot 5: iLoad 6: Modificați viteza de ceas Z80 (-> 4 MHz) 7: Comutați CP / M Autoexec (-> PORNIT) 8: Modificați setul de disc 1 (QP / M 2.71) 9: Modificați data / ora RTC Introduceți alegerea>
Utilizați Opțiunea 8 pentru a schimba setul de discuri la QP / M, când îl selectați, trebuie să încărcați BIOS-ul QP / M. Aș recomanda, de asemenea, să apăsați reset, deoarece am văzut prima încărcare după opțiunea 8 eșuând de mai multe ori. Asa:
IOS: Set de discuri curent 1 (QP / M 2.71)
IOS: Încărcarea programului de încărcare (QPMLDR. BIN)… Efectuat IOS: Z80 rulează de acum Z80-MBC2 QP / M 2.71 Cold Loader - S160918 Se încarcă … realizat versiunea personalizată a Z80-MBC2 QP / M 2.71 BIOS - S150918 A>
Notă Am adăugat „Versiunea personalizată” de mai sus când am editat fișierul BIOS, ca o demonstrație pentru acest pas.
În acest moment, rulați de fapt CP / M 2.2 Cbios cu BIOS-ul personalizat pentru QP / M, astfel încât lucruri precum comanda TIME nu funcționează, de exemplu, dacă tastați TIME (ar trebui să răspundă cu data + ora) veți obține Răspuns CP / M 2.2 de TIME? - crede că este o comandă pe disc și nu o poate găsi.
Acum este timpul să instalați QI / M înlocuitor CBIOS pe imaginea discului.
Porniți programul qinstall.com:
A> qinstall
QP / M 2.7 Programul de instalare / configurare v2.1 QINSTALL folosește programul SYSGEN pentru a instala QP / M pe disc. După configurarea sistemului, vi se va solicita numele programului SYSGEN. Acest utilitar ar trebui să fie disponibil pe unul dintre discurile dvs. Pentru ca QINSTALL să se finalizeze cu succes, imaginea sistemului de pe disc și sistemul aflat în prezent în memorie TREBUIE să fie identice. (Folosiți pentru a anula programul.) Doriți să continuați? (DA / N):
Apoi răspundeți la Y pentru a continua.
Veți fi întrebat în continuare despre setările QCP (puteți juca mai târziu!), Deocamdată spuneți N
Doriți să examinați și / sau să modificați
setările implicite QCP? (DA / N): N
Apoi veți fi întrebat despre setările QDOS, apăsați Y
Doriți să examinați sau să modificați
setările implicite QDOS? (Da / N): Da
Veți avea un meniu de genul acesta:
*** Setări de instalare a sistemului QDOS ***
Salvați caracterul obținut în timpul scanării consolei. DA BIOS acceptă tabelul de coduri de eroare BDOS ………. NU Adresa vectorului de salt oră / dată …………. Funcția de căutare a unității / utilizatorului DEZACTIVAT ……………….. ACTIVAT Reînregistrare automată a discului …………………… ACTIVAT Restabiliți setările inițiale Ieșiți din instalarea QDOS Introduceți opțiunea:
În acest moment, trebuie să introduceți numărul HEX de la pasul 4 de mai sus (găsiți adresa de ceas în timp real)
Apăsați 2 și introduceți adresa HEX EC16, dacă nu ați făcut modificări în bios, în cazul meu este EC04, deoarece am adăugat un text etc.
Introduceți adresa vectorului oră / dată în hex (de la 0 la DEZACTIVAT): EC04
Acum puteți ieși din meniul QDOS și continuați.
Următorul ecran afișează:
Introduceți numele programului dvs. SYSGEN și apăsați RETURN.
(Specificați unitatea dacă este necesar; nu utilizați extensia. COM): SYSGENQ
Introduceți versiunea specială a sysgen, numită SYSGENQ
Apoi veți vedea:
*** Crearea imaginii QP / M de 59k ***
QINSTALL va executa acum A: SYSGENQ. COM. Trebuie să-i instruiți lui A: SYSGENQ. COM să citească pistele sistemului. Când CITIREA este finalizată, părăsiți programul SYSGEN. Va apărea mesajul „*** QINSTALL căutând imaginea sistemului ***” urmat de instrucțiuni suplimentare. Apăsați pentru a continua -OR- pentru a întrerupe -
Apăsați C pentru a continua:
SYSGENQ - S140918 - Z80-MBC2
CP / M 2.2 SYSGEN-like Utility Utilizați numai pentru a instala QP / M 2.71 folosind QINSTALL. COM AVERTISMENT: Comanda W va suprascrie pista sistemului! Citiți piesele de sistem și încărcați-le pe RAM sau le scrieți pe disc? [R / W]>
Prima dată când vedeți acest mesaj, alegeți R pentru a citi piesele sistemului, veți primi apoi:
Citind … gata
*** QINSTALL căutarea imaginii sistemului *** Imaginea sistemului a fost găsită începând cu ora 0900H. Instalarea QP / M. Programul dvs. SYSGEN va relua acum execuția. Trebuie să instruiți programul să SCRIE pistele sistemului. Apăsați pentru a continua -OR- pentru a întrerupe -
Apăsați din nou pe C pentru a continua:
SYSGENQ - S140918 - Z80-MBC2
CP / M 2.2 SYSGEN-like Utility Utilizați numai pentru a instala QP / M 2.71 folosind QINSTALL. COM AVERTISMENT: Comanda W va suprascrie pista sistemului! Citiți piesele de sistem și încărcați-le pe RAM sau le scrieți pe disc? [R / W]>
De data aceasta, apăsați W pentru a scrie noul QP / M și BISO înapoi pe piesele de pe disc:
Scrierea … gata
A>
Acum puteți apăsa reset și reporniți în noua bios QP / M. Dacă tastați acum TIME la prompt, va rula versiunea completă a QP / M și va răspunde astfel:
Z80-MBC2 - A040618
IOS - Subsistem I / O - S220718-R240620 IOS: Ceas Z80 setat la 8MHz IOS: Modul RTC DS3231 găsit (26/10/20 17:10:48) IOS: Senzor de temperatură RTC DS3231: 20C IOS: Opțiune GPE găsită IOS: CP / M Autoexec este OPRIT IOS: Set de discuri curent 1 (QP / M 2.71) IOS: Se încarcă programul de încărcare (QPMLDR. BIN) … IOS terminat: Z80 rulează de acum Z80-MBC2 QP / M 2.71 Încărcător rece - S160918 Se încarcă … finalizat Versiunea personalizată a Z80-MBC2 QP / M 2.71 BIOS - S150918 A> ora 26-oct-20 17:10:56 A>
În funcțiune cu noul BIOS, rețineți textul „Versiune personalizată” de mai sus. Probabil că ar trebui să citiți restul documentației QP / M la
Fin
Recomandat:
Z80-MBC2 Programarea Atmega32a: 6 pași
Z80-MBC2 Programarea Atmega32a: Înainte de a putea utiliza z80-MBC2, după construirea acestuia, trebuie să programați Atmeg32. Aceste instrucțiuni vă arată cum să utilizați un arduino mini ieftin ca programator pentru a încărca codul
Z80-mbc2 Z80 Cod Flash LED utilizator: 3 pași
Z80-mbc2 Z80 Code Flash User LED: Acesta este un exemplu de program LED pentru utilizator scris în asamblorul Z80 pentru computerul z80-mbc2. Am făcut acest lucru un test și o revizuire pentru mine, acesta este primul meu program Z80 de peste 35 de ani
Utilizarea terminalului ESP32 / VGA32 pentru Z80-MBC2: 7 pași
Utilizarea terminalului ESP32 / VGA32 pentru Z80-MBC2: Cum să construiți și să instalați software-ul ANSI Terminal pe o placă ESP32 / VGA32. Apoi conectați-l la o placă Z80-MBC2
Un computer real de casă ușor de construit: Z80-MBC2 !: 9 pași (cu imagini)
Un computer real de casă ușor de construit: Z80-MBC2 !: Dacă sunteți curioși cu privire la modul în care funcționează un computer și interacționează cu „lucruri externe”, în zilele noastre există o mulțime de plăci gata să se joace precum Arduino sau Raspberry și multe altele. Dar aceste plăci au toate aceeași „limită” … ei salut
Încărcător USB ușor de 5 minute / încărcător USB de supraviețuire: 6 pași (cu imagini)
Încărcător USB ușor de 5 minute / încărcător USB de supraviețuire: Bună ziua, băieți! Astăzi tocmai am făcut (probabil) cel mai ușor încărcător de panouri solare usb! În primul rând, îmi pare rău că nu am încărcat niște documente instructive pentru voi. Am primit câteva examene în ultimele luni (nu de fapt, poate, o săptămână sau cam așa ceva). Dar