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

Z MERA 400 wiki
Przejdź do nawigacji Przejdź do wyszukiwania
Nie podano opisu zmian
 
(Nie pokazano 31 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:
__NOTOC__
* '''em400.cfg''' (w katalogu bieżącym)
Konfiguracja emulatora dostępna jest z menu '''Emulator → Ustawienia''' i zorganizowana jest w sekcje:
* '''~/.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 =
# '''Maszyna''' - konfiguracje sprzętowe emulowanego komputera
# '''Ogólne''' - ustawienia emulacji i interfejsu użytkownika
# '''Dźwięk''' - ustawienia dźwięków interfejsu użytkownika i głośniczka CPU
# '''Logowanie''' - konfiguracja logowania


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:
= Maszyna =


* '''cpu''' - procesor
[[File:Konfiguracja-maszyna.png|thumb|500px|Konfiguracja: Maszyna (procesor)]]
* '''memory''' - pamięć
 
EM400 pozwala przygotować wiele konfiguracji minikomputera i przełączać się nimi w zależności od potrzeb.
 
Przy pierwszym uruchomieniu, EM400 tworzy dwie domyślne maszyny:
 
* '''MERA-400''' - prosta konfiguracja z dwoma modułami pamięci Elwro i stacją dysków SP45DE
* '''MX-16''' - przeznaczona do uruchamiania systemu operacyjnego CROOK-5, z pamięcią MEGA Amepolu, procesorem peryferyjnym MULTIX i dyskiem Winchester
 
Zarządzanie maszynami umożliwiają następujące opcje:
 
* '''Aktywna maszyna''' - wybór aktualnie edytowanej konfiguracji minikomputera
* '''Dodaj...''' - dodawanie nowej maszyny. Otwiera okienko pozwalające wpisać jej nazwę. Identyfikator maszyny wywodzony jest z podanej nazwy
* '''Powiel...''' - robi kopię aktualnie wybranej maszyny
* '''Usuń''' - usuwa aktualnie wybraną maszynę
* '''Nazwa''' - nazwa aktualnie wybranej maszyny
* '''Identyfikator''' - identyfikator wybranej maszyny. Używa się go jako parametr opci '''-m''' przy wywoływaniu emulatora z linii poleceń
 
Konfiguracja maszyny podzielona jest na trzy zakładki opisane w kolejnych sekcjach.


== Procesor ==
== Procesor ==


Dostępne sa następujące opcje konfigurujące działanie procesora:
Można zmienić następujące właściwości procesora


* '''speed''' - prędkość emulacji procesora. Dostępne warianty:
* '''Jednostka zmiennoprzecinkowa (AWP)''' - czy zainstalowany jest Arytmometr Wielokrotnej Precyzji
** '''max''' - emulacja z maksymalną możliwą prędkością
* '''Modyfikacje procesora''' - czy obecne są modyfikacje procesora wprowadzone w MX-16
** '''real''' - emulator stara się zachować oryginalne czasy wykonania instrukcji, czasy dostępu do pamięci i urządzeń zewnętrznych
* '''Instrukcje we/wy niedozwolone w trybie użytkownika''' - czy instrukcje IN oraz OU są niedozwolone w trybie użytkownika
* '''timer_step''' - okres [[Przerwanie_zegarowe|zegara systemowego]] (w milisekundach)
* '''Zatrzymaj przy braku pamięci''' - czy procesor zatrzymuje się, jeśli w segmencie pamięci dla systemu operacyjnego nastąpiło odwołanie do nieskonfigurowanej pamięci
* '''mod_17bit''' - włącz/wyłącz modyfikację sprzętową CPU pozwalającą na 17-bitowe adresowanie bajtów (domyślnie włączone)
* '''Okres zegara''' - co jaki czas zgłaszane są przerwania zegarowe (z wewnętrznego timera CPU)
* '''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:
== Pamięć ==


cpu {
[[File:Konfiguracja-pamiec.png|thumb|500px|Konfiguracja: Maszyna (pamięć)]]
        speed = max
        timer_step = 10
        mod_17bit = true
        mod_sint = false
}


== Pamięć ==
* '''Moduły Elwro''' - ilość zainstalowanych modułów pamięci ferrytowej Elwro (po 32 ksłów każdy)
* '''Moduły MEGA''' - ilość zainstalowanych modułów pamięci półprzewodnikowej MEGA Amepolu (po 64 ksłów każdy)
* '''Strony systemowe (sprzętowe)''' - ilość stron pamięci skonfigurowanych sprzętowo dla systemu operacyjnego w segmencie 0
* '''Obraz PROM MEGA''' - obraz pamięci PROM (EPROM) w pamięci MEGA, który zastąpi domyślny
* '''Wstępnie ładowany program''' - program, który zostanie automatycznie załadowany do segmentu 0 po włączeniu maszyny
 
== Wejście/wyjście ==
 
[[File:Konfiguracja-wewy.png|thumb|500px|Konfiguracja: Maszyna (kanały i urządzenia)]]
 
W tej zakładce konfigurowane są kanały wejścia/wyjścia i podłączone do nich urządzenia:
 
* '''Dodaj kanał''' - dodanie nowego kanału wejścia/wyjścia (max 16)
* '''Dodaj urządzenie''' - dodanie nowego kurządzenia w kanale (ich ilość zależy od kanału)
* '''Usuń''' - usuń wybrane z listy urządzenie lub kanał
 
=== Dodawanie kanału ===
 
Dodając nowy kanał należy wybrać jego numer oraz typ. Aktualnie obsługiwane kanały:
 
* '''Znakowy''' - kanał znakowy minikomputera, do podłączanie wolnych urządzeń znakowych
* '''MULTIX''' - procesor peryferynjy MULTIX Amepolu
* '''Tester we/wy''' - do testów komunikacji, używany przez testy emulatora
 
=== Dodawanie urządzeń do kanału ===
 
Dodanie nowego urządzenia wymaga wybrania jego numeru i typu, oraz ustalenia opcji, które są zależne od typu urządzenia. Dostępne typy urządzeń zależą od tego, w jakim kanale jest ono dodawane.
 
==== Terminal ====
 
Dostępny w kanale znakowym i MULTIX-ie. '''UWAGA:''' Terminal w MULTIX-ie nie działa w obecnej wersji emulatora.
 
* '''Port TCP''' - port TCP na którym słucha emulacja terminala.
* '''Prędkość''' - emulowana prędkość działania emulacji terminala. Domyślnie 9600 bodów.
 
==== Pamięć SP45DE ====
 
Dostępna tylko w kanale znakowym.
 
* '''Obrazy dyskietek''' - pliki zawierające obrazy dyskietek 8" o geometrii: 1 strona (głowica), 77 ścieżek, 26 sektorów na ścieżkę, 128 bajtów na sektor = 256256 bajtów.
 
==== Zegar czasu rzeczywistego Amepolu ====
 
Dostępny tylko w kanale znakowym.
 
* '''Obraz PROM''' - alternatywna zawartość pamięci PROM zegara (256 bajtów). Zastępuje domyślną.
 
==== Winchester ====
 
Dostępny tylko w MULTIX-ie.
 
* '''Obraz dysku''' - plik zawierający obraz dysku o geometrii: 4 strony (głowice), 615 ścieżek, 16 sektorów na ścieżkę, 512 bajtów na sektor = 20152320 bajtów.
 
==== Napęd dyskietek 5.25" ====
 
Dostępny tylko w MULTIX-ie. '''UWAGA:''' aktualnie nie obsługiwany.
 
= Ogólne =
 
[[File:Konfiguracja-ogolne.png|thumb|500px|Konfiguracja: Ogólne]]
 
== Emulacja ==
 
Ustawienia dotyczące sposobu realizacji emulacji.
 
'''Emulowane czasy''' określają to, jak wiernie emulator oddaje prawdziwą MERĘ-400 jeśli chodzi o prędkość pracy systemu. Możliwe są trzy poziomy:
 
* '''Wszystkie''' - Aktywne są wszystkie czasy, które są zaimplementowane w emulatorze. EM400 oddaje MERĘ-400 tak wiernie, jak tylko potrafi.
* '''Minimum''' - Aktywne są tylko czasy, które są wymagane do poprawnego działania oprogramowania MERY-400. Ogólna interakcja z emulowanym minikomputerem jest znacznie szybsza, niż z prawdziwym sprzętem.
* '''Żadne''' - '''UWAGA:''' w tym trybie oprogramowanie może działać niepoprawnie z wielu przyczyn. Emulacja działa tak szybko, jak to możliwe. Nie są zachowane niemal żadne czasy działania prwawdziwego komputera. Przeznaczony do testowania, debugowania i w innych, szczególnych przypadkach.
 
W miarę rozwoju emulatora w opcji '''Wszystkie''' uwzględnianych będzie coraz więcej aspektów pracy MERY-400.
 
== Interfejs użytkownika ==
 
* '''Język''' - język interfejsu. Pozwala wybrać jeden z języków lub honorować ustawienia systemu.
* '''Uruchom z włączoną maszyną''' - emulator uruchamia się z wybraną maszyną i włączonym zasilaniem (nie trzeba przekręcać kluczyka, żeby włączyć maszynę)
* '''Motyw pulpitu''' - GUI EM400 używa własnego motywu. Wyłączenie opcji powoduje, że używany jest motyw systemowy.
* '''Mały pulpit techniczny''' - grafika pulpitu technicznego skadrowana jest do interaktywnych elementów.
* '''Terminal''' - określa, czy emulator używa wbudowanej emulacji terminala, czy zewnętrznego terminala konfigurowanego w następnej opcji
* '''Polecenie terminala''' - polecenie, które uruchamiane jest, gdy użytkownik otwiera terminal, a opcja '''Terminal''' powyżej ustawiona jest na '''Zewnętrzny'''. Pomocnicze polecenie '''emterm''' instalowane jest wraz z emulatorem i zapewnia poprawne połączenie z emulatorem.
* '''Czcionka debugera''' - czcionka używana w interfejsie debugera
* '''Czcionka terminala''' - czcionka używana we wbudowanym terminalu
 
= Dźwięk =


Każdy z szesnastu fizycznych modułów [[Pamięć operacyjna|pamięci operacyjnej]] może zostać skonfigurowany niezależnie. Dołączone zostaną tylko moduły 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:
[[File:Konfiguracja-dzwiek.png|thumb|500px|Konfiguracja: Dźwięk]]


module <nr_modułu> = <typ>:<il_segmentów>
Dźwięk w emulatorze to dwa osobne tory audio:


Gdzie:
* dźwięki interfejsu - pstrykanie kluczy, dźwięk pokrętła rejestrów, etc.
* '''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)
* dźwięk głośniczka CPU - generowany przez samą emulację
* '''typ''' - typ modułu pamięci. Dostępne typy to:
** '''elwro''' - pamięć ferrytowa
** '''[[MEGA|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:
== Dźwięki interfejsu ==


memory {
* '''Głośność''' - głośność dźwięków interfejsu
        module  0 = elwro:8
* '''Uwielbiam gdy cewki piszczą''' - sprawdź sam ;-)
        module  1 = mega:16
        module  2 = mega:5
}


== Urządzenia zewnętrzne ==
== Głośniczek CPU ==


=== Kanały ===
* '''Wyjście dźwięku włączone''' - włączenie dźwięku CPU
* '''Głośność''' - głośność głośniczka CPU
* '''Częstotliwość próbkowania'''
* '''Długość bufora'''
* '''Opóźnienie'''
* '''Podsystem audio'''
* '''Urządzenie'''


Dołączenie emulacji kanału wymaga zdefiniowania dla niego bloku konfiguracji w sposób następujący:
= Logowanie =


channel <nr_kanału> = <typ_kanału> { ... }
[[File:Konfiguracja-logowanie.png|thumb|500px|Konfiguracja: Logowanie]]


Gdzie:
Umożliwia logowanie pracy emulatora do pliku.
* '''nr_kanału''' - kolejny numer kanału w systemie
* '''typ_kanału''' - typ kanału, dostępne typy to:
** '''char''' - kanał znakowy
** '''mem''' - kanał pamięciowy
** '''plix''' - procesor peryferyjny [[PLIX]]
** '''multix''' - procesor peryferyjny [[MULTIX]]


W nawiasach wąsowych występują definicje kolejnych urządzeń podłączonych do kanału (patrz niżej).
* '''Logowanie włączone''' - aktywuje logowanie
* '''Komponenty''' - jakie komponenty emulacji zapisują swoje akcje do pliku logu
* '''Plik logu''' - plik, to którego log jest zapisywany
* '''Buforowanie liniowe''' - zapis do pliku odbywa się po każdej linii. W przeciwnym wypadku zapisy są buforowane do większych zapisów (wydajniejsze, ale można stracić fragment loga)


=== Urządzenia ===
Dostępne komponenty:


Konfiguracja emulowanych urządzeń definiowana jest następująco:
* LIB - komunikaty biblioteki libem400
* APP - komunikaty aplikacji używającej biblioteki em400
* CRK5 - procesy i wywołania systemowe CROOK-5
* MEM - konfiguracja i zdarzenia w pamięci
* CPU - praca procesora '''UWAGA:''' włączenie tej opcji loguje każdą wykonywaną instrukcję. Może to spowolnić emulację i generować pliki o rozmiarze wielu GB
* OP - szczegóły wybranych instrukcji CPU
* INT - przerwania
* IO - podsystem wejścia/wyjścia
* MX - MULTIX
* CCHR - kanał znakowy
* CMEM - kanał pamięciowy
* UZDAT - port szeregowy w kanale znakowym
* UZFX - kontroler stacji dysków SP45DE
* MECLO - zegar czasu rzeczywistego Amepolu
* TERM - terminal
* 9425 - dysk MERA 9425
* WNCH - dysk Winchester
* FLOP - stacja dysków
* PNCH - dziurkarka taśmy papierowej
* PNRD - czytnik taśmy papierowej
* TAPE - taśma magnetyczna


unit <nr_urządzenia> = <typ_urządzenia> [: argument [, argument [...]]]
= Plik konfiguracyjny =


Gdzie:
Konfiguracja określona w oknie ustawień emulatora zapisywana jest do tekstowego pliku konfiguracyjnego. EM400 odnajduje go w następujący sposób:
* '''nr_urządzenia''' - kolejny numer urządzenia w kanale
* '''typ_urządzenia''' - jeden z obsługiwanych typów urządzenia.
* '''argument''' - opcjonalne argumenty będące parametrami dołączanego urządzenia


=== Emulowane urządzenia peryferyjne ===
# 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:
#* w systemach Linux, kolejno:
#** '''$XDG_CONFIG_HOME/em400/em400.ini'''
#** '''$HOME/.config/em400/em400.ini'''
#* w systemach Windows:
#** '''%APPDATA%\em400\em400.ini'''
# Jeśli plik konfiguracyjny nie istnieje, tworzony jest domyślny.


* Terminal w konsoli emulatora:
Aktualny opis pliku konfiguracyjnego wraz z przykładami znajduje się [https://github.com/jakubfi/em400/blob/master/cfg/em400.ini tutaj]
** typ urządzenia: '''term_console'''
** argumenty: brak
** przykład użycia: <tt>term_console</tt>
* Terminal TCP
** typ urządzenia: '''term_tcp'''
** argumenty: port TCP
** przykład użycia: <tt>term_tcp:20034</tt>
* Terminal szeregowy
** typ urządzenia: '''term_serial'''
** argumenty: urządzenie, prędkość, ilość bitów w słowie, parzystość, ilosć bitów stopu
** przykład użycia: <tt>term_serial:/dev/ttyS0, 9600, 8, N, 1</tt>
* Dysk MERA 9425
** typ urządzenia: '''mera9425'''
** argumenty: obraz talerza stałego, obraz talerza wymiennego
** przykład użycia: <tt>mera9425:disk1.img, disk2.img</tt>
* Dysk [[Winchester]]
** typ urządzenia: '''winchester'''
** argumenty: obraz dysku
** przykład użycia: <tt>winchester:winchester.img</tt>

Aktualna wersja na dzień 14:45, 30 sie 2026

Konfiguracja emulatora dostępna jest z menu Emulator → Ustawienia i zorganizowana jest w sekcje:

  1. Maszyna - konfiguracje sprzętowe emulowanego komputera
  2. Ogólne - ustawienia emulacji i interfejsu użytkownika
  3. Dźwięk - ustawienia dźwięków interfejsu użytkownika i głośniczka CPU
  4. Logowanie - konfiguracja logowania

Maszyna

 
Konfiguracja: Maszyna (procesor)

EM400 pozwala przygotować wiele konfiguracji minikomputera i przełączać się nimi w zależności od potrzeb.

Przy pierwszym uruchomieniu, EM400 tworzy dwie domyślne maszyny:

  • MERA-400 - prosta konfiguracja z dwoma modułami pamięci Elwro i stacją dysków SP45DE
  • MX-16 - przeznaczona do uruchamiania systemu operacyjnego CROOK-5, z pamięcią MEGA Amepolu, procesorem peryferyjnym MULTIX i dyskiem Winchester

Zarządzanie maszynami umożliwiają następujące opcje:

  • Aktywna maszyna - wybór aktualnie edytowanej konfiguracji minikomputera
  • Dodaj... - dodawanie nowej maszyny. Otwiera okienko pozwalające wpisać jej nazwę. Identyfikator maszyny wywodzony jest z podanej nazwy
  • Powiel... - robi kopię aktualnie wybranej maszyny
  • Usuń - usuwa aktualnie wybraną maszynę
  • Nazwa - nazwa aktualnie wybranej maszyny
  • Identyfikator - identyfikator wybranej maszyny. Używa się go jako parametr opci -m przy wywoływaniu emulatora z linii poleceń

Konfiguracja maszyny podzielona jest na trzy zakładki opisane w kolejnych sekcjach.

Procesor

Można zmienić następujące właściwości procesora

  • Jednostka zmiennoprzecinkowa (AWP) - czy zainstalowany jest Arytmometr Wielokrotnej Precyzji
  • Modyfikacje procesora - czy obecne są modyfikacje procesora wprowadzone w MX-16
  • Instrukcje we/wy niedozwolone w trybie użytkownika - czy instrukcje IN oraz OU są niedozwolone w trybie użytkownika
  • Zatrzymaj przy braku pamięci - czy procesor zatrzymuje się, jeśli w segmencie pamięci dla systemu operacyjnego nastąpiło odwołanie do nieskonfigurowanej pamięci
  • Okres zegara - co jaki czas zgłaszane są przerwania zegarowe (z wewnętrznego timera CPU)

Pamięć

 
Konfiguracja: Maszyna (pamięć)
  • Moduły Elwro - ilość zainstalowanych modułów pamięci ferrytowej Elwro (po 32 ksłów każdy)
  • Moduły MEGA - ilość zainstalowanych modułów pamięci półprzewodnikowej MEGA Amepolu (po 64 ksłów każdy)
  • Strony systemowe (sprzętowe) - ilość stron pamięci skonfigurowanych sprzętowo dla systemu operacyjnego w segmencie 0
  • Obraz PROM MEGA - obraz pamięci PROM (EPROM) w pamięci MEGA, który zastąpi domyślny
  • Wstępnie ładowany program - program, który zostanie automatycznie załadowany do segmentu 0 po włączeniu maszyny

Wejście/wyjście

 
Konfiguracja: Maszyna (kanały i urządzenia)

W tej zakładce konfigurowane są kanały wejścia/wyjścia i podłączone do nich urządzenia:

  • Dodaj kanał - dodanie nowego kanału wejścia/wyjścia (max 16)
  • Dodaj urządzenie - dodanie nowego kurządzenia w kanale (ich ilość zależy od kanału)
  • Usuń - usuń wybrane z listy urządzenie lub kanał

Dodawanie kanału

Dodając nowy kanał należy wybrać jego numer oraz typ. Aktualnie obsługiwane kanały:

  • Znakowy - kanał znakowy minikomputera, do podłączanie wolnych urządzeń znakowych
  • MULTIX - procesor peryferynjy MULTIX Amepolu
  • Tester we/wy - do testów komunikacji, używany przez testy emulatora

Dodawanie urządzeń do kanału

Dodanie nowego urządzenia wymaga wybrania jego numeru i typu, oraz ustalenia opcji, które są zależne od typu urządzenia. Dostępne typy urządzeń zależą od tego, w jakim kanale jest ono dodawane.

Terminal

Dostępny w kanale znakowym i MULTIX-ie. UWAGA: Terminal w MULTIX-ie nie działa w obecnej wersji emulatora.

  • Port TCP - port TCP na którym słucha emulacja terminala.
  • Prędkość - emulowana prędkość działania emulacji terminala. Domyślnie 9600 bodów.

Pamięć SP45DE

Dostępna tylko w kanale znakowym.

  • Obrazy dyskietek - pliki zawierające obrazy dyskietek 8" o geometrii: 1 strona (głowica), 77 ścieżek, 26 sektorów na ścieżkę, 128 bajtów na sektor = 256256 bajtów.

Zegar czasu rzeczywistego Amepolu

Dostępny tylko w kanale znakowym.

  • Obraz PROM - alternatywna zawartość pamięci PROM zegara (256 bajtów). Zastępuje domyślną.

Winchester

Dostępny tylko w MULTIX-ie.

  • Obraz dysku - plik zawierający obraz dysku o geometrii: 4 strony (głowice), 615 ścieżek, 16 sektorów na ścieżkę, 512 bajtów na sektor = 20152320 bajtów.

Napęd dyskietek 5.25"

Dostępny tylko w MULTIX-ie. UWAGA: aktualnie nie obsługiwany.

Ogólne

 
Konfiguracja: Ogólne

Emulacja

Ustawienia dotyczące sposobu realizacji emulacji.

Emulowane czasy określają to, jak wiernie emulator oddaje prawdziwą MERĘ-400 jeśli chodzi o prędkość pracy systemu. Możliwe są trzy poziomy:

  • Wszystkie - Aktywne są wszystkie czasy, które są zaimplementowane w emulatorze. EM400 oddaje MERĘ-400 tak wiernie, jak tylko potrafi.
  • Minimum - Aktywne są tylko czasy, które są wymagane do poprawnego działania oprogramowania MERY-400. Ogólna interakcja z emulowanym minikomputerem jest znacznie szybsza, niż z prawdziwym sprzętem.
  • Żadne - UWAGA: w tym trybie oprogramowanie może działać niepoprawnie z wielu przyczyn. Emulacja działa tak szybko, jak to możliwe. Nie są zachowane niemal żadne czasy działania prwawdziwego komputera. Przeznaczony do testowania, debugowania i w innych, szczególnych przypadkach.

W miarę rozwoju emulatora w opcji Wszystkie uwzględnianych będzie coraz więcej aspektów pracy MERY-400.

Interfejs użytkownika

  • Język - język interfejsu. Pozwala wybrać jeden z języków lub honorować ustawienia systemu.
  • Uruchom z włączoną maszyną - emulator uruchamia się z wybraną maszyną i włączonym zasilaniem (nie trzeba przekręcać kluczyka, żeby włączyć maszynę)
  • Motyw pulpitu - GUI EM400 używa własnego motywu. Wyłączenie opcji powoduje, że używany jest motyw systemowy.
  • Mały pulpit techniczny - grafika pulpitu technicznego skadrowana jest do interaktywnych elementów.
  • Terminal - określa, czy emulator używa wbudowanej emulacji terminala, czy zewnętrznego terminala konfigurowanego w następnej opcji
  • Polecenie terminala - polecenie, które uruchamiane jest, gdy użytkownik otwiera terminal, a opcja Terminal powyżej ustawiona jest na Zewnętrzny. Pomocnicze polecenie emterm instalowane jest wraz z emulatorem i zapewnia poprawne połączenie z emulatorem.
  • Czcionka debugera - czcionka używana w interfejsie debugera
  • Czcionka terminala - czcionka używana we wbudowanym terminalu

Dźwięk

 
Konfiguracja: Dźwięk

Dźwięk w emulatorze to dwa osobne tory audio:

  • dźwięki interfejsu - pstrykanie kluczy, dźwięk pokrętła rejestrów, etc.
  • dźwięk głośniczka CPU - generowany przez samą emulację

Dźwięki interfejsu

  • Głośność - głośność dźwięków interfejsu
  • Uwielbiam gdy cewki piszczą - sprawdź sam ;-)

Głośniczek CPU

  • Wyjście dźwięku włączone - włączenie dźwięku CPU
  • Głośność - głośność głośniczka CPU
  • Częstotliwość próbkowania
  • Długość bufora
  • Opóźnienie
  • Podsystem audio
  • Urządzenie

Logowanie

 
Konfiguracja: Logowanie

Umożliwia logowanie pracy emulatora do pliku.

  • Logowanie włączone - aktywuje logowanie
  • Komponenty - jakie komponenty emulacji zapisują swoje akcje do pliku logu
  • Plik logu - plik, to którego log jest zapisywany
  • Buforowanie liniowe - zapis do pliku odbywa się po każdej linii. W przeciwnym wypadku zapisy są buforowane do większych zapisów (wydajniejsze, ale można stracić fragment loga)

Dostępne komponenty:

  • LIB - komunikaty biblioteki libem400
  • APP - komunikaty aplikacji używającej biblioteki em400
  • CRK5 - procesy i wywołania systemowe CROOK-5
  • MEM - konfiguracja i zdarzenia w pamięci
  • CPU - praca procesora UWAGA: włączenie tej opcji loguje każdą wykonywaną instrukcję. Może to spowolnić emulację i generować pliki o rozmiarze wielu GB
  • OP - szczegóły wybranych instrukcji CPU
  • INT - przerwania
  • IO - podsystem wejścia/wyjścia
  • MX - MULTIX
  • CCHR - kanał znakowy
  • CMEM - kanał pamięciowy
  • UZDAT - port szeregowy w kanale znakowym
  • UZFX - kontroler stacji dysków SP45DE
  • MECLO - zegar czasu rzeczywistego Amepolu
  • TERM - terminal
  • 9425 - dysk MERA 9425
  • WNCH - dysk Winchester
  • FLOP - stacja dysków
  • PNCH - dziurkarka taśmy papierowej
  • PNRD - czytnik taśmy papierowej
  • TAPE - taśma magnetyczna

Plik konfiguracyjny

Konfiguracja określona w oknie ustawień emulatora zapisywana jest do tekstowego pliku konfiguracyjnego. EM400 odnajduje go w następujący sposób:

  1. Jeśli użytkownik podał nazwę pliku konfiguracyjnego w linii poleceń (używając przełącznika -c), zostanie on użyty.
  2. Jeśli nie, domyślnie używany jest plik:
    • w systemach Linux, kolejno:
      • $XDG_CONFIG_HOME/em400/em400.ini
      • $HOME/.config/em400/em400.ini
    • w systemach Windows:
      • %APPDATA%\em400\em400.ini
  3. Jeśli plik konfiguracyjny nie istnieje, tworzony jest domyślny.

Aktualny opis pliku konfiguracyjnego wraz z przykładami znajduje się tutaj