EM400 - konfiguracja: Różnice pomiędzy wersjami

Przejdź do nawigacji Przejdź do wyszukiwania
brak opisu edycji
Nie podano opisu zmian
Nie podano opisu zmian
 
(Nie pokazano 15 pośrednich wersji utworzonych przez tego samego użytkownika)
Linia 1: Linia 1:
Plik konfiguracyjny EM400 pozwala skonfigurować parametry sprzętowe emulowanej maszyny i jest wymagany do uruchomienia emulatora. Domyślne EM400 próbuje załadować następuące pliki konfiguracyjne:
Plik konfiguracyjny EM400 pozwala skonfigurować parametry sprzętowe emulowanej maszyny i jest wymagany do uruchomienia emulatora. Jeśli użytkownik podał nazwę pliku konfiguracyjnego w linii poleceń (używając przełącznika '''-c'''), zostanie on użyty. Jeśli nie, domyślnie używany jest plik '''~/.em400/em400.ini'''.
* '''em400.cfg''' (w katalogu bieżącym)
* '''~/.em400/em400.cfg''' (konfiguracja użytkownika)
* '''/etc/em400.cfg''' (konfiguracja systemowa)
Jeśli jeden z plików uda się poprawnie załadować, dalesze nie są sprawdzane. Powyższa lista plików jest ignorowana, jeśli użytkownik użyje przełącznika '''-c''' w [[EM400 - linia poleceń|linii poleceń]]


= Składnia pliku konfiguracyjnego =
Składnia pliku i opis poszczególnych opcji znajduje się [https://github.com/jakubfi/em400/blob/master/cfg/em400.ini.template tutaj]
 
Konfiguracja składa się z bloków opisujących poszczególne elementy systemu. Definicja bloku rozpoczyna się jego nazwą, po czym w nawiasach wąsowych występuje zero lub więcej dostępnych opcji konfiguracyjnych dla elementu. Elementy objęte konfiguracją to:
 
* '''cpu''' - procesor
* '''memory''' - pamięć
 
== Procesor ==
 
Dostępne sa następujące opcje konfigurujące działanie procesora:
 
* '''speed''' - prędkość emulacji procesora. Dostępne warianty:
** '''max''' - emulacja z maksymalną możliwą prędkością
** '''real''' - emulator stara się zachować oryginalne czasy wykonania instrukcji, czasy dostępu do pamięci i urządzeń zewnętrznych
* '''timer_step''' - okres [[Przerwanie_zegarowe|zegara systemowego]] (w mikrosekundach)
* '''mod_17bit''' - włącz/wyłącz modyfikację sprzętową CPU pozwalającą na 17-bitowe adresowanie bajtów (domyślnie włączone)
* '''mod_sint''' - włącz/wyłącz modyfikację sprzętową dodającą przerwanie programowe o wysokim priorytecie (domyślnie włączone)
 
Przykładowy blok konfiguracji CPU:
 
cpu {
        speed = max
        timer_step = 10
        mod_17bit = true
        mod_sint = false
}
 
== Pamięć ==
 
Każdy z szesnastu fizycznych modułów [[Pamięć operacyjna|pamięci operacyjnej]] może zostać skonfigurowany niezależnie. Dołączone zostaną tylko bloki o numerach podanych w konfiguracji, pozostałe będą z punktu widzenia systemu nieobecne. Konfiguracja pojedynczego modułu pamięci opisana jest w następujący sposób:
 
module <nr_modułu> = <typ>:<il_segmentów>
 
Gdzie:
* '''nr_modułu''' - kolejny numer modułu pamięci z zakresu 0-15 (moduł 0 to moduł pamięci systemu operacyjnego, musi mieć rozmiar przynajmniej 2 segmentów)
* '''typ''' - typ modułu pamięci. Dostępne typy to:
** '''elwro''' - pamięć ferrytowa
** '''mega''' - pamięć półprzewodnikowa
* '''il_segmentów''' - ilość 4k-słowowych segmentów w module (liczba z zakresu 1-16)
 
Przykładowy blok konfiguracji pamięci:
 
memory {
        module  0 = elwro:8
        module  1 = mega:16
        module  2 = mega:5
}

Menu nawigacyjne