Autor Wątek: Wolne porty I/O  (Przeczytany 7505 razy)

KWF

  • *****
  • Wiadomości: 6823
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • "I co ja robię tu, u-u, co Ty tutaj robisz ..."
    • Insta do lasownia
Odp: Wolne porty I/O
« Odpowiedź #15 dnia: 2018.11.11, 12:07:32 »
Czy jest sens kruszyć kopie o 0.02-0.04MHz?

Układ generacji dwóch częstotliwości podstawowych można załatwić jednym 74LS04 i dwoma kwarcami, albo dwoma generatorami kwarcowymi.

Zgoda, można wyciągać większe armaty, ale nadal będziemy strzelać do wróbla.
KWF
-----
R Tape loading error 0:1
Moje zabawki: https://github.com/McKlaud76

trojacek

  • *****
  • Wiadomości: 6831
  • Miejsce pobytu:
    Warszawa
Odp: Wolne porty I/O
« Odpowiedź #16 dnia: 2018.11.11, 12:17:24 »
Nie wiem, czy jest sens. Chyba najlepiej, jakby się wypowiedzieli jacyś demoscenowcy tudzież autorzy gier, bo jednym z pytań, które mi się nasuwają, to czy nie ma produkcji, które wspierają AY-greka beeperem?

steev

  • *****
  • Wiadomości: 1362
  • Miejsce pobytu:
    inode 42
Odp: Wolne porty I/O
« Odpowiedź #17 dnia: 2018.11.11, 12:21:19 »
SI5351. Nawet z dodatkowym buforem i dopasowaniem poziomów i/o zajmie mniej miejsca niż dwa oscylatory z dzielnikami. :)
(Można kupić gotowy moduł już z level shifterem na liniach I2C)
Machines should work. People should think.

andy

  • *****
  • Wiadomości: 1065
  • Miejsce pobytu:
    Kielce Wsch.
Odp: Wolne porty I/O
« Odpowiedź #18 dnia: 2018.11.11, 12:24:40 »
zy nie ma produkcji, które wspierają AY-greka beeperem?
Któraś gra miała wręcz odwrotnie. Beeperowa muzyka była wspierana bębnami z AY. Chronos?
pzdr
a.
POKE 35899,0  ZX 81, ZX Spectrum +, +2, Harlequin, ZX Max 48 & 128, Spider 48, Chrome 128, TC 2048, divIDE, CPC 464

trojacek

  • *****
  • Wiadomości: 6831
  • Miejsce pobytu:
    Warszawa
Odp: Wolne porty I/O
« Odpowiedź #19 dnia: 2018.11.11, 12:28:03 »
Pierwsze guglanie naprowadziło mnie na taki chip:

https://www.analog.com/en/products/ad9837.html

Co prawda potrzeba by  było jeszcze jakiegoś jednoukładowca do obsługi SPI, ale i tak oba razem wyjdą raczej taniej, niż CPLD z 2 oscylatorami (czy nawet kwarcami). Potrzebny jest tylko jeden, tani i typowy kwarc 16MHz.
A rozdzielczość 0,06Hz robi wrażenie, można oddać niuanse poszczególnych modeli 128K i wszelkich klonów :D

KWF

  • *****
  • Wiadomości: 6823
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • "I co ja robię tu, u-u, co Ty tutaj robisz ..."
    • Insta do lasownia
Odp: Wolne porty I/O
« Odpowiedź #20 dnia: 2018.11.11, 12:29:51 »
Dzielniki częstotliwości i przełącznik siedzą w CPLD (XC9536XL są za grosze), więc potrzebne są tylko częstotliwości podstawowe.

Wchodzimy w detale techniczne. Poza tym weźcie pod uwagę, to co już jest dostępne, zbudowane i przetestowane dla każdego "spawacza". Wszystkie nowinki techniczne, uP, SDI wymagają softu, który w zasadzie trzeba będzie samemu napisać. Nie chodzi o zrobienie promu kosmicznego, a czegoś, co amator z tego forum sam sobie zbuduje, bez wnikania w programowanie tych nowych układów. No i SMD raczej też odpada, nie każdy chce się w to babrać.
« Ostatnia zmiana: 2018.11.11, 12:37:52 wysłana przez Klaud »
KWF
-----
R Tape loading error 0:1
Moje zabawki: https://github.com/McKlaud76

pear

  • *****
  • Wiadomości: 5509
  • Miejsce pobytu:
    Będzin
  • Z80 only
Odp: Wolne porty I/O
« Odpowiedź #21 dnia: 2018.11.11, 13:31:15 »
Może PLL ICS501 ? Do dzielników czasem przyda się możliwość przemnożenia, zwłaszcza że ten układ ma dość bogaty wybór mnożników (sterowanie dwiema trójstanowymi liniami TTL).
Układ dostępny w TME za dychę.
ZX/Enterprise/CPC/Robotron/C128D

trojacek

  • *****
  • Wiadomości: 6831
  • Miejsce pobytu:
    Warszawa
Odp: Wolne porty I/O
« Odpowiedź #22 dnia: 2018.11.11, 13:38:02 »
Skoro tak się upierasz przy CPLD, to mały challenge: oscylator, dajmy na to 50 MHz i CPLD z 6-bitowym dzielnikiem częstotliwości z presetami, tzn. po osiągnięciu zera licznik jest presetowany podzielnikami zapisywanymi przez CPU do rejestru (portu) lub zafiksowanymi w logice CPLD i wybieranymi kilkoma pinami.
Jak podzielisz przez 50 - masz 1MHz.
Jak podzielisz przez 25 - masz 2MHz.
Jak podzielisz przez 28 lub 29 - masz coś bliskiego 128K.

Mały haczyk - przebieg na wyjściu nie zawsze będzie (a raczej rzadko będzie) symetryczny, więc dobrze jest zrobić dodatkowy podzielnik /2 na samym wyjściu. Może warto więc podnieść nieco częstotliwość oscylatora, albo też trzeba coś zakombinować dla najniższych częstotliwości, by uzyskać symetrię.


Bez bólu mieści się w XC9532, pewnie połowa zostanie pusta.

KWF

  • *****
  • Wiadomości: 6823
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • "I co ja robię tu, u-u, co Ty tutaj robisz ..."
    • Insta do lasownia
Odp: Wolne porty I/O
« Odpowiedź #23 dnia: 2018.11.11, 14:22:53 »
Ech! Pytanie było „Czy to ma sens?” oraz „ Czy to jest potrzebne?”

A Wy już rozdzielacie włos na czworo „jak zrealizować”. Każdy może zrobić sobie tak jak umie i chce, jeśli tylko będzie soft, który będzie wspierał ten pomysł.
« Ostatnia zmiana: 2018.11.11, 14:30:46 wysłana przez Klaud »
KWF
-----
R Tape loading error 0:1
Moje zabawki: https://github.com/McKlaud76

trojacek

  • *****
  • Wiadomości: 6831
  • Miejsce pobytu:
    Warszawa
Odp: Wolne porty I/O
« Odpowiedź #24 dnia: 2018.11.11, 14:28:57 »
Zadajesz pytania abstrakcyjne z punktu widzenia tego forum :)
Tu wszystko ma sens i jest potrzebne, choć dla większości ludzi spoza forum nie ma to sensu i nie jest potrzebne :)

O jaki soft Ci chodzi? O wysłanie z Basica jednej komendy OUT przed załadowaniem gry lub dema? :)
A jak zrobisz rejestr wg mojego pomysłu, to na 6 bitach masz podzielnik, zostają Ci więc wolne bity, można więc zrobić sterowanie multiplekserem wyjść ABC-ACB :D

Wiem, nie ma to sensu i nie jest potrzebne ;)

KWF

  • *****
  • Wiadomości: 6823
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • "I co ja robię tu, u-u, co Ty tutaj robisz ..."
    • Insta do lasownia
Odp: Wolne porty I/O
« Odpowiedź #25 dnia: 2018.11.11, 14:34:23 »
Pokaz mi player, który wspiera takie zabawy, który potrafi odtworzyć coś więcej niż pliki AY ze Speccy.

To nie jest konkurs na najlepsze rozwiązanie sprzętowe, a raczej pomysł na wspólna platformę, jakiś standard dla odtwarzaczy. Studium wykonywalności i przydatności.

Tak pytanie było akademickie. Jeśli za sprzętem nie pójdzie choćby jeden programik, to cała zabawę można włożyć między bajki z mchu i paproci.

Nie upieram się przy żadnym rozwiązaniu technicznym, na czym to będzie zrealizowane. Jak ktoś ma fantazję, może i zrobić na logice diodowo-rezystorowej :)
KWF
-----
R Tape loading error 0:1
Moje zabawki: https://github.com/McKlaud76

trojacek

  • *****
  • Wiadomości: 6831
  • Miejsce pobytu:
    Warszawa
Odp: Wolne porty I/O
« Odpowiedź #26 dnia: 2018.11.11, 14:41:49 »
Matko... Po co Ci jakikolwiek SOFT do wysłania JEDNEJ komendy OUT?
Jak masz aż taki wstręt do dotykania klawiatury, to można to zrobić nawet na kilku jumperach albo przełączniczkach :) Ale przecież sam szukałeś wolnego numeru portu, by tym sterować z softu, prawda?

KWF

  • *****
  • Wiadomości: 6823
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • "I co ja robię tu, u-u, co Ty tutaj robisz ..."
    • Insta do lasownia
Odp: Wolne porty I/O
« Odpowiedź #27 dnia: 2018.11.11, 14:51:32 »
Nie, nie mam wstrętu. Gubisz szerszy obraz.

Wysil wyobraźnię ;)

Masz bibliotekę plików z muzyczkami wyciągniętymi z różnych gier, dem, itp. Muzyczki z różnych sprzętów Atari, Amstrad czy Speccy. Każda z tych platform ma swój format zapisu takiej muzyczki. Odpalasz jakiś tam plejerek i wybierasz sobie plik x na platformę y. Soft sam wybierze zegar AYka, aby muzyczka była grana tak jak na platformie, na której powstała. Softu nie obchodzi, jak jest zrobiony muliplexer, zegary. Soft ma tylko wysłać odpowiednią sekwencję bitów do portu z, aby wybrać odpowiednie taktowanie układu dzwiekowego, oraz odtworzyć mjuzik. Użytkownika nie interesuje na czym ta muzyka powstała, on chce usłyszeć ją zagraną poprawnie.
KWF
-----
R Tape loading error 0:1
Moje zabawki: https://github.com/McKlaud76

trojacek

  • *****
  • Wiadomości: 6831
  • Miejsce pobytu:
    Warszawa
Odp: Wolne porty I/O
« Odpowiedź #28 dnia: 2018.11.11, 15:01:59 »
Wysil wyobraźnię ;)

Nie muszę, po prostu jesteś totalnie niekonsekwentny we własnych pomysłach i o to mi chodzi:

Cytuj
Masz bibliotekę plików z muzyczkami wyciągniętymi z różnych gier, dem, itp. Muzyczki z różnych sprzętów Atari, Amstrad czy Speccy. Każda z tych platform ma swój format zapisu takiej muzyczki. Odpalasz jakiś tam plejerek i wybierasz sobie plik x na platformę y. Soft sam wybierze zegar AYka, aby muzyczka była grana tak jak na platformie, na której powstała. Softu nie obchodzi, jak jest zrobiony muliplexer, zegary. Soft ma tylko wysłać odpowiednią sekwencję bitów do portu z, aby wybrać odpowiednie taktowanie układu dzwiekowego, oraz odtworzyć mjuzik.

No to odpowiadam(-asz):
Pokaz mi player, który wspiera takie zabawy, który potrafi odtworzyć coś więcej niż pliki AY ze Speccy.

A ja od siebie dodam: pokaż mi playerek, który - cytuję - wybierasz sobie plik x na platformę y. Soft sam wybierze zegar AYka, aby muzyczka była grana tak jak na platformie, na której powstała. Koniec cytatu. Jest taki? Pytam, bo nie wiem, a nie dlatego, że chcę być na siłę złośliwy.

Ze swojej strony dodam, że normalne wybieraczki pod divIDE/MMC pozwalają dodawać POKE-i, więc z OUT też by raczej problemu nie było? I nie potrzeba wtedy jakiegoś wymyślnego softu? OK - gdyby taki jednak powstał i obsługiwał wszystko automatycznie, byłoby cudnie. No ale "Pokaż mi taki soft...". Ja Ci tylko podałem, jak to można zrobić, by było to proste i użyteczne, jako rozwinięcie Twojego pomysłu, bez dodawania czegokolwiek, co by wymagało jakiegokolwiek dodatkowego softu w porównaniu do tego, co sam zaprezentowałeś jako pomysł.

Jeśli masz ambicję taki soft stworzyć - to czapki z głów. A nawet dorzucę jakiś datek w przypadku crowdfundingu.

KWF

  • *****
  • Wiadomości: 6823
  • Miejsce pobytu:
    trzecia planeta od Słońca
  • "I co ja robię tu, u-u, co Ty tutaj robisz ..."
    • Insta do lasownia
Odp: Wolne porty I/O
« Odpowiedź #29 dnia: 2018.11.11, 15:06:51 »
Nie ma softu, dlatego jest potrzebny ktoś od strony programowej, kto doklei ten pomysł.

Idea jest w stanie zalążkowym. To nie jest realizacja ani nawet jej próba. Rozwiniecie jest wskazane i myślisz, ze nie doceniam tego? Mylisz się, doceniam to co napisałeś Ty, pear, Andy, steev. Nie ma już „pomógł”, bo pomagacze należą się Wam.

Aby coś urodziło się, trzeba by zestandaryzować, założyć jakieś ramy. Od tego jest ten wątek.

A od realizacji sprzetowo-programowej są lepsi na tym forum.
KWF
-----
R Tape loading error 0:1
Moje zabawki: https://github.com/McKlaud76