mirror of https://github.com/wwarthen/RomWBW.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
1.3 KiB
74 lines
1.3 KiB
/*************************************************************/
|
|
/* track.c 6/6/2012 dwg - read and write physical sectors */
|
|
/*************************************************************/
|
|
|
|
#include "cpmbios.h"
|
|
#include "bioscall.h"
|
|
|
|
int rdtrack(drive,track,sector,buffer,mcnt)
|
|
int drive;
|
|
int track;
|
|
int sector;
|
|
unsigned int buffer;
|
|
int mcnt;
|
|
{
|
|
|
|
/* ireghl = pSELDSK;
|
|
iregbc = drive;
|
|
iregde = 0;
|
|
bioscall(); */
|
|
|
|
/* ireghl = pSETTRK;
|
|
iregbc = track;
|
|
bioscall(); */
|
|
|
|
|
|
ireghl = pSETSEC;
|
|
iregbc = sector;
|
|
bioscall();
|
|
|
|
ireghl = pSETDMA;
|
|
iregbc = buffer;
|
|
bioscall();
|
|
|
|
ireghl = pREAD;
|
|
bioscall();
|
|
return irega;
|
|
|
|
}
|
|
|
|
|
|
int wrtrack(drive,track,sector,buffer,mcnt)
|
|
int drive;
|
|
int track;
|
|
int sector;
|
|
unsigned int buffer;
|
|
int mcnt;
|
|
{
|
|
ireghl = pSELDSK;
|
|
iregbc = drive;
|
|
iregde = 0;
|
|
bioscall();
|
|
|
|
ireghl = pSETTRK;
|
|
iregbc = track;
|
|
bioscall();
|
|
|
|
ireghl = pSETSEC;
|
|
iregbc = sector;
|
|
bioscall();
|
|
|
|
ireghl = pSETDMA;
|
|
iregbc = buffer;
|
|
bioscall();
|
|
|
|
ireghl = pWRITE;
|
|
bioscall();
|
|
return irega;
|
|
}
|
|
|
|
|
|
/********************/
|
|
/* eof - sectorio.c */
|
|
/********************/
|
|
|