home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / cpm / cpm3 / hp-plus.lbr / HP+.DQC / HP+.DOC
Text File  |  1985-02-09  |  4KB  |  80 lines

  1.                            HP+.DOC
  2.                            -------
  3.                   Documentation for HP+.COM
  4.                Version 1.0  (c) Eric Meyer 9/84
  5.  
  6.  
  7. Did you ever wonder what A00h/32 was, while editing source code?
  8.  
  9.      HP+.COM is a special version of my programmer's calculator
  10. program HP.COM, which allows the calculator to remain installed in
  11. RAM, always available for use, even within another program!
  12.  
  13.      The plain calculator program HP.COM will run on any CP/M 2 or 3
  14. system.  It operates much like a Hewlett-Packard RPN calculator, but
  15. has four display modes (bases).  See HP.DOC for instructions on how
  16. to use the calculator.  This file describes only the peculiar features
  17. of the RAM-based version, HP+.
  18.  
  19.      HP+.COM will ONLY work under CP/M Plus (3).  When installed,
  20. it occupies 2.5K of RAM just under the BDOS.  Do not install it more
  21. than once, or more RAM will be wasted.  It can be called up for use
  22. at any time, until you do a cold boot (reset).  It has "continuous
  23. memory" - if you exit and return to HP+, the stack and memories will
  24. remain unchanged.  If you no longer need HP+ and wish to recover the
  25. memory it occupies, it can be removed from RAM.
  26.  
  27.      TO INSTALL THE CALCULATOR:       A>HP+
  28.  
  29.      TO REMOVE THE CALCULATOR:        A>HP+ OFF
  30.  
  31.      TO USE THE CALCULATOR:           Type control-caret (^^).
  32.  
  33. (Note: if nothing happens immediately, follow the ^^ with RETURN.)
  34. The HP+ calculator should then appear on the line where your cursor
  35. was.  Use the calculator according to the instructions in HP.DOC.
  36. When you're done, type a ^C to exit HP+.
  37.  
  38.      When you exit, HP+ returns you to EXACTLY where you were in the
  39. program you were running, which is still expecting input from you.
  40. The HP+ numeric display remains on your screen, but your program doesn't
  41. know that, so it doesn't matter.  In an ordinary text editor, for example,
  42. it will be replaced by the text that's "really" there as soon as you start
  43. moving the cursor around.
  44.  
  45.                   USING HP+ WITH UNUSUAL SOFTWARE
  46.  
  47.      HP+ will work as advertised above either from the CP/M "A>" prompt,
  48. or from within any program that does ordinary output to the screen, and
  49. ordinary input through a BDOS call (including BIOS calls through BDOS 50).
  50.  
  51.      HP+ may operate unexpectedly in programs that use memory-mapped
  52. video.  For example, using HP+ from within the VDO-EX text editor on my
  53. Osborne Executive, the calculator appears at the bottom of the screen
  54. regardless of "cursor" position; and upon leaving HP+, that line may there-
  55. after appear in underlined video mode.  However, these cosmetic differences
  56. do not interfere with use of the calculator, or normal editing.
  57.  
  58.      The only real problem is that HP+ will simply NOT work from programs
  59. that do input through direct BIOS calls.  Now, there is NO excuse for
  60. software intended to be used under CP/M Plus to be written this way, but
  61. someone may have been sloppy.  (My bundled Wordstar had this problem.)
  62. You may also be using software originally intended for CP/M 2.  In any
  63. case, if you have some assembly language skills, you may be able to patch
  64. the offending program to work with HP+.  You must replace any direct BIOS
  65. CONIN calls with a jump to a patch that sets up a BDOS 6 direct input
  66. call.  Your program's operation should remain the same, but HP+ will
  67. now work in it.
  68.  
  69.      For example, here is the patch I had to install in my Wordstar 3.3.
  70. It has a routine 16DE that does direct BIOS calls by fetching the WMBOOT
  71. address from Page Zero.  I found this by searching for LHLD 0001, which
  72. occurred at 1D75, followed by CALL 1777, MOV A,C, PCHL.  When this is
  73. called for input, there is a 6 in A, which the subroutine at 1777 adds
  74. to WMBOOT, giving CONIN.  So I changed CALL 1777 to CALL 02EB (a location
  75. in the MORPAT patch area), and at 02EB I put the following code:  CPI 6,
  76. JNZ 1777, POP H, MVI C,6, MVI E,FD, JMP 0005.  Thus the other BIOS calls
  77. continue undisturbed, but the jump to CONIN is replaced by one to BDOS 6.
  78. Afterwards, HP+ functioned perfectly from within Wordstar.
  79.  undisturbed, but the jump to CONIN is replaced by one to BDOS 6.
  80. Afterwards, HP+ functioned p