Vorige Inhoud Volgende
_________________________________________________________________
Interface byte 860409 (c) 1986 by ORD-GROUP 39
Interface byte
Inleiding
Op iedere computer zijn altijd een aantal programma's systeem-
afhankelijk. Bijvoorbeeld het formatteren van diskettes waarvoor
de aansturing van de floppy-controller, die voor iedere computer
weer anders is, bekend moet zijn. Normaal worden al deze
programma's voor ieder systeem apart geschreven. Doordat alle
diskettes uitwisselbaar zijn tussen onze verschillende computers
ontstaat er een wildgroei aan verschillende programma's die
allemaal hetzelfde doen. (EXFORMAT, TVFORMAT, ORFORMAT, TSFORMAT,
enz..)
De interface-byte
De interface-byte is ontworpen om programma's onderscheid te
kunnen laten maken tussen verschillende disk-compatibele syste-
men. Met de interface-byte is het nu mogelijk één programma te
schrijven dat op iedere computer die de interface-byte kent
werkt. Het programma zoekt dan namelijk eerst uit op welke
computer het draait en voert daarna een programmadeel uit dat
specifiek voor die computer is geschreven.
Een programma kan de interface-byte van een systeem opvragen
d.m.v. de FDOS functie 255. Deze functie bestaat niet bij een
'normale' FDOS en daar komt dan ook 0 in register A terug. Wij
hebben echter FDOS gemodificeerd zodat deze bij functie 255 de
interface-byte in A teruggeeft.
Tot nu toe zijn de volgende interface-byte-waarden vastgesteld:
0: Geen interface-byte
1: ORDINATOR single-user CP/M
2: Exidy Sorcerer met een door ons geschreven BIOS
3: ORDINATOR multi-user CP/M (TS)
4: Televerket teletex CP/M systeem
5: Prive systeem van H Boone
6: Kaypro-II met gewijzigde BIOS
7: Diskserver (de harddisk processor)
8-255 Vrij voor toekomstig gebruik
In de praktijk gaat de selectie van een configuratie meestal als
volgt:
LD C,CPGI ;CPGI = 255
CALL CP ;Roep CP/M aan
CP 1 ;Single-user ordinator ?
JP Z,SUORD
CP 2 ;Exidy Sorcerer ?
JP Z,EXIDY
CP 3 ;Time-sharing ?
JP Z,TSORD
JP ERROR ;Onbekend systeem
_________________________________________________________________
Vorige Inhoud Volgende