[CA80]MikSid.
[CA80]MikSid.
MikSid jest jak Święty Graal - wszyscy o nim słyszeli, ale nie znam nikogo, kto go widział. W sieci można znaleźć ogłoszenie: https://www.olx.pl/d/oferta/z80a-cpu-so ... 97d49b9d71
Zrobiłem zrzut ekranu, żeby zobaczyć gdyby wygasło...
Od teraz wszyscy mogą go zobaczyć.
https://youtu.be/BhFrpIgumOU
Zrobiłem zrzut ekranu, żeby zobaczyć gdyby wygasło...
Od teraz wszyscy mogą go zobaczyć.
https://youtu.be/BhFrpIgumOU
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Jestem pod wrażeniem, znaczy Święty Graal się znalazł i niebawem coś więcej opiszesz.
Re: [CA80]MikSid.
phill2k pisze:Jestem pod wrażeniem, znaczy Święty Graal się znalazł i niebawem coś więcej opiszesz.
Niestety nie odnalazł się... Gdybym miał "wszystkie pliki", spróbowałbym odtworzyć sondy MIK1 i MIK2. Z braku źródeł komunikację rozwiązałem po swojemu (coś jak Z80-MBC2). Nie odtworzę wszystkiego 1:1, bo nie jestem programistą. Nigdy nie pracowałem z CP/M, do czasu Z80-MBC2. Postanowiłem, że przystawka będzie robiła wszystko, więc nie zmieszczę wszystkich funkcjonalności.
Filmik to tylko demo. Trenowałem operacje na tablicach z kursu języka C i obsługę UART-u z kursu STM32. Przy okazji przepisałem kawałek MIK11. Tablice wyszły dosyć duże, bo niestety wszystkie odstępy muszą być spacjami. Użycie tabulatora wprowadza bałagan...
Jak skończę, to wszystko opiszę.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Z wykopalisk (poszukiwań) jakie czyniłem jakiś czas temu w poszukiwaniu MikSid'a został mi opis przystawki do Amstrada 6128 opublikowany w Re 7/89 - może będzie pomocny przy rekonstrukcji.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Re: [CA80]MikSid.
Dziękuję. Zawsze to coś, jednak sonda do PC-ta podłączana była przez RS232. Zmieniłem koncepcję i RS232 będzie tylko wyjściem na terminal. Cała magia będzie w przystawce podłączanej do ZS w starej wersji CA80 lub do ZU64 (ZU50) w nowej. Do gwiazdki może zdążę.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Zegar pisze: Z braku źródeł komunikację rozwiązałem po swojemu (coś jak Z80-MBC2). Nie odtworzę wszystkiego 1:1, bo nie jestem programistą.
Zainteresuj się tematem Z80Ctrl, rozwiązania z Z80-MBC2 to są zabawki porównując do tego co potrafi ten, w sumie podobny, projekt. Debuger, praca krokowa, przerwanie i wznowienie programu (nawet samego systemu operacyjnego CP/M) to wbudowane funkcje tam zawarte.
Re: [CA80]MikSid.
tapy pisze:Zainteresuj się tematem Z80Ctrl, rozwiązania z Z80-MBC2 to są zabawki porównując do tego co potrafi ten, w sumie podobny, projekt. Debuger, praca krokowa, przerwanie i wznowienie programu (nawet samego systemu operacyjnego CP/M) to wbudowane funkcje tam zawarte.
Widziałem już to kiedyś... Życie jest za krótkie, żeby zdążyć wszystko poznać. Poza tym moje umiejętności też są "za krótkie".
CA80 to też jest zabawka w porównaniu ze współczesnymi rozwiązaniami.
Słowo się rzekło, więc kontynuuję pracę nad MikSid-em.
https://youtu.be/Tiwbypy1Nr0
Na razie początki, ale komunikacja działa. Po każdym RESTAR CA80 przesyła zawartość rejestrów (jeszcze nie wszystkich) i wraca do pętli głównej monitora. Najpierw wyświetlane są rejestry w kolejności, w jakiej są zapisane w CA80 - na czas debugowania. Potem wyświetlane są flagi procesora i rejestry w porządku oryginalnego MikSid-a. Doszedłem do miejsca, gdzie trzeba zdeasemblować rozkaz, więc na chwilę się zatrzymałem. CA działa tak, jakby nic się nie zmieniło. Klawiatura emulowana sprzętowo.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Nadszedł czas deasemblacji... Cory Althoff radzi, żeby zanim zacznie się tworzyć kod, sprawdzić, czy ktoś już takiego nie zrobił. Czas poświęcony na lekturę zwrócił się z nawiązką - znalazłem!
https://github.com/Bread80/Arduino-Host ... sassembler
Umożliwiło mi to przyspieszenie prac.
https://youtu.be/CPxt6IMGpsw
Kolejny krok to będzie, nomen omen, praca krokowa.
P.S. Kiedy rozwinę projekt na tyle, żeby był użyteczny, opublikuję "wszystkie pliki"
https://github.com/Bread80/Arduino-Host ... sassembler
Umożliwiło mi to przyspieszenie prac.
https://youtu.be/CPxt6IMGpsw
Kolejny krok to będzie, nomen omen, praca krokowa.
P.S. Kiedy rozwinę projekt na tyle, żeby był użyteczny, opublikuję "wszystkie pliki"
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
W tej chwili większość pracy wykonuje CA80. Większość funkcji MikSid-a pokrywa się z poleceniami monitora, więc dla uproszczenia to wykorzystałem. Deasemblacją zajmuje się Atmega32A (jak w projektach J4F np. Z80-MBC2, czy V20-MBC). Wymyśliłem inny sposób komunikacji między procesorami (przeanalizowałem rozwiązania wyżej wspomnianego Fabia (J4F) i zrobiłem coś lepszego (moim zdaniem)). Rozwiązania z MBC nie funkcjonowały z Z180, bo nie jest on statyczny - do poprawnej pracy potrzebuje stabilne CLK. Mój system spełnia te wymagania. Nie testowałem jeszcze ze zwykłymi procesorami (nie CMOS), ale wkrótce sprawdzę.
Do zrobienia zostało:
1. Napisanie pętli głównej dla CA80, która zajmie się obsługą wszystkich funkcji, nie angażując przy tym wyświetlacza systemowego (siedmiosegmentowego), aby wyniki pracy uruchamianyh programów były ciągle widoczne.
2. Zmiana programu dla Atmegi - rozwinięcie menu o funkcje MikSid-a.
3. Dodanie rozpoznawania procedur systemowych i PWYS - w celu udoskonalenia deasemblacji.
Czego na pewno nie zrobię:
1. Obsługi tablicy symboli.
2. Pominę też operacje na plikach.
Myślę, że jestem blisko końca prac. Kilka miesięcy temu dotarło do mnie, że od dwóch lat przygotowuję się do zrobienia tego emulatora. Coś pchało mnie w tę stronę i podświadomie zgłębiałem temat. Kilka miesięcy powinno wystarczyć na opracowanie ostatecznej wersji.
Do zrobienia zostało:
1. Napisanie pętli głównej dla CA80, która zajmie się obsługą wszystkich funkcji, nie angażując przy tym wyświetlacza systemowego (siedmiosegmentowego), aby wyniki pracy uruchamianyh programów były ciągle widoczne.
2. Zmiana programu dla Atmegi - rozwinięcie menu o funkcje MikSid-a.
3. Dodanie rozpoznawania procedur systemowych i PWYS - w celu udoskonalenia deasemblacji.
Czego na pewno nie zrobię:
1. Obsługi tablicy symboli.
2. Pominę też operacje na plikach.
Myślę, że jestem blisko końca prac. Kilka miesięcy temu dotarło do mnie, że od dwóch lat przygotowuję się do zrobienia tego emulatora. Coś pchało mnie w tę stronę i podświadomie zgłębiałem temat. Kilka miesięcy powinno wystarczyć na opracowanie ostatecznej wersji.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
A możesz zdradzić na dzień dzisiejszy w jaki sposób komunikujesz się z CA80, chodzi mi o sam interface sprzętowy, wykorzystujesz RS232 czy sygnały obecne na złączu ZU50 (ZU64) czy może inne rozwiązanie?
Re: [CA80]MikSid.
phill2k pisze:A możesz zdradzić na dzień dzisiejszy w jaki sposób komunikujesz się z CA80, chodzi mi o sam interface sprzętowy, wykorzystujesz RS232 czy sygnały obecne na złączu ZU50 (ZU64) czy może inne rozwiązanie?
Jasne, że mogę!
Łączę się przez ZS (złącze systemowe) starego CA80. W ZU50 są prawie) wszystkie niezbędne sygnały. ZS też trzeba nieznacznie zmodyfikować, to znaczy "wyizolować" sygnały WAIT, BUSRQ i dorobić MEM_EN (wyizolować jeden ze strobów dekodera adresów LS138/S405). Poza tym do U9 wkładam RAM.
Jak przerobić CA80 opisałem tutaj: viewtopic.php?f=82&t=2243&p=13816&hilit=ca80+bez+rom#p13816" target="_blank" target="_blank
Trochę tam przesadziłem z RAM-em. Wystarczy jedna kość 32kB i operacja będzie bez wiercenia...
Kształt płytki jest dopasowany do mojej wersji CA80:
Pasuje też do wersji z Z180:
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Zamieszczony w poprzednim wpisie schemat wymaga nieco komentarza. Różnica między moim rozwiązaniem, a oryginalnym z Z80-MBC2 czy V20-MBC polega na tym, że od razu podaję CLK. J4F najpierw reglamentuje sygnał zegarowy i po określonej liczbie taktów wystawia dane na PA, albo sprawdza czy pojawił się sygnał RD. Dodatkowe bramki przełączają tryb tworzenia sygnału WAIT. W czasie rozruchu każdy RD ustawia WAIT. Ponieważ wiem, co chcę zrobić, nie muszę sprawdzać M1. Podaję procesorowi kod rozkazu lub dane zależnie od aktualnej potrzeby. Po przesłaniu wszystkich danych do RAM, robię RESET i przełączam tryb na EME8, czyli Atmega udaje I8255. Suma A0 i A1 to uproszczone dekodowanie portów Intela. Zrobiłem to, bo miałem nadzieję, że wykorzystam kod spod adresu 3EEDh z oryginalnego EPROMU CA80. Trochę nad nim główkowałem i okazał się mało użyteczny. Jest to tylko zasłona dymna w celu ukrycia prawdziwego kodu. Program najpierw testuje przystawkę i jeżeli test się powiedzie, ładuje kod z CP/M-a. Żeby było trudniej, robi to od końca. Pierwszy rozkaz zostanie pobrany jako ostatni i wtedy nastąpi JP (HL). Ale to tylko kolejny loader, który pobierze właściwy program...
Moje rozwiązanie sprawdziło się z Z180. Z początku myślałem, że wystarczy dostosować liczbę taktów w używanych rozkazach - Z180 ma krótsze cykle maszynowe w większości rozkazów. Zamiast czterech taktów - trzy. Jednak to nie wszystko. CLK jest wstępnie dzielony przez 2 (taki preskaler), żeby uzyskać wypełnienie 50%. Właściwy zegar wewnątrz procesora to PHI. Preskaler można wyłączyć, ale można też użyć wewnętrzną PLL i podwoić CLK (możliwe tylko przy idealnym CLK). Możemy więc pracować na trzech częstotliwościach, np. 4, 8 i 16 MHz. Jak na Z80 to nieźle, prawda? Perypetie z CLK początkowo opanowałem. Przed rozpoczęciem transmisji wysyłałem NOP-y, żeby umożliwić Z180 prawidłowy start... Skąd my to znamy? Jednak lepsze okazało się podanie od razu stabilnego CLK. Zacząłem od 4 MHz czyli PHI = 2 MHz, a potem zwiększałem na 8 MHz i tak już zostawiłem. "Zwykły" Z80 też to lubi, więc nie ma potrzeby wracać do kulawych rozwiązań.
Moje rozwiązanie sprawdziło się z Z180. Z początku myślałem, że wystarczy dostosować liczbę taktów w używanych rozkazach - Z180 ma krótsze cykle maszynowe w większości rozkazów. Zamiast czterech taktów - trzy. Jednak to nie wszystko. CLK jest wstępnie dzielony przez 2 (taki preskaler), żeby uzyskać wypełnienie 50%. Właściwy zegar wewnątrz procesora to PHI. Preskaler można wyłączyć, ale można też użyć wewnętrzną PLL i podwoić CLK (możliwe tylko przy idealnym CLK). Możemy więc pracować na trzech częstotliwościach, np. 4, 8 i 16 MHz. Jak na Z80 to nieźle, prawda? Perypetie z CLK początkowo opanowałem. Przed rozpoczęciem transmisji wysyłałem NOP-y, żeby umożliwić Z180 prawidłowy start... Skąd my to znamy? Jednak lepsze okazało się podanie od razu stabilnego CLK. Zacząłem od 4 MHz czyli PHI = 2 MHz, a potem zwiększałem na 8 MHz i tak już zostawiłem. "Zwykły" Z80 też to lubi, więc nie ma potrzeby wracać do kulawych rozwiązań.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
phill2k pisze:A możesz zdradzić na dzień dzisiejszy w jaki sposób komunikujesz się z CA80, chodzi mi o sam interface sprzętowy, wykorzystujesz RS232 czy sygnały obecne na złączu ZU50 (ZU64) czy może inne rozwiązanie?
Wstrzymałem prace nad rekonstrukcją MikSida. Może warto pokusić się o odtworzenie sondy? Żeby było tak, jak było.
Kiedyś na Elektrodzie znalazłem źródła oprogramowania CA80. Jest tam kod wypełniający przestrzeń 2000h - 3FFFh. Powinny tam być "efefy", jednak w MIK11 jest wzmianka o dodatkowym "firmowym" programie. Źródło okazało się nieudolną próbą deasemblacji... Nie uwzględniono procedur systemowych, a co za tym idzie, parametry PWYS wypaczyły kod.
Kod: Zaznacz cały
ORG 2000h
; Wypelnienie wolnej przestrzeni
DS 1EEDh, FFh
; Program bedacy na wyposazeniu CA80
ORG 3EEDh
L01E0 EQU 01E0h
L3F38 EQU 3F38h
LFFFF EQU FFFFh
L3EED: LD A,0C9H
LD (LFFFF),A
RST 10H
ADD A,B
LD A,(0FFEAH)
LD D,A
LD HL,0C80H
L3EFB: LD A,(0FFEAH)
CP D
LD A,55H
L3F01: JP NZ,L3F06
LD A,56H
L3F06: LD (0FFE5H),A
DEC HL
LD A,L
OR H
JP NZ,L3EFB
LD A,4EH
OUT (0E9H),A
LD A,20H
OUT (0E9H),A
IN A,(0E9H)
AND 80H
JR Z,L3F4A
IN A,(0E8H)
LD A,07H
OUT (0E9H),A
IN A,(0E9H)
CP 05H
JR NZ,L3F4A
LD A,01H
LD (0FFE4H),A
LD C,A
CALL L01E0
DJNZ L3F01
CP D
CCF
RST 18H
LD H,3AH
Posiedziałem trochę nad nim, uporządkowałem i okazało się, że artykuł z "Radioelektronika" jest fałszywym tropem... Kody wysyłane do EME8 nie pasują do 8255. Cóż zatem tam było? Komunikacja z PeCetem była szeregowa, więc pewnie jakiś UART. Ale jaki? Z80 SIO odpada. Może coś Intela? Znalazłem noty i porównałem z kodem. Pasuje 8251 do MIK1 i 8250 do MIK2. Prawie wszystko rozgryzłem. MIK1 wydaje się prosta do zbudowania. Są tylko dwa adresy (cztery rejestry - po dwa do odczytu i zapisu). MIK2 ma osiem rejestrów, a przestrzeń I/O jest podzielona na "czwórki", więc musi być jakiś "myk". Z resztą MIK2 podłącza się klipsem pomiarowym bezpośrednio do procesora - czyli wszystko jest możliwe.
Kod: Zaznacz cały
;*********************************************************************************
; ROZPOZNAWANIE SONDY
;*********************************************************************************
LD A,4EH ; 1BIT STOP, NO PARITY, 8 BIT, BAUD X16
OUT (0E9H),A ; USTAW LCR 8251 (LCR TO NAZWA Z 8250)
LD A,20H ; REQUEST TO SEND
OUT (0E9H),A ; USTAW LCR 8251 (LCR TO NAZWA Z 8250)
IN A,(0E9H) ; ODCZYTAJ LSR
AND 80H ; BIT7 (LSR 8250)
JR Z,L3F4A ; SONDA MIK2 BO B7 LSR ZAWSZE "0"
IN A,(0E8H) ; ODCZYTAJ ZNAK (FLUSH)
LD A,07H ; WPISZ "7" DO LCR
OUT (0E9H),A
IN A,(0E9H) ;
CP 05H ; SPRAWDZ CZY W LSR JEST "5"
JR NZ,L3F4A ; JEZELI NIE - SPRAWDZ MIK2
LD A,01H ; ROZPOZNANO MIK1
LD (0FFE4H),A ; ZAPISZ NUMER SONDY
LD C,A
CALL CO ; WYSWIETL "1"
DB 10H ;
CALL L3FBA ; POBIERZ BYTE
RST LBYTE ; WYSWIETL DWIE CYFRY
DB 26H ;
Kod: Zaznacz cały
;*********************************************************************************
; USTAWIENIE BAUD RATE DLA SONDY MIK2
; NOWA WARTOSC W DE
;*********************************************************************************
L3FDF: EX (SP),HL ; OPOZNIENIE 19 TAKTOW
LD A,83H ; W DE NOWA WARTOSC BAUD RATE
OUT (0CBH),A ; 83H -> LCR B7=DLAB ON; B1,B0 = 11 8 BIT WORD
EX (SP),HL ; OPOZNIENIE 19 TAKTOW
LD A,E
OUT (0C8H),A ; REJ E -> RBR
EX (SP),HL ; OPOZNIENIE 19 TAKTOW
LD A,D
OUT (0C9H),A ; REJ D -> THR
EX (SP),HL ; OPOZNIENIE 19 TAKTOW
LD A,03H
OUT (0CBH),A ; 03H -> LCR B7=DLAB OFF; B1,B0 = 11 8 BIT WORD
RET
Skupiłem się na MIK1. Wystarczy zbudować generator z dzielnikiem, żeby zworką wybierać szybkość transmisji i gotowe.
Jest jednak pewne "ale"! W MIK11 napisano: "należy dodatkowo doprowadzić adres A6 do nogi ZU50/49". Z powyższego kodu niestety nic takiego nie wynika. Pewnie MikSid ma kolejne zabezpieczenia... Niemniej jednak można zbudować "firmowy" UART, co zamierzam uczynić. Replika MikSida nie będzie wierną kopią.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Poszperałem i znalazłem, może okaże się że będzie pomocne w dalszych pracach, trzymam kciuki.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Re: [CA80]MikSid.
phill2k pisze:Poszperałem i znalazłem, może okaże się że będzie pomocne w dalszych pracach, trzymam kciuki.
Dzięki. Zapomniałem... Dawno temu Tasza o tym wspominała.
tasza pisze:Temat interfejsu szeregowego do komputerka CA80 nie jest nowy, choćby w Radioelektronik 1/94 opisywano całkiem sympatyczną konstrukcję takiej przystawki http://bienata.waw.pl/ca804.php Między innymi ten właśnie artykuł za lat mych szczenięcych skutecznie konkurował z koniecznością uczenia się do matury, no cóż - definicja słowa pokusa jest jak widać wielowymiarowa. I nawet coś tam powstało i to dokładnie na bazie kostki 8251A, pamiątkowa fotografia poniżej.
Wygląda na to, że odkrywałem Amerykę. Póki co zdefiniowałem symbol 8251 w KiCad, bo nie znalazłem gotowego. Postaram się przygotować płytkę. Schemat na pewno się przyda.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Mam z grubsza narysowany schemat nowego MIK1. Dzielnik częstotliwości zmieniłem na inny, żeby uzyskać dokładne wartości. W sieci znalazłem kilka ciekawych rozwiązań:
https://www.learningelectronics.net/cir ... rator.html
https://www.sciencedirect.com/topics/co ... /baud-rate
http://6502.org/users/dieter/uart/uart_3.htm
W ostatnim opisane jest m. in. rozwiązanie z cytowanego Radioelektronika. Wszystko już było...
Spodobała mi się idea wykorzystania elementów z "pecetowego śmietnika", więc BRG zrobiłem tak, żeby można było wykorzystać prawie dowolny rezonator. Każdy z nas ma prawdopodobnie w szufladzie jakiś stary kwarc o "głupiej" wartości, która nigdzie nie pasuje.
Na schemacie uzyskujemy 2400, 4800, 9600 i 19200 bodów.
Można zastosować inne ustawienia i wtedy otrzymamy 1200, 2400, 4800 i 9600 bodów, tak jak w oryginale (niestety wtedy kwarce powyżej 5 MHz odpadają).
Nie przemyślałem jeszcze resetu. W projekcie z Re jest tranzystor, który w obwodzie kolektora ma styk. Wygląda to, jakby normalnie był otwarty, a jego zwarcie umożliwiałoby reset z RS232 (DTR).
https://www.learningelectronics.net/cir ... rator.html
https://www.sciencedirect.com/topics/co ... /baud-rate
http://6502.org/users/dieter/uart/uart_3.htm
W ostatnim opisane jest m. in. rozwiązanie z cytowanego Radioelektronika. Wszystko już było...
Spodobała mi się idea wykorzystania elementów z "pecetowego śmietnika", więc BRG zrobiłem tak, żeby można było wykorzystać prawie dowolny rezonator. Każdy z nas ma prawdopodobnie w szufladzie jakiś stary kwarc o "głupiej" wartości, która nigdzie nie pasuje.
Na schemacie uzyskujemy 2400, 4800, 9600 i 19200 bodów.
Można zastosować inne ustawienia i wtedy otrzymamy 1200, 2400, 4800 i 9600 bodów, tak jak w oryginale (niestety wtedy kwarce powyżej 5 MHz odpadają).
Nie przemyślałem jeszcze resetu. W projekcie z Re jest tranzystor, który w obwodzie kolektora ma styk. Wygląda to, jakby normalnie był otwarty, a jego zwarcie umożliwiałoby reset z RS232 (DTR).
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Przetestowałem generator z dzielnikiem z kwarcami 1.8432 MHz i 4.9152 MHz. Dopiero w czsie prób zauważyłem, że w J1 mam nadmiar... Czwarta pozycja nigdy nie jest używana.
Chiński analizator nie chce współpracować przy wyższych częstotliwościach, ale wyjściowe z wariantu 1200 - 9600 bodów ładnie widać.
Chiński analizator nie chce współpracować przy wyższych częstotliwościach, ale wyjściowe z wariantu 1200 - 9600 bodów ładnie widać.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Na Allegro sprzedaję CA80-mini, o którym pisałem na microgeek. https://allegrolokalnie.pl/oferta/ca80- ... ra-z80-xvj
Życzę spokojnych Świąt i pomyślności w nowym roku.
Zegar.
P.S. Już nieaktualne.
Życzę spokojnych Świąt i pomyślności w nowym roku.
Zegar.
P.S. Już nieaktualne.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Na Allegro wystawiłem CA80-RCbus. Zapraszam chętnych - cena wywoławcza 190 zł.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Dzisiaj wystawiłem aukcję CA80 mini. Bez ceny minimalnej. Cena wywoławcza tylko 1 zł. Wysyłka do paczkomatu gratis. Koniec już jutro "za pięć dwunasta". Proszę się nie spóźnić. Jest to wersja bez MIKSID-a, ale łatwo to zmienić. Polecam.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Za dwadzieścia minut kończy się licytacja. Tylko jedna osoba licytuje, wiec jest szansa kupić za bezcen. Zapraszam.
Edit: No i poszło za bezcen...
Edit: No i poszło za bezcen...
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Dopisałem kilka funkcji MikSida. Nie spodziewałem się, że to taka fajna zabawa. Trudność polega na tym, że jednocześnie trzeba pisać dwa programy. W Arduino trochę "po omacku", ale dla Z80 mam już dosyć dobre narzędzia.
https://youtu.be/pFO8l-VgeSk
https://youtu.be/pFO8l-VgeSk
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Zakończyłem prace nad Miksidem. Nie zrekonstruowałem całości, ale muszę wrócić do "normalnego" życia, więc odpuszczam. Gdyby ktoś chciał dowiedzieć się trochę więcej, to zapraszam na mój blog. Można też zapoznać się namacalnie - zapraszam do sklepu.
https://youtu.be/amFPMQ4f2Og
https://youtu.be/amFPMQ4f2Og
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Prawdziwy MIKSid opisany w MIK11 działał na komputerach z CP/M, a kiedy zaczęła się epoka klonów IBM na PC-tach. Do współpracy systemów potrzebna była "sonda emulacyjna" MIK1 lub MIK2. Pod tą nazwą krył się zwykły UART na i8251A lub i8250. Zaprojektowałem klon MIK1, ale czas zweryfikował moje plany i nie odtworzyłem "prawdziwego" MIKSida. Odświeżyłem ostatnio moje projekty i dodałem trochę oprogramowania, więc MIK1 może się do czegoś przydać. Przerobiłem iLoad znany z Z80-MBC2, którym w łatwy sposób można przesyłać pliki HEX z PC do CA80. Ostatnio pojawił się temat podrabianych Z80, związany z końcem produkcji ogłoszonym przez Ziloga. Do sprawdzenia swojego Z80 w CA80 (albo innym komputerze) też może posłużyć MIK1.
Na Allegro wystawiłem PCB, ale dla czytelników microgeek.eu mam specjalną ofertę. Wystarczy kupić płytkę jutro w godzinach 8:00 - 10:00 i w wiadomości do sprzedawcy napisać "microgeek" (tylko jeden kit do zamówienia). Zamiast PCB wyślę cały zestaw z oryginalnym 8251A Intela (mam nadzieję, że nikt ich nie podrabia ). Skorzystać mogą tylko dwie osoby, które jako pierwsze spełnią powyższe warunki. Oczywiście do koszyka można coś dołożyć, bo powyżej 200 zł jest darmowa wysyłka do paczkomatu. Na wszelki wypadek w ofercie są tylko dwie sztuki, ale w razie potrzeby uzupełnię stan. Zestawy do montażu są jeszcze w starej wersji, ale wyślę nową - jak na zdjęciu poniżej.
Na Allegro wystawiłem PCB, ale dla czytelników microgeek.eu mam specjalną ofertę. Wystarczy kupić płytkę jutro w godzinach 8:00 - 10:00 i w wiadomości do sprzedawcy napisać "microgeek" (tylko jeden kit do zamówienia). Zamiast PCB wyślę cały zestaw z oryginalnym 8251A Intela (mam nadzieję, że nikt ich nie podrabia ). Skorzystać mogą tylko dwie osoby, które jako pierwsze spełnią powyższe warunki. Oczywiście do koszyka można coś dołożyć, bo powyżej 200 zł jest darmowa wysyłka do paczkomatu. Na wszelki wypadek w ofercie są tylko dwie sztuki, ale w razie potrzeby uzupełnię stan. Zestawy do montażu są jeszcze w starej wersji, ale wyślę nową - jak na zdjęciu poniżej.
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
"If A = success, then the formula is A = X + Y + Z.
X is work. Y is play. Z is keep your mouth shut."A. Einstein
X is work. Y is play. Z is keep your mouth shut."A. Einstein
Re: [CA80]MikSid.
Piszesz, że można rozróżnić różne wersje procków. Zastanawiam się, na jakiej podstawie jest to możliwe? Możesz troszkę to wyjaśnić?
Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 3 gości