Tak jsem udělal pár pokusů a zanalyzoval WAVy a formát BSD rozlousknut. Dále uvádím popis, kdyby to někdy někoho zajímalo.
Kazetový formát BSD lze využít z BASICu. Buď do něj může na pásku ukádat data programátor pro pozdější čtení (příkazy WOPEN# ROPEN# PRINT# INPUT# CLOSE# atd.), nebo do něj lze uložit i samotný zdrojový kód programu v BASICu (SAVE "filename",A LOAD["filename"],A RUN"filename",A). Data i zdrojový kód jsou uloženy v ASCII.
BSD se skládá z normální hlavičky a jednoho nebo více normálních datových bloků se vším všudy, tedy se zaváděcími tóny, tape marky, kontrolními součty atd.
Rozdíl mezi "normálním" formátem (tak jak je uložen v MZF) a formátem BSD:
1. Typ souboru je 0x04 (BSD) 2. Load addr, Exec. addr. i Size v hlavičce je vždy 0 3. Datové bloky mají pevnou velikost 258 bytů (nepočítám samozřejmě kontrolní součet na konci) 4. První 2 byty je 16-bitová hodnota - pořadové číslo bloku číslováno od 0 5. Následujících 256 bytů jsou samotná data 6. Poslední blok má pořadové číslo 0xFFFF (podle toho se pozná konec) 7. Data jsou vždy v ASCII, jednotlivé položky (nebo řádky, pokud jde o zdroják BASICu) jsou odděleny znakem 0x0D 8. Pokud data v posledním bloku nezaplní celých 256 bytů, jsou zakončena znakem 0x1A a zbytek bloku je vyplněn znakem 0x00
|