home *** CD-ROM | disk | FTP | other *** search
/ Aminet 18 / aminetcdnumber181997.iso / Aminet / dev / gcc / ixemulsrc.lha / ixemul / TODO < prev    next >
Text File  |  1996-12-15  |  3KB  |  84 lines

  1. ***    Add support for serial line I/O, allowing a port of GNU (Taylor's)
  2.     UUCP.
  3.  
  4. ***    Add job control support. Partial support for stopping/resuming processes
  5.     is already in place but it needs to be generalized so that it can be
  6.     user for job control.
  7.  
  8. ***    Several people suggested adding IPC support (a System V feature).
  9.  
  10. ***    The stat() function (and/or opendir() ) is slow. Is it possible to
  11.     speed this up?
  12.  
  13. ***    Improve the (currently only partially implemented) ix_amiga.h header.
  14.  
  15. ***     Document how to implement a fork() emulation
  16.  
  17. ***    Amiga<->Unix pathname handling scheme:
  18.  
  19.     The following scheme might be feasible:
  20.     
  21.     Either through a function call or through a global variable, a program
  22.     tells ixemul that it can use Amiga pathnames. In that case ixemul will
  23.     translate all filenames to Unix pathnames internally. E.g., the open()
  24.     function will start with this code:
  25.     
  26.       if (process_can_use_amiga_pathnames)
  27.         pathname = a2u(pathname);
  28.     
  29.     Similar code is needed for fopen(), etc.
  30.     
  31.     With ixprefs you can state whether you want to accept these hints from
  32.     programs or not.
  33.     
  34.     This means that a program must be prepared to handle both kinds of
  35.     pathnames. This is only a problem if your program tries to parse the
  36.     pathname.
  37.     
  38.     I think a function 'int ix_can_use_amiga_pathnames(void)' that returns TRUE
  39.     if the user (through ixprefs) also accepts amiga pathnames would be the
  40.     best way to do this.
  41.     
  42.     Functions a2u() and u2a() for pathname conversion would also be exported
  43.     from ixemul (they are already available internally).
  44.  
  45. ***    # cd /ram
  46.     # mkdir d
  47.     # cd d
  48.     # echo "#!/bin/sh" >f
  49.     # echo "echo ok" >>f
  50.     # ./f
  51.     /Ram[3]: syntax error
  52.  
  53.     'ram' is expanded to 'Ram Disk', and the space causes problems.
  54.     Probably will have to pass '/bin/sh' the program name enclosed in quotes.
  55.  
  56. ***    #include <unistd.h>
  57.  
  58.     main()
  59.     {
  60.       char foo[1000];
  61.       read(0,foo,999);
  62.     }
  63.  
  64.     Run this program, press Ctrl-C and it looks as if nothing has
  65.     happened. You will have to actually press enter to see the
  66.     shell prompt.
  67.  
  68. ***    Open the math libraries on a per-task basis.
  69.  
  70. ***    The initial value of the frame pointer is not set to NULL (as
  71.     it should be). This makes backtracking the stack a bit more
  72.     complicated as the current frame pointer has to be checked for
  73.     being inside the current maximum stack frame (and it's almost
  74.     impossible to do that with stackextension enabled...).
  75.  
  76. ***    Implement socketpair().
  77.  
  78. ***    ixstack should be able to modify stack even if the file is write protected
  79.     (just like gzip).
  80.  
  81. ***    Add proper locale support.
  82.  
  83. ***    Improve math handling (especially math.h, ask Kriton for more info)
  84.