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
/
TURBODSG
/
REMDRV.DQC
/
REMDRV.DOC
Wrap
Text File
|
2000-06-30
|
9KB
|
268 lines
.HE REMOTE MODEM DRIVER COPYRIGHT (C) 1985, S. KLUGER
.FO REMDRV DOCUMENTATION PAGE #
REMDRVéá i≤ ß modulσ which¼á wheε useΣ iε placσ oµ thσ CONREMä ì
modulσ iε ß TurboDO╙ 1.4▒ maste≥ operatinτ system¼á allow≤ al∞ oµ ì
tha⌠ master'≤ slavσ t∩ acces≤ u≡ t∩ 1╢ I/╧ devices«á Onσ possiblσ ì
applicatioεá woulΣ bσ (iε conjunctioε witΦ thσ appropriatσá softì
ware⌐ acces≤ oµ multiplσ modem≤ b∙ an∙ slave« WitΦ aε intelligen⌠ ì
termina∞á program¼á modeφ selectioε woulΣ bσ transparen⌠á t∩á thσ ì
user¼á s∩á tha⌠á activatinτá thσ utilit∙ woulΣ selec⌠á thσá firs⌠ ì
availablσ modem¼ unti∞ al∞ modem≤ arσ busy.
INSTALLATION of REMDRV
Installatioε oµ REMDRVé i≤ straightforwarΣ anΣ require≤á onl∙ ì
ßá mino≥á changσ iε OSMASTER.GEN«á Pleasσ notσ tha⌠á thσá releasσ ì
version of REMDRV consists of three serialized .REL files:
REMDRV.REL the remote modem driver
REMCH0.REL master comm port "0" driver
REMCH1.REL master comm port "1" driver
NOTE: For the 16-bit package, the files are named .O
Iε addition¼ thσ followinτ file≤ arσ par⌠ oµ thσ releasσ softwarσ ì
package:
REMCH0.MAC an example of a REMDRV companion module
using the OEM-supplied drivers (via the
COMDRV## entry point)
ATTREM.MAC an example of a simple terminal program
with modem select capability
ATTREM.COM object code of above
ATTREM.CMD same, for 16 bit systems
REMDRV.DOC this text
T∩ install¼ simpl∙ adΣ thσ followinτ linσ t∩ OSMASTER.GEN
REMDRV,REMCH0,REMCH1
WitΦá thi≤ change¼á tw∩ remotσ modeφ channel≤ becomσ activσ.
.paè
THEORY OF OPERATION
REMDRVéá allow≤á an∙ use≥ oε an∙ slavσ iεá ßá smal∞á TurboDO╙ ì
networδá t∩á acces≤á u≡ t∩ 1╢ seria∞ channel≤ (commonl∙á useΣá fo≥ ì
modems)¼á provideΣá thσ channe∞ i≤ free«á REMDRVé i≤ accesseΣá viß ì
DEFDID¼á therefore¼ thσ statioε requestinτ acces≤ mus⌠ bσ ß slavσ ì
oµá thσá maste≥á whicΦ run≤ REMDRVé (rathe≥ thaε thσá slavσá oµá ß ì
second master networked into the first).
REMDRV provides the following functions:
1. attach to remote driver
2. detach from remote driver
3. set remote baud rate
4. interrogate remote baud rate
5. character buffer I/O
Thσá followinτ tex⌠ explain≤ eacΦ functioε iε grea⌠á detail¼ ì
includinτá al∞ parameter≤ t∩ bσ passed«á Noteä tha⌠ fo≥ al∞ REMDRVé ì
functions the C register (CL in 8086) must be set to 33 (21H).
1 - ATTACH TO REMOTE DRIVER
Thi≤á functioεá initiate≤ ß remotσ I/╧ sessioε anΣá mustôá bσ ì
calleΣ prio≥ t∩ an∙ remotσ activit∙ fo≥ thσ desireΣ port.
entry:
reg D (DH) 0FEH
reg B (CH) channel number 00..0FH
return:
reg A (AL) 000H = successful attach
0FFH = requested channel busy
0FEH = requested channel not implemented
2 - DETACH FROM REMOTE DRIVER
Thi≤á functioεá i≤á useΣ a⌠ thσ conclusioε oµ ßá remotσá I/╧ ì
sessioεá t∩ 1⌐ freσ thσ por⌠ fo≥ anothe≥ use≥ anΣ 2⌐á unlinδá thσ ì
port so as not to waste processing power in the master
entry:
reg D (DH) 0FDH
reg B (CH) channel number 00..0FH
return:
none (channel is detached)
.paè
3 - SET REMOTE BAUD RATE
Allow≤ settinτ oµ thσ attacheΣ channel'≤ bauΣ rate« Thσ bauΣ ì
ratσá specificatioε paramete≥ i≤ identica∞ t∩ thσ onσ useΣ iεá T-ì
functioε 3╖ (se⌠ bauΣ rate).
entry:
reg D (DH) 0FCH
reg B (CH) channel number 00..0FH
reg E (DL) baud rate code (ex. 9600=0EH)
return:
none (baud rate is set)
4 - GET REMOTE BAUD RATE
Return≤á thσ remotσ bauΣ ratσ codσ (thσ codσ i≤ identica∞ t∩ ì
the one returned by T-function 38).
entry:
reg D (DH) 0FBH
reg B (CH) channel number 00..0FH
returb:
reg A (AL) baud rate code (ex. 9600=0EH)
5 - CHARACTER BUFFER I/O
Thi≤á functioε i≤ useΣ t∩ transfe≥ datß betweeε thσ selecteΣ ì
por⌠ anΣ thσ callinτ software« Pleasσ notσ tha⌠ thσ transfe≥ FROMä ì
thσ decivσ alway≤ involve≤ ß blocδ oµ data¼ u≡ t∩ 12╖ characters¼ ì
written to the current DMA address.
entry:
reg D (DH) 0FAH
reg B (CH) channel number 00..0FH
bit 7 set if output is desired
reg E (DL) output character (if any)
return:
reg A (AL) number of input characters read into buffer
DMA ADDRESS count (same as A) followed by the input data
.paè
SAMPLE PROGRAM ATTREM
Thi≤á samplσ attach-program¼á supplieΣ iε sourcσ anΣá objec⌠ ì
format¼ allow≤ yo⌡ t∩ attacΦ t∩ anΣ detacΦ froφ an∙ activσ REMDR╓ ì
por⌠á oε thσ master«á Thσ prograφ caε bσ useΣ froφ an∙ slavσ tieΣ ì
t∩á tha⌠ master«á I⌠ wil∞ rejec⌠ attemp⌠ t∩ attacΦ t∩ ßá bus∙á o≥ ì
non-existan⌠ port.
USAGE
Thσá followinτá i≤ ß samplσ sessioε witΦá ATTRE═á (bold=computer¼ ì
light=user):
0A}attrem
ONLY PORTS A..P ALLOWED
0A}attrem a
ATTACHED TO PORT A AT 1200 BAUD
(communication takes place)
......
(now ATTN-ABORT is typed on console)
DETACHED FROM PORT A
0A}attrem c
ERROR: PORT C DOES NOT EXIST
0A}attrem b (assume you are attached to B on
another terminal)
ERROR: PORT B IS BUSY
0A}
.paè.HE SOFTWARE RELEASE NOTES, LEGALITIES
RELEASE NOTE
REMDRVéá i≤ ß copyrighteΣ produc⌠ oµ S«á Kluger¼á Dalla≤á TX« ì
Reproductioεá (othe≥ thaε fo≥ archiva∞ usσ o≥ fo≥ systeφá generaì
tion⌐ withou⌠ writteε authorizatioε i≤ prohibited« Disassembl∙ o≥ ì
unauthorizeΣá reserializatioεá i≤á prohibited«áá Noteéá tha⌠á thi≤ ì
applies only to REMDRV.REL or REMDRV.O!
REMDRVéá i≤á availablσ iε tw∩ forms¼á 1⌐ fo≥ usσá witΦá 8-bi⌠ ì
masters and 2) for use with 16-bit 80186 (!) masters.
BotΦ version≤ includσ thσ samplσ ATTREMé prograφ iε 8- anΣá 16-bi⌠ ì
flavors, but only ATTREM.MAC is supplied.
REMDRVéá ma∙á periodicall∙á bσ updateΣá o≥á improveΣá withou⌠ ì
notice«á Update≤á arσá freσá iµ thσá origina∞á maste≥á disδá witΦ ì
sufficien⌠á returεá postagσ i≤ sent«á ╔ d∩ no⌠ expec⌠ an∙á majo≥ ì
updates to be more frequent than one per 3 months.
BUG REPORTS are strongly encouraged!
.paè.HE REMDRV ORDER FORM
(fill out completely and send the whole sheet)
Pleasσ senΣ _____▀ copie≤ oµ REMDRV«á Serializatioε anΣá version≤ ì
are as follows: (NOTE: only one copy per serial #)
TurboDO╙áseria∞ numbe≥ ____/___▀ REMDR╓ versioε (╕áo≥á16⌐ _______
TurboDO╙áseria∞ numbe≥ ____/___▀ REMDR╓ versioε (╕áo≥á16⌐ _______
TurboDO╙áseria∞ numbe≥ ____/___▀ REMDR╓ versioε (╕áo≥á16⌐ _______
TurboDO╙áseria∞ numbe≥ ____/___▀ REMDR╓ versioε (╕áo≥á16⌐ _______
TurboDO╙áseria∞ numbe≥ ____/___▀ REMDR╓ versioε (╕áo≥á16⌐ _______
TurboDO╙áseria∞ numbe≥ ____/___▀ REMDR╓ versioε (╕áo≥á16⌐ _______
TurboDO╙áseria∞ numbe≥ ____/___▀ REMDR╓ versioε (╕áo≥á16⌐ _______
TurboDO╙áseria∞ numbe≥ ____/___▀ REMDR╓ versioε (╕áo≥á16⌐ _______
TurboDO╙áseria∞ numbe≥ ____/___▀ REMDR╓ versioε (╕áo≥á16⌐ _______
(continue on back if more room needed)
Name: __________________________ Company: ______________________
Address: ________________________________________________________
________________________________________________________
________________________________________________________
Phone number: (____) _____ - ________
Total number of copies: _______ at $25.00 each
Check or Money Order enclosed for $ _________.00
or
Please ship COD (postage/COD fees added to total)
Please sign here to accept the restrictions
placeΣáoεáthσáproduc⌠áoεáthσápreviou≤ápagσá║ ___________________
NOTE║á pleasσá checδá herσá iµ yo⌡ have║á (__⌐ ┤á differen⌠á disδ ì
drivers or (__) 4 different circuits defined in your master.
.paè.HE RELEASE NOTES FOR DEMO VERSION "REMDRVT.REL"
Thi≤ i≤ ß dem∩ version« Licensσ i≤ granteΣ fo≥ noncommercia∞ ì
use and distribution for demonstration purposes only.
REMDRVT operates like the real REMDRV with the following
important differences:
- REMCH░á onl∙ i≤ supplieΣ fo≥ usσ witΦ comφ channe∞ ░ oεá thσ ì
ááááámaster.
- Only one remote driver (normally REMCH0) can be used
- Attempt≤ t∩ acces≤ an∙ function≤ witΦ thσ B-registe≥ noté se⌠ ì
áááááto 00H (channel 0) may result in a total system crash.
REMDRVTéá allow≤á freσ acces≤ t∩ remotσ channe∞ "Aóá witΦá n∩ ì
restrictions.