Pomozte prosím někdo s dohledáním správných hodnot pro formáty disket zajímá mě 720KB LEC, 1440KB HDS, případně i PCP/M Sharp potřebuju to do tohohle a nejsem s to data z popisu CP/M LEC přepsat tak aby to fungovalo, pro HDS jsem ten formát popsaný projistotu vůbec nenašel. Tipuju to tu už dlouhé hodiny a ikdyž už vidím výpis adresáře, data nejsou v pořádku. Díky Jakub Ladman
Celé vlákno · 13 zpráv
Re: formáty disket
Zdenek Adler SHARP MZ-800
Jakube,
třeba diskové utility v emulátoru které slouží k vytahování souborů z obrazů disket jsem psal pouze z Lamačova popisu CP/M, takže by v něm měly být všechny potřebné informace. HDS formát je s DD totožný, liší se opravdu jen hustotou zápisu, pouze 0 stopa a 1 strana je zapsaná v DD. To činí programu CPDREAD potíž s načtením diskety (PC neví, dle čeho si přepnout hustotu DD/HD) a je třeba disketu 1x načíst se zalepeným okýnkem (vznikne soubor 4608 Bytu) a 1x s odlepeným (1510656 Bytu). Tyhle 2 soubory jemožné spojit utilitkou kterou jsem kdysi za tímto účelem psal (viz příloha). Při spuštění bez parametru vypíše parametry
Usage: hdconv file1.dsk file2.dsk file3.dsk
file1-contains 1 track in double density
file2-contains high density tracks
file3-output file for emulator
file1-contains 1 track in double density
file2-contains high density tracks
file3-output file for emulator
Kdyby jsi měl konkrétní dotaz na formát diskety, zkusím zapátrat - to co jsi napsal je dost obecné.
Zdenek
Zobrazit citovaný text
----- Original Message -----
From: Jakub Ladman (sharpemupandora.cz)
To: Konference "Počítač SHARP MZ-800 a emulátory"
Sent: Friday, October 15, 2010 2:19 AM
Subject: formáty disket
Pomozte prosím někdo s dohledáním správných hodnot pro formáty disket
zajímá mě 720KB LEC, 1440KB HDS, případně i PCP/M Sharp
potřebuju to do tohohle a nejsem s to data z popisu CP/M LEC přepsat tak aby
to fungovalo, pro HDS jsem ten formát popsaný projistotu vůbec nenašel.
Tipuju to tu už dlouhé hodiny a ikdyž už vidím výpis adresáře, data nejsou v
pořádku.
Díky
Jakub Ladman
---
Přílohy
-
HDSCONV.ZIPapplication/zip · 4 kB
Re: formáty disket
Zdenek Adler SHARP MZ-800
Ještě mě napadlo - pracuješ s obrazem diskety (Extended CPC disk image *.dsk) anebo s fyzickou disketou? Jestli s obrazem, bereš na vědomí že obraz diskety není ve formátu RAW a obsahuje navíc data o jejím formátu, chybách apod. ?
Zdenek
Zobrazit citovaný text
----- Original Message -----
From: Jakub Ladman (sharpemupandora.cz)
To: Konference "Počítač SHARP MZ-800 a emulátory"
Sent: Friday, October 15, 2010 2:19 AM
Subject: formáty disket
Pomozte prosím někdo s dohledáním správných hodnot pro formáty disket
zajímá mě 720KB LEC, 1440KB HDS, případně i PCP/M Sharp
potřebuju to do tohohle a nejsem s to data z popisu CP/M LEC přepsat tak aby
to fungovalo, pro HDS jsem ten formát popsaný projistotu vůbec nenašel.
Tipuju to tu už dlouhé hodiny a ikdyž už vidím výpis adresáře, data nejsou v
pořádku.
Díky
Jakub Ladman
---
Re: formáty disket
Jakub Ladman SHARP MZ-800
Dne pátek 15 Říjen 2010 08:28:36 Zdenek Adler (sharpemupandora.cz) napsal(a):
Zobrazit citovaný text (5 řádků)
> Ještě mě napadlo - pracuješ s obrazem diskety (Extended CPC disk image > *.dsk) anebo s fyzickou disketou? Jestli s obrazem, bereš na vědomí že > obraz diskety není ve formátu RAW a obsahuje navíc data o jejím formátu, > chybách apod. ?
pracuju s dsk obrazem a programem dsktrans z balíku libdsk převádím z dsk doraw image a zpět Dne pátek 15 Říjen 2010 08:25:52 Zdenek Adler (sharpemupandora.cz) napsal(a):
Zobrazit citovaný text (6 řádků)
> třeba diskové utility v emulátoru které slouží k vytahování souborů z > obrazů disket jsem psal pouze z Lamačova popisu CP/M, takže by v něm měly > být všechny potřebné informace. HDS formát je s DD totožný, liší se > opravdu jen hustotou zápisu, pouze 0 stopa a 1 strana je zapsaná v DD. To
čím se ta hustota projevuje? pouze počtem sektorů na stopu?
Zobrazit citovaný text (3 řádky)
> činí programu CPDREAD potíž s načtením diskety (PC neví, dle čeho si > přepnout hustotu DD/HD) a je třeba disketu 1x načíst se zalepeným okýnkem
Tohle mi teď nevadí, protože dsktrans parametrem -first 2 že má přeskočitclustery 0 a 1, v tuto chvíli kašlu na boot stopy.
Zobrazit citovaný text (9 řádků)
> (vznikne soubor 4608 Bytu) a 1x s odlepeným (1510656 Bytu). Tyhle 2 > soubory jemožné spojit utilitkou kterou jsem kdysi za tímto účelem psal > (viz příloha). Při spuštění bez parametru vypíše parametry > > Usage: hdconv file1.dsk file2.dsk file3.dsk > file1-contains 1 track in double density > file2-contains high density tracks > file3-output file for emulator >
Mám linux a windows programy se mě netýkají.
potřebuju vědět těchto pár parametrů, které popisují softwarové
parametry
disket:
Sector size in bytes
Number of tracks
Number of sectors
Block size
Number of directory entries
Logical sector skew
Number of reserved system tracks
možná i typ os (vzhledem k html souboru v priloze puvodni zpravy), jestli
třeba lamač nenarouboval do formátu rozšíření cp/m 3.0, třeba label
disku se
na cp/m lec vyskytuje a cp/m 2.2 jej nepodporuje
Zobrazit citovaný text (3 řádky)
> Kdyby jsi měl konkrétní dotaz na formát diskety, zkusím zapátrat - to co > jsi napsal je dost obecné.
s následujícími parametry disketu přečtu (jde o r/w operace jednotlivýchsouborů pod linuxem, nikoliv práci s obrazem v celku), jsou tam na pohled vsechny soubory akorát mi zmizí info o číslu uživatele ačkoliv by mělo být zachováno, v textových souborech jsou smysluplná data (nekontroloval jsem slovo od slova a zatím ani správnost velikosti souboru) # CP/M on 1.44MB floppies diskdef mzHD seclen 512 tracks 160 sectrk 18 blocksize 4096 maxdir 128 skew 1 boottrk 4 os 2.2 end # CP/M on 720KB floppies diskdef mzDD seclen 512 tracks 160 sectrk 9 blocksize 2048 maxdir 128 skew 1 boottrk 4 os 2.2 end Pokud ale s těmito parametry vytvořím programem mkfs.cpm novou image a nakopíruju do ní pomocí cpmcp soubory, potom programem dsktrans převedu naedsk image, nahraju na sd kartu a připojím jako disketu v unikartě, sharp mi na disketě napíše abort/retry/fail ... Nemůžu se dohledat toho co mám špatně Jakub
Re: formáty disket
Michal Hučík SHARP MZ-800
Dne 15.10.2010 8:25, Zdenek Adler (sharpemupandora.cz) napsal(a): 0 stopa a 1 strana je zapsaná v DD. To činí programu CPDREAD potíž s načtením diskety (PC neví, dle čeho si přepnout hustotu DD/HD) a je třeba disketu 1x načíst se zalepeným okýnkem (vznikne soubor 4608 Bytu) a 1x s odlepeným (1510656 Bytu). Tyhle 2 soubory jemožné spojit utilitkou kterou jsem kdysi za tímto účelem psal (viz příloha). Při spuštění bez parametru vypíše parametry
Aha, tak tim se zrejme vysvetluje a zaroven odpovida na muj dotaz cca pred rokem, proc maji HSD diskove image ze scav uploadu uvedeny na 1 stope spatny pocet sektoru ;) Jelikoz zadne jine, nez takto "vadne" HD DSK jsem k dispozici nemel, tak jsem to povazoval za standard a udelal jsem tam pri vypoctu offsetu bugfix, ze pokud nam DSK na 1 stope hlasi pocet sektoru 0x25, tak mu neverime a pouzijeme to co povazujeme za spravne, tedy 0x11 ...
Michal
Aha, tak tim se zrejme vysvetluje a zaroven odpovida na muj dotaz cca pred rokem, proc maji HSD diskove image ze scav uploadu uvedeny na 1 stope spatny pocet sektoru ;) Jelikoz zadne jine, nez takto "vadne" HD DSK jsem k dispozici nemel, tak jsem to povazoval za standard a udelal jsem tam pri vypoctu offsetu bugfix, ze pokud nam DSK na 1 stope hlasi pocet sektoru 0x25, tak mu neverime a pouzijeme to co povazujeme za spravne, tedy 0x11 ...
Michal
Re: Re: formáty disket
melsoft SHARP MZ-800
Proboha, to zní jako dost slušná "ochrana proti kopírování". To je relikt daný tím, že si systém načetl první stopu a podle informací z ní se nakonfiguroval na HDD nebo to je něčí "dobrý" nápad?
Re: Re: formáty disket
Zdenek Adler SHARP MZ-800
Nechápu zcela dotaz... Nicméně na Sharpovi (pokud vím) se nijak nezpracovával signál z disketového políčka signalizujícího HD/DD disketu a hustota se přepínala softwarově (zdvojnásobil se kmitočet oscilátoru a tuším že každý přijatý byte vyvolal přerušení). HD diskety pro Sharpa musely proto, aby z nich bylo možné zavést systém mít první stopu standartně formátovanou v dvojité hustotě a až zbytek ve vysoké. S tímto bohužel nepočítal žádný program na PC které mi prošly rukou, nicméně na Sharpovi nebyl problém diskety naprosto běžnými nástroji kopírovat. Zdenek
Zobrazit citovaný text (14 řádků)
----- Original Message ----- From: "melsoft (sharpemupandora.cz)" <melsoft[doména skryta]> To: "Konference "Počítač SHARP MZ-800 a emulátory"" <sharpemupandora.cz> Sent: Friday, October 15, 2010 11:45 AM Subject: Re: Re: formáty disket > > Proboha, to zní jako dost slušná "ochrana proti kopírování". To je relikt > daný tím, že si systém načetl první stopu a podle informací z ní se > nakonfiguroval na HDD nebo to je něčí "dobrý" nápad? > ---
Re: formáty disket
Zdenek Adler SHARP MZ-800
Zobrazit citovaný text (12 řádků)
> potřebuju vědět těchto pár parametrů, které popisují softwarové parametry > disket: > > Sector size in bytes - 512 > Number of tracks - 80 (40, dle diskety a krokovani mechaniky) > Number of sectors - 18 v HD, 9 v DD > Block size - 4 sektory (2048B) > Number of directory entries - 8 sektoru (u PCPM 3 sektory) > Logical sector skew ??? > Number of reserved system tracks - adresar by mel zacinat na > 2 stope 0 strane (u PCPM na 1 stope a 0 strane)
Staci tak? Narychlo jsem to tahal z emulatoru, tak se omlouvam za pripadnou dezinformaci Zdenek
Re: formáty disket
Jakub Ladman SHARP MZ-800
Dne pátek 15 Říjen 2010 12:14:33 Zdenek Adler (sharpemupandora.cz) napsal(a):
Zobrazit citovaný text (9 řádků)
> > potřebuju vědět těchto pár parametrů, které popisují softwarové parametry > > > > disket: > > Sector size in bytes - 512 > > Number of tracks - 80 (40, dle diskety a krokovani > > mechaniky) Number of sectors - 18 v HD, 9 v DD > > Block size - 4 sektory (2048B) > > Number of directory entries - 8 sektoru (u PCPM 3 sektory)
tady se u predvolenych formatu objevuje maximalni velikost adresare, tj kolik souboru muze byt na diskete, podle lamace 128
Zobrazit citovaný text (1 řádek)
> > Logical sector skew ???
tohle je zpusob prolozeni sektoru, kvuli aby logicky (softwarove) po sobe jdouci diskety nelezely fyzicky hned za sebou, aby se radic stacil vzpamatovata nebylo nutno cekat na na dalsi obeh diskety. lamac pravi ze faktor 2, tzn v pripade 9 sec/trk stopy 0,5,1,6,2,7,3,8,4 tj. pokud chci cist sektory 0,1,2.. tak ma radic a sw mezi jednotlivymi sektory cas 1/9 obehu diskety aby si vymenil data s CPU a mohl rovnou nacitat dalsi sektor. Otazka je 1) jak je to u HD disket? 0,9,1,10,2,11,3,12,4,13,5,14,6,15,7,16,8,17 ? nebo jinak? a pak, a s tim mi asi nepomuzete - zda ten cptools tu skew bere od nuly, nebo od jednicky
Zobrazit citovaný text (3 řádky)
> > Number of reserved system tracks - adresar by mel zacinat na > > > > 2 stope 0 strane (u PCPM na 1 stope a 0 strane)
Zase klasicke nedorozumeni, pro nekoho je prvni stopa 1 a pro nekoho 0 Diky Jakub
Re: formáty disket
Michal Hučík SHARP MZ-800
Jakube, pres icq jsem ti poslal odkaz na kod, kterym si analyzuju DSK
soubory. Takhle vypadaji prvni 4 stopy cp/m v HD DSK:
Track: 00, side: 0, sec_size: 512, sectors: 18, GAP#3: 78, filler:
229,T-offset: 100
s_track: 0, s_side: 0, s_sector: 1, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 200
s_track: 0, s_side: 0, s_sector: 7, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 400
s_track: 0, s_side: 0, s_sector: d, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 600
s_track: 0, s_side: 0, s_sector: 2, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 800
s_track: 0, s_side: 0, s_sector: 8, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: A00
s_track: 0, s_side: 0, s_sector: e, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: C00
s_track: 0, s_side: 0, s_sector: 3, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: E00
s_track: 0, s_side: 0, s_sector: 9, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 1000
s_track: 0, s_side: 0, s_sector: f, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 1200
s_track: 0, s_side: 0, s_sector: 4, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 1400
s_track: 0, s_side: 0, s_sector: a, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 1600
s_track: 0, s_side: 0, s_sector: 10, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 1800
s_track: 0, s_side: 0, s_sector: 5, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 1A00
s_track: 0, s_side: 0, s_sector: b, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 1C00
s_track: 0, s_side: 0, s_sector: 11, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 1E00
s_track: 0, s_side: 0, s_sector: 6, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 2000
s_track: 0, s_side: 0, s_sector: c, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 2200
s_track: 0, s_side: 0, s_sector: 12, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 2400
Track: 00, side: 1, sec_size: 256, sectors: 16, GAP#3: 78, filler:
229,T-offset: 2600
s_track: 0, s_side: 1, s_sector: 1, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 2700
s_track: 0, s_side: 1, s_sector: 2, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 2800
s_track: 0, s_side: 1, s_sector: 3, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 2900
s_track: 0, s_side: 1, s_sector: 4, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 2A00
s_track: 0, s_side: 1, s_sector: 5, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 2B00
s_track: 0, s_side: 1, s_sector: 6, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 2C00
s_track: 0, s_side: 1, s_sector: 7, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 2D00
s_track: 0, s_side: 1, s_sector: 8, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 2E00
s_track: 0, s_side: 1, s_sector: 9, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 2F00
s_track: 0, s_side: 1, s_sector: a, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 3000
s_track: 0, s_side: 1, s_sector: b, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 3100
s_track: 0, s_side: 1, s_sector: c, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 3200
s_track: 0, s_side: 1, s_sector: d, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 3300
s_track: 0, s_side: 1, s_sector: e, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 3400
s_track: 0, s_side: 1, s_sector: f, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 3500
s_track: 0, s_side: 1, s_sector: 10, s_size: 256, FDCreg1: 0,
FDCreg2: 0, size: 256, offset: 3600
Track: 01, side: 0, sec_size: 512, sectors: 18, GAP#3: 78, filler:
229,T-offset: 3700
s_track: 1, s_side: 0, s_sector: 1, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 3800
s_track: 1, s_side: 0, s_sector: 7, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 3A00
s_track: 1, s_side: 0, s_sector: d, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 3C00
s_track: 1, s_side: 0, s_sector: 2, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 3E00
s_track: 1, s_side: 0, s_sector: 8, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 4000
s_track: 1, s_side: 0, s_sector: e, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 4200
s_track: 1, s_side: 0, s_sector: 3, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 4400
s_track: 1, s_side: 0, s_sector: 9, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 4600
s_track: 1, s_side: 0, s_sector: f, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 4800
s_track: 1, s_side: 0, s_sector: 4, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 4A00
s_track: 1, s_side: 0, s_sector: a, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 4C00
s_track: 1, s_side: 0, s_sector: 10, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 4E00
s_track: 1, s_side: 0, s_sector: 5, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 5000
s_track: 1, s_side: 0, s_sector: b, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 5200
s_track: 1, s_side: 0, s_sector: 11, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 5400
s_track: 1, s_side: 0, s_sector: 6, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 5600
s_track: 1, s_side: 0, s_sector: c, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 5800
s_track: 1, s_side: 0, s_sector: 12, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 5A00
Track: 01, side: 1, sec_size: 512, sectors: 18, GAP#3: 78, filler:
229,T-offset: 5C00
s_track: 1, s_side: 1, s_sector: 1, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 5D00
s_track: 1, s_side: 1, s_sector: 7, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 5F00
s_track: 1, s_side: 1, s_sector: d, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 6100
s_track: 1, s_side: 1, s_sector: 2, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 6300
s_track: 1, s_side: 1, s_sector: 8, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 6500
s_track: 1, s_side: 1, s_sector: e, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 6700
s_track: 1, s_side: 1, s_sector: 3, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 6900
s_track: 1, s_side: 1, s_sector: 9, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 6B00
s_track: 1, s_side: 1, s_sector: f, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 6D00
s_track: 1, s_side: 1, s_sector: 4, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 6F00
s_track: 1, s_side: 1, s_sector: a, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 7100
s_track: 1, s_side: 1, s_sector: 10, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 7300
s_track: 1, s_side: 1, s_sector: 5, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 7500
s_track: 1, s_side: 1, s_sector: b, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 7700
s_track: 1, s_side: 1, s_sector: 11, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 7900
s_track: 1, s_side: 1, s_sector: 6, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 7B00
s_track: 1, s_side: 1, s_sector: c, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 7D00
s_track: 1, s_side: 1, s_sector: 12, s_size: 512, FDCreg1: 0,
FDCreg2: 0, size: 512, offset: 7F00
Re: formáty disket
Michal Hučík SHARP MZ-800
Ty informace z DSK jsem si vycetl takhle ... Je to zruba podobny kod, taky pouzivam i v emu_FDC na unikarte.
Přílohy
-
dsk.ctext/x-c · 4 kB
Re: formáty disket
Jakub Ladman SHARP MZ-800
Ha, tohle vypadá na sector skew faktor 3 Ten jsem asi nezkoušel Jakub Dne pátek 15 Říjen 2010 13:07:08 Michal Hučík (sharpemupandora.cz) napsal(a):
Zobrazit citovaný text (155 řádků)
> Jakube, pres icq jsem ti poslal odkaz na kod, kterym si analyzuju DSK > soubory. Takhle vypadaji prvni 4 stopy cp/m v HD DSK: > > Track: 00, side: 0, sec_size: 512, sectors: 18, GAP#3: 78, filler: > 229,T-offset: 100 > s_track: 0, s_side: 0, s_sector: 1, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 200 > s_track: 0, s_side: 0, s_sector: 7, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 400 > s_track: 0, s_side: 0, s_sector: d, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 600 > s_track: 0, s_side: 0, s_sector: 2, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 800 > s_track: 0, s_side: 0, s_sector: 8, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: A00 > s_track: 0, s_side: 0, s_sector: e, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: C00 > s_track: 0, s_side: 0, s_sector: 3, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: E00 > s_track: 0, s_side: 0, s_sector: 9, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 1000 > s_track: 0, s_side: 0, s_sector: f, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 1200 > s_track: 0, s_side: 0, s_sector: 4, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 1400 > s_track: 0, s_side: 0, s_sector: a, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 1600 > s_track: 0, s_side: 0, s_sector: 10, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 1800 > s_track: 0, s_side: 0, s_sector: 5, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 1A00 > s_track: 0, s_side: 0, s_sector: b, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 1C00 > s_track: 0, s_side: 0, s_sector: 11, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 1E00 > s_track: 0, s_side: 0, s_sector: 6, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 2000 > s_track: 0, s_side: 0, s_sector: c, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 2200 > s_track: 0, s_side: 0, s_sector: 12, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 2400 > Track: 00, side: 1, sec_size: 256, sectors: 16, GAP#3: 78, filler: > 229,T-offset: 2600 > s_track: 0, s_side: 1, s_sector: 1, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 2700 > s_track: 0, s_side: 1, s_sector: 2, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 2800 > s_track: 0, s_side: 1, s_sector: 3, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 2900 > s_track: 0, s_side: 1, s_sector: 4, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 2A00 > s_track: 0, s_side: 1, s_sector: 5, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 2B00 > s_track: 0, s_side: 1, s_sector: 6, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 2C00 > s_track: 0, s_side: 1, s_sector: 7, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 2D00 > s_track: 0, s_side: 1, s_sector: 8, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 2E00 > s_track: 0, s_side: 1, s_sector: 9, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 2F00 > s_track: 0, s_side: 1, s_sector: a, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 3000 > s_track: 0, s_side: 1, s_sector: b, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 3100 > s_track: 0, s_side: 1, s_sector: c, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 3200 > s_track: 0, s_side: 1, s_sector: d, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 3300 > s_track: 0, s_side: 1, s_sector: e, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 3400 > s_track: 0, s_side: 1, s_sector: f, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 3500 > s_track: 0, s_side: 1, s_sector: 10, s_size: 256, FDCreg1: 0, > FDCreg2: 0, size: 256, offset: 3600 > Track: 01, side: 0, sec_size: 512, sectors: 18, GAP#3: 78, filler: > 229,T-offset: 3700 > s_track: 1, s_side: 0, s_sector: 1, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 3800 > s_track: 1, s_side: 0, s_sector: 7, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 3A00 > s_track: 1, s_side: 0, s_sector: d, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 3C00 > s_track: 1, s_side: 0, s_sector: 2, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 3E00 > s_track: 1, s_side: 0, s_sector: 8, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 4000 > s_track: 1, s_side: 0, s_sector: e, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 4200 > s_track: 1, s_side: 0, s_sector: 3, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 4400 > s_track: 1, s_side: 0, s_sector: 9, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 4600 > s_track: 1, s_side: 0, s_sector: f, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 4800 > s_track: 1, s_side: 0, s_sector: 4, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 4A00 > s_track: 1, s_side: 0, s_sector: a, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 4C00 > s_track: 1, s_side: 0, s_sector: 10, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 4E00 > s_track: 1, s_side: 0, s_sector: 5, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 5000 > s_track: 1, s_side: 0, s_sector: b, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 5200 > s_track: 1, s_side: 0, s_sector: 11, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 5400 > s_track: 1, s_side: 0, s_sector: 6, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 5600 > s_track: 1, s_side: 0, s_sector: c, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 5800 > s_track: 1, s_side: 0, s_sector: 12, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 5A00 > Track: 01, side: 1, sec_size: 512, sectors: 18, GAP#3: 78, filler: > 229,T-offset: 5C00 > s_track: 1, s_side: 1, s_sector: 1, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 5D00 > s_track: 1, s_side: 1, s_sector: 7, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 5F00 > s_track: 1, s_side: 1, s_sector: d, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 6100 > s_track: 1, s_side: 1, s_sector: 2, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 6300 > s_track: 1, s_side: 1, s_sector: 8, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 6500 > s_track: 1, s_side: 1, s_sector: e, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 6700 > s_track: 1, s_side: 1, s_sector: 3, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 6900 > s_track: 1, s_side: 1, s_sector: 9, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 6B00 > s_track: 1, s_side: 1, s_sector: f, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 6D00 > s_track: 1, s_side: 1, s_sector: 4, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 6F00 > s_track: 1, s_side: 1, s_sector: a, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 7100 > s_track: 1, s_side: 1, s_sector: 10, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 7300 > s_track: 1, s_side: 1, s_sector: 5, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 7500 > s_track: 1, s_side: 1, s_sector: b, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 7700 > s_track: 1, s_side: 1, s_sector: 11, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 7900 > s_track: 1, s_side: 1, s_sector: 6, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 7B00 > s_track: 1, s_side: 1, s_sector: c, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 7D00 > s_track: 1, s_side: 1, s_sector: 12, s_size: 512, FDCreg1: 0, > FDCreg2: 0, size: 512, offset: 7F00 > > > > ---
Re: formáty disket
Vaclav Peroutka SHARP MZ-800
Mozna se daji nejake pomucky najit i tady: http://code.google.com/p/cpcsdk/