OldComp.cz https://oldcomp.cz/ |
|
Gama 192K https://oldcomp.cz/viewtopic.php?f=129&t=4187 |
Stránka 5 z 8 |
Autor: | Starej_Mraf [ 25.09.2019, 15:22 ] |
Předmět příspěvku: | Re: Gama 192K |
Aha, to jsem si nevšim... tak třeba tady. https://www.ebay.com/itm/12-x-BT-631A-C ... xyzGlQ8rzp |
Autor: | zxcygnus [ 25.09.2019, 17:55 ] |
Předmět příspěvku: | Re: Gama 192K |
Ok, zkusím jeden z nich koupit, pokud mi prodejce potvrdí, že má alespoň zapojených 6 drátů. Pořád si nejsem jistý jestli BT631A, nebo BT631W... ale předpokládám, že ten nesprávný půjde alespoň nějak přizpůsobit, když už nebude pasovat správně. RWAP je má, jenomže nenakrimpované a shánět kleště kvůli jednomu konektoru... https://www.sellmyretro.com/offer/detai ... w%29-31960 Podle tohoto https://zxnet.co.uk/spectrum/btconnectors/ se zdá, že rozdíl mezi A a W není tak velký problém jako mezi tím, jestli je jistící páčka na levé, nebo pravé straně. Uvidíme, nestojí to zas tak moc. (možná by bylo fajn tenhle kousek oddělit do samostatného vlákna) |
Autor: | Solaris104 [ 25.09.2019, 20:11 ] |
Předmět příspěvku: | Re: Gama 192K |
zxcygnus píše: Pořád si nejsem jistý jestli BT631A, nebo BT631W... ale předpokládám, že ten nesprávný půjde alespoň nějak přizpůsobit, když už nebude pasovat správně. RWAP je má, jenomže nenakrimpované a shánět kleště kvůli jednomu konektoru... Shodou okolností mám 2 nepoužité konektory BT631A doma, vezmu Ti je na BF. Dáš mi za ně třeba nějaké 2 canony. Ty BT631A se musí trochu zpilovat, jinak se nezasunou do ZX. To je asi ten rozdíl od BT631W. |
Autor: | zxcygnus [ 25.09.2019, 21:10 ] |
Předmět příspěvku: | Re: Gama 192K |
css píše: Rád bych ti pomohl, ale bohužel už nějakou dobu mám všechno okolo Spectra tak rozes..ný, že v současný chvíli nejsem schopen nahrát a nebo dát na web vůbec nic... Nj, co se dá dělat, třeba to zkusí někdo jiný s DG192k.Zápis na port AY-3-8912 Kód: 10 OUT 65533,14 Zcela dle očekávání na IO portech AY se střídají L/H pěkně viditelné sondou.20 OUT 49149,0: OUT 49149,255: GO TO 20 Ve stavu L (OUT 65533,14: OUT 49149,0) naměřím na IO AY cca 20mV, kromě pinů 7 a 8, kam je připojen MAX232 přes 1k rezistory, tam naměřím cca 250mV. Přímo MAXu naměřím 3.3V (stále H, slabé TTL výstupy z MAXe stahuje L na AY). Ve stavu H (OUT 65533,14: OUT 49149,255) naměřím na IO AY toto pin 7 - 5.00V (a taktéž na MAX232 na pinu 9 napětí vzroste na 5.0V) pin 8 - 5.00V pin 9 - 4.93V pin 10 - 4.93V pin 11 - 3.58V (divné, proč ne 4.93, když tam je připojený vstup do MAX232?) pin 12 - 4.93V pin 13 - 4.93V pin 14 - 4.93V Zápis na port AY-3-8912 skrz MAX do RS232 Kód: 10 OUT 65533,14: OUT 49149,0 Na AY naměřím cca 20mV a na výstupech z MAXe do RS232 cca +6.7 a +7.2V (bez připojení k notebooku oba cca +8.5V), tedy ok.Zápis na port AY-3-8912 skrz MAX do RS232 Kód: 10 OUT 65533,14: OUT 49149,255 Na AY naměřím cca 20mV a na výstupech z MAXe do RS232 cca -6.3 a -6.9V (bez připojení k notebooku oba cca -8.5V), tedy ok.Směrem ven to funguje správně. Na MAXu - pin 8 -5.5V z RS232 notebooku, na TTL straně pin 9 3.3V. To by mělo být TxD, pustím-li z notebooku data, tak to tam taky pěkně kmitá. Na MAXu - pin 13 -5.5V z RS232 notebooku, na TTL straně pin 12 3.3V . To by mělo být DTR. Pustím-li přenos dat, tak se to na RS232 straně přepne asi na +5.5V a na TTL straně klesne napětí do jasné log. 0 okolo 10mV. Čtení z portu 8255 Kód: 10 PRINT AT 0,0; IN 31; " ": GO TO 10 Tím jsem ověřil, že generátor na malém multimetru je i v BASICu pěkně čitelný, 50Hz je akorát, rozkmit je okolo 3V, multimetr se napájí dvěma AAA články, takže s odřenýma ušima, ale přesto TTL.Čtení z portu AY-3-8912 Kód: 10 OUT 65533,14 Stále vrací 0, ať posílám data z notebooku, nebo ne. Očekával bych, že přinejmenším DTR bude vidět, když už ne TxD (ale náhodně by mělo být vidět i to).20 PRINT AT 0,0; IN 65533; " ": GO TO 10 Rezistory mezi AY a MAXem jsou opravdu 1k, tzn. neosadil jsem omylem jiné. Resp. přeměřil jsem je v obvodu (vypnutý počítač), protože použitý multimetr malým napětím do 0.5V a v obou polaritách vrací stejnou hodnotu. Pro zajímavost jsem i zkusil proměřit ohmetrem IO piny AY proti GND i 5V v obou polaritách. Nejde ani tak o hodnotu, co multimetr ukáže, jako spíš o to, že je na všech 8 nohách AY stejná. Tj. není tam třeba nějaký nečekaný svod na desce. Zapíšu-li na IO porty AY 0, čtu z portu 0, zapíšu-li 255, čtu 255. Jak přepnu AY do stavu, aby piny byly vstupy? Bitem 6 řídícího registru 7? Zkusil jsem. Kód: 10 OUT 65533,7: OUT 49149,0 Vrací 0 na všech bitech.20 OUT 65533,14: OUT 49149,0: PRINT AT 0,0; IN 65533; " ": GO TO 20 Kód: 10 OUT 65533,7: OUT 49149,64 Vrací 0 na všech bitech.20 OUT 65533,14: OUT 49149,0: PRINT AT 0,0; IN 65533; " ": GO TO 20 Kód: 10 OUT 65533,7: OUT 49149,64 Vrací 1 na všech bitech.20 OUT 65533,14: OUT 49149,255: PRINT AT 0,0; IN 65533; " ": GO TO 20 Kód: 10 OUT 65533,7: OUT 49149,0 Vrací 1 dokud nepřipojím generátor na příslušný bit. Ten se nechá generátorem stáhnout do 0... aha!20 OUT 65533,14: OUT 49149,255: PRINT AT 0,0; IN 65533; " ": GO TO 20 Takže v tomto stavu zkouším poslat data z notebooku znovu. A ono to opravdu něco dělá, resp. divoce se mění načtená hodnota. Ok, tedy problém se čtením RS232 nejspíš vyřešen. Sice stále nevím, proč 128k BASIC nepřijal ani byte, ale to nevadí, nepotřebuji ho. Teď už zbývá jen splácat dohromady kousek kódu ve strojáku a vyčasovat, aby pěkně fungoval nejen přenos, ale i řízení toku dat. 4800bps a 9600bps mi určitě bude stačit (protože plotry). |
Autor: | Tchunass [ 25.09.2019, 21:49 ] |
Předmět příspěvku: | Re: Gama 192K |
Starej_Mraf píše: Aha, to jsem si nevšim... tak třeba tady. https://www.ebay.com/itm/12-x-BT-631A-C ... xyzGlQ8rzp Jen tak na okraj: Nechcete raději nějakou takovou redukci? https://www.amazon.co.uk/Komodo%C2%AE-S ... B00BMNGEJ0 |
Autor: | zxcygnus [ 26.09.2019, 14:22 ] |
Předmět příspěvku: | Re: Gama 192K |
Objednal jsem 2x 3m kabel s BT631A s vědomím, že do koncovek budu muset vypilovat jinou drážku. Prodejce mě ujistil, že všech 6 drátů je opravdu zapojených, tak to snad nějak půjde přizpůsobit. V každém případě díky za nakopnutí správným směrem. Spíš by mě zajímalo, jestli někdo další dělal něco s RS232 na ZXS 128k a jak úspěšně. ZX Spectra si ve 128k BASICu umí mezi sebou přes RS232 povídat, tuším pomocí LPRINT a INPUT #3? Je to už pár desetiletí, co jsem to zkoušel a v manuálu o tom není skoro nic, snad jen to, že se to používá k tisku a jak nastavit baudrate. Nic víc. Nicméně kdysi mi to opravdu šlo. Softwarovou RS232 jsem už realizoval dřív, ale jen pro výstup, ne vstup. Mám i pár dalších zdrojáků pro inspiraci, ale kdyby to už čirou náhodou bylo úplně hotové a ještě lépe pro sinclairáckou RS232 na AY, tak rozhodně nepohrdnu Taky by mě zajímalo, jestli mnou zjištěné chování v DG192k se opravdu přesně shoduje s chováním ZXS 128k+ (jsou tam jiné RS232 převodníky) což ale zjistím, až bude kabel a propojím to s PC. |
Autor: | z00m [ 26.09.2019, 19:56 ] |
Předmět příspěvku: | Re: Gama 192K |
Pavel Vymetálek spravil sercp pre ESXDOS: https://vym.cz/sercp/ |
Autor: | zxcygnus [ 24.10.2019, 12:05 ] |
Předmět příspěvku: | Re: Gama 192K |
zxcygnus píše: Pořád si nejsem jistý jestli BT631A, nebo BT631W... Kabely dorazily už před Bytefestem, ale teprve teď jsem se dostal k tomu, abych se jimi zabýval.BT631A lze upravit. Není to ani tak velký problém. Někdy to zkusím udělat a nafotit tak, aby to bylo i zveřejnitelné. I okrouháním nožem lze dosáhnout toho, že konektor do ZXS zaklapne hladce a těsně, přesně jak má, stačí vědět, kde a jak hluboko do BT631A rýpat. z00m píše: Pavel Vymetálek spravil sercp pre ESXDOS: https://vym.cz/sercp/ Velmi inspirativní. Sice to má háček v tom, že nechci na straně PC používat specializovaný software a tedy nemůžu přenášet data v blocích, ale z odkazované RS232 ROM se to dalo nakonec docela snadno vypreparovat.Resp. nejprve jsem zkusil napsat autorovi RS232 ROM (http://www.fruitcake.plus.com/Sinclair/ ... _RS232.htm - email vpravo dole), ale neozval se ani po pár týdnech, takže to neřeším a disassembloval jsem si to sám. V tuto chvíli mám disassemblováno vše, čím se RS232 ROM liší od standardní ZXS 48k ROM. Zdroják je zkompilovatelný v ASL a binárně se výsledek po zkompilování přesně shoduje se zkoumanou ROM, resp. tou částí odlišnou od standardní. Mám i cca 60 - 70% prozkoumáno a okomentováno. Není to nijak složité ani dlouhé. Ale pro mé potřeby je tam dost velký kus navíc, který se týká ZX Interface 1. To mě nezajímá a ani to nemám na čem zkoušet. Krom toho je Interface 1 velmi minoritní hardware. A pak meníčko, výpis textů, konfigurace jaký sériák použít... Zajímá mě jen ta část, která se týká RS232 skrz AY-3-8912. Na ukázku, takto se AY inicializuje (na adrese 0x3B55) Kód: SET_AY_PORTS ld bc,65533 ; select AY register 7 ld a,7 out (c),a ld a,b ; A = 255 / set IO port as output, 1 on bit 6 and disable all sound channels ld b,191 ; BC = 49149 / AY data port out (c),a ; write 255 on port ld b,a ; BC = 65535 / AY register port ld a,14 ; select AY register 14 (IO port) out (c),a ld a,b ; A = 255 ld b,191 ; BC = 49149 / data port out (c),a ; write data byte 255, all bits high (like pullups?) ret Příjem dat ze sériáku se provádí takto (na adrese 0x3B6C) Kód: SERLOAD_AY_R ld de,33019 ; D = 1000 0000, E = 1111 1011 (ZX 128k RS232 - *A2, A3, A6, *A7) jr SERLOAD_AY SERLOAD_AY_K ld de,8446 ; D = 0010 0000, E = 1111 1110 (ZX 128k Keypad - *A0, A1, A4, *A5) SERLOAD_AY ld a,e ld e,0 ld hl,49151 ; H = 1011 1111 (191 * 256 + 253 = 49149), L = 1111 1111 (255 * 256 + 253 = 65535) ld bc,49149 ; AY data port out (c),a ; set CTS (ZX Spectrum is ready recieve data) ld b,l ; B = 255 SERLOAD_AY_WAIT in a,(c) ; read control port = IO port - repeat 3 times and d ; check TxD (data from PC) jr z,SERLOAD_AY_RD_1 ; Z = start bit in a,(c) and d jr z,SERLOAD_AY_RD_1 in a,(c) and d jr z,SERLOAD_AY_RD_1 dec e jr nz,SERLOAD_AY_WAIT ; decrement counter and wait for start bit again if NZ in a,(c) and d jr z,SERLOAD_AY_RD_1 ld a,l ld b,h out (c),a ld b,l SERLOAD_AY_WAI2 in a,(c) and d jr z,SERLOAD_AY_RD_2 in a,(c) and d jr z,SERLOAD_AY_RD_2 in a,(c) and d jr z,SERLOAD_AY_RD_2 dec e jp nz,SERLOAD_AY_WAI2 xor a ret ; start bit detected, read other bits (this is critical for precize timing) SERLOAD_AY_RD_1 nop ; 4T SERLOAD_AY_RD_2 ld a,l ; 4T ld b,h ; 4T out (c),a ; 12T ld e,10000000b ; 7T ld b,l ; 7T SERLOAD_AY_BITL in a,(c) ; 7T cp (ix+0) ; 19T is this just delay? and d ; 4T add a,255 ; 7T activate carry flag if bit from serial port was H rr e ; 8T rotate byte 8 times and rotate carry flag in bit 7 jr nc,SERLOAD_AY_BITL ; 12/7T 12T until last bit xor a ; 4T ld a,e ; 4T scf ; 4T ret ; 10T Na adrese 0x3BC9 to pokračuje vysíláním bytu. ... tak a teď to zkusit na reálném hardwaru. Mimochodem, mám počty taktů správně? Nějak mi nesedí z toho vycházející baudrate. |
Autor: | pcmaker [ 25.10.2019, 11:35 ] |
Předmět příspěvku: | Re: Gama 192K |
Bude mi sériový přenos fungovat bez úprav u zapojení, které je podobné jako Melodik, nebo je tam třeba přivést ještě nějaké další fousy ze sběrnice ZX Spectra? Plošky z paralelního portu AY tam vyvedené jsou, takže stačí dát jen piny a vyvést na konektor? Je tam dekodér 74LS138 a signály A1, A14, A15, IORQ, RD, WR, Data, CLK a RESET. |
Autor: | zxcygnus [ 25.10.2019, 12:40 ] |
Předmět příspěvku: | Re: Gama 192K |
pcmaker píše: Bude mi sériový přenos fungovat bez úprav u zapojení, které je podobné jako Melodik, nebo je tam třeba přivést ještě nějaké další fousy ze sběrnice ZX Spectra? Plošky z paralelního portu AY tam vyvedené jsou, takže stačí dát jen piny a vyvést na konektor? Je tam dekodér 74LS138 a signály A1, A14, A15, IORQ, RD, WR, Data, CLK a RESET. Mělo by fungovat s každou standardně zapojenou AY-3-8912, tedy i s Melodikem, když na IO výstupy AY připojíš stejný MAX232 stejným způsobem, jako je v DG192k... tedy s výhradou k připojení MAXe na 9 pinový DSUB v DG192k, to je lépe okopírovat od autora RS232 ROM. Ale mezi AY a ZX Spectrem by neměl být potřeba žádný zásah.Šlo by to i s těmi 75188 a 75189, jako to je v ZXS 128k, ale ty narozdíl od MAX232 vyžadují napájení +-12V, nemají vlastní měnič v sobě. Jiiirův Simple AY má IO piny dokonce vyvedené na lištu, jen si teď nejsem jistý, jestli i napájení a GND pro MAX232. Prozkoumám později. Nevím, jestli Jiiira počítal s RS232, nebo jen D/A převodníkem, jako ho s AY používají rusové (nemají 8255). |
Autor: | zxcygnus [ 20.11.2019, 10:08 ] |
Předmět příspěvku: | Re: Gama 192K |
Jen na okraj a pro pořádek. DG192k se definitivně chová odlišně od ZX Spectrum 128k a sériový port tak jak je se nedá použít stejně. Výstup je ok. Vstup je ok, ale pouze když je registr 7 v AY nastaven jako vstup. Jakmile chcete použít trik, který se na ZXS používá, kdy je AY jako výstup, zapíše se 255 do I/O portu a v ten okamžik lze číst, tak DG192k trvale vrací 255. To je problém. Funguje Kód: 10 OUT 65533,7: OUT 49149,191 20 OUT 65533,14: OUT 49149,255 30 PRINT IN 65533 Nefunguje na DG192k, funguje na originál ZXS 128k Kód: 10 OUT 65533,7: OUT 49149,255 20 OUT 65533,14: OUT 49149,255 30 PRINT IN 65533 Na vině jsou ty dva 1k rezistory R84 a R85 a možná i MAX232. Jakmile MAX232 tlačí log. 0 v 2. příkladu, tak na vstupu AY zůstává cca 2.4V a tedy vrací 1. Zkratem v takovém případě teče zhruba 9.8mA, to mi přijde příliš na to, abych 1k odpor prostě zahodil a nahradil drátem... Ale zároveň to začne fungovat, jak chceme a port vrací správné hodnoty. Přemýšlím o tom, že mezi MAX232 a AY dám budič s otevřeným kolektorem. Někdy. Až budu mít žas to rozebrat a zkoumat. V každém případě, na DG192k nemůže fungovat stejný software pro softwarovou RS232 jako na ZX128k v tom zapojení, jak je navržený. (nejenom mé pokusy, ale třeba i utilita sercp v ESXDOSu od Pavla Vymetálka a další). |
Autor: | PotPalo [ 22.11.2019, 22:18 ] |
Předmět příspěvku: | Re: Gama 192K |
1000 a 68 Ohm paralelne... vzniklo ti 63,67 Ohm. Pokiaľ je na jednej strane H 3,8V a na druhej L 0V, potom I=cca 60 mA (nepočítam odpor výstupov). 60 mA na odporoch, a výstupoch. Koľko znesú? Čo to spraví? Uvidíme. To je ako OUT 254,16 v Didaktiku M model 91. Trvalo púšťa 5V cez tranzistor na 8 Ohmový reproduktor. Tranzistor hreje, reproduktor hreje, malo by sa to podľa všetkého odpáliť, ale ono to nejako vydrží. |
Autor: | zxcygnus [ 23.11.2019, 00:20 ] |
Předmět příspěvku: | Re: Gama 192K |
PotPalo píše: okiaľ je na jednej strane H 3,8V a na druhej L 0V, potom I=cca 60 mA Viz výše - když jsem 1k přemostil ampérmetrem (kolik má, 0.1Ω?), teklo jím 9.8mA a oba čipy to pár minut přežily, 63Ω víc než 9.8mA nepoteče, nic citelně nehřeje, uvidíme časem.
|
Autor: | pwramp [ 30.08.2020, 18:12 ] |
Předmět příspěvku: | Re: Gama 192K |
Dokopal jsem se konečně k vypilování díry do DG192, použil jsem dutinky pinové lišty ze spodní strany krabice, na první pohled to není vůbec vidět. Odpory jsem musel instalovat, přesně jak píše zxcygnus, jinak mi nechodil ani sercp v esxdosu. Existuje nějaký emulátor sériového terminálu? Mít z Gamy terminál pro linuxy, to by se mi moc líbilo . Díky cygnusy za elaborát na webu, dost mi to pomohlo. |
Stránka 5 z 8 | Všechny časy jsou v UTC + 1 hodina [ Letní čas ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |