OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů

OldCompPrty 8

Právě je 25.06.2022, 13:59

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 8 ] 
Autor Zpráva
PříspěvekNapsal: 05.12.2021, 02:03 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 18.05.2013, 14:56
Příspěvky: 1903
Has thanked: 242 times
Been thanked: 468 times
Už je trochu pozdě, takže prozatím jen takový malý obrázkový teaser.

SIFTRD nově umí
ZX > PC - backup RAW data 57600bps skrz AY-3-8912 s výpočtem CRC32 pro porovnání správnosti přenosu
PC > ZX - restore SERCP 38400bps kompatibilní skrz AY-3-8912, kompatibilní s utilitou SERCP pro ESXDOS, kterou napsal Pavel Vymetálek


a spousta dalších oprav a vylepšení
(Vystupuje tisíc slonů!)

Pomohlo by mi, kdyby se někdo ujal zodpovědného otestování na Windows (tím myslím RS232 přenos mezi Windows a ZXS)


Přílohy:
DSC07190 zmenseno.JPG
DSC07190 zmenseno.JPG [ 357.58 KiB | Zobrazeno 1757 krát ]
DSC07191 zmenseno.JPG
DSC07191 zmenseno.JPG [ 220.71 KiB | Zobrazeno 1757 krát ]

_________________
https://cygnus.speccy.cz ZX Spectrum 128k, Betadisk, DivIDE, ESXDOS
Nahoru
 Profil  
 
PříspěvekNapsal: 05.12.2021, 12:52 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 18.05.2013, 14:56
Příspěvky: 1903
Has thanked: 242 times
Been thanked: 468 times
SIFTRD vs Windows

Konstatování - pracovat se sériovým portem ve Windows je... hm... neradostné (silná autocenzura). Nepodařilo se mi objevit způsob, jak jednoduše v konzoli přijímat RAW data a sypat je do souboru.

Naštěstí existuje https://sourceforge.net/projects/realterm/ ... nejenom, že se v něm dá nastavit na sériovém portu vše, co umí, ale má i funkci Capture, která udělala přesně to, co jsem chtěl. Prohlašuji to za vhodné řešení, dokud někdo nepřijde s něčím lepším.

Co se výpočtu CRC32 na Windows týče, zkouším HashCalc 2.02 http://www.slavasoft.com/download.htm Počítá to, shoduje se to, potud ok, jen bych raději něco integrovaného do průzkumníku v kontextovém menu.

(obojí jsem ověřil na virustotal.com, tak snad ok)

A zkouším to na WXP, protože to je jediný počítač se skutečnou RS232, co mám s Windows.

Proč SIFTRD neumí taky zálohovat pomocí sercp?

Protože sercp na začátku přenosu posílá 1109 bytů velké fileinfo - blok dat v němž je název souboru, kontrolní součet a XOR k fileinfo i ke všem blokům, které budou poslané v rámci přenosu.

To znamená, že chci-li disketu zálohovat, musím ji nejprve celou přečíst, spočítat XOR & SUM na každý datový blok, sestavit fileinfo, poslat fileinfo a pak teprve posílat obsah diskety.

Je to možné, ale je to pomalé. Proto zatím preferuji zálohování jako přenos syrových dat rovnou do TRD souboru na cílovém PC, ideálně s ověřením CRC32, to je doufám dostatečná záruka. Nejspíš sercp backup časem taky doplním.

_________________
https://cygnus.speccy.cz ZX Spectrum 128k, Betadisk, DivIDE, ESXDOS


Nahoru
 Profil  
 
PříspěvekNapsal: 05.12.2021, 21:04 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 08.07.2013, 00:28
Příspěvky: 1456
Has thanked: 431 times
Been thanked: 522 times
zxcygnus píše:
Konstatování - pracovat se sériovým portem ve Windows je... hm... neradostné (silná autocenzura). Nepodařilo se mi objevit způsob, jak jednoduše v konzoli přijímat RAW data a sypat je do souboru.

Nerad cokoli šulim přes příkazovou řádku, ale jeden z prvních odkazů v Googlu cca dal odpověď :shrug:
https://stackoverflow.com/questions/194 ... o-txt-file
Akorát, jak není znám oficiální konec přenosu, tak je nutný přenos típnout ve stylu roku 1992, tj. Ctrl+Z, což se může pozdějším uživatelům Windows malinko eklovat... :-)

Snad to funguje, nezkoušel jsem - COM mám, ale nemám do něj co připojit... :cry:

_________________
DECLARE VARIABLES, NOT WAR
EXECUTE PROGRAMS, NOT PEOPLE
より良い競争相手からソフトウェアを購入する (。◕‿‿◕。)


Nahoru
 Profil  
 
PříspěvekNapsal: 05.12.2021, 21:11 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 18.05.2013, 14:56
Příspěvky: 1903
Has thanked: 242 times
Been thanked: 468 times
Tak hledat jsem samozřejmě zkusil taky a taky jsem podobné rady našel, ale problém, že nefungují. Příkazy copy a type skončí hned.

Kdo to chce zkusit, tomu klidně program pošlu se vším všudy (nezveřejňuju ho pro všechny jen proto, že ho nepovažuju za dost vyzkoušený).

