CA180.

  Specjalnie dla Z180 opracowałem lepszą wersję bootloadera. Niestety poprzednia wymagała zabiegów typu wysyłanie NOP-ów w celu ustabilizowania zegara. Nie zawsze to przynosiło efekty, więc trzeba było przeanalizować dokumentację. 

 


Z180 do poprawnej pracy musi mieć stabilne CLK (jest wersja statyczna SL1960, ale jej nie posiadam). Dlatego zmieniłem koncepcję - od razu ustawiam CLK, jednak zatrzymuję procesor w stanie WAIT przy każdej próbie czytania z pamięci. Algorytm tak dopracowałem, żeby w odpowiednim czasie podawać na szynę danych kod rozkazu lub dane. Monitor CA80 przeniosłem na kartę SD, żeby zwolnić miejsce we flash. Rozbudowałem obsługę SD, żeby było można przesłać więcej plików o różnych nazwach (format 8.3). Sam monitor podzieliłem na części: 2kB 0 - 7FF, 2 kB 800 - FFF i CA88 1000 - 1FFF. Na razie ustaliłem liczbę plików na 5, ale może trzeba będzie to zmienić... W specjalnym pliku ca80.txt podajemy nazwy plików do załadowania bez rozszerzeń. Muszą to być pliki HEX. Zapis do RAM trwa ułamek sekundy (około 10kB). Potem jest ustawiany czas i przerzutnik WAIT jest przełączany na I/O. Odwołanie się do adresu E8 lub E9 powoduje przejście do WAIT. Dlaczego tak? Jest to adres emulatora MIKSID, więc podjąłem próbę rekonstrukcji. Niestety marny ze mnie programista, więc niewiele napisałem. Przy każdym wejściu do pętli głównej monitora CA80 wysyła do AVR stan rejestrów i fragment pamięci programu od aktualnej wartości PC. Żeby zabawka działała, potrzebny jest emulator klawiatury (U31, U32 i U33), który łączymy taśmą IDC z płytką SYS I/O. Trzeba jeszcze jakoś wpiąć wyświetlacz, więc taśma powinna mieć trzy złącza. Klawisze 0-9 i A-G oraz M "kropka" i "=" będą wysyłane do CA80. Pozostałe z wyjątkiem L (listing), będą ignorowane. Oczywiście zworka CA80/MIKSID w pozycji drugiej. Program sprawdzałem na CA80 mini, na RC2014 jeszcze nie. 

Teraz każdy może spróbować. Wystarczy do złącza serial podłączyć uTerm znany z Z80-MBC2, lub konwerter TTL - USB i włączyć jakiś terminal np. puTTy. Proszę pamiętać, że jest to wersja testowa, niepełna i wymagająca jeszcze wielu godzin pracy. Do dzieła!

Komentarze

Popularne posty z tego bloga

Uruchamiamy CA80 na RCbus.

Magnetofon CA80.