Obsah:

Z80 MBC2 - Znovu zkompilovat biosy QP/M a zavaděč: 6 kroků
Z80 MBC2 - Znovu zkompilovat biosy QP/M a zavaděč: 6 kroků

Video: Z80 MBC2 - Znovu zkompilovat biosy QP/M a zavaděč: 6 kroků

Video: Z80 MBC2 - Znovu zkompilovat biosy QP/M a zavaděč: 6 kroků
Video: Z80-MBC2: Z80 homebrew computer playing Startrek with CP/M 2024, Listopad
Anonim
Z80 MBC2 - Znovu zkompilujte biosy a zavaděč QP/M
Z80 MBC2 - Znovu zkompilujte biosy a zavaděč QP/M

Pokud se stejně jako já ocitnete v pozici, kdy potřebujete znovu zkompilovat QP/M bios pro váš MBC2 - pak to uděláte takto.

Zdokumentoval jsem postup překompilování stávající verze. Je -li to nutné, je na vás, abyste provedli změny ve skutečných souborech Bios. Provedl jsem pouze změny, abych mohl udržet instalaci QP/M v souladu s verzí CP/M 2.2 Bios, kterou používám (tyto změny nejsou uvedeny pouze v postupu)

První část procesu je téměř identická s CP/M 2.2 Bios, takže pokud již máte sestavený počítač, můžete tuto část přeskočit.

Hlavní rozdíl je v tom, že QP/M se musí načíst z první stopy zaváděcího disku - ne.bin soubor jako CP/M 2.2, popsaný níže.

Zásoby

Počítač se systémem Windows, na kterém je kompilátor spuštěn. Použil jsem virtuální stroj Windows xp běžící na KVM, protože je velmi malý a nikdy nepůjde na internet. Ale funguje to pod Windows 10 naprosto v pořádku.

Kompilátor TASM 3.2 z80, hledejte to na Googlu, měli byste skončit na

Kopie souboru SD zip z domovské stránky z80-mbc2, v době psaní tohoto článku to bylo

CPMTools pro Windows od https://www.cpm8680.com/cpmtools/cpmtoolsWin32.zip toto je 32bitová verze, ale funguje dobře na 64bitových systémech.

Krok 1: Přidání softwaru do počítače pro sestavení

Přidání softwaru do počítače sestavení
Přidání softwaru do počítače sestavení
Přidání softwaru do počítače sestavení
Přidání softwaru do počítače sestavení

Jakmile spustíte počítač se systémem Windows, zkopírujte nebo stáhněte soubory uvedené v části „Budete potřebovat“výše.

Vytvořte na svém počítači funkční adresář, navrhuji (abyste se vyhnuli velkému množství psaní a překlepů) vytvořte adresář na jednotce C, například c: / z80mbc. Důrazně doporučuji vyhnout se mezerám v názvech, pokud je to možné, a dlouhým adresářovým cestám. Udržujte to jednoduché.

V tomto adresáři vytvořte složku, do které se budou dostávat soubory TASM, c: / z80mbc / tasm

Vytvořte složku, do které bude vložen obrázek karty SD, c: / z90mbc / SD

Klikněte pravým tlačítkem na každý ze souborů a rozbalte obsah do adresářů, které jste vytvořili výše. Tasm.zip je tedy extrahován do c: / z80mbc / tasm a vyděšený zip soubor do c: / z80mbc / SD

Aby byly některé další kroky snazší, můžete také rozbalit cpmtool32.zip do jiného adresáře, například c: / z80mbc / cpmtools.

Krok 2: Přidání nástrojů do Windows Path

Přidání nástrojů do Windows Path
Přidání nástrojů do Windows Path
Přidání nástrojů do Windows Path
Přidání nástrojů do Windows Path

V závislosti na vaší verzi systému Windows proveďte jednu z následujících akcí

Windows 10

Otevřete nabídku vlastností kliknutím pravým tlačítkem na položku „Tento počítač“v okně průzkumníka.