Ukončení přenosu uživatelem nevidím jako problém, co se ekluje uživatelům Windows, zvláště pozdějším, tomu snad ani rozumět nechci :)

_________________
https://cygnus.speccy.cz ZX Spectrum 128k, Betadisk, DivIDE, ESXDOS


Nahoru
 Profil  
 
PříspěvekNapsal: 06.12.2021, 00:19 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 08.07.2013, 00:28
Příspěvky: 1456
Has thanked: 431 times
Been thanked: 522 times
Aha. Jak říkám, nezkoušel jsem, protože do COM portů nemám co zapojit. Ale stejně je to divný, že by to nefungovalo - vždyť ještě ze střední mám zapamatovaný (a teď mě neberte za slovo) "přesměrování“ symboly menší/větší, např. stdin kanál do souboru.

A ano, správně mělo být "uživatelům pozdějších verzí." Čeština dokáže bejt záludná. Jak říká Felix Holzmann, "V receptu stálo, 'krájejte tři dni staré housky' - já jsem nekrájel ještě ani půl dne a už jsem jich měl plnou vanu!" :suicide: :-D

_________________
DECLARE VARIABLES, NOT WAR
EXECUTE PROGRAMS, NOT PEOPLE
より良い競争相手からソフトウェアを購入する (。◕‿‿◕。)


Nahoru
 Profil  
 
PříspěvekNapsal: 06.12.2021, 00:41 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 18.05.2013, 14:56
Příspěvky: 1903
Has thanked: 242 times
Been thanked: 468 times
No, pořád je možné, že dělám něco blbě, věnoval jsem tomu asi jen hodinu a pak jsem hledal náhradní řešení. Proto bych rád, aby to zkusil i někdo další.

Je k tomu potřeba jakékoli ZX Spectrum s RS232 (stačí i ZXS 48k viz https://www.youtube.com/watch?v=3e1QOAQLEZs, nebo Didaktik Gama 192k), není nutné používat originál ZXS 128k toastrack, nebo šedou +2. Zapojení kabelu je tady https://cygnus.speccy.cz/popis_zx-spect ... _rs232.php - pro sercp, RS232 ROM od Paula Farrowa i SIFTRD je zapojení stejné.

A není ani nutný skutečný sériový port. Je třeba to zkusit i s USB-RS232 redukcemi (jen musí umět RTS CTS řízení toku dat). Já určitě časem nějakou z kombinací zkusím, ale asi nebudu mít chuť zkoušet úplně vše. Např. menší formáty disket než 640kB tam naprogramované jsou, ale ověřené zatím ne.

Mezitím jsem pro zajímavost změřil přenosové rychlosti (opakovaně, tak 3 - 4 měření a testy pro každý z případů).
Kód:
RAW backup SIF 115200bps - ZX to PC on real Beta 3.5" FDD, CRC32
640kB/194s = 3.30kB/s

RAW restore SIF 115200bps - PC to ZX on real Beta 3.5" FDD, CRC32
640kB/162s = 3.95kB/s

RAW backup SWS 57600bps - ZX to PC on real Beta 3.5" FDD, CRC32
640kB/230s = 2.78kB/s

SERCP restore SWS 38400bps - PC to ZX on real Beta 3.5" FDD (SUM&XOR)
640kB/261s = 2.45kB/s
Rychlost je složená z čtení diskety, přenosu dat přes RS232 a výpočtu CRC32. To vše se sčítá, proto rozdíl rychlostí mezi 115200bps 57600bps není tak velký. Sercp je nejpomalejší, ale ne o tolik, protože má jednodušší kontrolní součty než je CRC32.

Mezitím musím nějaký čas věnovat aktualizaci webu, napsat k tomu manuál atd...

(Btw... to větu o pozdějších uživatelích jsem zjevně pochopil úplně blbě :) Já pozdější uživatele považoval za zpovykané mileniály, nikoli uživatele pozdějších verzí. No nic...)

_________________
https://cygnus.speccy.cz ZX Spectrum 128k, Betadisk, DivIDE, ESXDOS


Nahoru
 Profil  
 
PříspěvekNapsal: 13.12.2021, 11:13 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 18.05.2013, 14:56
Příspěvky: 1903
Has thanked: 242 times
Been thanked: 468 times
Nenašel se nikdo, kdo by to chtěl otestovat na svém hardwaru, než to pustím do světa?

_________________
https://cygnus.speccy.cz ZX Spectrum 128k, Betadisk, DivIDE, ESXDOS


Nahoru
 Profil  
 
PříspěvekNapsal: 14.12.2021, 16:56 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 18.05.2013, 14:56
Příspěvky: 1903
Has thanked: 242 times
Been thanked: 468 times
Zveřejněno https://cygnus.speccy.cz/popis_siftrd.php

Přímý odkaz na program vč. zdrojáků https://cygnus.speccy.cz/download/utili ... rd.tar.bz2

_________________
https://cygnus.speccy.cz ZX Spectrum 128k, Betadisk, DivIDE, ESXDOS


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvků: 8 ] 

Všechny časy jsou v UTC + 1 hodina [ Letní čas ]


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 3 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz