LD D,A LD A,L CP 16 JP C,2211;CO.TEMPS JR NZ,0AC2;PO.TAB LD B,H LD C,D LD A,1F SUB C JR C,0AAC;PO.AT.ERR ADD A,02 LD C,A BIT 1,(IY+01);FLAGS JR NZ,0ABF;PO.AT.SET LD A,16 SUB B 0AAC PO.AT.ERR JP C,1E9F;REPORT.B INC A LD B,A INC B BIT 0,(IY+02);TVFLAG JP NZ,0C55;PO.SCR CP (IY+31);DF.SZ JP C,0C86;REPORT.5 0ABF PO.AT.SET JP 0DD9;CL.SET 0AC2 PO.TAB LD A,H 0AC3 PO.FILL CALL 0B03;PO.FETCH ADD A,C DEC A AND 1F RET Z LD D,A SET 0,(IY+01);FLAGS 0AD0 PO.SPACE LD A,20 CALL 0C3B;PO.SAVE DEC D JR NZ,0AD0;PO.SPACE RET 0AD9 PO.ABLE CALL 0B24;PO.ANY 0ADC PO.STORE BIT 1,(IY+01);FLAGS JR NZ,0AFC;PO.ST.PR BIT 0,(IY+02);TVFLAG JR NZ,0AF0;PO.ST.E LD (5C88),BC;S.POSN LD (5C84),HL;DF.CC RET 0AF0 PO.ST.E LD (5C8A),BC;SPOSNL LD (5C82),BC;ECHO.E LD (5C86),HL;DFCCL RET 0AFC PO.ST.PR LD (IY+45),C;P.POSN LD (5C80),HL;PR.CC RET 0B03 PO.FETCH BIT 1,(IY+01);FLAGS JR NZ,0B1D;PO.F.PR LD BC,(5C88);S.POSN LD HL,(5C84);DF.CC BIT 0,(IY+02);TVFLAG RET Z LD BC,(5C8A);SPOSNL LD HL,(5C86);DFCCL RET 0A1D PO.F.PR LD C,(IY+45);P.POSN LD HL,(5C80);PR.CC RET 0B24 PO.ANY CP 80 JR C,0B65;PO.CHAR CP 90 JR NC,0B52;PO.T&UDG LD B,A CALL 0B3B;PO.GR.1 CALL 0B03;PO.FETCH LD DE,5C92;MEMBOT JR 0B7F;PR.ALL 0B38 PO.GR.1 LD HL,5C92;MEMBOT CALL 0B3E;PO.GR.2 0B3E PO.GR.2 RR B SBC A,A AND 0F LD C,A RR B SBC A,A AND F0 OR C LD C,04 0B4C PO.GR.3 LD (HL),A INC HL DEC C JR NZ,0B4C;PO.GR.3 RET 0B52 PO.T&UDG SUB A5 [Plus 2: JP 3B9F JR NC,0B5F;PO.T NOP] ADD A,15 PUSH BC LD BC,(5C7B);UDG JR 0B6A;PO.CHAR.2 0B5F PO.T CALL 0C10;PO.TOKENS JP 0B03;PO.FETCH 0B65 PO.CHAR PUSH BC LD BC,(5C36);CHARS 0B6A PO.CHAR.2 EX DE,HL LD HL,5C3B;FLAGS RES 0,(HL) CP 20 JR NZ,0B76;PO.CHAR.3 SET 0,(HL) 0B76 PO.CHAR.3 LD H,00 LD L,A ADD HL,HL ADD HL,HL ADD HL,HL ADD HL,BC POP BC EX DE,HL 0B7F PR.ALL LD A,C DEC A LD A,21 JR NZ,0B93;PR.ALL.1 DEC B LD C,A BIT 1,(IY+01);FLAGS JR Z,0B93;PR.ALL.1 PUSH DE CALL 0ECD;COPY.BUFF POP DE LD A,C 0B93 PR.ALL.1 CP C PUSH DE CALL Z,0C55;PO.SCR POP DE PUSH BC PUSH HL LD A,(5C91);P.FLAG LD B,FF RRA JR C,0BA4;PR.ALL.2 INC B 0BA4 PR.ALL.2 RRA RRA SBC A,A LD C,A LD A,08 AND A BIT 1,(IY+01);FLAGS JR Z,0BB6;PR.ALL.3 SET 1,(IY+30);FLAGS2 SCF 0BB6 PR.ALL.3 EX DE,HL 0BB7 PR.ALL.4 EX AF,AF' LD A,(DE) AND B XOR (HL) XOR C LD (DE),A EX AF,AF' JR C,0BD3;PR.ALL.6 INC D 0BC1 PR.ALL.5 INC HL DEC A JR NZ,0BB7;PR.ALL.4 EX DE,HL DEC H BIT 1,(IY+01);FLAGS CALL Z,0BDB;PO.ATTR POP HL POP BC DEC C INC HL RET 0BD3 PR.ALL.6 EX AF,AF' LD A,20 ADD A,E LD E,A EX AF,AF' JR 0BC1;PR.ALL.5 0BDB PO.ATTR LD A,H RRCA RRCA RRCA AND 03 OR 58 LD H,A LD DE,(5C8F);ATTR.T LD A,(HL) XOR E AND D XOR E BIT 6,(IY+57);P.FLAG JR Z,0BFA;PO.ATTR.1 AND C7 BIT 2,A JR NZ,0BFA;PO.ATTR.1 XOR 38 0BFA PO.ATTR.1 BIT 4,(IY+57);P.FLAG JR Z,0C08;PO.ATTR.2 AND F8 BIT 5,A JR NZ,0C08;PO.ATTR.2 XOR 07 0C08 PO.ATTR.2 LD (HL),A RET 0C0A PO.MSG PUSH HL LD H,00 EX (SP),HL JR 0C14;PO.TABLE 0C10 PO.TOKENS LD DE,0095;token table PUSH AF 0C14 PO.TABLE CALL 0C41;PO.SEARCH JR C,0C22;PO.EACH LD A,20 BIT 0,(IY+01);FLAGS CALL Z,0C3B;PO.SAVE 0C22 PO.EACH LD A,(DE) AND 7F CALL 0C3B;PO.SAVE LD A,(DE) INC DE ADD A,A JR NZ,0C22;PO.EACH POP DE CP 48 JR Z,0C35;PO.TRSP CP 82 RET C 0C35 PO.TRSP LD A,D CP 03 RET C LD A,20 0C3B PO.SAVE PUSH DE EXX RST 0010;PRINT.A.1 EXX POP DE RET 0C41 PO.SEARCH PUSH AF EX DE,HL INC A 0C44 PO.STEP BIT 7,(HL) INC HL JR Z,0C44;PO.STEP DEC A JR NZ,0C44;PO.STEP EX DE,HL POP AF CP 20 RET C LD A,(DE) SUB 41 RET 0C55 PO.SCR BIT 1,(IY+01);FLAGS RET NZ LD D,0DD9;CL.SET PUSH DE LD A,B BIT 0,(IY+02);TVFLAG JP NZ,0D02;PO.SCR.4 CP (IY+31);DF.SZ JR C,0C86;REPORT.5 RET NZ BIT 4,(IY+02);TVFLAG JR Z,0C88;PO.SCR.2 LD E,(IY+2D);BREG DEC E JR Z,0CD2;PO.SCR.3 LD A,00 CALL 1601;CHAN.OPEN LD SP,(5C3F);LIST.SP RES 4,(IY+02);TVFLAG RET 0C86 REPORT.5 RST 0008;ERROR.1 DEFB 04;"Out of screen" 0C88 PO.SCR.2 DEC (IY+52);SCR.CT JR NZ,0CD2;PO.SCR.3 LD A,18 SUB B LD (5C8C),A;SCR.CT LD HL,(5C8F);ATTR.T PUSH HL LD A,(5C91);P.FLAG PUSH AF LD A,FD CALL 1601;CHAN.OPEN XOR A LD DE,0CF8;"scroll?" CALL 0C0A;PO.MSG SET 5,(IY+02);TVFLAG LD HL,5C3B;FLAGS SET 3,(HL) RES 5,(HL) EXX CALL 15D4;WAIT.KEY EXX CP 20 JR Z,0D00;REPORT.D CP E2 JR Z,0D00;REPORT.D OR 20 CP 6E JR Z,0D00;REPORT.D LD A,FE CALL 1601;CHAN.OPEN POP AF LD (5C91),A;P.FLAG POP HL LD (5C8F),HL;ATTR.T 0CD2 PO.SCR.3 CALL 0DFE;CL.SC.ALL LD B,(IY+31);DF.SZ INC B