Deprecated: Premature access to service container [Called from ConfigFactory::getDefaultInstance in /var/www/mera400.pl/htdocs-1.37.2/includes/config/ConfigFactory.php at line 52] in /var/www/mera400.pl/htdocs-1.37.2/includes/debug/MWDebug.php on line 375

Deprecated: Premature access to service 'HookContainer' [Called from MediaWiki\MediaWikiServices::getInstance in /var/www/mera400.pl/htdocs-1.37.2/includes/MediaWikiServices.php at line 267] in /var/www/mera400.pl/htdocs-1.37.2/includes/debug/MWDebug.php on line 375

Deprecated: Premature access to service 'ObjectFactory' [Called from Wikimedia\Services\ServiceContainer::{closure} in /var/www/mera400.pl/htdocs-1.37.2/includes/ServiceWiring.php at line 618] in /var/www/mera400.pl/htdocs-1.37.2/includes/debug/MWDebug.php on line 375

Deprecated: Premature access to service 'ConfigFactory' [Called from ConfigFactory::getDefaultInstance in /var/www/mera400.pl/htdocs-1.37.2/includes/config/ConfigFactory.php at line 52] in /var/www/mera400.pl/htdocs-1.37.2/includes/debug/MWDebug.php on line 375

Deprecated: Premature access to service 'BootstrapConfig' [Called from Wikimedia\Services\ServiceContainer::{closure} in /var/www/mera400.pl/htdocs-1.37.2/includes/ServiceWiring.php at line 346] in /var/www/mera400.pl/htdocs-1.37.2/includes/debug/MWDebug.php on line 375

Deprecated: Use of Please install wikidiff2 to retain inline diff functionality. was deprecated in MediaWiki 1.35.0. [Called from SpecialMobileDiff::executeWhenAvailable in /var/www/mera400.pl/htdocs-1.37.2/extensions/MobileFrontend/includes/specials/SpecialMobileDiff.php at line 146] in /var/www/mera400.pl/htdocs-1.37.2/includes/debug/MWDebug.php on line 375

Deprecated: Use of User::isLoggedIn was deprecated in MediaWiki 1.36. [Called from MobileFrontend\Features\LoggedInUserMode::isEnabled in /var/www/mera400.pl/htdocs-1.37.2/extensions/MobileFrontend/includes/Features/LoggedInUserMode.php at line 38] in /var/www/mera400.pl/htdocs-1.37.2/includes/debug/MWDebug.php on line 375
Zmiany – MERA 400 wiki

Zmiany

Przejdź do nawigacji Przejdź do wyszukiwania
Usunięte 2254 bajty ,  17:22, 1 gru 2021
brak opisu edycji
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