RISC OS uitgediept deel 9
zoals alle andere afleveringen door Kees Grinwis

De vorige keer hebben we onder meer een Obey-bestand gemaakt wat het kopiëren (veiligheidskopie) vereenvoudigt, danwel automatiseert. In dit deel gaan we het hebben over het DOSMAP commando, kijken we wat de types onder RISC OS inhouden en kijken we ook naar de opbouw van een MimeMap bestand.

De RISC OS machines zijn vanaf RISC OS 3.1 uitgerust met een mogelijkheid om DOS- (Windows-), Atari- en MSX formaat schijven te lezen, dit wordt mogelijk gemaakt door DOSFS. Op zich is dit al heel mooi, maar nu hebben we echter wel te maken met een verschillende opzet. DOS werkt namelijk met extensies om aan te geven welk soort bestand het is, zo hebben tekstbestanden over het algemeen de extensie '.txt', ik zeg hier bewust over het algemeen want ook andere extensies zijn mogelijk voor tekstbestanden. RISC OS daarentegen werkt met bestands- types, er is een type Text, JPEG, Sprite en er zijn nog vele anderen.

Nu is het heel praktisch dat we vanaf een DOS-disc (dit kan ook een DOS-partitie op de harde schijf zijn), deze instellingen automatisch over zouden kunnen nemen. Gelukkig kan dit ook, hiervoor is het commando 'DOSMAP'. Als we de hulp van dit commando opvragen, dan zullen we zien dat het syntax niet eens zo heel erg moeilijk is. Gewoon de DOS-extensie doorgeven en het corresponderende RISC OS bestandstype.

Nu komt er echter wel een klein probleempje om de hoek kijken, namelijk welk type (onder RISC OS) bij welke DOS-extensie hoort. Hier hoop ik straks op in te gaan, eerst gaan we kijken wat een RISC OS type nu eigenlijk precies inhoudt.

Onder RISC OS heeft vrijwel ieder bestand een eigen type, - er zijn uitzonderingen - de kans dat een normale gebruiker die tegen komt is echter te klein om hier op in te gaan, dit type geeft aan welk bestand het is. Hierbij houdt RISC OS een 12 bit nummer voor bij, deze nummers zijn voor normale gebruikers echter niet erg gemakkelijk te onthouden. Daarom is er een vertaling tussen de interne nummering en een naam die wij mensen gemakkelijk kunnen onthouden.

Hiernaast de uitvoer in een taakvenster van de manier van vertalen, ieder bestandstype wordt intern aangegeven als een 12 bit nummer, dit zijn 3 hexadecimale cijfers (zoals in bovenstaande afbeelding te zien is). Erachter wordt de tekstuele variant weergegeven, het aanmaken van deze variabelen gebeurt met het commando 'Set', dit commando is al behandeld in deel 3. Een voorbeeld van een type-instelling zou echter kunnen zijn 'Set File$Type_1AD AMPEG'.

Op deze pagina een

van een willekeurig (nou ja willekeurig, al de OvationPro bestanden van deze cursus) map van mijn harde schijf.

Zoals u ziet bevat deze map bestanden met verschillende types, het type Text, OvnPro en Archive. Voor al deze types zijn er standaard programma's waarmee deze geopend kunnen worden. Dit is echter niet verplicht, een plaatje van het type Sprite kan geopend worden met Paint, u kunt dit echter wel omzeilen door het bestand direct op een andere applicatie te slepen. Zo kunt u de Sprite op Draw slepen, het gevolg is dat de tekening ge-embed wordt in een Draw bestand, het slepen op ChangeFSI maakt het mogelijk diverse bewerken (lichter maken etc.) door ChangeFSI uit te laten voeren.

De directe link (met dubbelklikken) wordt aangegeven door de systeemvariabele <Alias$@RunType_xxx>, waarbij de xxx het haxadecimale bestandstype is, hiernaast wordt er ook nog met WIMP-messages gewerkt. Dit zal ik hier niet uit gaan leggen omdat dat buiten deze cursus valt.

Als we nog eens gaan kijken naar de schermafbeelding dan zien we in het menu naast het sub-menu Info (Over dit object) ook het item 'Wijzig type'. Hiermee kunt u zelf een type instellen. Dit is zeer nuttig als u wel eens bestanden van het internet haalt. In dat geval is het namelijk mogelijk om bestanden binnen te halen die niet het goede bestands type hebben.

In zo'n geval is het zelfs noodzakelijk om de bestanden van het juiste type te voorzien. Een MP3 bestand krijgt dan het type 'AMPEG' of de hexadecimale waarde '&1AD'. (Voor RISC OS is dit in het geheel hetzelfde.) Als u niet zeker weet welk type het bestand heeft kunt u dit bekijken via het menu 'Info' (Over dit venster) of 'Wijzig type'. Als u nog extra vragen over bestandstypes heeft kunt u die stellen via het e-mail adres dat onderaan deze cursus staat.

Hiernaast wil ik ook nog een korte blik werpen op het MimeMap bestand, DOSFS onder RISC OS 4 kijkt namelijk ook in dit bestand voor de vertalingen van DOS-extensies naar RISC OS bestandstypes, sterker nog het wordt aangeraden om dit bestand te gebruiken in plaatst van het 'vertrouwde' DOSMAP. De reden is dat het veel makkelijker is om de instellingen van de MimeMap module te delen tussen bv. Win95FS, DOSFS en PsiFS.

Het MimeMap bestand is onder RISC OS opgedeeld in 4 delen deze zijn:

  1. MIME type
  2. RISC OS bestands type (naam)
  3. RISC OS bestands type (hex)
  4. Extensies.

Door goed naar het bestand te kijken zult u waarschijnlijk al zien hoe u deze regel moet invullen, om het toch nog ietsje gemakkelijker te maken zal ik hier nog een paar voorbeelden geven. Deze leggen dan tevens een klein beetje uit hoe het bestand in elkaar zit.

Ik ga bij de voorbeelden uit van wat situaties die in de praktijk zouden kunnen voorkomen.

Stel dat we een mapping (vertaling) tussen de extensie van MPEG audio (Layer 3), dus '.MP3', en het RISC OS bestandstype. MP3-bestanden zijn audio, dus voegen we deze toe aan de sectie die de 'audio/*' mappings bevat. De uiteindelijke regel zou kunnen zijn:

audio/x-mp3 AMPEG  1AD  .mp3

Het is echter ook mogelijk dat u een mapping heeft die niet valt onder een van de bestaande groepen, u kunt dan een nieuwe groep maken die uit dan 'x-dosmap' noemt. Een voorbeeld hiervan is de extensie '.SPT' van de DOS-versie van het programma !Split op de Acorn, deze zou gemapt moeten worden naar het RISC OS type Split (&B8C). De uiteindelijke regel zou dan kunnen worden:

x-dosmap/split  Split  B8C  .spt

Er zijn uiteraard nog meer opties, maar met deze 2 voorbeelden moet u echter zelf meer van deze mappings aan kunnen maken.

Mogelijke paden van de MimeMap module zijn:
Zonder de ANT Internet Suite:

Boot:Resources.!Internet.Files.MimeMap
Met de ANT Internet Suite:
Inet:Files.MimeMap.

U kunt uiteraard ook vragen stellen waar ik op in hoop te gaan. Gebruik hiervoor het e-mail adres:
asterisk@dune.demon.nl

Dat was het dan weer voor deze keer, bedankt voor uw aandacht en experimenteer er rustig op los onder het motto:
'Alles kan beter'

Kees Grinwis