EM400: Różnice pomiędzy wersjami
Przejdź do nawigacji
Przejdź do wyszukiwania
Linia 7: | Linia 7: | ||
== Aktualny stan prac nad emulatorem == | == Aktualny stan prac nad emulatorem == | ||
Kolor zielony w stanie implementacji oznacza, że element jest już funkcjonalny | |||
{| class="wikitable" | {| class="wikitable" | ||
Linia 12: | Linia 14: | ||
|- | |- | ||
| Roboczy disassembler || <font color=green>100%</font> || Python | | Roboczy disassembler || <font color=green>100%</font> || Python | ||
|- | |||
| Konfiguracja emulatora || 0% || Plik konfiguracyjny EM400 | |||
|- | |||
| Linia poleceeń emulatora || 0% || Wywołanie emulatora | |||
|- | |- | ||
| Tablica skoków dla rozkazów || <font color=green>100%</font> || 1 lub 2 poziomy wywołań do osiągnięcia rozkazu | | Tablica skoków dla rozkazów || <font color=green>100%</font> || 1 lub 2 poziomy wywołań do osiągnięcia rozkazu | ||
Linia 21: | Linia 27: | ||
| Rozkazy procesora || <font color=green>96%</font> || | | Rozkazy procesora || <font color=green>96%</font> || | ||
|- | |- | ||
| | | Debugger - szkielet || <font color=green>100%</font> || | ||
|- | |- | ||
| | | Debugger - podgląd pamięci i rejestrów || <font color=green>100%</font> || | ||
|- | |- | ||
| | | Debugger - disassembler || <font color=green>100%</font> || | ||
|- | |- | ||
| | | Debugger - translator || <font color=green>100%</font> || nie-assemblerowy pseudokod | ||
|- | |- | ||
| | | Debugger - load/save || 50% || | ||
|- | |- | ||
| | | Debugger - breakpointy || <font color=green>100%</font> || | ||
|- | |- | ||
| | | Debugger - ncurses || <font color=green>100%</font> || ergonomiczny interfejs użytkownika | ||
|- | |- | ||
| | | Debugger - interpreter poleceń || <font color=green>100%</font> || nowa, bogatsza linia poleceń | ||
|- | |||
| Debugger - śledzenie zmian w pamięci i rejestrach || 30% || | |||
|- | |||
| Debugger - podgląd stosu || 0% || | |||
|- | |- | ||
| <strike>Roboczy Assembler</strike> || 25% || porzucony na rzecz pełnoprawnego ASSEM | | <strike>Roboczy Assembler</strike> || 25% || porzucony na rzecz pełnoprawnego ASSEM | ||
Linia 44: | Linia 54: | ||
|- | |- | ||
| Rozkazy IN/OU (dekodowanie argumentów -> kanały) || 50% || | | Rozkazy IN/OU (dekodowanie argumentów -> kanały) || 50% || | ||
|- | |||
| Szkielet kanałów || 0% || | |||
|- | |- | ||
| Konfiguracja programowa pamięci || <font color=green>100%</font> || | | Konfiguracja programowa pamięci || <font color=green>100%</font> || |
Wersja z 16:45, 12 gru 2012
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
Obszar/Funkcjonalność | Stan implementacji | Uwagi |
---|---|---|
Roboczy disassembler | 100% | Python |
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% | |
Debugger - szkielet | 100% | |
Debugger - podgląd pamięci i rejestrów | 100% | |
Debugger - disassembler | 100% | |
Debugger - translator | 100% | nie-assemblerowy pseudokod |
Debugger - load/save | 50% | |
Debugger - breakpointy | 100% | |
Debugger - ncurses | 100% | ergonomiczny interfejs użytkownika |
Debugger - interpreter poleceń | 100% | nowa, bogatsza linia poleceń |
Debugger - śledzenie zmian w pamięci i rejestrach | 30% | |
Debugger - podgląd stosu | 0% | |
25% | porzucony na rzecz pełnoprawnego ASSEM | |
ASSEM | 10% | |
Testy automatyczne CPU | 5% | |
Rozkazy IN/OU (dekodowanie argumentów -> kanały) | 50% | |
Szkielet kanałów | 0% | |
Konfiguracja programowa pamięci | 100% | |
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 |