MSXDOS czy Nextor
Nextor powstał na bazie MSX-DOS 2.31, jest wstecznie kompatybilny z MSXDOS, natomiast jest dużo nowocześniejszym systemem więc polecam się nim pobawić, szczególnie jeżeli macie przed sobą MSX2 mające 128k pamięci RAM.
Repozytorium Nextora znajduje się na Githubie tutaj, natomiast same pliki gotowych binarek do pobrania tutaj.
start
Nasz dysk albo dyskietka startowa powinna zawierać przynajmniej dwa pliki: MSXDOS2.SYS oraz COMMAND2.COM. Jeżeli chcemy pracować w systemie Nextor to odpowiednio będą to pliki NEXTOR.SYS i COMMAND2.COM plus niezbędny do prawidłowego działania odpowiedni kernel Nextora w pamięci ROM. Pewnym trickiem jest podmiana nazwy pliku NEXTOR.SYS na MSXDOS2.SYS, co pozwala na używanie podstawowej zawartości i funkcjonalności systemu Nextor na komputerze, który posiada ROM/Kernel MSXDOS2. Oczywiście – problemy zaczną się, gdy programy zaczną się odwoływać do komend albo zawartości ROMu, którego… nie mamy. Także jest to rozwiązanie bardzo “na sznurek” i wyłącznie do podstawowego zakresu używania – pytanie tylko na ile ma to sens.
pomoc
aby uzyskać pomoc dotyczącą danego programu czy komendy należy poprzedzić jego/jej nazwę komendą TYPE.
TYPE MAPDRV.COM
tworzenie plików wsadowych .BAT
Zarówno MSXDOS jak i Nextor wspierają pliki wsadowe czyli pliki tekstowe zawierające polecenia konsoli, wykonywane linijka po linijce – zastępują one czynność użytkownika w postaci ich wpisywania i zatwierdzania klawiszem RETURN.
COPY CON C:TEST
.BAT
polecenie to utworzy na dysku C plik TEST.BAT, którego zawartość możemy w tym momencie wpisać z klawiatury (CON to konsola czyli klawiatura) aż do momentu, gdy naciśniemy CTRL-Z.
wpisanie komendy
C:TEST
uruchomi ten plik. Nie musimy wpisywać rozszerzenia .BAT, chyba, że na dysku mamy np. też program TEST.COM.
podglądanie plików .BAT
A co jeżeli chcemy obejrzeć zawartość pliku .BAT?
TYPE C:TEST
.BAT
wyświetli na ekranie zawartość pliku TEST.BAT.
kopiowanie plików
Załóżmy, że mamy komputer z dwoma stacjami dysków (A: i B:) i chcemy po prostu przekopiować sobie pliki – np. systemowe, aby móc startować z innej dyskietki. Zakładając, że konsola wskazuje dysk A: (albo inny dysk systemowy):
COPY NEXTOR.SYS B:
COPY COMMAND2.COM B:
przełączanie do BASICa
Do przełączenia się do MSX BASIC służy komenda
BASIC
powrót z BASICa do MSX DOS
Natomiast jeżeli przełączyliśmy się do MSX BASIC i chcemy wrócić do MSX DOSa – wpisujemy:
CALL SYSTEM
zmiana aktualnej stacji dysków
System wskazuje nam w linii poleceń aktualnie aktywny dysk (i katalog w jakim jesteśmy). Zmianę dysku wykonujemy dość podobnie jak na innych systemach dyskowych wpisując literowe oznaczenie nowej stacji oraz dwukropek.
A:>B:
B:>
komendy MSXDOS
Komendy w MSXDOS mogą być:
- wewnętrzne czyli zawarte w pliku COMMAND.COM albo COMMAND2.COM (dla MSXDOS2) np. DIR. Poleceń wewnętrznych w MSXDOS2 (a w zasadzie w COMMAND2.COM) jest trzynaście.
- zewnętrzne w postaci programów typu .COM
- wsadowe czyli będące plikiem tekstowym zawierającym serię komend zakończonych klawiszem przejścia do nowej linii
trzynastka z COMMAND2.COM
COMMAND2.COM zawiera trzynaście podstawowych poleceń – to oznacza, że mając na dysku tylko pliki MSXDOS2.SYS i COMMAND2.COM możemy korzystać tylko z tych 13 poleceń wbudowanych w system. A są to:
BASIC
przełącza do MSX DISK-BASIC
COPY
kopiuje pliki.
DATE
Wyświetla aktualną datę albo pozwala ją ustawić/zmodyfikować.
DEL
Kasuje pliki.
DIR
Wyświetla listę plików w danym katalogu.
FORMAT
formatuje dysk albo dyskietkę.
MODE
Przełącza/ustawia tryb wyświetlania danej liczby kolumn tekstowych na ekranie.
PAUSE
Zatrzymuje wykonywanie pliku wsadowego.
REM
Polecenie to służy do wprowadzania komentarzy np. w plikach wsadowych. Za jego pomocą można też w pliku wsadowym wyłączyć daną linię polecenia – wszystko po REM jest traktowane jako tekst komentarza a nie polecenie do wykonania.
REN
Pozwala zmienić nazwę pliku.
TIME
Wyświetla aktualny czas albo pozwala go zmienić.
TYPE
Komenda ta wyświetla zawartość pliku (tekstowego albo wsadowego typu .BAT).
VERIFY
włącza albo wyłącza tryb weryfikacji operacji dyskowych zapisywania.
wildcards czyli zastępowanie znaków
W systemie MSXDOS są dwa znaki specjalne pomagające odnieść się do więcej niż jednego pliku. Wyobraźcie sobie sytuację, gdy chcemy wyświetlić wszystkie pliki zaczynające się na literę B.
DIR B*.*
Polecenie to wyświetli wszystkie pliki na literę B, o dowolnej długości nazwy i dowolnym rozszerzeniu.
Czyli * (asteriks) jest symbolem zastępowania dowolnego ciągu – nie oznacza jednego znaku a dowolną ilość.
Drugi znak specjalny to to “?” czyli znak zapytania. Zastępuje on jeden znak w danym miejscu ciągu nazw plików.
DIR B?.BA?
Polecenie wyświetli nam pliki, których nazwa jest dwuliterowa i zaczyna się na literę B, oraz których rozszerzenie zawiera w pierwszych dwóch znakach ciąg BA. Czyli taki warunek będą spełniać np. takie pliki:
B1.BAS
BA.BAT
formatowanie dyskietki
No dobrze, żeby się pobawić powyższymi rzeczami, trzeba sobie przygotować najpierw nośnik do tego. Zakładam, że może być taka sytuacja, w której nie będziecie mieli nic poza dyskietką do sformatowania.
Na szczęście do sformatowania dyskietki nie musimy ładować systemu z dyskietki (jak np. w 8bitowym Atari). Jeżeli nie włożymy dyskietki na starcie komputera albo dyskietka ta nie zawiera plików MSXDOS.SYS albo MSXDOS2.SYS oraz COMMAND.COM albo COMMAND2.COM to po prostu – włączy nam się MSX BASIC.
W MSXBASIC do formatowania dyskietek służy polecenie
CALL FORMAT
Jeżeli kernel (ROM dyskowy) zawiera obsługę dyskietek DD (720k) oraz mamy aktywne dwie stacje dyskietek to będziemy mieli do wyboru:
CALL FORMAT Drive name? (A,B) A 1 - 1 side, double track 2 - 2 sides,double track ? 2 Strike a key when ready Format complete Ok
Niestety w składni MSX BASIC jest pewna niekonsekwencja – polecenie DIR z MSX DOS’a ma odpowiednik w postaci
FILES
FILES “B:”
FILES “\GAMES\*.BAS”
FILES bez parametrów odpowiada komendzie FILES “*.*” czyli wyświetleniu wszystkich plików w aktywnej stacji dysków, możemy też jak w powyższych przykładach wskazywać, konkretną stację (B) czy podkatalog z którego wyświetlamy pliki z rozszerzeniem .BAS