home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / g / README.68K < prev   
Text File  |  2020-01-01  |  4KB  |  125 lines

  1.               README for gkermit 1.0 on CP/M-68K
  2.  
  3. Usage
  4. -----
  5. The CP/M-68K port of gkermit can only be used if your CP/M-68K system
  6. supports console operation over an RS-232 serial port. It operates
  7. as the "far end" of a connection in exactly the same way as gkermit
  8. on Unix. See section 2 of the original README for more details.
  9.  
  10. Differences from Unix gkermit
  11. -----------------------------
  12. CP/M-68K does not support case-sensitive command-line arguments, all
  13. arguments are translated to lower case. This means that the T,P,K,S
  14. and X options are not available. Since text mode is too useful to
  15. lose, gkermit for CP/M-68K will accept a lower-case 't' instead.
  16.  
  17. Limitations
  18. -----------
  19. No support for streaming (built with the DUMBIO option selected). 
  20. Also no support for XON/XOFF or parity setting (limitation imposed
  21. by the minimal stty() capabilities on CP/M-68K).
  22.  
  23. Test environment
  24. ----------------
  25. The CP/M-68K port is based on gkermit 1.0 for Unix. It was compiled
  26. on a CP/M-68K 1.2 system running on an Isicad Prisma 700 workstation.
  27. Although built on a 1.2 system, the C compiler and libraries used
  28. for the build were taken from a 1.3 system. This was done to take
  29. advantage of any bug fixes that might have been done between 1.2 and
  30. 1.3 (the 1.3 README does say that a new version of the compiler is
  31. included but doesn't say anything about what the changes were).
  32.  
  33. File transfer was tested with the console port, running at 9600/8/N/1,
  34. connected to a PC running C-Kermit 7.0 on Slackware Linux 7.1. Text
  35. and binary transfers were successfully completed.
  36.  
  37. Porting notes
  38. -------------
  39. The CP/M-68K C library claims be largely compatible with Unix
  40. Version 7. Notable differences include:
  41.  
  42.     No alarm(), sleep() or any other time-related functions.
  43.     Very limited stty(), gtty(), no speed or parity settings.
  44.     No fork()/exec().
  45.     No stat() or fstat().
  46.     No getenv().
  47.     Separate open() and fopen() calls for ascii and binary files.
  48.  
  49. There is also no 'make' command, compiling is done one file at a time
  50. using a SUBMIT batch command file. Another SUBMIT file is used for
  51. the final linking.
  52.  
  53. Most of the changes are in 'gunixio.c' and concern the serial I/O
  54. and file handling. Changes in the other source files were mainly to
  55. work round compiler quirks and shouldn't affect operation on other
  56. platforms. Since there is no alarm(), the input timeout has been
  57. implemented using a polling loop and counter, as has a basic sleep()
  58. function. The counter values were chosen to give approximately
  59. the right amount of delay on the development machine, which uses a
  60. 33MHz 68020 processor. They should be reduced for slower systems.
  61.  
  62. A 'feature' of the CP/M-68K C library that deserves special mention
  63. is the inclusion of stub routines intended to reduce the size of
  64. executables by leaving out sections of the library that the
  65. programmer knows will never be used by his/her program. These are
  66. not mentioned in any of the manuals the author has access to but
  67. are mentioned in one of the include files, option.h. Although the
  68. default behaviour should be for the linker to use the full function,
  69. it appears that the stub gets linked instead for _filesz(). The only
  70. solution found so far is to remove the stub module from the C library.
  71. This can be accomplished using AR68 as follows:
  72.  
  73.     C>ar68 dv clib nofilesz.o
  74.  
  75. But make sure you have a backup copy of CLIB first!
  76.  
  77. The compiler, assembler, linker and include files all came from
  78. CP/M-68K 1.3 with the exception of sgtty.h, which was missing from
  79. my copy of 1.3, and was taken from the 1.2 release.
  80.  
  81. Files
  82. -----
  83. Unmodified files from the Unix gkermit distribution:
  84.     ANNOUNCE
  85.     COPYING
  86.     README
  87.     gkermit.nr
  88.     makefile
  89.  
  90. Source files updated for CP/M-68K:
  91.     gcmdline.c
  92.     gkermit.c
  93.     gkermit.h
  94.     gproto.c
  95.     gproto.w
  96.     gunixio.c
  97.     gwart.c
  98.  
  99. SUBMIT files to compile and link on CP/M-68K:
  100.     cgk.sub        Use this to compile each source file.
  101.     logk.sub        Linker script for gkermit.
  102.     logw.sub        Linker script for gwart.
  103.  
  104. CP/M-68K binaries:
  105.     gkermit.rel
  106.     gwart.rel
  107.  
  108. Others:
  109.     README.68K        This file!
  110.     gkermit.diff    Context diffs from the Unix sources.
  111.  
  112. Web sites
  113. ---------
  114. G-Kermit home page:
  115. http://www.kermit-project.org/gkermit.html
  116.  
  117. The Unofficial CP/M Web site:
  118. http://www.cpm.z80.de/
  119.  
  120.  
  121. George Harvey
  122. fr30@dial.pipex.com
  123. 16th March 2002
  124.  
  125.