home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 3 / PDCD_3.iso / languages / c / oslib / Examples / p2-083 < prev    next >
Text File  |  1994-05-11  |  645b  |  25 lines

  1. #include "osfscontrol.h"
  2.  
  3. os_error *ex (char *command_tail_ptr, byte *execution_address,
  4.       char *command_name_ptr)
  5.  
  6. {  os_error *error = NULL;
  7.    os_error *(*fn) (void) =
  8.          (os_error *(*) (void)) ((bits) execution_address & ~0xFC000003);
  9.          /*address with no flags, user mode*/
  10.  
  11.    if ((error = xosfscontrol_start_application (command_tail_ptr,
  12.          (byte *) fn, command_name_ptr)) != NULL)
  13.       goto finish;
  14.  
  15.    /*assume not in SVC mode (mode-switching harder in C)*/
  16.  
  17.    /*Enter application: assume CAO is function address*/
  18.    error = (*fn) ();
  19.  
  20.    os_exit (error, 0); /*in case it returns*/
  21.  
  22. finish:
  23.    return error;
  24. }
  25.