OldComp.cz

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


Právě je 28.03.2024, 10:54

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




Odeslat nové téma Odpovědět na téma  [ Příspěvků: 42 ]  Přejít na stránku Předchozí  1, 2, 3  Další
Autor Zpráva
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 18.01.2022, 22:32 
Offline
Kecálek

Registrován: 04.02.2016, 10:21
Příspěvky: 91
Has thanked: 7 times
Been thanked: 18 times
Ten MZT formát neumí pouze datové bloky. Vždy tam musí být header, který obsahuje velikost dat. MZT znamená jen více MZF v jednom souboru. Pro ten můj případ je tohle nepoužitelné.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 18.01.2022, 22:48 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2723
Has thanked: 144 times
Been thanked: 422 times
vaclavpe píše:
Ten MZT formát neumí pouze datové bloky. Vždy tam musí být header, který obsahuje velikost dat. MZT znamená jen více MZF v jednom souboru. Pro ten můj případ je tohle nepoužitelné.


Pro tebe neni problem upravit si ten C program aby vynechal head a nahral jen data. Pak jen vhodne velka mezera mezi prvnim blokem (same nuly) a daty zajisti, ze se ti spusti program a nahraje ti data. Jedine co asi bude problem je rychlost. Zde se pocita jen s jednou rychlosti. Nutno ale rici ze hodne "originalek" melo druhy (vetsinou obrazek) a treti datovy oddil (vlastni hra) nahran 2x rychleji.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 18.01.2022, 23:02 
Offline
Kecálek

Registrován: 04.02.2016, 10:21
Příspěvky: 91
Has thanked: 7 times
Been thanked: 18 times
suksoft píše:
Pro tebe neni problem upravit si ten C program aby vynechal head a nahral jen data. Pak jen vhodne velka mezera mezi prvnim blokem (same nuly) a daty zajisti, ze se ti spusti program a nahraje ti data.

To je Radku blbost. Ta "vhodně velká mezera" může být za některých okolností data. Tenhle přístup se mi nelíbí a rozhodně dvojznačnost nebudu podporovat. I nulový bajt musí začínat synchronizační jedničkou. A ty mezi dva rozdílné datové bloky potřebuješ úplně jiný oddělovač - 11000xL,20xH,20xL,1xH. Bez explicitní identifikace bloku to nebude fungovat spolehlivě.

Psal mi Roman, že zkusí pohrabat a najde popis jeho TMZ. Ten totiž podporuje i datové bloky ve formátu ZXS, a dost možná, že i jiné. Dokonce pár TMZ souborů publikoval. Ale kdoví, kde skončily.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 19.01.2022, 09:19 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2723
Has thanked: 144 times
Been thanked: 422 times
Vasku na http://web.archive.org/web/201801051812 ... bkkemu.htm je odkaz na http://sharpmz.org/download/mz7b037.zip a zde uvnitr najdes soubor MZFTOMZT.C .
To je ten konverzni program. MZT podle tohoto programu neni bajtove ulozeny soubor ale bitove ulozeny stream. Takze kdyz napr. udelas 1375 bajtovy soubor ktery bude obsahovat same nuly, tak je to vlastne 110000 short impulsu (cca 5 sekund). To kdyz das mezi dva programy, tak nahravaci rutinka nic nebude delat, proste to jen prejede. Ona ceka na 40 long inpulsu nasledovanych 40 short impulsy.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 19.01.2022, 10:58 
Offline
Kecálek

Registrován: 04.02.2016, 10:21
Příspěvky: 91
Has thanked: 7 times
Been thanked: 18 times
Jo takhle, jeden bit je jedna "vlnka", takže MZT je vlastně fyzický formát. Tohle by šlo. Já totiž zatím viděl jen MZT stejné jako MZF.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 19.01.2022, 11:22 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2723
Has thanked: 144 times
Been thanked: 422 times
Vasku podle mne pro tebe ted bude idealni kdyz si udelas uplne novy format treba MZV (V jako Vasek) a tam dat data jako v tvem prvnim prispevku. To bude umet rozlisit i rychlost.

Doma mam draft dokumentu jak si doma chci udelat uloziste MZF souboru. Vlastne to bude XML soubor, vubec mi nebude vadit ze je to 2x az 3x vetsi nez je nutne. Super vlastnost bude ze se to bude moci prenaset i pres seriovou linku. Treba atribut SPEED bude 1 az 3 a to bude urcovat rychlost.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 19.01.2022, 11:24 
Online
Pan Štábní
Uživatelský avatar

Registrován: 14.05.2013, 19:10
Příspěvky: 1486
Bydliště: Kurim
Has thanked: 828 times
Been thanked: 577 times
Tady bych byl opatrný, podle mně není MZT, jako MZT. Autor programu je Němec a to MZT, co máme my jako MZF zase mi přijde, že vymysleli Japonci. Asi by šlo mrknout do zdrojáků těch jejich dvou emulátorů, jak s tím nakládají.

_________________
http://www.8bity.cz


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 19.01.2022, 11:37 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2723
Has thanked: 144 times
Been thanked: 422 times
Martin8bity píše:
Tady bych byl opatrný, podle mně není MZT, jako MZT. Autor programu je Němec a to MZT, co máme my jako MZF zase mi přijde, že vymysleli Japonci. Asi by šlo mrknout do zdrojáků těch jejich dvou emulátorů, jak s tím nakládají.


Kdyz nekdo napise kde je to ulozene a v jakem souboru je ta cast pro MZT, tak se mozna na to podivam. Je velmi pravdepodobne ze existuji ruzne verze MZT souboru, ktere jsou uplne jinak kodovane. Jinak receno stejna pripona ale uplne neco jineho.

Mimochodem ten Nemec ne moc slusne ukoncuje zapis do souboru. Klidne zapise na konci souboru az 7 bitu nahodnymi daty (posledni bajt z CRC). Lepsi reseni by bylo to vynulovat a udelat z toho short impuls.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 03.02.2022, 11:01 
Offline
Pan Štábní

Registrován: 11.11.2013, 10:29
Příspěvky: 1198
Has thanked: 359 times
Been thanked: 304 times
Zkousel jsem se divat, jak to kdo resil v ruznych emulatorech. Za vzor jsem si vzal priklad z "MZ-800_Owner's_Manual.pdf" strana 6-51 a 6-53, kde je priklad na vygenerovani souboru s daty a jeho nacteni. IMHO by tak mel vzniknout soubor s jednou hlavickou a dvema datovymi bloky. Alespon tak to vypada na wav zaznamu. Kazdy blok ma 128B. Pri nacitani BASIC nacte hlavicku (ROPEN#) a pri INPUT# jeden blok. Kdyz mu dojdou data, nacte dalsi blok, atd. az do konce.
Emulatory to resi vetsinou tak, ze zapisuji do wav souboru, tak jak to odpovida nahranemu zvuku. Jediny konvertor do jineho formatu, ktery jsem zkousel, to ulozi jen jako hlavicku, tzn. 128B a s daty si neporadi. Mate nekdo nejaky konvertor, ktery by jste vyzkouseli? V priloze je nahrany wav podle prikladu z manualu. Muzete ho nekdo zkusit prevest do MZT?


Přílohy:
data1.zip [25.94 KiB]
126 krát

_________________
Sharp MZ-800++, MZ-1500++, MZ-2500++, SM-B-80T, MK-14_replica, HP-85, ZX-80+replica, ZX81, ZX-Spectrum+replica++, PMI-80+replica, SAM coupe++, PMD-85-2A+3, Didaktik-M, SORD-M5, TI-57, TI-59+PC-100, TI99/4A, ZetaV2+ppp, ZX-uno, Petr
Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 03.02.2022, 11:14 
Offline
Kecálek

Registrován: 04.02.2016, 10:21
Příspěvky: 91
Has thanked: 7 times
Been thanked: 18 times
Mikes21 píše:
Kazdy blok ma 128B. Pri nacitani BASIC nacte hlavicku (ROPEN#) a pri INPUT# jeden blok. Kdyz mu dojdou data, nacte dalsi blok, atd. az do konce.
Emulatory to resi vetsinou tak, ze zapisuji do wav souboru, tak jak to odpovida nahranemu zvuku.

Ahaaaa, teď se mi rozsvítilo. Já převáděl pro Bena Coffera nějaké nečitelné soubory a tohle tam bylo. Myslel jsem, že to je nějaký odpad. Takže odpad to nebyl,byla to data. Skutečně to bylo po blocích 128B.

Do MZT ti to nepřevedu, ale uměl bych to do toho mého TMZ.


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 03.02.2022, 14:48 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2723
Has thanked: 144 times
Been thanked: 422 times
Udelal jsem rychle program co otevre wav a zobrazi impulsy uvnitr souboru. Problem ale je ze wav ma v sobe mezery. MZT ma v sobe ulozene jen impulsy short a long. Zadnou mezeru neumi ulozit. Mezery by byla potreba zkonvertovat na short signaly aby byla zajisteno ze mezi daty bude opet mezera.


Přílohy:
data1_short_long.zip [837 bajtů]
118 krát
Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 03.02.2022, 16:24 
Offline
Pan Štábní

Registrován: 11.11.2013, 10:29
Příspěvky: 1198
Has thanked: 359 times
Been thanked: 304 times
vaclavpe: tak to pokusne zkus. Ale jestli by byl i nejaky popis formatu toho TMZ.
suksoft: dobry, a nejaky popis nebo analyza toho souboru. Alespon pocitadlo nebo co ktery pulz znamena. Dalo by se zjistit, kde zacina byte a jakou ma hodnotu.

_________________
Sharp MZ-800++, MZ-1500++, MZ-2500++, SM-B-80T, MK-14_replica, HP-85, ZX-80+replica, ZX81, ZX-Spectrum+replica++, PMI-80+replica, SAM coupe++, PMD-85-2A+3, Didaktik-M, SORD-M5, TI-57, TI-59+PC-100, TI99/4A, ZetaV2+ppp, ZX-uno, Petr


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 03.02.2022, 17:10 
Offline
Pan Generální

Registrován: 19.07.2013, 15:54
Příspěvky: 2723
Has thanked: 144 times
Been thanked: 422 times
Mikesi neni to idelani program ale je to rychle udelane aby to ukazovalo data uvnitr. Ted to dela i to ze '.' znamena mezeru kde neni zadny signal. To se da nahradit signalem short. Je to tam abych videl ty tri velke mezery mezi bloky. Jinak na konci pekne vidis ty nulove bajty, 1xlong a 8x short. Mozna udelam dekoder dat. Docela premyslim ze nejake taktoveto kodovani budu pouzivat. Staci pouze trivialne spojit soubory a da se udelat cela paska. Sice neni to moc ekonomicke, misto jednoho bitu to koduje do jednoho znaku ale to na pc nevadi.

Kód:
import wave
obj = wave.open('data1.wav','r')
print( "Number of channels",obj.getnchannels())
print ( "Sample width",obj.getsampwidth())
print ( "Frame rate.",obj.getframerate())
print ("Number of frames",obj.getnframes())
print ( "parameters:",obj.getparams())

bytesObj = obj.readframes(676334)
posledni_stav=0
pocitadlo=0

for byte in bytesObj:
    if (posledni_stav == 0):
      if (byte > 128):
        posledni_stav=1
        pocitadlo=0
    if (posledni_stav == 1):
      if (byte <= 128):
        ok=0
        if pocitadlo == 11 :
          ok=1
        if pocitadlo == 12 :
          ok=1
        if pocitadlo == 23 :
          ok=2
        if pocitadlo == 24 :
          ok=2
        if (ok==0):
          print("error")
        if (ok==1):
#         print("short")
          print("0", end='')
        if (ok==2):
#          print("long")
          print("1", end='')
        posledni_stav=0
        pocitadlo=0

    if (posledni_stav == 0):
      if (pocitadlo == 27):
        pocitadlo=3
#        print("short_space")
        print(".", end='')

    pocitadlo=pocitadlo+1

obj.close()



Přílohy:
py2.zip [487 bajtů]
119 krát
data1-1.zip [733 bajtů]
116 krát
Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 03.02.2022, 20:11 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 09.10.2013, 19:04
Příspěvky: 1403
Has thanked: 130 times
Been thanked: 71 times
A čo Roman, podarilo sa s ním skontaktovať?

_________________
Sharp MZ-821
Milsa MZ-841


Nahoru
 Profil  
 
 Předmět příspěvku: Re: TAPka pro Sharp - TMZ
PříspěvekNapsal: 04.02.2022, 14:52 
Offline
Kecálek

Registrován: 04.02.2016, 10:21
Příspěvky: 91
Has thanked: 7 times
Been thanked: 18 times
Milsa píše:
A čo Roman, podarilo sa s ním skontaktovať?
Zatím ne, teď je na lyžích v Rakousku...


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ů: 42 ]  Přejít na stránku Předchozí  1, 2, 3  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 5 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