OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů
Právě je 05.10.2024, 10:49

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




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

Registrován: 14.05.2013, 19:10
Příspěvky: 1539
Bydliště: Kurim
Has thanked: 862 times
Been thanked: 610 times
Kdyby někdo potřeboval, tak jsem dal dohromady jednoduchý nástroj pro vzájmenou konverzi formátů QDF, MZQ, MZF a MZT. Kromě konverze se dají soubory i editovat, tj. mazat, přidávat, měnit pořadí souboru, což se může hodit třeba pro tvorbu vícesouborových MZT tape souborů pro UniCMT. Přes Drag&Drop hodíte MZF soubory do seznamu, změníte pořadí dle potřeby a uložíte jako MZT.

https://github.com/mlukasek/QDTool

Je to napsané jako WPF aplikace, takže to potřebuje .NET Framework 6.0, který si to umí stáhnout samo.

Časem plánuju rozšíření o další formáty, nejprve přidám RAW a MFM, co umí dělat QDC, to už mám v podstatě ozkoušené a v plánu jsou i QD soubory pro FlashFloppy / HxC emulátor QuickDisku.

Pokud narazíte na nějaký bug nebo máte nějaké nápady na vylepšení, sem s nimi, ale pamatujte, že nejsou lidi :-) takže nejlepší je napsat to sám a udělat pull request ;-)

_________________
http://www.8bity.cz


Nahoru
 Profil  
 
PříspěvekNapsal: 27.02.2024, 09:42 
Offline
Pan Štábní

Registrován: 11.11.2013, 10:29
Příspěvky: 1222
Has thanked: 382 times
Been thanked: 309 times
Uz tady na to koukam, tedy a docela dobry. Casem by se klidne mohlo zrusit to slovo 'Simple' ;-)

Prikladam dva image, ktere jsem nasel. Zdanlive je tam hlavicka (7 bytu) stejna, ale jeden to nechce nacist. Nevim, zkusim se podivat do src, co tam vadi. Myslim, ze je tam ulozeny pocet zaznamu(souboru), ale nejsem si jisty, jestli je to smerodatne pri nacitani.
Myslim, ze hlavicka jako takova je u MZQ v podstate 15 bytu. Tedy kdyz vynecham/ignoruji prave ten pocet souboru, ktery se muze menit.

Ale super, jen tak dal. Dobry 'Startup'. Az budou lidi, to se to to bude rozrustat :-D


Přílohy:
Mikes_pokusy.zip [36.17 KiB]
159 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říspěvekNapsal: 27.02.2024, 10:40 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 14.05.2013, 19:10
Příspěvky: 1539
Bydliště: Kurim
Has thanked: 862 times
Been thanked: 610 times
Díky. Upravím ty chybové hlášky, aby byly jasnější a přidám tam asi i pozici, kde to kouslo.

Chyba v tom mzfloader.mzq souboru je v délce dat u druhého vnitřního souboru "OPENING 800". Podle MZF hlavičky mají data délku 0x43E1, stejná velikost je i správně i v "QuickDisk" hlavičce datového bloku. Vlastní souborová data začínají na adrese 0x13B7, tj. jejich konec by měl být na 0x5798 a i to tak vypadá, podle 00 00 00, čímž obvykle BASIC program končí. Nicméně je tam ale ještě 31 bytů nějakých dat než následuje CRC. Osobně to tipuju na to, že to někdo sestavoval ručně, a že ty data jsou tam natvrdo nakopírovaná z MZF souboru, který měl fyzicky špatnou délku. Toto je u většiny souborů na SCAV, protože jsou kopírované přes CP/M. Data mají velikost 0x43E1, ale v souboru je fyzicky o 31 bytů víc, tj. 0x4400, protože CP/M má velikost souboru zaokrouhlenou vždy po 128 bytech. V MZQ souboru skáču natvrdo podle délky, nejsou tam byty navíc a jak nenajdu CRC, tak hodím chybu. Kdybych vyhledával tu startovací sekvenci 00 16 16 A5, tak bych to mohl obejít, abych takový soubor načetl správně, ale CRC je prostě každopádně na špatném místě a je otázka, jak se k tomu stavět. U QDF souborů ten CRC skutečně počítám, ale tady jen ověřuju, jestli je tam, kde má být.

Na ty blbé délky MZF souborů mám další tool, který taky hodím na GitHub, umí projet adresářovou strukturu a soubory MZF se špatnou délkou opravit. Normálně to ničemu moc nevadí, ale jak se to skládá za sebe nějakou concatenací, tak je problém.

_________________
http://www.8bity.cz


Nahoru
 Profil  
 
PříspěvekNapsal: 27.02.2024, 10:53 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 08.07.2013, 00:28
Příspěvky: 1580
Has thanked: 497 times
Been thanked: 662 times
Cením odvahy použít WPF :-)
Cením komentářů v kódu :like: :)

Jen se mi to nepodařilo spustit bez doinstalování .NOT 6 - a protože jsem mizerný C# programátor, nepodařilo se mi to ve VS2017 ani zkonvertovat do předchozí verze runtimu :-(


Mám jenom kosmetickou - používám zoom obrazovky 125%, jestli to s tím třeba nesouvisí?
I když je to needitovatelný, tak ten hexa-browser vypadá moc hezky :like:

Obrázek

_________________
より良い競争相手からソフトウェアを購入する (。◕‿‿◕。)
Ďábel se skrývá v detailu (staré technické rčení)


Nahoru
 Profil  
 
PříspěvekNapsal: 27.02.2024, 15:52 
Offline
Pan Štábní
Uživatelský avatar

Registrován: 14.05.2013, 19:10
Příspěvky: 1539
Bydliště: Kurim
Has thanked: 862 times
Been thanked: 610 times
;-) WPF proto, že jsem si ho chtěl osahat, ale vůbec v něm neumím a C# proto, že je to jednodušší než v C++ ;-)

Důsledkem jsou právě třeba ty posununté obdélníky co měly označovat hlavičku QuickDisk bloku a CRC. Vím o nich, lyže sejmout ;-) Dokonce se i počítají a posouvají dynamicky podle rozlišení, až se to vyrenderuje. Akorát mi to nějak nefunguje ;-))) Plán je, že je prozatím asi vypnu úplně a časem asi ten viewer předělám na nějaký sofistikovanější ty ovládacího prvku. Chtěl bych různé části odlišit třeba nějakým lehkým podbarevním, aby se v tom dobře orientovalo.

_________________
http://www.8bity.cz


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ů: 5 ] 

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 1 návštěvní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