EM400: Różnice pomiędzy wersjami

Z MERA 400 wiki
Przejdź do nawigacji Przejdź do wyszukiwania
Linia 9: Linia 9:


Kolor zielony w stanie implementacji oznacza, że element jest już funkcjonalny
Kolor zielony w stanie implementacji oznacza, że element jest już funkcjonalny
=== Emulator ===


{| class="wikitable"
{| class="wikitable"
! Obszar/Funkcjonalność !! Stan implementacji !! Uwagi
! Obszar/Funkcjonalność !! Stan implementacji !! Uwagi
|-
| Roboczy disassembler || <font color=green>100%</font> || Python
|-
|-
| Konfiguracja emulatora || 0% || Plik konfiguracyjny EM400
| Konfiguracja emulatora || 0% || Plik konfiguracyjny EM400
Linia 27: Linia 27:
| Rozkazy procesora || <font color=green>96%</font> ||   
| Rozkazy procesora || <font color=green>96%</font> ||   
|-
|-
| Debugger - szkielet || <font color=green>100%</font> ||
| Konfiguracja programowa pamięci || <font color=green>100%</font> ||  
|-
|-
| Debugger - podgląd pamięci i rejestrów || <font color=green>100%</font> ||
| Rozkazy IN/OU (dekodowanie argumentów -> kanały) || 50% ||
|-
|-
| Debugger - disassembler || <font color=green>100%</font> ||
| Szkielet kanałów || 0% ||
|-
|-
| Debugger - translator || <font color=green>100%</font> || nie-assemblerowy pseudokod
| System przerwań || 10% ||
|-
|-
| Debugger - load/save || 50% ||
| Kanał znakowy || 0% ||
|-
|-
| Debugger - breakpointy || <font color=green>100%</font> ||
| Terminal znakowy || 0% ||
|-
|-
| Debugger - ncurses || <font color=green>100%</font> || ergonomiczny interfejs użytkownika
| Kanał pamięciowy || 0% ||
|-  
| Mera 9425 || 0% ||
|-
|-
| Debugger - interpreter poleceń || <font color=green>100%</font> || nowa, bogatsza linia poleceń
| Bootstrap || 0% || Niepotrzebny (?) ze względu na ładowanie obrazu do pamięci emulatora
|-
|-
| Debugger - śledzenie zmian w pamięci i rejestrach || 30% ||
|}
 
=== Debuger ===
 
{| class="wikitable"
! Obszar/Funkcjonalność !! Stan implementacji !! Uwagi
|-
|-
| Debugger - podgląd stosu || 0% ||
| Szkielet || <font color=green>100%</font> ||
|-
|-
| <strike>Roboczy Assembler</strike> || 25% || porzucony na rzecz pełnoprawnego ASSEM
| Podgląd pamięci i rejestrów || <font color=green>100%</font> ||
|-
| Disassembler || <font color=green>100%</font> ||
|-
| Translator || <font color=green>100%</font> || nie-assemblerowy pseudokod
|-
| Load/save || 50% ||
|-
| Breakpointy || <font color=green>100%</font> ||
|-
|-
| ASSEM || 10% ||  
| Ncurses || <font color=green>100%</font> || ergonomiczny interfejs użytkownika
|-
|-
| Testy automatyczne CPU || 5% ||  
| Interpreter poleceń || <font color=green>100%</font> || nowa, bogatsza linia poleceń
|-
|-
| Rozkazy IN/OU (dekodowanie argumentów -> kanały) || 50% ||
| Śledzenie zmian w pamięci i rejestrach || 30% ||
|-
|-
| Szkielet kanałów || 0% ||
| Podgląd stosu || 0% ||
|-
|-
| Konfiguracja programowa pamięci || <font color=green>100%</font> ||
|}
 
=== Narzędzia ===
 
{| class="wikitable"
! Obszar/Funkcjonalność !! Stan implementacji !! Uwagi
|-
|-
| System przerwań || 10% ||
| Roboczy disassembler || <font color=green>100%</font> || Python
|-
|-
| Kanał znakowy || 0% ||
| <strike>Roboczy Assembler</strike> || 25% || porzucony na rzecz pełnoprawnego ASSEM
|-
|-
| Terminal znakowy || 0% ||
| ASSEM || 10% ||  
|-
|-
| Kanał pamięciowy || 0% ||
| Testy automatyczne CPU || 5% ||  
|-
| Mera 9425 || 0% ||
|-
|-
| Bootstrap || 0% || Niepotrzebny (?) ze względu na ładowanie obrazu do pamięci emulatora
| Narzędzia do odczytu systemu plików CROOK-5 || <font color=green>100%</font> ||
|-
|-
|}
|}

Wersja z 16:51, 12 gru 2012

EM400

EM400 jest powstającym emulatorem systemu MERA-400. W założeniu ma emulować kompletny system, wraz z zegarem czasu rzeczywistego, kanałami (znakowym i pamięciowym), oraz urządzeniami podłączonymi do kanałów (terminalami i pamięciami masowymi). W dziale Pytania spisane są aktualnie wymagające wyjaśnienia kwestie.

Repozytorium GIT ze źródłami emulatora i podręcznych narzędzi: https://github.com/jakubfi/mera400

Aktualny stan prac nad emulatorem

Kolor zielony w stanie implementacji oznacza, że element jest już funkcjonalny

Emulator

Obszar/Funkcjonalność Stan implementacji Uwagi
Konfiguracja emulatora 0% Plik konfiguracyjny EM400
Linia poleceeń emulatora 0% Wywołanie emulatora
Tablica skoków dla rozkazów 100% 1 lub 2 poziomy wywołań do osiągnięcia rozkazu
Dekoder rozkazów i argumentów 100%
Szkielet, pamięć, rejestry + makra 100%
Rozkazy procesora 96%
Konfiguracja programowa pamięci 100%
Rozkazy IN/OU (dekodowanie argumentów -> kanały) 50%
Szkielet kanałów 0%
System przerwań 10%
Kanał znakowy 0%
Terminal znakowy 0%
Kanał pamięciowy 0%
Mera 9425 0%
Bootstrap 0% Niepotrzebny (?) ze względu na ładowanie obrazu do pamięci emulatora

Debuger

Obszar/Funkcjonalność Stan implementacji Uwagi
Szkielet 100%
Podgląd pamięci i rejestrów 100%
Disassembler 100%
Translator 100% nie-assemblerowy pseudokod
Load/save 50%
Breakpointy 100%
Ncurses 100% ergonomiczny interfejs użytkownika
Interpreter poleceń 100% nowa, bogatsza linia poleceń
Śledzenie zmian w pamięci i rejestrach 30%
Podgląd stosu 0%

Narzędzia

Obszar/Funkcjonalność Stan implementacji Uwagi
Roboczy disassembler 100% Python
Roboczy Assembler 25% porzucony na rzecz pełnoprawnego ASSEM
ASSEM 10%
Testy automatyczne CPU 5%
Narzędzia do odczytu systemu plików CROOK-5 100%