OldComp.cz
https://oldcomp.cz/

SIFTRD - zálohování Betadiskových disket přes RS232
https://oldcomp.cz/viewtopic.php?f=37&t=10564
Stránka 11

Autor:  zxcygnus [ 05.12.2021, 02:03 ]
Předmět příspěvku:  SIFTRD - zálohování Betadiskových disket přes RS232

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 4388 krát ]
DSC07191 zmenseno.JPG
DSC07191 zmenseno.JPG [ 220.71 KiB | Zobrazeno 4388 krát ]

Autor:  zxcygnus [ 05.12.2021, 12:52 ]
Předmět příspěvku:  Re: SIFTRD - zálohování Betadiskových disket přes RS232

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.

Autor:  tomascz [ 05.12.2021, 21:04 ]
Předmět příspěvku:  Re: SIFTRD - zálohování Betadiskových disket přes RS232

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:

Autor:  zxcygnus [ 05.12.2021, 21:11 ]
Předmět příspěvku:  Re: SIFTRD - zálohování Betadiskových disket přes RS232

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 :)

Autor:  tomascz [ 06.12.2021, 00:19 ]
Předmět příspěvku:  Re: SIFTRD - zálohování Betadiskových disket přes RS232

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

Autor:  zxcygnus [ 06.12.2021, 00:41 ]
Předmět příspěvku:  Re: SIFTRD - zálohování Betadiskových disket přes RS232

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...)

Autor:  zxcygnus [ 13.12.2021, 11:13 ]
Předmět příspěvku:  Re: SIFTRD - zálohování Betadiskových disket přes RS232

Nenašel se nikdo, kdo by to chtěl otestovat na svém hardwaru, než to pustím do světa?

Autor:  zxcygnus [ 14.12.2021, 16:56 ]
Předmět příspěvku:  Re: SIFTRD - zálohování Betadiskových disket přes RS232

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

Stránka 11 Všechny časy jsou v UTC + 1 hodina [ Letní čas ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/