home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 3 / PDCD_3.iso / languages / c / oslib / Examples / p2-735 < prev    next >
Text File  |  1994-03-24  |  813b  |  39 lines

  1. #include "hourglass.h"
  2. #include "os.h"
  3. #include "osfile.h"
  4.  
  5. extern byte Buffer [];
  6.  
  7. extern os_error *Process_Byte (byte);
  8.  
  9. os_error *do_load_and_process (char *file_name)
  10.  
  11. {  os_error *error = NULL;
  12.    int i, size;
  13.    bool done_on = FALSE;
  14.  
  15.    if ((error = xosfile_load_stamped (file_name, Buffer, NULL, NULL, NULL,
  16.          &size, NULL)) != NULL)
  17.       goto finish; /*note that osfile_load loads a file at its load address*/
  18.  
  19.    if (size != 0)
  20.    {  if ((error = xhourglass_on ()) != NULL)
  21.          goto finish;
  22.       done_on = TRUE;
  23.  
  24.       for (i = 0; i < size; i++)
  25.          if ((error = Process_Byte (Buffer [i])) != NULL)
  26.             goto finish;
  27.    }
  28.  
  29. finish:
  30.    if (done_on)
  31.    {  os_error *error1;
  32.       
  33.       error1 = xhourglass_off ();
  34.       if (error == NULL) error = error1;
  35.    }
  36.  
  37.    return error;
  38. }
  39.