HLCSDL1 ;ALB/MTC/JC - X3.28 LOWER LAYER PROTOCOL 2.2 - 2/28/95 ;08/19/97 [ 04/02/2003 8:38 AM ]
Source file <HLCSDL1.m>
| Package | Total | Call Graph |
|---|---|---|
| Health Level Seven | 4 | ($$READACK,$$READBK,$$READENQ,$$RUN,$$VALID,BUILD,ENQ,EOT,SENDACK,SENDNAK,TRACE)^HLCSDL2 MONITOR^HLCSDR2 ($$DEQUEUE,$$ENQUEUE,PUSH)^HLCSQUE ($$NEXTLINE,APPEND)^HLCSUTL |
| Name | Comments | DBIA/ICR reference |
|---|---|---|
| MASTERQ | ||
| WRITEQ | ||
| RETRY | ;-- write data
|
|
| SLAVE | ;-- this function will check if anything is ready to read in from
; the port. If nothing is ready then return to polling, else ; start slave process. |
|
| TRANS(ST) | ;Translate controls in string
|
|
| READ | ;-- This function will take the incoming data from the device and
; store in file 870. After each read an ack will be sent to the ; client application. Once an EOT has been received, return to ; polling. |
|
| BIDRET | ;-- bid for master status
|
|
| SENDQ | ;-- exit
|
|
| BID(MAXTRY) | ;-- This function will bid for Master status MAXTRY times
; and return a 1 if succesful, 0 if fails ; INPUT - MAXTRY - Maximum number of attemps before failing ; OUTPUT - 1 for ok; 0 fails |
|
| EXIT | ;-- Cleanup
|
|
| BIDQ | ;-- exit
|
|
| READQ | ||
| START | ;
|
|
| SLAVEQ | ;
|
|
| SEND(HLTEXT,HLHEAD,HLFOOT,HLRETRY,HLBK) | ;-- This function will write the X3.28 formatted
; string out the port and wait for an ack. If this function fails ; 0 will be returned, else 1. |
|
| WRITE(HLDOUT0,HLDOUT1) | ;-- This function will take the message contained
; in file 870 specified by HLDOUT0 and HLDOUT1 and write the data out. ; after each write the system will wait for an ack. ; INPUT : HLDOUT0 - IEN of file #870 ; HLDOUT1 - IEN of out queue multiple |
|
| LOG(ST1,OP) | ;Log reads/writes (translates ctrls)
|
|
| MASTER | ;-- if outgoing messages are present then establish m/s and begin
; transmission of message. |
|
| POLL | ;-- This function will check if any messages should be sent
; then if anything is in the buffer to read in. If there is data ; to write out then the system will bid for master status and if ; successful x-mit the message. If the system receives a request to ; receive data, then it will attemp to enter a slave mode and read ; data in. |
|
| LOOP | ;-- main loop for reading in message
|
| Name | Field # of Occurrence |
|---|---|
| $$READACK^HLCSDL2 | BIDRET+7, RETRY+16 |
| $$READBK^HLCSDL2 | LOOP+5 |
| $$READENQ^HLCSDL2 | SLAVE+8 |
| $$RUN^HLCSDL2 | POLL+13, POLL+16 |
| $$VALID^HLCSDL2 | LOOP+11 |
| BUILD^HLCSDL2 | WRITE+11 |
| ENQ^HLCSDL2 | BIDRET+2 |
| EOT^HLCSDL2 | MASTER+17 |
| SENDACK^HLCSDL2 | SLAVE+11, LOOP+28 |
| SENDNAK^HLCSDL2 | LOOP+16 |
| TRACE^HLCSDL2 | POLL+9, POLL+15, POLL+18, SLAVE+6, SLAVE+10, SLAVE+13, LOOP+13, MASTER+5, MASTER+8, BIDRET+1 , BIDRET+4, RETRY+2, RETRY+13 |
| MONITOR^HLCSDR2 | POLL+11, POLL+13, POLL+16, LOOP+3, LOOP+14, LOOP+25, LOOP+26, BID+8, BIDRET+5, RETRY+3 , RETRY+14, RETRY+16 |
| $$DEQUEUE^HLCSQUE | MASTER+6 |
| $$ENQUEUE^HLCSQUE | LOOP+19 |
| PUSH^HLCSQUE | MASTER+13 |
| $$NEXTLINE^HLCSUTL | WRITE+9, WRITE+10 |
| APPEND^HLCSUTL | LOOP+20 |
| Name | Line Occurrences |
|---|---|
| Function Call: WRITE |
|
| Function Call: WRITE |
|
| Function Call: WRITE |
|
| Name | Line Occurrences (* Changed, ! Killed) |
|---|---|
| ^XTMP("HL" | LOG+4, LOG+7*, LOG+8* |
| Name | Line Occurrences |
|---|---|
| $$BID | MASTER+11 |
| $$SEND | WRITE+9 |
| $$TRANS | LOG+6 |
| BIDQ | BIDRET+7, BIDRET+10 |
| BIDRET | BIDRET+11 |
| EXIT | START+9 |
| LOG | RETRY+8, RETRY+9, RETRY+11 |
| LOOP | LOOP+11, LOOP+30 |
| MASTER | POLL+18 |
| MASTERQ | MASTER+8, MASTER+13 |
| POLL | START+7 |
| READ | SLAVE+14 |
| READQ | LOOP+7, LOOP+9 |
| RETRY | RETRY+20 |
| SENDQ | RETRY+16, RETRY+19 |
| SLAVE | POLL+15 |
| SLAVEQ | SLAVE+8 |
| WRITE | MASTER+16 |
| >> | Not killed explicitly |
| * | Changed |
| ! | Killed |
| ~ | Newed |
| Name | Field # of Occurrence |
|---|---|
| BTERM | READ+5~, LOOP+5, LOOP+11, LOOP+24 |
| DT | LOG+4 |
| HLACKBLK | START+1~ |
| HLBID | MASTER+3~, MASTER+11*, MASTER+13, MASTER+15 |
| HLBK | READ+5~, LOOP+5, LOOP+11, LOOP+28, SEND~, RETRY+13, RETRY+16 |
| HLC1 | START+2~ |
| HLC2 | START+2~ |
| HLCHK | START+1~ |
| >> HLCK | LOOP+5, LOOP+11 |
| >> HLCTRL( | TRANS+3 |
| HLDATA | READ+5~, LOOP+7, LOOP+9 |
| HLDLX | START+3~, BID+5~ |
| HLDOUT0 | START+1~, LOOP+19*, LOOP+20, LOOP+25, LOOP+26, MASTER+3~, MASTER+6*, MASTER+8, MASTER+9*, MASTER+13 , MASTER+16, WRITE~, WRITE+9, WRITE+10 |
| HLDOUT1 | START+1~, LOOP+19*, LOOP+20, LOOP+25, LOOP+26, MASTER+3~, MASTER+9*, MASTER+13, MASTER+16, WRITE~ , WRITE+9, WRITE+10, RETRY+16 |
| >> HLDP | POLL+11, POLL+13, POLL+16, LOOP+3, LOOP+14, LOOP+19, MASTER+6, BID+8, BIDRET+5, RETRY+3 , RETRY+14, RETRY+16 |
| >> HLEOT | LOOP+9 |
| >> HLETB | WRITE+11 |
| >> HLETX | LOOP+24, WRITE+11 |
| HLETXB | READ+5~ |
| HLFLAG | POLL+7~, POLL+8*, POLL+11, POLL+13*, POLL+16* |
| HLFOOT | WRITE+6~, WRITE+9, WRITE+11, SEND~, RETRY+11 |
| HLHEAD | WRITE+6~, WRITE+9, WRITE+11, SEND~, RETRY+7, RETRY+8 |
| HLI | READ+5~, READ+7*, WRITE+9*, WRITE+11 |
| HLIND0 | START+1~ |
| HLIND1 | START+1~ |
| >> HLLEN | LOOP+5, LOOP+11 |
| HLLINE | START+2~, READ+5~, READ+7*, LOOP+11, LOOP+21* |
| >> HLLOG | LOG+5*, LOG+7* |
| HLM | START+3~, START+5* |
| >> HLN | LOG+6*, LOG+7 |
| HLNXST | START+1~, START+2~, START+5* |
| HLRETRY | START+1~, SEND~, RETRY+19 |
| HLTEMP | WRITE+6~ |
| HLTEXT | SEND~, RETRY+9 |
| HLTEXT1 | WRITE+6~, WRITE+9! |
| HLTOUT | START+2~ |
| >> HLTRACE | LOG+3 |
| HLTRANS | START+1~ |
| HLTRIES | BID+5~, BID+6*, BIDRET+9*, BIDRET+10 |
| HLTRY | SEND+11~, SEND+12*, RETRY+18*, RETRY+19 |
| HLX | SLAVE+4~, READ+5~, LOOP+5* |
| HLX1 | WRITE+6~, WRITE+8*, WRITE+9*, WRITE+10 |
| HLX2 | WRITE+6~, WRITE+8*, WRITE+9, WRITE+11 |
| HLX3 | WRITE+6~, WRITE+10*, WRITE+11 |
| HLXOR | START+2~ |
| >> I | TRANS+2* |
| IO | RETRY+5 |
| >> J | TRANS+2*, TRANS+3*, TRANS+4 |
| MAXTRY | BID~, BIDRET+10 |
| OP | LOG~, LOG+7 |
| RESULT | BID+5~, BID+6*, BIDRET+7*, BIDQ+1, SEND+11~, SEND+12*, RETRY+16*, RETRY+19*, SENDQ+1 |
| ST | TRANS~, TRANS+2 |
| ST1 | LOG~, LOG+6 |
| >> ST2 | TRANS+2*, TRANS+4*, TRANS+5 |
| U | LOOP+19, MASTER+9, LOG+4, LOG+5, LOG+7 |
| X | START+1~, SEND+11~, RETRY+9*, LOG+4~*, LOG+5*, LOG+7*, LOG+8 |