home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / archives / cpm / 8008-1.txt < prev    next >
Text File  |  1993-02-12  |  8KB  |  183 lines

  1. 30-Aug-80 15:42:00,281;000000000000
  2. Date: Saturday, 30 August 1980  15:42-MDT
  3. From: Mike Leavitt <LEAVITT at USC-ISI>
  4. Sender: LEAVITT at USC-ISI
  5. To:   INFO-CPM at MC
  6. Subject: CP/M WITH APPLE
  7.  
  8. HAS ANYONE HAD EXPERIENCE WITH THE APPLE AND THE MICROSOFT CP/M
  9. CARD?  DOES IT WORK AS ADVERTISED?  ANY LIMITATIONS?
  10. 31-Aug-80 05:00:00,5885;000000000000
  11. Date: Sunday, 31 August 1980  05:00-MDT
  12. From: Frank J. Wancho <FJW at MIT-MC>
  13. To:   INFO-CPM at MIT-MC
  14. Subject: Kick-off
  15.  
  16. Kicking this off:
  17.  
  18. CP/M 2.2 has a known bug in that the CCP does not properly retain the
  19. USER number (across resets, I believe).  (Does any use, or plan to use
  20. USER numbers other than 0 or set the option bits - for the in-memory
  21. copy of the directory only for R/O, $DIR, $SYS, etc.?  Those option
  22. bits should be a part of the actual directory entry on disk anyway!)
  23.  
  24. There is an inconsistency between disk drive numbering used by SELDSK
  25. and the others.  SELDSK is zero-based numbering (A=0, B=1, etc.),
  26. while the other functions use 0 in the FCB to mean the default drive,
  27. then A=1, B=2, etc.  My SELDSK, when used under a 1.4 system, simply
  28. takes that byte from the FCB and decrements it for use in the BDOS
  29. call.  (Using SELDSK is optional for 2.2 since the functions pick up
  30. the disk drive from the FCB (Byte 0) - unless you want to actually
  31. change the default drive in your program - and then change it back,
  32. just as for 1.4.  Does anyone NOT take the JMP 0 exit from their
  33. programs?)
  34.  
  35. Digital Research's next project is CP/M for 8086 machines.  Apparently
  36. they think that will be the next darling of the industry.
  37.  
  38. Once that CP/M for the 8086 is off the ground, Version 3.0 is next in
  39. sight.  It will have a number of MP/M features retrofitted, and a five
  40. byte TOD entry put in an as yet undetermined place in the directory
  41. entry.  The format is a two-byte date (in address format, MSB first)
  42. with Day 1 = January 1, 1978, and each of the hours, minutes and
  43. seconds as two BCD digits.
  44.  
  45. Earlier this week, I received a fresh-off-the-press copy of "The CP/M
  46. Handbook (with MP/M)" by Rodney Zaks.  As usual in this industry, it
  47. was advertised before it was available.  It is very well done to the
  48. point that you can throw away most of the manual that comes with the
  49. CP/M package.  (The CP/M 2.2 is the same manual as for 1.4 except for
  50. the last two "sections", and those sections have more(!) examples of
  51. actual code, especially for how to use the random record access
  52. features.)  I was disappointed that Zak's book did not give a hacker's
  53. insight to more of the CCP other than how to do that auto-start I
  54. asked about, and it detailed alot about using ED - but no code worth
  55. mentioning.
  56.  
  57. The handbook also details more about MP/M than I wanted to know -
  58. mainly because I now know what I am missing - with a number of
  59. features which I don't see why they can't be used in regular CP/M,
  60. such as GENHEX (make a HEX file out of a COM or PRL file suitable for
  61. relocation with GENCOM).  SPOOLER builtin.  A time-of-day scheduler.
  62. And others...maybe that is what they have in mind for 3.0??
  63.  
  64. (A personal comment here: I can't see really using MP/M in any current
  65. micro, given the address space limits - even with bank-switching,
  66. unless you are willing to tolerate the time it takes to switch.  It
  67. would be more cost-effective to share the relatively expensive
  68. peripherals such as a printer and hard disk, than to time-share a
  69. micro.  Even better would be to add more dedicated micros such as you
  70. already have for the disk I/O controller, and "front-end" the
  71. terminal, printer, and modem I/O functions - even above
  72. interrupt-driven I/O.)
  73.  
  74. We also got in a copy of TPM from Computer Design Labs (for Z80's only
  75. - sorry).  I have not had a chance to completely check it out yet.  I
  76. can say this:  it was no sweat to bring it up just like that.
  77. SYSGENning a new system is an integrated on-step process.  It has an
  78. entry to set and read time, a fixed location with fixed time, and can
  79. be patched to actually read your clock board, if you have one.  It
  80. will run most, if not all CP/M 1.4 programs, but not vice-versa.  It
  81. has most of the same extensions that 2.2 has, but not in the same
  82. entry points - in fact, it has more.  Noteable are:
  83.  
  84.  6 - Get TPM Serial Number
  85. 28 - Read Console with no echo
  86. 29 - Get Date
  87. 30 - Get Time
  88. 31 - Trap Control (for ^C)
  89. 32 - Set Date/Time
  90. 33 - Chain Program
  91. 34 - Get TPM Version Number
  92. 35 - Do Direct Disk I/O
  93. 36 - Create FCB
  94. 37 - Return Time in MS. (hardware required)
  95. 38-40 Reserved
  96.  
  97. I am especially attracted to Chain Program.
  98.  
  99. A while back I saw ads for OS1 in which they were offering to throw in
  100. the source code for CP/M, probably 1.3.  Does anybody know where I can
  101. obtain a preferably commented listing of CCP - any version?  Some
  102. people simply overlay CCP and write their own versions of whatever
  103. they need that may already be available in CCP.  I would rather leave
  104. CCP around and find a way to hand it stuff and return to my program
  105. when done - especially if I load my stuff just under CCP... and chain,
  106. if required...Anybody got any ideas on this?
  107.  
  108. Finally, I would urge you to read Alan Miller's CP/M product reviews
  109. and other related tidbits in Interface Age - the October issue
  110. includes his CBIOS (again) now with code for interrupt-driven,
  111. buffered console input and an article describing how it works.  He is
  112. also reachable by phone, when he doesn't have his modem plugged into
  113. the campus computer, and talks to the Lifeboat and other people around
  114. the country on a regular basis.  (The campus computer is a DEC, which
  115. doesn't have paper tape I/O - one of his machines is the DEC paper
  116. tape reader/punch...)  (I dropped my charter subscription to IA before
  117. I latched onto CP/M, and now his articles would be the only reason for
  118. resuming it.)
  119.  
  120. That's all I have for now.  If there are no objections, I would like
  121. to make this correspondence available to my Digital Research contact
  122. who is also much interested in suggestions for documentation
  123. improvements (but that was before I received Zak's book...).  Also,
  124. would someone care to relate to us those portions of interest from
  125. Lifeboat's LifeLine?
  126.  
  127. --Frank
  128. 31-Aug-80 13:29:00,1461;000000000000
  129. Date: Sunday, 31 August 1980  13:29-MDT
  130. From: Frank J. Wancho <FJW at MIT-MC>
  131. To:   INFO-CPM at MIT-MC
  132. Subject: STAT in 2.2
  133.  
  134. Before I get beat about the head and shoulders about STAT's setting of
  135. the individual file attributes in 2.2, let me correct myself now:
  136. STAT indeed does set those parameters on the disk copy of the
  137. directory entry itself.  (This is opposed to 1.4 STAT which only sets
  138. the whole disk as R/O or R/W and only until the next boot.)  You must
  139. (in either level) do a disk system reset (and reselect the saved
  140. default if 2.2) if you change disks while your program is running, or
  141. do a DIR in CCP, or the changed disk will be assumed to be R/O!
  142.  
  143. This was particularly annoying with ED when I was creating the dummy
  144. entries for the master cataloger programs, although I appreciate the
  145. protective approach.
  146.  
  147. --Frank
  148.  
  149. P.S.  There is some confusion, still, about CP/M records (128 bytes
  150. each), used by the read and write functions, and the SAVE built-in
  151. command, which uses 256-byte pages, and the actual disk I/O.  For
  152. example, my N* double-density system uses 512-byte blocks.  Does this
  153. mean that for each disk access, my BDOS and disk controller interface
  154. selects which CP/M record I want out of the four records in the
  155. 512-byte block, reading or writing 512-byte blocks for each disk
  156. access regardless of what may already be in the buffer from the last
  157. request?  Can anybody explain what is really going on here?
  158. 31-Aug-80 15:16:00,272;000000000000
  159. Date: Sunday, 31 August 1980  15:16-MDT
  160. From: Frank J. Wancho <FJW at MIT-MC>
  161. To:   INFO-CPM at MIT-MC
  162. Subject: Typo
  163.  
  164. In my first message describing the TOD format, that date will be in
  165. address format alright, but that is LSB (not MSB) first, of course.
  166.  
  167. --Frank
  168. 31-Aug-80 15:39:00,572;000000000000
  169. Date: Sunday, 31 August 1980  15:39-MDT
  170. From: Lauren at UCLA-SECURITY (Lauren Weinstein)
  171. To:   FJW at MIT-MC
  172. cc:   INFO-MICRO at AI
  173. Subject: Kick-off
  174.  
  175. Don't go anywhere near OS1!!!  In a previous message, I recounted what
  176. I discovered about the organization selling that dog when I flew up
  177. north to meet with them once.  The "CP/M source" they offer is no CP/M
  178. source at all, it is simply the source of the CP/M emulator that lets
  179. OS1 run some CP/M 1.4 type programs.  It has nothing to do with real
  180. CP/M as far as I can tell.  Do not be misled!
  181.  
  182. --Lauren--
  183.