OldComp.cz

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


Právě je 27.04.2024, 10:51

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




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 26 ]  Přejít na stránku 1, 2  Další
Autor Zpráva
 Předmět příspěvku: Jak funguje ukládání na pásku
PříspěvekNapsal: 09.02.2024, 18:08 
Offline
Kecálek
Uživatelský avatar

Registrován: 01.07.2014, 17:05
Příspěvky: 240
Bydliště: Buštěhrad
Has thanked: 19 times
Been thanked: 50 times
Ahoj,
pro účely bakalářské práce hledám informace o tom jak ZX Spectrum pracuje se zvukovým signálem.
Jde mi především o to jak

1) Se převádí data do audio formátu v počítači (jak probíhá encoding/decoding signálu)
2) Jak fungují soubory .tzx a .tap
3) Jaký účel mají bloky (např při nahrává z pásky nebo TAPky)
4) Jak fungují i na zvukové formě turbo loadery

Nejde mi přímo o přesně odpovězené dotazy, spíš budu rád když mě někdo třeba posune k nějakým zdrojům, které si mohu nastudovat a pochopit. Díky

_________________

Obrázek ZX Spectrum: Didaktik M, ZX 48k, Černá Gama, Frankenstein 48k, Harlequin 128k v ZX+, Did Kompakt, ZX81
Obrázek Amiga: Amiga 4000D CyberStorm MKIII, Amiga 1200 + Blizzard 1230IV, Amiga 1200T Infinitiv, A600, A500
Obrázek Ostatní: Atari ST 1040FM, Shrap MZ-821, Apple lle, Commodore 64, SGI Indigo2, Sun Ultra 5
Obrázek Apple: G3 BW, G4 PCI, G4 QS, G4 MDD, iMac G3, iBook G3, iBook G4, LC II, LC III, LC 475, Performa 630, PM7300, PM7200, PM8500, Quadra 650, PB 160, PB G3


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 09.02.2024, 19:52 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 21.01.2021, 11:05
Příspěvky: 1639
Bydliště: Pardubice
Has thanked: 29 times
Been thanked: 248 times
ZX co ? Já znám TESLA 200.
Příloha:
Tesla Magnetické páskové paměti v01s.jpg
Tesla Magnetické páskové paměti v01s.jpg [ 353.25 KiB | Zobrazeno 624 krát ]

_________________
Praxe znamená, že vše funguje, ale nevíme proč. Teorie znamená, že vše víme, ale nic nefunguje.
Někdy je teorie spojena s praxí. Znamená to, že nic nefunguje a nikdo neví proč ...


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 09.02.2024, 19:55 
Offline
Pan Generální
Uživatelský avatar

Registrován: 23.03.2014, 20:13
Příspěvky: 2788
Has thanked: 230 times
Been thanked: 608 times
Nejlepší zdroj je zdroják :lol:

https://softhouse.speccy.cz/documents/download/ZX_ROM.pdf

Kódování je jednoduché. Dva různé tóny, týt je jednička, tůt je nula, tap je sekvence bajtů podle které emulátor emuluje týt a tůt, v úplně stejném pořadí jako jsou bity uložené na skutečné pásce.

_________________
Plesnivý sýr z Tesca, zatuchlé kuřecí řízky z Albertu, oslizlé hovězí a myší trus z Lidlu.
Nákup potravinářské inspekce v ČR, říjen 2023.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 09.02.2024, 20:35 
Offline
Site Admin
Uživatelský avatar

Registrován: 11.05.2013, 23:48
Příspěvky: 10140
Bydliště: Praha
Has thanked: 1961 times
Been thanked: 1523 times
Týt a tůt asi Kocour chápe. Spíš se asi ptá, jak CPU poslouchá a vyhodnocuje ty jedničky a nuly a podle čeho pozná, že v záznamu chyba, atp. Bloky jsou jasné - prostě uložený kus paměti. Můžu jich mít sto, můžu mít jeden allram. Turba/komprese - no někde běží rutinka, která optimalizuje/urychluje ukládání/nahrávání. Defaultně nastavená bps je prostě na hodnotě, která by měla být blbuvzdorná pro všechny kvality kazeťáků a kazet + káblíků. CPU samo zvládne při čistějším signálu dekódovat daleko rychleji. To se pozná např. i podle toho, že různé turboloadery znásilňují flákající se CPU k nejrůznějším vedlejším efektům na obrazovce (odpočítávání času do konce nahrávání bývalo nejčastější).

_________________
Amiga/Amstrad/Atari/Commodore/Mac/Nintendo/PS/PC/Sega/Tandy/ZX


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 09.02.2024, 20:46 
Offline
Pan Štábní

Registrován: 12.05.2013, 22:24
Příspěvky: 1524
Bydliště: u Prahy
Has thanked: 44 times
Been thanked: 386 times
Load rutina byla probírána například ve Fifu č. 9, strana 6, 7.
Případně Malérova série ZX Spectrum a loadery https://retrocip.cz/zx-spectrum-a-loadery-1/

Pěkný popis formátu byl k TAP utilitám. Nebo stručně třeba https://sinclair.wiki.zxnet.co.uk/wiki/TAP_format


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 09.02.2024, 20:50 
Offline
Kecálek
Uživatelský avatar

Registrován: 30.05.2020, 01:05
Příspěvky: 190
Bydliště: Olomouc
Has thanked: 568 times
Been thanked: 102 times
Jen upřesním, že týt a tůt není 1 a 0, ale že jde vždy o délku mezi změnou týt/tůt /týt/..... a pokud je puls krátký je to 0 pokud je puls dlouhý je to 1. Díky tomu že neměří frekvenci tónu, ale jen délku k další změně tónu, tak dokáže být čtení dat docela stabilní a i rychlejší.
https://www.vintageisthenewold.com/zx-spectrum-and-loaders-part-one

_________________
ZX Spectrum+ 48 kB s D40 nebo divIDE 57c, MB03+, popřípadě Fuse a teď nově LNX


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 09.02.2024, 21:11 
Offline
Kecálek
Uživatelský avatar

Registrován: 30.05.2020, 01:05
Příspěvky: 190
Bydliště: Olomouc
Has thanked: 568 times
Been thanked: 102 times
Tady jsem našel i další odkazy:
https://retrocip.cz/zx-spectrum-a-loadery-1/
https://shred.zone/cilla/page/440/r-tape-loading-error.html

_________________
ZX Spectrum+ 48 kB s D40 nebo divIDE 57c, MB03+, popřípadě Fuse a teď nově LNX


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 09.02.2024, 21:14 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 21.01.2021, 11:05
Příspěvky: 1639
Bydliště: Pardubice
Has thanked: 29 times
Been thanked: 248 times
Týt a tůt je 1 a 0. Týt vyší tón krátký impulzy, tůt nižší tón dlouhé impulzy. Faraon to má spravně, řekl bych že ty změny jsou dvě, takže jedna sinusovka na bit, ne mezi změnami.

_________________
Praxe znamená, že vše funguje, ale nevíme proč. Teorie znamená, že vše víme, ale nic nefunguje.
Někdy je teorie spojena s praxí. Znamená to, že nic nefunguje a nikdo neví proč ...


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 09.02.2024, 21:53 
Offline
Kecálek
Uživatelský avatar

Registrován: 01.07.2014, 17:05
Příspěvky: 240
Bydliště: Buštěhrad
Has thanked: 19 times
Been thanked: 50 times
Všem moc díky! Rutiny ROM už jsem nad mé síly, ale
https://shred.zone/cilla/page/440/r-tap ... error.html a Malér jsou super! To je přesně co hledám.

Ještě musím zjistit jak degraduje audio na pásce (ale to už není věc Spectra), tedy proč při opakovaném kopírování dochází k nečitelnému záznamu a je potřeba požít kopíráky.

_________________

Obrázek ZX Spectrum: Didaktik M, ZX 48k, Černá Gama, Frankenstein 48k, Harlequin 128k v ZX+, Did Kompakt, ZX81
Obrázek Amiga: Amiga 4000D CyberStorm MKIII, Amiga 1200 + Blizzard 1230IV, Amiga 1200T Infinitiv, A600, A500
Obrázek Ostatní: Atari ST 1040FM, Shrap MZ-821, Apple lle, Commodore 64, SGI Indigo2, Sun Ultra 5
Obrázek Apple: G3 BW, G4 PCI, G4 QS, G4 MDD, iMac G3, iBook G3, iBook G4, LC II, LC III, LC 475, Performa 630, PM7300, PM7200, PM8500, Quadra 650, PB 160, PB G3


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 10.02.2024, 00:06 
Offline
Pan Generální
Uživatelský avatar

Registrován: 23.03.2014, 20:13
Příspěvky: 2788
Has thanked: 230 times
Been thanked: 608 times
Protože analogová kopie má horší kvalitu než originál. Ty vlnky se prostě vlní méně a někdy i nakřivo. Asi jako kdybys několikrát převedl obrázek mezi různými ztrátovými formáty.

Stárnutím se navíc mění i záznamy na té pásce, pomalu se odmagnetizují, a z vedlejších závitů pásky naopak můžou sousední pole blízká místa zmagnetizovat něčím co tam nemá být.

Takže žádná data nemají neomezenou životnost, je potřeba je neustále kopírovat na nová média. Tak jako se kdysi přepisovaly knihy.

_________________
Plesnivý sýr z Tesca, zatuchlé kuřecí řízky z Albertu, oslizlé hovězí a myší trus z Lidlu.
Nákup potravinářské inspekce v ČR, říjen 2023.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 10.02.2024, 09:09 
Offline
Pan Generální
Uživatelský avatar

Registrován: 18.05.2013, 14:56
Příspěvky: 2354
Has thanked: 304 times
Been thanked: 641 times
S tématem souvisí jen volně, ale existuje velmi zajímavý program ZX Tape Reviver pro záchranu záznamů z pásky, ve kterém je způsob dekódování názorně vidět.

Na GitHubu https://github.com/lgolouz/ZXTapeReviver

a ukázka od autora, jak se s tím pracuje, rozumíte-li rusky
https://www.youtube.com/watch?v=i3FRRAro8hA&t=1108s

V podstatě to v sobě sdružuje audio sampler, editor a dekodér do TAP. Dají se v tom ladit délky trvání pulzů, dělat drobné úpravy signálu, nebo přenášet větší bloky mezi levým a pravým kanálem... Ještě by to mohlo umět všelijaké turbo režimy, bleep load a jiné ochrany a byl by to nástroj zcela nepřekonatelný. Ale i v této podobě je docela unikátní.

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


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 10.02.2024, 09:30 
Offline
Pan Generální
Uživatelský avatar

Registrován: 18.05.2013, 14:56
Příspěvky: 2354
Has thanked: 304 times
Been thanked: 641 times
A ještě k tomu TAP vs TZX.

TAP je v podstatě 1:1 obsah toho, co ZX Spectrum ukládá na pásku bez ohledu na zvukovou podobu. TAP je to, co z těch zvukových dat ZX Spectrum dekóduje. Jediné, co je v TAP navíc je délka bloku na začátku bloku. Viz https://worldofspectrum.org/faq/reference/formats.htm

A protože to je takto trivální formát, tak se ujal i na všech možných hardwarech/firmwarech (pro DivIDE jich existuje několik) pro ZX Spectrum, které pásku emulují.

TZX je oproti tomu všeobjímající komplexní formát, který má TAP jen jako malou podmnožinu - viz https://worldofspectrum.net/TZXformat.html a umí uložit i zvukovou podobu signálu, aniž by v TZX byla dekódovaná data.

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


Naposledy upravil zxcygnus dne 10.02.2024, 09:36, celkově upraveno 1

Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 10.02.2024, 09:33 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 24.05.2018, 22:32
Příspěvky: 1980
Bydliště: Most, Praha
Has thanked: 874 times
Been thanked: 699 times
První krok při záchraně dat by mělo být nastavení kolmosti hlavy souhlasně podle záznamu - aby bylo nejzřetelnější rozpoznání správné šířky pulzů v analyzátoru. Při nesouhlasné kolmosti se detekované šířky pulzů "rozpliznou". A při nesprávné rychlosti kazeťáku (nebo při ujíždějící stejnosměrné složce) ujedou stranou. Kvalitu záznamu časem ničí i obrušování nosiče používáním a případné zmagnetování páskové dráhy. Nebo zanesení hlavy.
Obrázek

_________________
i++ (INC) increment
i-- (DEC) decrement
i@@ (EXC) excrement


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 10.02.2024, 10:56 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 21.01.2021, 11:05
Příspěvky: 1639
Bydliště: Pardubice
Has thanked: 29 times
Been thanked: 248 times
Taky se páska deformuje na krajích jak projíždí vodícími kolíky.

_________________
Praxe znamená, že vše funguje, ale nevíme proč. Teorie znamená, že vše víme, ale nic nefunguje.
Někdy je teorie spojena s praxí. Znamená to, že nic nefunguje a nikdo neví proč ...


Nahoru
 Profil  
 
 Předmět příspěvku: Re: Jak funguje ukládání na pásku
PříspěvekNapsal: 10.02.2024, 11:16 
Offline
Profík

Registrován: 26.11.2018, 16:59
Příspěvky: 582
Bydliště: Holešov
Has thanked: 13 times
Been thanked: 91 times
themrkocour píše:
proč při opakovaném kopírování dochází k nečitelnému záznamu a je potřeba požít kopíráky.

tady bych se věnoval audio části (jak přehrávací tak nahrávací) v magnetofonech. Ty jsou primárně určené pro hudbu a mají tak nastavené filtry a zesilovače, normovače signálu. A těm se signál z počítače vůbec nelíbí, ještě to funguje když jdeš přímo ZXS-páska a zpátky, ale jak to necháš projet páska-páska ta audio část udělá svoje...

ZX Spectrum má při standardním záznamu jen 2 bloky - hlavičku (co budou následující data) a data, hlavička může být vynechána pokud si data načítáš z vlastního programu (ve strojovém kódu).
Každý blok začíná nějakým pilotním signálem, poté sérií synchro-pulsů,pak hlavičkový bajt určující typ bloku a pak přímo vlastní data a na konec 1 bajt kontrolní součet.

Na některých jiných počítačích nebo ve speciálních loaderech se nahrává po kratších částech (blocích) aby v případě chyby se mohlo kousek vrátit a zkusit nahrát danou část znovu (např. IQ151), to zde nejde, blok se musí nahrát celý a na případnou chybu se přijde až na konci


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ů: 26 ]  Přejít na stránku 1, 2  Další

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 25 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:  
cron
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz