subroutine help
write(6,'(/a)') 'Command Calculator'
write(6,'(a/)') '=================='
write(6,'(a)') 'Introduction'
write(6,'(a/)') '------------'
write(6,'(a)') 'This is a command-line calculator. It supports both real and complex modes, as well'
write(6,'(a)') 'as degrees/radians selection and precision control. It can be run interactively or as an'
write(6,'(a/)') 'expression parser. This help is deliberately terse to encourage exploration.'
write(6,'(a/)') '-------------------------------------------------------------------------------'
write(6,'(a)') 'Operators: + - * / ^ ^/x ^x ^2 ^/2 ^3 ^/3 ^*2 ^*10 || ! %'
write(6,'(a)') 'Constants: pi e g G c two_pi pi_over_2'
write(6,'(a)') 'Functions: sin cos tan asin acos atan sinh cosh tanh log2 log lg len sq sqrt cb cbrt'
write(6,'(a)') ' alog2 alog alog10 gamma ncr npr rem int nint'
write(6,'(a)') ' Controls: fix[0-9] clx cl cla '
write(6,'(a)') ' Modes: real complex verbose terse degrees radians'
write(6,'(a)') ' Memories: n=0...9 st<n> sw<n> rc<n> cl<n> m<n>+ m<n>- m<n>* m<n>/ msh'
write(6,'(a)') ' Complex: ri _ || to_pol to_cart'
write(6,'(a)') ' Actions: 1/ -- R r ? > < split drop'
write(6,'(a)') ' Stats: { x1 x2 ... } { x1,y1 x2,y2 ... }'
write(6,'(a)') ' n ux sx mx lqx uqx uy sy my lqy uqy a b cov corr'
write(6,'(a/)') ' Quits: q'
write(6,'(a/)') '-------------------------------------------------------------------------------'
write(6,'(a)') 'Examples'
write(6,'(a)') '--------'
write(6,'(4x,a)') 'hp "fix2 18 2 - 8 2 / * =" -> 64.00'
write(6,'(4x,a)') 'hp "2 -- complex sqrt =" -> (0.00000,-1.414214)'
write(6,'(4x,a/)') 'hp -c "radians (1,pi_over_2)p ^ * degrees =" -> (1.000000,180.000000) p'
end subroutine help