Kliknutím na „Pokročilá nastavení systému“se otevře okno s názvem „Vlastnosti systému“(K vlastnostem systému se můžete dostat i jinými způsoby, ale okna příliš nepoužívám, takže toto je můj způsob!)

Klikněte na „Proměnné prostředí“

Windows XP

Klikněte na tlačítko Start, klikněte pravým tlačítkem na „můj počítač“, poté můžete kliknutím na vlastnosti získat „vlastnosti systému“.

Klikněte na kartu Upřesnit

Klikněte na „Proměnné prostředí“

Když máte na obrazovce okno Proměnné prostředí, musíte udělat dvě věci;

Přidejte novou proměnnou

V horní části oken v části „Uživatelské proměnné pro …“

Klikněte na Nový

Pro typ Název v TASMTABS

Pro typ hodnoty v c: / z80mbc / tasm

Upravte proměnnou PATH

Ve spodní části okna v části „Systémové proměnné“

vyberte (zvýrazněte) cestu a poté klikněte na Upravit

Na konci stávajícího obsahu přidejte; c: / z80mbc / tasm; c: / z80mbc / cpmtools

(Nezapomeňte na začátku středník!)

Nyní se musí restartovat počítač, aby se tyto doplňky projevily.

Krok 3: Testování Tasm

Testování Tasm
Testování Tasm
Testování Tasm
Testování Tasm
Testování Tasm
Testování Tasm

Abychom mohli otestovat, můžeme sestavit přesnou kopii stávajícího systému QP/M BIOS, musíme se trochu více připravit. Soubory v tomto adresáři jsou:

BIOS QPM271 - S150918.asm - Hlavní soubor systému BIOS, toto je pravděpodobně soubor, který budete měnit.

QPM271_ColdLoader - S160918.asm - toto je zavaděč QP/M, který načítá první stopy z obrazu disku do paměti. V tradičnějším systému CP/m by to bylo označováno jako bootstrap a bylo by to v EEPROM nebo ROM. Tento soubor, který je již zkompilován, a na obrázku na kartě SD jako QPMLDR. BIN byste neměli upravovat

SYSGENQ - S140918.asm - Tento program se používá ve spojení s instalačním programem QP/M, opět ho normálně nebudete muset měnit, již existuje v obrazu spouštěcího disku připraven k použití. V podstatě čte a zapisuje stopy používané studeným nakladačem výše.

Než otestujeme naši instalaci TASM, potřebujete ještě jeden soubor, cpm22_Z80MBC2.asm, ve výchozím nastavení není v tomto adresáři, protože je to stejný soubor použitý pro cpm 2.2. Tento soubor potřebujeme k poskytnutí původního CBIOS/CCP pro počáteční spuštění QP/M. Tento soubor můžete zkopírovat z adresáře CPM_22_Custom_BIOS.

Zkopírujte jej buď pomocí Průzkumníka Windows, nebo z příkazového řádku (CMD)

cd c: / z80mbc / sd / src / QPM_271_Custom_BIOS

kopírovat.. / CPM_22_Custom_BIOS / cpm22_Z80MBC2.asm

Nyní musíte tento soubor změnit, aby zahrnoval QP/M BIOS, otevřete soubor pomocí poznámkového bloku:

vyhledejte „QPM“(CTRL-F, nebo upravte nabídku a najděte) Viz výše uvedený obrázek

změnit soubor z:

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

; Z80-MBC2; ---------------------------------------------- -------------------------; #include "BIOS QPM271-S150918.asm"; Součástí je CBIOS pro Z80-MBC2 #include "BIOS CPM22-S030818-R140319.asm"; Včetně CBIOS pro Z80-MBC2

Na:

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

; Z80-MBC2; ---------------------------------------------- ------------------------- #include "BIOS QPM271-S150918.asm"; Součástí je CBIOS pro Z80-MBC2; #include "BIOS CPM22-S030818-R140319.asm"; Včetně CBIOS pro Z80-MBC2

Měli byste také zkontrolovat hodnotu iLoadMode ve zkopírovaném souboru cpm22_Z80MBC2.asm, kolem řádku 40:

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

; Z80-MBC2; ---------------------------------------------- ------------------------- iLoadMode.equ 0; Nastavte na 1 pro režim iLoad (pro testování); nastaveno na 0 pro generování obrazu stopy 0; nastaveno na 2 pro generování binárních souborů cpm22.bin; --------------------------------------- --------------------------------

Musí být na 0, toto je výchozí - ale stejně zkontrolujte!

Až budete hotovi, uložte soubor.

nyní můžete spustit tasm:

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

Všimněte si odlišného výstupního názvu souboru, pokud vše půjde dobře, měli byste vidět výstup takto:

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

Sestavovač TASM Z80. Verze 3.2 Září 2001. Copyright (C) 2001 Squak Valley Software tasm: projít 1 dokončeno. tasm: projít 2 dokončeno. tasm: Počet chyb = 0 c: / z80mbc / sd / src / QPM_271_Custom_BIOS>

Jste připraveni provést v systému BIOS všechny potřebné změny! soubor.

Krok 4: Najděte svou adresu hodin v reálném čase

Před instalací nové verze systému BIOS musí část instalace QP/M znát vstupní adresu pro rutiny hodin reálného času. Pokud toto nenastavíte, funkce času v QP/M vrátí jako chybovou zprávu „No Clock“.

Chcete -li získat adresu, upravte soubor LST vytvořený při kompilaci souboru qpm22.bin, tzn.

poznámkový blok cpm22_Z80MBC2.lst

Vyhledejte štítek TIMDAT, Ctrl-f (nebo najděte) vyhledejte TIMDAT, najdete sekci jako je tato:

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

0856+ EC16; TIMDAT; 0857+ EC16; ======================================================================== ==========================; 0858+ EC16; Jedná se o rutinu specifickou pro QP/M pro rozhraní hodin QP/M na hodiny v reálném čase; 0859+ EC16; k plnému využití funkcí razítka času/data QP/M.; 0860+ EC16; Adresa TIMDAT musí být zadána během QINSTALL pomocí možnosti; 0861+ EC16; instalační nabídka QDOS (viz strany 26-27 Průvodce instalací QP/M); 0862+ EC16;; 0863+ EC16; POZNÁMKA: Pokud RTC není k dispozici, IOS poskytne všechny 0 s bajtů. Tohle je; 0864+ EC16; „interpretováno“QP/M jako „BEZ HODIN“.; 0865+ EC16; ======================================================================= ===========================; 0866+ EC16 TIMDAT 0867+ EC16 C3 19 EC jp USERCLK

Poznamenejte si HEX adresu druhého sloupce, v tomto případě EC16. Odeberte hodnotu z řádku pod komentáři, těsně nad skokovou instrukcí JP USERCLK. Kde je napsáno TIMDAT.

Nyní máte vale, můžete opustit soubor a pokračovat v QP/M intsall

Krok 5: Přidejte Bios na nový obraz disku

V tomto kroku vytvoříme vlastní kopii spouštěcího disku DS1N00. DSK a přidáme na něj vlastní verzi systému BIOS připravenou k dokončení instalace QP/M

Nejprve vytvořte dočasnou složku na jednotce C, do které budou uloženy vaše pracovní kopie. Otevřete výzvu CMD a zadejte následující

cd c: / z80mbc

mkdir temp cd temp

Dále zkopírujte původní obraz disku z adresáře SD

zkopírujte c: / z80mbc / sd / DS1N00. DSK.

Získejte aktuální soubory z obrazu disku:

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

Výše uvedená sekvence vytvoří v dočasném adresáři další dočasnou složku s názvem disk0, která zkopíruje všechny existující soubory z obrazu disku do adresáře. Poté použijte DIR, abyste se ujistili, že máte soubory.

Dále můžeme zformátovat obraz disku jako nový disk, to je jediný snadný způsob, jak přidat spouštěcí stopy do obrazu disku, aniž byste museli vytvářet úplně nový disk od začátku. Možnost „-b“používá systém BIOS, který jsme zkompilovali výše.

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

Nyní jsou zaváděcí stopy aktualizovány, můžete přidat původní soubory zpět na obrázek:

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

Nyní máte zaváděcí disk, ve skutečnosti spustí CP/M, nikoli QP/M. V dalším kroku použijeme instalační program QP/M k nahrazení CBIOS části systému CP/M

Ujistěte se, že máte funkční kopii zaváděcí karty SD, poté zkopírujte soubor DS1N00. DSK, který vytvoříte v tomto kroku, do kořenové složky karty SD, která nahradí stávající soubor.

Krok 6: Zavedení do nového obrazu disku

Připojte k z80mbc2 sériový terminál

podržte uživatelský přepínač, podržte jej, stiskněte a uvolněte resetovací spínač. Když uživatelská LED zhasne a kontrolka IOS bliká, uvolněte uživatelský přepínač.

Nyní byste měli být na obrazovce „Boot“na terminálu takto: Z80 -MBC2 - A040618

IOS - I/O subsystém - S220718 -R240620 IOS: Hodiny Z80 nastaveny na 8 MHz IOS: Nalezen modul RTC DS3231 (26/10/20 16:46:45) IOS: Snímač teploty RTC DS3231: 20C IOS: Nalezena možnost GPE IOS: CP/M Autoexec je vypnutý IOS: Vyberte režim spouštění nebo systémové parametry: 0: Beze změny (3) 1: Základní 2: Forth 3: Načíst OS ze sady disků 1 (QP/M 2.71) 4: Autoboot 5: iLoad 6: Změňte rychlost hodin Z80 (-> 4 MHz) 7: Přepněte CP/M Autoexec (-> ZAPNUTO) 8: Změňte sadu disků 1 (QP/M 2,71) 9: Změňte čas/datum RTC Zadejte svou volbu>

Pomocí možnosti 8 změňte sadu disků na QP/M. Když ji vyberete, měli byste načíst svůj QP/M BIOS. Také bych doporučil stisknout reset, protože jsem viděl první načtení po selhání volby 8 několikrát. Takhle:

IOS: Aktuální sada disků 1 (QP/M 2,71)

IOS: Načítání zaváděcího programu (QPMLDR. BIN)… Hotovo IOS: Z80 již běží Z80 -MBC2 QP/M 2.71 Cold Loader - S160918 Načítání… hotovo Vlastní verze Z80 -MBC2 QP/M 2.71 BIOS - S150918 A>

Poznámka: „Vlastní verzi“jsem přidal výše, když jsem upravoval soubor BIOS, jen jako ukázku pro tento krok.

V tomto okamžiku skutečně používáte CP/M 2,2 Cbios s vlastním BIOSem pro QP/M, takže věci jako příkaz TIME nefungují, například pokud zadáte TIME (měl by odpovídat datum+čas), dostanete Odpověď CP/M 2,2 TIME? - myslí si, že je to příkaz na disku, a nemůže ho najít.

Nyní je čas nainstalovat na bitovou kopii disku náhradní CBIOS QP/M.

Spusťte program qinstall.com:

A> q nainstalovat

QP/M 2.7 Instalační/konfigurační program v2.1 QINSTALL používá váš program SYSGEN k instalaci QP/M na váš disk. Po konfiguraci systému budete vyzváni k zadání názvu programu SYSGEN. Tento nástroj by měl být k dispozici na jednom z vašich disků. Aby se QINSTALL úspěšně dokončil, MUSÍ být obraz systému na disku a systém aktuálně v paměti identický. (Použijte k přerušení programu.) Přejete si pokračovat? (A/N):

Poté pokračujte odpovědí Y.

Dále budete dotázáni na nastavení QCP (můžete hrát později!), Prozatím řekněte N

Přejete si prozkoumat a/nebo upravit

výchozí nastavení QCP? (Y/N): N.

Dále budete dotázáni na nastavení QDOS, stiskněte Y

Přejete si prozkoumat nebo upravit

výchozí nastavení QDOS? (A/N): Ano

Budete mít následující nabídku:

*** Nastavení instalace systému QDOS ***

