CA180 w Elwro144.

  Obiecałem, że pokażę, jak zmieścić CA80 w obudowie kalkulatora Elwro 144. Przypomniałem sobie o tym, bo wersja z wyświetlaczem VFD jest za duża...

CA180
CA80 w obudowie kalkulatora.

Bootloader CA80
Zamiast EPROM-u karta SD. RTC był za gruby...


Jak widać, jest to wersja z procesorem Z180. Jest prawie zgodna z prawdziwym CA80. Niestety procesory różnią się nie tylko wyglądem. Większy brat poczciwego Z80 jest szybszy i nie chodzi o częstotliwość taktowania, którą możemy dobrać w zależności od potrzeb. Nie wchodząc zbyt głęboko w szczegóły, różnicę widać w liczbie taktów zegara potrzebnych do wykonania rozkazu. Większość z nich ma jeden takt mniej, co zmienia stałe czasowe opóźnień programowych. Sygnał zapisu na magnetofon jest właśnie tak tworzony. Nie stwarza to żadnych kłopotów, bo jeżeli nawet ktoś korzysta jeszcze z magnetofonu, to jego obsługa jest dość tolerancyjna. Problem jest znacznie poważniejszy, gdy chcemy używać CA80 do uruchamiania programów. Monitor pana Gardynika jest świetnym debugerem. Oprócz pułapek (tylko dwóch, ale zwykle to wystarcza) oferuje pracę krokową. Jest to bardzo efektywne narzędzie, ale działa tylko na oryginalnym procesorze. Do jego stworzenia autor wykorzystał CTC (w pierwszej wersji jest możliwe użycie pracy krokowej bez CTC - absolutny hardcore!). Magia tego narzędzia polega na zgłoszeniu przerwania w czasie wykonywania pierwszego rozkazu programu użytkownika. Monitor zapamiętuje w RAM stan procesora w chwili wciśnięcia klawisza [M], w czasie napotkania pułapki (rozkaz RST 30H wstawiony do programu przez monitor w zleceniu *G) oraz w przerwaniu pracy krokowej (zlecenie *C). W czasie odtwarzania stanu procesora w kolejnym kroku CTC zlicza takty zegara. Stała wpisywana do CTC jest wyliczona tak, aby przerwanie zgłoszone zostało w odpowiednim miejscu, a Z180 wykona wszystko szybciej... Jedyna rada to zmodyfikować program w monitorze, a tego robić nie chcemy.


Zająłem się tym przy okazji pracy nad MSid-em. Ale o tym innym razem. Na zakończenie prezentacja "terminala", który zrobiłem dla RC2014.


 

Komentarze

Popularne posty z tego bloga

Uruchamiamy CA80 na RCbus.

Magnetofon CA80.