Instrukcja obsługi MSID-a.
Postanowiłem zakończyć pracę nad rekonstrukcją MIKSID-a. Zrobiłem tylko część funkcji oryginału, ale kto dzisiaj buduje sterowniki na Z80? Jako narzędzie hobbystyczne wystarczy. Mam nadzieję, że przyda się komuś do nauki asemblera.
W czasie normalnej pracy, można używać terminala jako klawiatury. Wyświetlacz jednak musimy podłączyć do ZW, bo nie ma innej możliwości. Kiedy przełączymy na tryb MSID-RTS, po każdym wejściu do procedury RESTA (po rozkazie RST 30 lub po wciśnięciu klawisza M), CA80 przesyła do bootloadera dane o bieżącym stanie programu użytkownika. Są to wartości wszystkich rejestrów, stan wyświetlacza, obszary pamięci wskazywane przez PC, SP i HL. Następnie na terminal wysyłana jest ramka danych w formacie zbliżonym do zlecenia X. Mamy wtedy do dyspozycji zlecenia:
- L - listing, czyli deasemblacja 11 linii programu od adresu wskazywanego przez PC,
- P - wyświetlenie komunikatu wskazywanego przez HL ( format 7-segmentowy),
- W - wyświetlenie zawartości wyświetlacza CA80 (zapamiętane),
- S - wyświetlenie wierzchołka stosu (osiem poziomów),
- H - wyświetlenie pamięci wskazywanej przez HL w HEX, ASCII i binarnie.
- R - ładowanie plików wg user.txt (zawsze jest dostępne).
Poza tym wszystkie zlecenia monitora również są aktywne. Niektóre mają nazwy identyczne z oryginalnym MIKSID-em. Możemy je wprowadzać klawiaturą mechaniczną oraz wirtualną (z terminala lub dotykową), ale efekty ich działania są widoczne na systemowym wyświetlaczu siedmiosegmentowym. Dopiero zakończenie zlecenia klawiszem [M] uaktualni dane na monitorze (wyjątek praca krokowa i pułapki).
- 3 - zamiana rejestrów R <-> R',
- 85 - przeglądanie i modyfikacja portów we/wy (oryg. P),
- 9 - szukanie stałej (oryg. O),
- A - suma i różnica HEX (oryg. H),
- B - przesunięcie obszaru (oryg. M),
- C - praca krokowa (oryg. T lub U),
- D - przeglądanie i modyfikacja pamięci (oryg. A),
- E - wypełnienie obszaru stałą (oryg. F),
- F - modyfikacja rejestrów procesora (oryg. X),
- G - uruchomienie programu użytkownika z pułapkami (oryg. G).
Deasembler wykrywa procedury systemowe CA80 i uwzględnia PWYS, co jest bardzo użyteczne. Niestety nie możemy dodać tablicy symboli, więc pozostałe skoki mają w argumencie liczbę szesnastkową.
Zapraszam do sklepu i do wspólnej nauki - zabawy.
Komentarze
Prześlij komentarz