Article View: de.comp.sys.ibm
Article #508Re: AWARD-BIOS
From: Jens Cassel
Date: Tue, 03 Nov 1992 09:54
Date: Tue, 03 Nov 1992 09:54
92 lines
3083 bytes
3083 bytes
IS> In meinem AWARD-BIOS 2.0 kann ich im Setup fuer HD 1 ff. einstellen:
IS>
IS> 0 not present
IS> 1 - 47 Type or 60 - 83 TYPE
IS> [...]
IS> Leider habe ich keinerlei Informationen ueber die Codes!
IS>
IS> Weiss jemand darueber Bescheid oder wie kommt man sonst an derartige Info's
Die Tabelle liegt ab Adresse F000:E401 im BIOS, jeder Eintrag sieht wie in
unten stehender C Struktur beschrieben aus. Dies gilt zumindest fuer Typ 1-46,
wo 60-83 stehen, weiss ich auch nicht, musst Du leider selber suchen.
Bei den fuer Dich relevanten Sachen habe ich eben noch ein paar deutsche
Kommentare reingehackt.
[typedef.h]
--------8<--------8<--------
typedef unsigned int word;
typedef unsigned char byte;
--------8<--------8<--------
[bioshd.h]
--------8<--------8<--------
#pragma pack(1)
typedef struct {
unsigned int drvopt : 3;
unsigned int more8 : 1;
unsigned int unused : 1;
unsigned int defect : 1;
unsigned int disecc : 1;
unsigned int disacc : 1;
} ctrl;
typedef struct {
word cylinder; /* Anzahl Zylinder */
byte heads; /* Anzahl Koepfe */
word reduced; /* XT only */
word precomp;
byte maxecc; /* XT only */
byte control;
byte timeout; /* XT only */
byte frm_timeout; /* XT only */
byte chk_timeout; /* XT only */
word landing; /* AT only */
byte sectrk; /* Anzahl Sektoren pro Spur */
byte reserved;
} hdentry;
#pragma pack()
--------8<--------8<--------
Kleines Beispielprograemmchen (nicht schoen, aber selten ;-), habe ich eben mal
schnell reingehackt, ob es funzt, kann und will ich nicht beschwoeren....)
[hdentry.c]
--------8<--------8<--------
#include <stdio.h>
#include <dos.h>
#include "typedef.h"
#include "bioshd.h"
/* Wer's nicht hat: */
#define MK_FP(seg,ofs) ((void far *)(((unsigned long)(seg) << 16) | (ofs)))
void main(void);
void main(void)
{
int i;
hdentry far *hp = (hdentry far *)0x0F000E401L;
printf("%d\n",sizeof(hdentry));
for(i=1; i<47; i++,hp++) {
printf("Typ %.2d: %.4d Cyl., %.2d Heads, %.2d Sec/Trk (%ld MB)\n", i,
hp->cylinder, hp->heads, hp->sectrk,
((long)hp->cylinder * (long)hp->heads * (long)hp->sectrk) / 2048L );
}
}
--------8<--------8<--------
Ich hoffe, dass Dir das ein bischen weiterhilft!
Tschoe, wa!
Jens
Technical Details
Message-ID:
<1b3abbcc@p27.f47.n242.z2.fidonet.org>Path:
arc1-ca.pugleaf.net!sparky!uunet!gatech!darwin.sura.net!spool.mu.edu!wupost!zaphod.mps.ohio-state.edu!sdd.hp.com!nntp-server.caltech.edu!ira.uka.de!ira.uka.de!Sirius.dfn.de!Urmel.Informatik.RWTH-Aachen.DE!dfv.rwth-aachen.de!sungate.fido.de!p1.hippo.fido.de!dungeon.fido.de!Jens_CasselReferences:
<77eb1037@fbi-news.Informatik.Uni-Dortmund.DE>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!gatech!darwin.sura.net!spool.mu.edu!wupost!zaphod.mps.ohio-state.edu!sdd.hp.com!nntp-server.caltech.edu!ira.uka.de!ira.uka.de!Sirius.dfn.de!Urmel.Informatik.RWTH-Aachen.DE!dfv.rwth-aachen.de!sungate.fido.de!p1.hippo.fido.de!dungeon.fido.de!Jens_Cassel Date: Tue, 3 Nov 92 10:54:14 +0100 From: Jens_Cassel@dungeon.fido.de (Jens Cassel) Subject: Re: AWARD-BIOS Message-ID: <1b3abbcc@p27.f47.n242.z2.fidonet.org> References: <77eb1037@fbi-news.Informatik.Uni-Dortmund.DE> Newsgroups: de.comp.sys.ibm X-Comment-To: schulz@ls12r.informatik.uni-dortmund.de (Ingo-Volker Schulz) Organization: Point #27 of Dungeon of Despair Lines: 95