home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / CPM / DATABASE / KPHANDYP.LBR / CALCULAT.CZD / CALCULAT.CMD
OS/2 REXX Batch file  |  2000-06-30  |  2KB  |  92 lines

  1. @ 18,0
  2. @ 16,0
  3. @ 2,54 say '|------------------------|'
  4. @ 3,54 say '| CALCULATOR             |'
  5. @ 4,54 say '|                   fcn  |'
  6. @ 5,54 say '| |--------------| |---| |'
  7. @ 6,54 say '| |              | |   | |'
  8. @ 7,54 say '| |______________| |___| |'
  9. @ 8,54 say '|                        |'
  10. @ 9,54 say '| A  Add                 |'
  11. @ 10,54 say '| S  Subtract            |'
  12. @ 11,54 say '| X  Multiply            |'
  13. @ 12,54 say '| D  Divide              |'
  14. @ 13,54 say '| M  Memory Add          |'
  15. @ 14,54 say '| N  Memory Subtract     |'
  16. @ 15,54 say '| R  Return Memory       |'
  17. @ 16,54 say '| Z  Memory Clear        |'
  18. @ 17,54 say '| C  Clear               |'
  19. @ 18,54 say '| T  Total               |'
  20. @ 19,54 say '| Q  Quit                |'
  21. @ 20,54 say '|                        |'
  22. @ 21,54 say '|________________________|'
  23. STOR ' ' to function
  24. STOR 0.00 to operator
  25. STOR 0.00 to total
  26. STOR 0.00 to memory
  27. @ 6,57 get operator picture '999999999.99'
  28. READ
  29. STOR total+operator to total
  30. DO WHIL !(function)#'Q'
  31. STOR ' ' to function
  32. @ 6,74 get function picture 'X'
  33. READ
  34. IF val(function)>0 .or. function='0'
  35. STOR function to option
  36. DO changeop
  37. RETU
  38. ENDI
  39. DO CASE
  40. CASE !(function)='M'
  41. STOR memory+total to memory
  42. SET intensity off
  43. @ 3,76 say chr(27)+chr(66)+chr(50)
  44. @ 3,76 say 'M'
  45. @ 3,77 say chr(27)+chr(67)+chr(50)
  46. SET intensity on
  47. CASE !(function)='N'
  48. STOR memory-total to memory
  49. CASE !(function)='R'
  50. STOR memory to total
  51. SET intensity off
  52. @ 6,59 say memory using '9999999.99'
  53. SET intensity on
  54. CASE !(function)='Z'
  55. STOR 0.00 to memory
  56. @ 3,76 say ' '
  57. CASE !(function)='C'
  58. STOR 0.00 to total
  59. STOR 0.00 to operator
  60. @ 4,65 say '     '
  61. @ 6,57 get operator picture '999999999.99'
  62. READ
  63. STOR total+operator to total
  64. CASE !(function)='T'
  65. SET intensity off
  66. STOR str(total,16,2) to hold
  67. STOR val(hold) to total
  68. STOR total+.00 to total
  69. @ 6,58 say &hold using '#########.##'
  70. SET intensity on
  71. CASE !(function)#'Q'
  72. STOR 0.00 to operator
  73. @ 6,57 get operator picture '999999999.99'
  74. READ
  75. ENDC
  76. DO CASE
  77. CASE !(function)='A'
  78. STOR total+operator to total
  79. CASE !(function)='S'
  80. STOR total-operator to total
  81. CASE !(function)='X'
  82. STOR total*operator to total
  83. CASE !(function)='D'
  84. DO WHIL operator=0
  85. @ 6,57 get operator picture '999999999.99'
  86. READ
  87. ENDD
  88. STOR total/operator to total
  89. ENDC
  90. ENDD
  91. RETU
  92.