home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 November / Chip_1998-11_cd.bin / zkuste / pascal / RT / RT.ARJ / RTE01SRC.ZIP / spoustec.c-- < prev    next >
Text File  |  1996-04-19  |  2KB  |  64 lines

  1. /* compile: C--.exe spustec.c-- /oc /os /s=256 /+d /j1 */
  2.  
  3. /* BACHA: nic si to neosetruje, zadny chyby, nic!!!! */
  4. /* (asi to precejenom napisu v tom assembleru) */
  5. /* pro konec zadat: exit */
  6.  
  7. /*******************************************************************************
  8.  *                                                                             *
  9.  *  PaulSoft's ... PSMAN ...  version 00.0912 ..............................   *
  10.  *                                                                             *
  11.  *  Resident MAN loader  written by PaulSoft in SPHINX C-- 0.202               *
  12.  *                                                                             *
  13.  * SPHYNX C-- is very good language between C & Asm written by Peter Cellik    *
  14.  *                                                                             *
  15.  *  Thanx you very much for C--, Peter!!!!!                                    *
  16.  *                                                                             *
  17.  *******************************************************************************/
  18. ? resize TRUE
  19. ?use80286    
  20. ?define readbyte 254
  21. ?include "DOS.H--"
  22.  
  23. byte mainprog = "MAN.EXE";
  24. byte mainparam = {0,13};
  25. byte buffer[readbyte+1];   /* buffer pro prikaz z prikazoveho souboru */
  26. byte comspec[readbyte+1];  /* sem se kopiruje to z COMSPECu */
  27. byte readed;               /* pomocne promene */     
  28. byte quit;
  29. word handle;
  30.  
  31. main()
  32. {
  33.   ENVSTR("COMSPEC");      /* vrati pozici COMSPECu v ES:DI */
  34.   SI = #comspec;
  35. UP:
  36.   AX = ESBYTE[DI];
  37.   DSBYTE[SI] = AX;
  38.   $ INC SI;
  39.   $ INC DI;
  40.   $ CMP AX,0;
  41.   $ JZ DOWN;
  42.   $ JMP SHORT UP;
  43. DOWN: 
  44.   DSBYTE[SI]=0;
  45. do{ 
  46.    quit = 0;
  47.    spawn(#mainprog,#mainparam,0); /* spusti hl. prog */
  48.    handle = FOPEN(0, , ,"C.PS");  /* otevre prikazovej soubor */
  49.    if(handle != 0) {
  50.      readed = FREAD(,handle,readbyte,#buffer);
  51. /* zjisteni, jestli se ma koncit */
  52.      SI = #buffer;
  53.      AX = DSBYTE[SI];
  54.      $ CMP AX,255;
  55.      $ JNZ DOWN2;       /* ne */
  56.      quit=3;
  57.      $ JMP SHORT DOWN3; /* jo */
  58. DOWN2:
  59.     spawn(#comspec,#buffer,0); /* spusti COMSPEC s prikazem z C.PS */
  60. DOWN3:
  61.      FCLOSE(,handle); /* zavre prikazovej soubor */
  62.     }   
  63.   }while(quit != 3);  /* konec */
  64. }