Alien 860409 (c) 1986 by ORD-GROUP 27 Alien Inleiding Hoewel CP/M een standaard pakket is, moet het voor een specifieke machine worden aangepast. Hierbij moeten o.a. diskroutines worden geschreven om CP/M te laten communiceren met de drives. De exacte manier waarop informatie op een disk wordt geschreven is niet gestandaardiseerd. Dit biedt hardware fabrikanten de mogelijkheid steeds een ander diskformat te kiezen. Hierdoor is het meestal niet mogelijk om op een machine de diskettes van een andere machine te lezen. Ook het door ons gebruikte diskformat is, voor zover wij weten, uniek, hoewel het de (volgens ons) optimale benutting van de disk is. Omdat het hier beschreven systeem het mogelijk maakt 'vreemde' schijven te gebruiken, hebben we het ALIEN (vreemdeling) genoemd. ALIEN ALIEN stelt ons in staat om vreemde diskformats te lezen en te schrijven. ALIEN vertelt de BIOS welke format hij moet gebruiken op de C: disk. (Zie ook Single user documentatie.) In principe kunnen we op deze manier elk diskformaat gebruiken dat de hardware toelaat. Wanneer we de preciese specifikaties van een diskformat kennen is het weinig werk om deze format aan ons repertoire toe te voegen. In de meeste gevallen is een diskformat slechts bekend in fysieke termen (bijvoorbeeld SS, DD, 40 tracks, 26 sect/track, 128 bytes/sector), en is er nauwelijks iets bekend over het Disk Parameter Block voor CP/M en verdere software eigenschappen. Het uitzoeken daarvan kost ons ongeveer twee uur. Randvoorwaarden ALIEN werkt alleen onder onze single user CP/M en vereist super user status voor het veranderen van het diskformat. Dit omdat het gebruik van ALIEN potentieel gevaarlijk is. Met het verkeerde diskformat schrijven op een disk vernielt nagenoeg zeker data. Met ALIEN kunnen we alle diskformats gebruiken die aan de volgende specificaties voldoen: - 5 1/4 inch floppy disk - 48 tpi (tracks per inch) - sectors leesbaar met een 1791 diskcontroller. Wil de disk bruikbaar zijn onder CP/M, dan moet er natuurlijk wel een CP/M filesysteem op staan. Op het moment kent ALIEN de volgende diskformats: Amstrad, Bondwell, Kaypro-II, Kontiki, Osborne, Turbo-Bondwell en ons eigen format: Standard. ALIEN kent nog de diskformats van een aantal zelfbouw computers, waaronder twee niet-CP/M systemen. Werking ALIEN werkt door, via daarvoor aangebrachte "hook-up points", het CP/M Disk Parameter Block aan te passen, alsmede het door de Alien 860409 (c) 1986 by ORD-GROUP 28 BIOS gebruikte diskformat. Dit laatste gebeurt door een sub- routine in te voegen die de BIOS vertelt waar een bepaalde sector staat, hoe lang hij is, en welk deel ervan je moet hebben. Dit is zo flexibel dat een gemengd Single/Double density diskformat met gehashte sector nummers geen enkel probleem zou zijn. Een eerdere versie gebruikte een conversie tabel. Het bleek echter dat er commerciele diskformats bestonden, die met deze methode niet te gebruiken waren. Daarom gebruiken we nu een subroutine: software is voldoende flexibel om alle mogelijkheden op te kunnen vangen. In de meeste gevallen bestaat het klaar maken van de routine toch uit het veranderen van constanten voor een standaardroutine.