summaryrefslogtreecommitdiff
path: root/sysspec.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysspec.c')
-rw-r--r--sysspec.c254
1 files changed, 0 insertions, 254 deletions
diff --git a/sysspec.c b/sysspec.c
deleted file mode 100644
index 9449ad5..0000000
--- a/sysspec.c
+++ /dev/null
@@ -1,254 +0,0 @@
-
-/*
-** sysspec.c
-** System-specific routines.
-**
-** BYTEmark (tm)
-** BYTE's Native Mode Benchmarks
-** Rick Grehan, BYTE Magazine
-**
-** Creation:
-** Revision: 3/95;10/95
-**
-** DISCLAIMER
-** The source, executable, and documentation files that comprise
-** the BYTEmark benchmarks are made available on an "as is" basis.
-** This means that we at BYTE Magazine have made every reasonable
-** effort to verify that the there are no errors in the source and
-** executable code. We cannot, however, guarantee that the programs
-** are error-free. Consequently, McGraw-HIll and BYTE Magazine make
-** no claims in regard to the fitness of the source code, executable
-** code, and documentation of the BYTEmark.
-** Furthermore, BYTE Magazine, McGraw-Hill, and all employees
-** of McGraw-Hill cannot be held responsible for any damages resulting
-** from the use of this code or the results obtained from using
-** this code.
-*/
-
-/***********************************
-** SYSTEM-SPECIFIC ROUTINES **
-************************************
-**
-** These are the routines that provide functions that are
-** system-specific. If the benchmarks are to be ported
-** to new hardware/new O.S., this is the first place to
-** start.
-*/
-#include "sysspec.h"
-
-/***********************************
-** MEMORY ARRAY HANDLING ROUTINES **
-***********************************/
-/****************************
-** InitMemArray
-** Initialize the memory array. This simply amounts to
-** setting mem_array_ents to zero, indicating that there
-** isn't anything in the memory array.
-*/
-void InitMemArray(void)
-{
-mem_array_ents=0;
-return;
-}
-
-/***************************
-** AddMemArray
-** Add a pair of items to the memory array.
-** true_addr is the true address (mem_array[0][n])
-** adj_addr is the adjusted address (mem_array[0][n])
-** Returns 0 if ok
-** -1 if not enough room
-*/
-int AddMemArray(ulong true_addr,
- ulong adj_addr)
-{
-if(mem_array_ents>=MEM_ARRAY_SIZE)
- return(-1);
-
-mem_array[0][mem_array_ents]=true_addr;
-mem_array[1][mem_array_ents]=adj_addr;
-mem_array_ents++;
-return(0);
-}
-
-/*************************
-** RemoveMemArray
-** Given an adjusted address value (mem_array[1][n]), locate
-** the entry and remove it from the mem_array.
-** Also returns the associated true address.
-** Returns 0 if ok
-** -1 if not found.
-*/
-int RemoveMemArray(ulong adj_addr,ulong *true_addr)
-{
-int i,j;
-
-/* Locate the item in the array. */
-for(i=0;i<mem_array_ents;i++)
- if(mem_array[1][i]==adj_addr)
- { /* Found it..bubble stuff down */
- *true_addr=mem_array[0][i];
- j=i;
- while(j+1<mem_array_ents)
- { mem_array[0][j]=mem_array[0][j+1];
- mem_array[1][j]=mem_array[1][j+1];
- j++;
- }
- mem_array_ents--;
- return(0); /* Return if found */
- }
-
-/* If we made it here...something's wrong...show error */
-return(-1);
-}
-
-/**********************************
-** FILE HANDLING ROUTINES **
-**********************************/
-
-/****************************
-** CreateFile
-** This routine accepts a filename for an argument and
-** creates that file in the current directory (unless the
-** name contains a path that overrides the current directory).
-** Note that the routine does not OPEN the file.
-** If the file exists, it is truncated to length 0.
-*/
-void CreateFile(char *filename,
- int *errorcode)
-{
-FILE *fhandle; /* File handle used internally */
-
-fhandle=fopen(filename,"w");
-
-if(fhandle==NULL)
- *errorcode=ERROR_FILECREATE;
-else
- *errorcode=0;
-
-/*
-** Since all we're doing here is creating the file,
-** go ahead and close it.
-*/
-fclose(fhandle);
-}
-
-/****************************
-** bmOpenFile
-** Opens the file given by fname, returning its handle.
-** If an error occurs, returns its code in errorcode.
-** The file is opened in read-write exclusive mode.
-*/
-FILE *bmOpenFile(char *fname, /* File name */
- int *errorcode) /* Error code returned */
-{
-
-FILE *fhandle; /* Returned file handle */
-
-fhandle=fopen(fname,"w+");
-
-if(fhandle==NULL)
- *errorcode=ERROR_FILEOPEN;
-else
- *errorcode=0;
-
-return(fhandle);
-}
-
-
-/****************************
-** CloseFile
-** Closes the file identified by fhandle.
-** A more inocuous routine there never was.
-*/
-void CloseFile(FILE *fhandle, /* File handle */
- int *errorcode) /* Returned error code */
-{
-fclose(fhandle);
-*errorcode=0;
-return;
-}
-
-/****************************
-** readfile
-** Read bytes from an opened file. This routine
-** is a combination seek-and-read.
-** Note that this routine expects the offset to be from
-** the beginning of the file.
-*/
-void readfile(FILE *fhandle, /* File handle */
- unsigned long offset, /* Offset into file */
- unsigned long nbytes, /* # of bytes to read */
- void *buffer, /* Buffer to read into */
- int *errorcode) /* Returned error code */
-{
-
-long newoffset; /* New offset by fseek */
-size_t nelems; /* Expected return code from read */
-size_t readcode; /* Actual return code from read */
-
-/*
-** Presume success.
-*/
-*errorcode=0;
-
-/*
-** Seek to the proper offset.
-*/
-newoffset=fseek(fhandle,(long)offset,SEEK_SET);
-if(newoffset==-1L)
-{ *errorcode=ERROR_FILESEEK;
- return;
-}
-
-/*
-** Do the read.
-*/
-nelems=(size_t)(nbytes & 0xFFFF);
-readcode=fread(buffer,(size_t)1,nelems,fhandle);
-if(readcode!=nelems)
- *errorcode=ERROR_FILEREAD;
-
-}
-
-/****************************
-** writefile
-** writes bytes to an opened file. This routine is
-** a combination seek-and-write.
-** Note that this routine expects the offset to be from
-** the beinning of the file.
-*/
-void writefile(FILE *fhandle, /* File handle */
- unsigned long offset, /* Offset into file */
- unsigned long nbytes, /* # of bytes to read */
- void *buffer, /* Buffer to read into */
- int *errorcode) /* Returned error code */
-{
-
-long newoffset; /* New offset by lseek */
-size_t nelems; /* Expected return code from write */
-size_t writecode; /* Actual return code from write */
-
-/*
-** Presume success.
-*/
-*errorcode=0;
-
-/*
-** Seek to the proper offset.
-*/
-newoffset=fseek(fhandle,(long)offset,SEEK_SET);
-if(newoffset==-1L)
-{ *errorcode=ERROR_FILESEEK;
- return;
-}
-
-/*
-** Do the write.
-*/
-nelems=(size_t)(nbytes & 0xFFFF);
-writecode=fwrite(buffer,(size_t)1,nelems,fhandle);
-if(writecode==nelems)
- *errorcode=ERROR_FILEWRITE;
-
-}