Uložit znak získaný během skenování konzoly.. ANO BIOS podporuje tabulku kódů chyb BDOS ………. NE Adresa vektoru skoku času/data …………. ZAKÁZÁNO Funkce disku/vyhledávání uživatelů ……………….. ZAPNOUT Automatický opětovný záznam disku …………………… ZAPNOUT Obnovit počáteční nastavení Ukončit instalaci QDOS Zadejte možnost:

V tomto okamžiku musíte zadat číslo HEX z kroku 4 výše (najít adresu hodin reálného času)

Stiskněte 2 a zadejte HEX adresu EC16, pokud jste v biosu neprovedli žádné změny, v mém případě je to EC04, protože jsem přidal nějaký text atd.

Zadejte adresu vektoru času/data v hexadecimálním formátu (od 0 do ZAKÁZAT): EC04

Nyní můžete opustit nabídku QDOS a pokračovat.

Na další obrazovce se zobrazí:

Zadejte název svého programu SYSGEN a stiskněte RETURN.

(V případě potřeby zadejte jednotku; nepoužívejte příponu. COM): SYSGENQ

Zadejte speciální verzi sysgen s názvem SYSGENQ

Poté uvidíte:

*** Vytváření 59k QP/M obrázku ***

QINSTALL nyní spustí A: SYSGENQ. COM. Musíte přečíst A: SYSGENQ. COM, aby přečetl systémové stopy. Po dokončení ČTENÍ ukončete program SYSGEN. Zobrazí se zpráva „*** QINSTALL vyhledávání obrazu systému ***“a další pokyny. Pokračujte stisknutím -NEBO -přerušte -

Pokračujte stisknutím C:

SYSGENQ - S140918 - Z80 -MBC2

Nástroj CP/M 2.2 podobný SYSGENU Používejte pouze k instalaci QP/M 2.71 pomocí QINSTALL. COM VAROVÁNÍ: Příkaz W přepíše stopu systému! Číst systémové stopy a načítat do RAM nebo je zapisovat zpět na disk? [R/W]>

Při prvním zobrazení této zprávy zvolte R ke čtení systémových stop, poté získáte:

Čtení … hotovo

*** QINSTALL hledá obraz systému *** Obraz systému byl nalezen od 09:00 hod. Instalace QP/M. Váš program SYSGEN nyní obnoví provádění. Musíte instruovat program, aby ZÁPISOVAL systémové stopy. Pokračujte stisknutím -NEBO -přerušte -

Pokračujte opět stisknutím C:

SYSGENQ - S140918 - Z80 -MBC2

Nástroj CP/M 2.2 podobný SYSGENU Používejte pouze k instalaci QP/M 2.71 pomocí QINSTALL. COM VAROVÁNÍ: Příkaz W přepíše stopu systému! Číst systémové stopy a načítat do RAM nebo je zapisovat zpět na disk? [R/W]>

Tentokrát stiskněte W pro zápis nového QP/M a BISO zpět na stopy disku:

Psaní … hotovo

A>

Nyní můžete stisknout reset a spustit zpět do svého nového biosu QP/M. Pokud nyní na výzvu zadáte TIME, bude spuštěna plná verze QP/M a bude reagovat takto:

Z80 -MBC2 - A040618

IOS - I/O subsystém - S220718 -R240620 IOS: Hodiny Z80 nastaveny na 8 MHz IOS: Nalezen modul RTC DS3231 (26/10/20 17:10:48) IOS: Snímač teploty RTC DS3231: 20C IOS: Nalezena možnost GPE IOS: CP/M Autoexec je VYPNUTÝ IOS: Aktuální sada disků 1 (QP/M 2,71) IOS: Načítání zaváděcího programu (QPMLDR. BIN)… Hotovo IOS: Z80 již běží Z80 -MBC2 QP/M 2,71 Cold Loader - S160918 Načítání… hotová vlastní verze Z80-MBC2 QP/M 2.71 BIOS-S150918 A> čas 26. října 20 17:10:56 A>

Váš nový systém BIOS funguje, všimněte si výše uvedeného textu „Vlastní verze“. Pravděpodobně byste si měli přečíst zbytek dokumentace QP/M na adrese

Ploutev

Doporučuje: