home *** CD-ROM | disk | FTP | other *** search
- 0EDF CLEAR.PRB LD HL,5B00;print buffer LD (IY+46),L;PR.CC XOR A LD B,A 0EE7 PRB.BYTES LD (HL),A INC HL DJNZ 0EE7;PRB.BYTES RES 1,(IY+30);FLAGS2 LD C,21 JP 0DD9;CL.SET 0EF4 COPY.LINE LD A,B CP 03 SBC A,A AND 02 OUT (FB),A LD D,A 0EFD COPY.L.1 CALL 1F54;BREAK.KEY JR C,0F0C;COPY.L.2 LD A,04 OUT (FB),A EI CALL 0EDF;CLEAR.PRB RST 0008;ERROR.1 DEFB 0C;"BREAK/CONT repeats" 0F0C COPY.L.2 IN A,(FB) ADD A,A RET M JR NC,0EFD;COPY.L.1 LD C,20 0F14 COPY.L.3 LD E,(HL) INC HL LD B,08 0F18 COPY.L.4 RL D RL E RR D 0F1E COPY.L.5 IN A,(FB) RRA JR NC,0F1E;COPY.L.5 LD A,D OUT (FB),A DJNZ 0F18;COPY.L.4 DEC C JR NZ,0F14;COPY.L.3 RET 0F2C EDITOR LD HL,(5C3D);ERR.SP PUSH HL 0F30 ED AGAIN LD HL,107F;ED.ERROR PUSH HL LD (5C3D),SP;ERR.SP 0F38 ED.LOOP CALL 15D4;WAIT.KEY PUSH AF LD D,00 LD E,(IY-FF);PIP LD HL,00C8 CALL 03B5;BEEPER POP AF LD HL,0F38;ED.LOOP PUSH HL CP 18 JR NC,0F81;ADD.CHAR CP 07 JR C,0F81;ADD.CHAR CP 10 JR C,0F92;ED.KEYS LD BC,0002 LD D,A CP 16 JR C,0F6C;ED.CONTR INC BC BIT 7,(IY+37);FLAGX JP Z,101E;ED.IGNORE CALL 15D4;WAIT.KEY LD E,A 0F6C ED.CONTR CALL 15D4;WAIT.KEY PUSH DE LD HL,(5C5B);K.CUR RES 0,(IY+07);MODE CALL 1655;MAKE.ROOM POP BC INC HL LD (HL),B INC HL LD (HL),C JR 0F8B;ADD.CH.1 0F81 ADD.CHAR RES 0,(IY+07);MODE LD HL,(5C5B);K.CUR CALL 1652;ONE.SPACE 0F8B ADD.CH.1 LD (DE),A INC DE LD (5C5B),DE;K.CUR RET 0F92 ED.KEYS LD E,A LD D,00 LD HL,0F99;edit key table ADD HL,DE LD E,(HL) ADD HL,DE PUSH HL LD HL,(5C5B);K.CUR RET 0FA0 DEFB 0FA9-0FA0;ED.EDIT DEFB 1007-0FA1;ED.LEFT DEFB 100C-0FA2;ED.RIGHT DEFB 0FF3-0FA3;ED.DOWN DEFB 1059-0FA4;ED.UP DEFB 1015-0FA5;ED.DELETE DEFB 1024-0FA6;ED.ENTER DEFB 1076-0FA7;ED.SYMBOL DEFB 107C-0FA8;ED.GRAPH 0FA9 ED.EDIT LD HL,(5C49);E.PPC BIT 5,(IY+37);FLAGX JP NZ,1097;CLEAR.SP CALL 196E;LINE.ADDR CALL 1695;LINE.NO LD A,D OR E JP Z,1097;CLEAR.SP PUSH HL INC HL LD C,(HL) INC HL LD B,(HL) LD HL,000A ADD HL,BC LD B,H LD C,L CALL 1F05;TEST.ROOM CALL 1097;CLEAR.SP LD HL,(5C51);CURCHL EX (SP),HL PUSH HL LD A,FF CALL 1601;CHAN.OPEN POP HL DEC HL DEC (IY+0F);E.PPC CALL 1855;OUT.LINE INC (IY+0F);E.PPC LD HL,(5C59);E.LINE INC HL INC HL INC HL INC HL LD (5C5B),HL;K.CUR POP HL CALL 1615;CHAN.FLAG RET 0FF3 ED.DOWN BIT 5,(IY+37);FLAGX JR NZ,1001;ED.STOP LD HL,5C49;E.PPC CALL 190F;LN.FETCH JR 106E;ED.LIST 1001 ED.STOP LD (IY+00);ERR.NR JR 1024;ED.ENTER 1007 ED.LEFT CALL 1031;ED.EDGE JR 1011;ED.CUR 100C ED.RIGHT LD A,(HL) CP 0D RET Z INC HL 1011 ED.CUR LD (5C5B),HL;K.CUR RET 1015 ED.DELETE CALL 1031;ED.EDGE LD BC,0001 JP 19E8;RECLAIM.2 101E ED.IGNORE CALL 15D4;WAIT.KEY CALL 15D4;WAIT.KEY 1024 ED.ENTER POP HL POP HL 1026 ED.END POP HL LD (5C3D),HL;ERR.SP BIT 7,(IY+00);ERR.NR RET NZ LD SP,HL RET 1031 ED.EDGE SCF CALL 1195;SET.DE SBC HL,DE ADD HL,DE INC HL POP BC RET C PUSH BC LD B,H LD C,L 103E ED.EDGE.1 LD H,D LD L,E INC HL LD A,(DE) AND F0 CP 10 JR NZ,1051;ED.EDGE.2 INC HL LD A,(DE) SUB 17 ADC A,00 JR NZ,1051;ED.EDGE.2 INC HL 1051 ED.EDGE.2 AND A SBC HL,BC ADD HL,BC EX DE,HL JR C,103E;ED.EDGE.1 RET 1059 ED.UP BIT 5,(IY+37);FLAGX RET NZ LD HL,(5C49);E.PPC CALL 196E;LINE.ADDR EX DE,HL CALL 1695;LINE.NO LD HL,5C4A;E.PPC hi CALL 191C;LN.STORE 106E ED.LIST CALL 1795;AUTO.LIST LD A,00 JP 1601;CHAN.OPEN 1076 ED.SYMBOL BIT 7,(IY+37);FLAGX JR Z,1024;ED.ENTER 107C ED.GRAPH JP 0F81;ADD.CHAR 107F ED.ERROR BIT 4,(IY+30);FLAGS2 JR Z,1026;ED.END LD (IY+00),FF;ERR.NR LD D,00 LD E,(IY-02);RASP LD HL,1A90 CALL 03B5;BEEPER JP 0F30;ED.AGAIN 1097 CLEAR.SP PUSH HL CALL 1190;SET.HL DEC HL CALL 19E5;RECLAIM.1 LD (5C5B),HL;K.CUR LD (IY+07),00;MODE POP HL RET 10A8 KEY.INPUT BIT 3,(IY+02);TV.FLAG CALL NZ,111D;ED.COPY AND A BIT 5,(IY+01);FLAGS RET Z LD A,(5C08);LAST.K RES 5,(IY+01);FLAGS PUSH AF BIT 5,(IY+02);TV.FLAG CALL NZ,0D6E;CLS.LOWER POP AF CP 20 JR NC,111B;KEY.DONE CP 10 JR NC,10FA;KEY.CONTR CP 06 JR NC,10DB;KEY.M&CL LD B,A AND 01 LD C,A LD A,B RRA ADD A,12 JR 1105;KEY.DATA 10DB KEY.M&CL JR NZ,10E6;KEY.MODE LD HL,5C6A;FLAGS2 LD A,08 XOR (HL) LD (HL),A JR 10F4;KEY.FLAG 10E6 KEY.MODE CP 0E RET C SUB 0D LD HL,5C41;MODE CP (HL) LD (HL),A JR NZ,10F4;KEY.FLAG LD (HL),00 10F4 KEY.FLAG SET 3,(IY+02);TV.FLAG CP A RET 10FA KEY.CONTR LD B,A AND 07 LD C,A LD A,10 BIT 3,B JR NZ,1105;KEY.DATA INC A 1105 KEY.DATA LD (IY-2D),C;K.DATA LD DE,110D;KEY.NEXT JR 1113;KEY.CHAN 110D KEY.NEXT LD A,(5C0D);K.DATA LD DE,10A8;KEY.INPUT 1113 KEY.CHAN LD HL,(5C4F);CHANS INC HL INC HL LD (HL),E INC HL LD (HL),D 1118 KEY.DONE SCF RET