14 2278 ... SEG IPBMOPC,84,COMM - IPB,,G501 4 22#B ...[ 17 22FJ ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LIMITED 1982. 13 22LQ ...[ THIS EXCLUDES CODE UNDER #SKI G501 4 22RY ...[ 14 22_= #LIS K0IPBMOPC>K0IPB>K0ALLGEO>K0GREATGEO 7 2357 ...#OPT G501 = 0 6 2394 ...#SKI G501&1 14 23#_ ...# WITH UGUG EDIT M501 (3-SHIFT INPUT ON MOP) 12 23DW SEGENTRY K1IPBMOPC,SK1IPBMOPC 12 23GD SEGENTRY K2IPBMOPC,SK2IPBMOPC 13 23GS SEGENTRY K3IPBMOPC,SK3IPBMOPC 12 23H8 SEGENTRY K4IPBMOPC,SK4IPBMOPC 12 23HJ SEGENTRY K5IPBMOPC,SK5IPBMOPC 11 23J2 WHLDY 3600*24/K9*1000 10 23M6 SEGENTRY K52IPBMOPC 9 23Q= ZJTWAIT 60000/K9 9 23TB ZJTMI 60000/K9 10 23YG ZMIN 60+3/FONINTP 9 23_2 SCAN #76217610 9 23_G SCANCEL 6HCANCEL 20 2422 SEGENTRY K50IPBMOPC [TRANSERR - RESTORE TIME MACRO 8 242G SERROR +34 16 2432 34HTRANSMISSION ERROR - PLEASE REPEAT 4 243L [ 4 246Q [ 7 249W ZLNOF LONGOFF 7 24*2 EXIT 3 0 4 24*5 # 21 24*8 # GET AMXOR/IOUT BLOCK FOR OUTPUT ; ON ENTRY X3 POINTS TO AMXOR/ADCB 20 24*? # BLOCK ; PUT MESSAGE CHAR CT.IN X4 ; HEADER IN X5 ; CALL ON X7 4 24*B # 8 24*F SETU SBX 7 FX1 18 24*J SLL 5 12 [HEADER AND DISCARD MASK 7 24*M ADX 5 4 17 24*Q ADN 4 IDATA-A1*4+3 [TOTAL COUNT OF CHARS 7 24*T SRL 4 2 11 24*Y SETUPCORE 4,2,AMXOR,IOUT,1 10 24B3 MHUNTW 3,AMXOR,ADCB 10 24B6 STO 5 IPBIDE+1(2) 18 24B9 SLC 5 5 [B4 SET IF 'READY' OUTPUT 7 24B# ERN 5 1 7 24BC ANDN 5 1 21 24BG STO 5 IMOPTY(2) [WAKE ACTIVITY AFTER NON-READY OUTPUT 17 24BK STOZ IBSW(2) [BLOCK STATUS WORD 10 24BN LDX 0 IDENTNO(3) 17 24BR STO 0 IPBIDE(2) [IDENTIFIER NUMBER 17 24BW LDN 5 IDATA(2) [START OF OUTPUT DATA 8 24B_ ADX 7 FX1 7 24C4 EXIT 7 0 4 24C7 # 21 24C= # CHANGE ETX ON END OF OUTPUT TO CANCEL IN CASE REINPUTTING ON TAPE 4 24C* # 7 24CD TOCA BCHX 1 / 7 24CH BCHX 1 / 8 24CL LDN 4 #10 7 24CP BCHX 1 / 7 24CS SBN 1 1 8 24CX DCH 4 0(1) 7 24D2 EXIT 0 0 4 24D6 [ 18 24XQ [ ENTERED BY DOWN FROM IPBMOP TO WAIT FOR CONTINUE OUTPUT 13 25X2 [ X3 CONTAINS TIME WE STARTED WAITING 18 266S [ OR IF X5 -VE WAIT FOR TIMED OUT CONSOLE TO BE RESTARTED 4 26BL [ 6 26W= SK1IPBMOPC 8 26X3 BPZ 5 TVDU 17 26XS [ CALCULATE TIME FOR WAIT 9 26YK LDX 0 ZMIN(1) 9 26_B MPY 0 IPMOPWAIT 11 2727 YLNST LONGSTOP TOBRK,VTUP,,,1 17 272Y [ UPPLUS 1 IF RESTARTED 7 273P WOPAG UPPLUS 1 8 274G TOBRK CALL 3 ZLNOF 8 275? BRN WOPAG 9 2764 VTUP LDX 1 CLONG3(2) 7 276T SBN 1 2 8 277L BNG 1 YSUP 21 278C [ J IF TIME UP ELSE CONTINUE WAITING 8 2798 BDX 1 YLNST 8 279_ YSUP CALL 3 ZLNOF 17 27=Q [ UPPLUS 2 IF TIME UP 7 27?H UPPLUS 2 4 27## TVDU 18 27*5 [ WAIT FOR CONTINUE OUTPUT 7 27*W LDX 7 3 9 27FR LDX 4 ZJTMI(1) 9 27KN MPY 4 IPMOPWAIT 10 27PK ADX 5 ZJTWAIT(1) 8 27TG NGN 6 #1001 8 28*6 BRN SETZZ 9 28SQ SETAZ COOR4 CONTVDUWT 5 29#B SETZZ 10 29S2 MHUNTW 3,AMXOR,ADCB 8 2=?L LDN 0 #200 9 2=R= ANDX 0 IWAIT(3) 9 2?=W ERS 0 IWAIT(3) 8 2?QG BNZ 0 TWAB 11 2#=6 [ J IF ABANDON 10 2#B3 LDX 0 ISTATUS(3) 8 2#FY BNG 0 TINOP 16 2#KT [ J IF IDETIFIER IS INOPERABLE 8 2#PQ LDCT 0 #100 10 2*9B SMO A1+FPTR(3) 9 2*P2 ANDX 0 FOURTHWD 8 2B8L BNZ 0 TWAB 11 2BN= [ J IF MOP OFF 8 2C7W LDN 0 #1000 9 2CMG ANDX 0 ICONTU(3) 8 2D76 BZE 0 WITUP 8 2DLQ LDX 0 JTIME 7 2F6B SBX 0 7 8 2FL2 BPZ 0 NCHD 9 2G5L ADX 0 WHLDY(1) 7 2GK= NCHD SBX 0 5 8 2H4W BPZ 0 TIMEX 11 2HJG [ J IF TIME UP 8 2J46 BRN SETAZ 9 2L_W TWAB ANDS 6 ICONTU(3) 5 2MFG UP 11 2M_6 [ GO UP FOR MOP OFF OR ABANDON 7 2NDQ WITUP UPPLUS 1 11 2NYB [ UPPLUS 1 FOR CONTINUE OUTPUT 9 2PD2 TIMEX ANDS 6 ICONTU(3) 7 2PXL UPPLUS 2 9 2QC= [ UPPLUS 2 FOR TIME UP 5 2QCF TINOP 9 2QCN ANDS 6 ICONTU(3) 7 2QCX UPPLUS 3 13 2QD6 [ UPPLUS 3 IF IDENTIFIER IS INOPERABLE 4 2QDD [ 4 2QFL [ 8 2QGS [ K2IPBMOPC 4 2QJ2 [ 4 2QK8 [ 6 2QLB SK2IPBMOPC 4 2QMJ # 12 2QNQ # TEST IF BREAK-IN IS ALLOWED 4 2QPY # 11 2QR7 NBREAKIN 2,8,XBIRJ,XBIOK 5 2QRL XBIOK 7 2QS5 LDN 0 0 9 2QSJ ORS 0 AWORK1(2) 9 2QSP ... LDX 0 AWORK1(2) 10 2QSW ... STO 0 ACOMMUNE1(2) 16 2QT3 UP [BREAK-IN ALLOWED 17 2QTK XBIRJ UPPLUS 1 [BREAK-IN REJECTED 4 2R*9 [ 7 2RST [ K3IPBMOPC 4 2S#F [ 4 2SS5 # 4 2T?P # 21 2TR* # TRANSMISSION ERROR ON INPUT : OUTPUT ERROR MESSAGE & REPEAT READY 16 2W=_ # IF A MOP CONSOLE, ELSE TAKE INOPERABLE ACTION. 4 2WQK # 6 2X=9 SK3IPBMOPC 10 2XPT MHUNTW 3,AMXOR,ADCB 17 2Y9F LDCH 4 ICHARS(3) [LENGTH OF NEWLINE 18 2YP5 ADX 4 SERROR(1) [LENGTH OF ERROR MESSAGE 17 2_8P ADX 4 INOCHS(3) [LENGTH OF NL+ETX+1 8 2_N* LDN 5 #4004 18 327_ CALL 7 SETU [SET UP AMXOR/IOUT BLOCK 10 32MK LDN 4 INLBUFF(3) 9 3379 LDCH 1 ICHARS(3) 14 33LT MVCH 4 0(1) [NEWLINE 8 346F LDX 1 FX1 10 34L5 LDN 4 SERROR+1(1) 9 355P LDX 1 SERROR(1) 21 35K* MVCH 4 0(1) [TRANSMISSION ERROR - PLEASE REPEAT 9 364_ LDX 1 INOCHS(3) 10 36JK LDN 4 INLBUFF(3) 18 3749 MVCH 4 0(1) [NEWLINE + END OF MESSAGE 7 37HT LDX 1 5 17 383F CALL 0 TOCA [CHANGE ETX TO CANCEL 9 38H5 LDX 4 IREADY(3) 17 392P SBN 4 2 [TRUNCATE TO OMIT DC1 8 39G* LDN 5 #4214 8 39__ CALL 7 SETU 7 3=FK LDCT 0 2 16 3=_9 ORS 0 IWAIT(3) [INDICATE 'READY' 17 3?DT BRN TERED [OUTPUT READY MESSAGE 4 3?YF [ 7 3#D5 [ K4 IPBMOPC 4 3#XP [ 4 3*C* # 14 3*W_ # INPUT CANCELLED : OUTPUT 'NL CANCEL _' 4 3BBK # 6 3BW9 SK4IPBMOPC 10 3C*T MHUNTW 3,AMXOR,ADCB 17 3CTF LDCH 4 ICHARS(3) [LENGTH OF NEWLINE 19 3D*5 ADX 4 IREADY(3) [LENGTH OF READY TERMINATOR 14 3DSP ADN 4 6 [CANCEL 8 3F#* LDN 5 #4214 8 3FR_ CALL 7 SETU 10 3G?K LDN 4 INLBUFF(3) 9 3GR9 LDCH 1 ICHARS(3) 14 3H=T MVCH 4 0(1) [NEWLINE 8 3HQF LDX 4 FX1 9 3J=5 ADN 4 SCANCEL 14 3JPP MVCH 4 6 [CANCEL 5 3K9* TERED 7 3KN_ LDN 0 1 8 3L8K SMO FX2 9 3LN9 ORS 0 AWORK1 8 3LR* ... SMO FX2 9 3LWF ... LDX 0 AWORK1 8 3L_K ... SMO FX2 9 3M4P ... STO 0 ACOMMUNE1 10 3M7T LDN 4 IREADY+1(3) 9 3MMF LDX 1 IREADY(3) 17 3N75 MVCH 4 0(1) ['READY' TERMINATOR 5 3NLP UP 4 3P6* [ 7 3PK_ [ K5 IPBMOPC 4 3Q5K [ 4 3QK9 # 21 3R4T # GET LAST FOUR CHARACTERS INTO X5 & X6 TO TEST FOR CANCEL & BREAKIN 17 3RJF # IF A MOP DISPLAY,TEST FOR AN ACTION KEY MESSAGE 4 3S45 # 6 3SHP SK5IPBMOPC 11 3T3* MHUNTW 2,AMXOR,IMESSG 10 3TG_ MHUNTW 3,AMXOR,ADCB 8 3W2K LDX 4 A1(2) 17 3WG9 ANDN 4 #7777 [NO. OF CHARS INPUT 7 3W_T SRC 4 2 17 3XFF ADN 4 A1+1(2) [INPUT STARTS IN A1+2 21 3X_5 STOZ A1+1(2) [CLEAR A1+1 IN CASE INPUT <4 CHARS 7 3YDP LDN 5 6 18 3YY* MVCH 4 4 [LAST FOUR CHARS INTO X6 10 3_C_ LDXC 0 ICURSOR(3) 15 3_XK BCS VAKEY [MOP DISPLAY 15 42C9 SBX 6 SCAN(1) [#76217610 7 42WT LDN 5 0 8 43BF SLL 56 12 8 43W5 BZE 6 TCANC 8 44*P BZE 5 XBI 7 44T* LDN 0 2 8 45#_ SMO FX2 17 45SK ORS 0 AWORK1 [AWORK1 = 2 IN CHAR 2 8 45XP ... SMO FX2 9 462T ... LDX 0 AWORK1 8 465_ ... SMO FX2 9 4695 ... STO 0 ACOMMUNE1 5 46#9 UP 4 46RT XBI 5 47?F TCANC 7 47R5 FREECORE 2 10 48=P BZE 6 SK4IPBMOPC 10 48Q* BRN SK2IPBMOPC 6 48RL ...#SKI G501&1 4 48SX ...( 20 48W8 ...VAKEY LDX 0 6 [ TEST FOR ACTION KEY 7 48XF ... SRL 0 6 8 48YQ ... ANDN 0 #7777 8 4923 ... ERN 0 #7613 8 493# ... BNZ 0 VNAK 17 494K ... LDCH 4 6 [ ACTION KEY VALUE 4 495W ...) 7 4977 ...#SKI G501&1$1 4 498D ...( 21 499_ VAKEY LDCT 1 #200 [TEST FOR AN ACTION KEY MESSAGE IN THE LAST 3 CHARS 8 49PK LDCH 0 6(1) 8 4=99 SBN 0 #76 17 4=NT BNZ 0 VNAK [NO ACTION KEY FOUND 7 4?8F VC13 BCHX 1 / 8 4?N5 LDCH 0 6(1) 8 4#7P SBN 0 #13 17 4#M* BNZ 0 VNAK [NO ACTION KEY FOUND 4 4*6_ # 7 4*LK BCHX 1 / 16 4B69 LDCH 4 6(1) [ACTION KEY ^N^ 4 4BB3 ...) 17 4BKT SBN 4 1 [TEST FOR BREAK-IN 18 4C5F BZE 4 XBIA [ACTION KEY 1 : BREAK-IN 8 4CK5 SBN 4 16 18 4D4P BZE 4 XBIA [ACTION KEY ! : BREAK-IN 7 4DJ* LDX 0 4 7 4F3_ ADN 0 9 8 4FHK ANDN 0 #57 20 4G39 BZE 0 VNBI [ACT KEY 8 OR ( : RESTART MOPWAIT 8 4HG5 LDCT 0 #200 10 4H_P ANDX 0 ICURSOR(3) 19 4JF* BZE 0 VNBI [NOT IN SCREEN EDITING MODE 21 4JY_ NAME 2,FILE,FRB [RENAME ACTION KEY MESSAGE BLOCK AND 14 4KDK UPPLUS 6 [GO UP 4 4KY9 VNBI 15 4LXF FREECORE 2 [AMXOR/IMESSG 7 4MC5 LDN 5 1 9 4MWP ANDX 5 IWAIT(3) 21 4NB* BZE 5 VTYPE [O/P NOT SUSPENDED:IGNORE ACTION KEY 8 4NT_ ADN 4 14 21 4P*K BZE 4 VOCU [ACTION KEY 3:CONTINUE OUTPUT COMMAND 8 4PT9 SBN 4 17 9 4Q#T LDXC 0 ICONTU(3) 20 4QSF BCS VCOC [USING CODE 2 : TEST FOR ^/^ CHAR 20 4R#5 ADN 4 1 [USING CODE 1 : TEST FOR ^#^ CHAR 20 4RRP VCOC BNZ 4 VTYPE [NOT A CONTINUE OUTPUT COMMAND 21 4S?* VOCU DEX 4 ICONTU(3) [CLEAR CT OF LINES O/P SINCE LAST T-R 21 4SQ_ LDX 0 ACOMMUNE7(2) [+VE IF CURRENT MESSAGE NOT COMPLETED 18 4T=K BZE 0 OUFIN [NO MESSAGE PART REMAINS 19 4TQ9 DSA 0 ACOMMUNE8(2) [SET MESSAGE PART CHAR COUNT 9 4W9T ANDX 0 HALFTOP 19 4WPF ... STO 0 ACOMMUNE1(2) [STORE MESSAGE BLOCK TYPE 20 4X95 LDX 0 ACOMMUNE3(2) [RELATIVE MESSAGE PART ADDRESS 10 4XNP STO 0 ACOMMUNE9(2) 19 4Y8* BRN VDUMESS [OUTPUT REMAINDER OF ^SUSPENDED^ MESSAGE 4 4YM_ # 4 4_7K XBIA 7 4_M9 FREECORE 2 10 526T BRN SK2IPBMOPC 4 52LF # 9 5365 VNAK LDX 5 IWAIT(3) 7 53KP SLL 5 7 19 545* BNG 5 TREV [READY : ACCEPT INPUT DATA 15 54J_ FREECORE 2 [AMXOR/IMESSG 5 554K VTYPE 8 55J9 UPPLUS 2 5 563T VDUMESS 8 56HF UPPLUS 3 4 5735 TREV 8 57GP UPPLUS 4 5 582* OUFIN 8 58F_ UPPLUS 5 4 58_K #END 6 ____ ...362213330002