home *** CD-ROM | disk | FTP | other *** search
- MODEMH.DOC - documentation file for MODEMH.
-
-
- MODEMH is an augmented version of MODEM7A, permitting
- handover of control to a remote computer or data terminal.
- It operates by intercepting console i/o at the bios, so that
- input can be taken indefferently from the console or the
- line, and is output both to line and screen.
-
- The existing MODEM7A facilities are unaffected. An 'H'
- command hands over control; the remote computer should be in
- terminal mode (without echo) to get message and prompt.
- After that the remote operator can feed in MODEMH commands,
- cause exit to CPM for other programs, recall MODEMH, and so
- on. Control codes can be sent, but the alternative form with
- preceding '^' is available when he doesn't want them to be
- recognised by his own computer; in particular, he uses '^E'
- if he has put the handed-over computer in terminal mode to
- type a message, and wants to leave it again. He exits his own
- terminal mode - for example, to type in his own 'Send' or
- 'Receive' command - with a genuine 'Ctrl E'. Similarly, he
- can turn YOUR disk-write off with a '^Y' (when he wants to be
- off the record!), his own with 'Ctrl Y'.
-
- Typing an 'escape' cancels handover and gets you back in
- exclusive control of your machine - UNLESS the remote
- operator has crashed it, in which case you do a cold boot in
- the same way as when you've crashed it yourself, and start
- again. Note that, although your own keyboard is still active
- while you are handed over, it is effective only when the
- running program makes a standard (CPM) console i/o call; so
- you may have to wait for results. No message is sent to the
- remote operator when you cancel; he may not be listening
- anyway, and you can always send him a manual one if he is.
-
- There are no special 'anti-crash' provisions. I use this
- program mainly when I have two computers strapped together
- (for transfer of files from one disk format to another) on
- the same bench, simply to avoid having to hop between
- keyboards. But it can also be useful over the phone.
- (Operator A needs to relieve nature, has back-up copies of
- all his valuable files, and might as well let operator B
- carry on meanwhile. Or an expert gets a novice to hand over
- to him to show him how it's done. Or--)
-
- CONFIGURATION
-
- SORMODH is a version for the Sorcerer; DATMODH is for the
- Australian Datamax computer; and I'm going to have to make an
- APMODH soon. The ASM files are tailored for assembly on RMAC
- and LINK; they assume you have MODEM.LIB on the same disk in
- the same way as for other members of the MODEM7 family.
-
- The sensitive bit of the added program is a 100h block that
- needs to be stashed somewhere it won't be overwritten by
- other programs the remote operator might want to run. On the
- Sorcerer I have a cunning hole between CPM and the Monitor;
- generally, a spot just below CPM will be the best place, or
- below the base of DDT (Shh!), ZSID or some other debugger if
- you run them. Put its address at HAVEN in the added equates
- near the start of the listing.
-
- Also put the code of an escape character at ESCHAR;
- presumably this will be ESC, 1bh, but you can alter it if you
- have to.
-
- The remainder of the configuration is as for MODEM7A, EXCEPT
- that, because the stashed 100h block needs to be independent,
- there are four small subroutines in it, called MINST, MOUST,
- MIN and MOUT, that need to be considered as well. These are
- right at the end of the listing; the first two return z-flags
- when modem input and output (respectively) are ready, and the
- others (respectively) receive or send bytes. Note also that
- if (improbably) you need to insert symbolic addresses when
- rewriting these programs, references to these addresses need
- to take into account the fact that the program is to be
- relocated; the offset is 'HAVEN minus RCAN', and should be
- added to jump, call, load and store addresses in the same way
- as it is elsewhere in the segment.
-
- If you DO need to rewrite anything here, there are about 30
- bytes spare.
-
- Leave me a message on RCPM if you have any troubles, or helpful
- suggestions.
-
- Charles Hamblin
-