Changes

Jump to: navigation, search

PROTRACKER372 PT6 371 H

2,171 bytes added, 20:35, 8 March 2020
no edit summary
pt6_371 C��ЦЛ�МН( MAIN "",#C6 EDORN XOR A LD (volA),A,(volC),A LD BC,mEDORN CALL WINDUM LD HL,tEDORN,DE,#800 CALL PRMENU ;LD HL,tORNKEY,DE,#12 ;CALL PRMENU LD HL,tORNo_s,DE,#711 CALL PRMENU CALL OUT4 CALL HLORN LD (ornadr),HL LD DE,EDORbf LD BC,64 LDIR CALL PRORNos LD A,(ORN),HL,TORNSZ ADD A,A,A,L LD L,A,A,(HL),B,A,(EoLOOP),A INC L LD A,(HL) SUB B LD (EoLPlen),A PUSH HL CALL PRORN XOR A LD (EoLIN),A,(EoMflag),A CALL GornMRKEDORN0 CALL RESHALT CALL EORNCUR CALL EoCHMRK CALL EoPRMRK CALL EDORNKY LD A,(ORN),(piaORN),AEoSMP=$+1 LD A,0,(piaSMP),A ADD A,A LD L,A,H,'TSMPSZ LD A,(HL),(piSLOOP),A INC L LD A,(HL),(piSEND),A LD A,(EoLPlen),B,A LD A,(EoLOOP),(piOLOOP),A ADD A,B LD (piOEND),A CALL OUT4 LD HL,EDORbfornadr=$+1 LD DE,0,BC,64 LDIR CALL PIANO CALL TSTFIRE JNC EDORN0 CALL DOWNMER POP HLORNQU LD A,(EoLOOP),B,A LD A,(EoLPlen)ORNQ ADD A,B LD (HL),A DEC L LD (HL),B CALL CLOSWIN LD A,(OCT) JP PROCTHEXDIG ADD A,"0 CP ": RET C ADD A,"A"-": RET PRMEMOSmemol=$+1 LD DE,#60E CALL PRMEMO LD HL,Tmemomemo=$+1 LD B,0 DJNZ $+4 LD D,6 DJNZ $+4 LD D,11 DJNZ $+4 LD D,#E+2 DJNZ $+4 LD D,#18+8 DJNZ $+4 LD D,#22+14 LD (memol),DE JP PRMENUEPsseP LD A,(CURX) LD E,1 LD BC,#200 CP 4 RET C INC E LD BC,#102 CP 6 RET C LD BC,#503 INC E CP 11+4 RET C LD C,8 INC E CP 16+8 RET C LD C,13 INC E RET EPsse CALL EPsseP LD A,E,(memo),A PUSH BC CALL PRMEMOS LD A,(EPAT),B,A,C,0 CALL GETnADR LD DE,BUF LD BC,#480 LDIR CALL OUT6 LD HL,BUF POP BC LD A,B,B,0 ADD HL,BC LD C,A LD DE,MEMOBUF LD A,64EPsse0 PUSH BC
PUSH HL
CALL PRORN XOR A LD (EoLIN),A,(EoMflag),A CALL GornMRK EDORN0 CALL RESHALT CALL EORNCUR CALL EoCHMRK CALL EoPRMRK CALL EDORNKY LD A,(ORN),(piaORN),A EoSMP=$+1 LD A,0,(piaSMP),A ADD A,A LD L,A,H,'TSMPSZ LD A,(HL),(piSLOOP),A INC L LD A,(HL),(piSEND),A LD A,(EoLPlen),B,A LD A,(EoLOOP),(piOLOOP),A ADD A,B LD (piOEND),A CALL OUT4 LD HL,EDORbf ornadr=$+1 LD DE,0,BC,64 LDIR CALL PIANO CALL TSTFIRE JNC EDORN0 CALL DOWNMER
POP HL
ORNQU LD A,(EoLOOP),B,A LD A,(EoLPlen) ORNQ ADD A,B LD (HL),A DEC L LD (HL),B CALL CLOSWIN LD A,(OCT) JP PROCT HEXDIG ADD A,"0 CP ": RET C ADD A,"A"-": RET PRMEMOS memol=$+1 LD DE,#60E CALL PRMEMO LD HL,Tmemo memo=$+1 LD B,0 DJNZ $+4 LD D,6 DJNZ $+4 LD D,11 DJNZ $+4 LD D,#E+2 DJNZ $+4 LD D,#18+8 DJNZ $+4 LD D,#22+14 LD (memol),DE JP PRMENU EPsseP LD A,(CURX) LD E,1 LD BC,#200 CP 4 RET C INC E LD BC,#102 CP 6 RET C LD BC,#503 INC E CP 11+4 RET C LD C,8 INC E CP 16+8 RET C LD C,13 INC E RET EPsse CALL EPsseP LD A,E,(memo),A PUSH BC CALL PRMEMOS LD A,(EPAT),B,A,C,0 CALL GETnADR LD DE,BUF LD BC,#480 LDIR CALL OUT6 LD HL,BUF POP BC LD A,B,B,0 ADD HL,BC LD C,A LD DE,MEMOBUF LD A,64 EPsse0 PUSH BC PUSH HL LDIR POP HL LD C,18 ADD HL,BC POP BC DEC A JNZ EPsse0 RET EPssr CALL EPsseP LD A,(memo) CP E JZ EPssrE CP 3 RET C LD A,E CP 3 RET C EPssrE PUSH BC LD A,(EPAT) LD B,A,C,0 CALL GETnADR LD (EPssrDE),HL LD DE,BUF LD BC,#480 LDIR LD A,(pg) ;pat EXA CALL OUT6 LD HL,BUF POP BC LD A,B,B,0 ADD HL,BC LD C,A LD DE,MEMOBUF EXD LD A,64 EPssr0 PUSH BC PUSH DE LDIR POP DE EXD LD C,18 ADD HL,BC EXD POP BC DEC A JNZ EPssr0 EXA CALL OUTME LD HL,BUF EPssrDE=$+1 LD DE,0 LD BC,#480 LDIR JP PRPATU EXCHANG CALL FROMSZ PUSH AF LD A,(pat1) LD B,A CALL GETnADR PUSH HL POP IX CALL CHN1PP ADD HL,BC LD A,(chn2) LD C,3 DEC A JZ EXCHX2 LD C,8 DEC A JZ $+4 LD C,13 EXCHX2 ADD IX,BC POP AF EXCH0 EXA PUSH HL LD DE,BUF LD BC,5 LDIR POP DE PUSH DE,IX POP HL LD C,5 LDIR LD HL,BUF PUSH IX POP DE LD C,5 LDIR POP HL LD C,18 ADD HL,BC ADD IX,BC EXA DEC A JNZ EXCH0 JP PRPATO CATBAR LD HL,#48B5 XOR A LD (CATBf),A LD B,A,C,A LD E,#81 LD A,(catH) OR A JNZ CATBNZ INC A LD D,A JR CATBARP CATBNZ ADD A,A DEC A LD D,A LD A,(cattop) OR A CALL NZ,CATBARP LD E,#BD LD A,(catH) CP 9 JC CATBARP LD A,8 CALL CATBARP LD A,(catH) cattop=$+1 SUB 0 SUB 8 LD E,#81 RET Z CATBARP EXA CATBf=$+1 CATBAR0 LD A,0 XOR -1 LD (CATBf),A JZ $+6 LD (HL),E CALL DHL SCF LD A,C ADC A,D LD C,A JNC CATBAR0 EXA DEC A JNZ CATBARP RET USEBAR LD A,(catH) CP 9 RET C EXA CALL FIRE RET Z LD A,(ARX) SUB #A8 CP 8 RET NC LD A,(ARXY) SUB #68 CP #40 RET NC LD L,A XOR A LD (USEBf),A LD E,A,C,A,H,A LD A,(catH) ADD A,A DEC A LD D,A USEBAR0 LD A,E CP L JNC USEBok USEBf=$+1 USEBAR1 LD A,0 XOR -1 LD (USEBf),A JZ $+3 INC E SCF LD A,C ADC A,D LD C,A JNC USEBAR1 INC H JR USEBAR0 USEBok LD B,0 EXA LD C,A OR A RET Z SUB 9 JC USEBARQ LD B,H,A,H ADD A,7 CP C JC $+6 LD A,C SUB 8 LD B,A USEBARQ LD A,B,(cattop),A JP PRCAT AUDATER LD C,#7F LD DE,AUTO2 LD A,(DE) CP C JZ AUDnS AND #80 LD B,A LD A,(HL) AND C OR B LD (HL),A INC HL,HL,HL LD A,(DE) AND #7F RRCA RRCA RRCA RRCA LD B,A LD A,(HL) AND #F OR B LD (HL),A JR $+5 AUDnS INC HL,HL,HL INC DE LD A,(DE) CP C JZ AUDnT LD B,A LD A,(HL) AND #F0 OR B LD (HL),A AUDnT INC DE,HL LD A,(DE) CP C JZ AUDnO RRCA RRCA RRCA RRCA LD B,A LD A,(HL) AND #F OR B LD (HL),A AUDnO INC DE LD A,(DE) CP C RET Z LD B,A LD A,(HL) AND #F0 OR B LD (HL),A RET AENVER CP E JZ AEnres LD HL,ead RES 7,(HL) INC L RES 7,(HL) AEnres AENVFRQ=$+1 LD HL,0 AENVnot=$+1
LD DE,0
LD BC,#480 LDIR JP PRPATUEXCHANG CALL FROMSZ PUSH AF LD A,(pat1) LD B,A CALL GETnADR PUSH HL POP IX CALL CHN1PP ADD HL,BC LD A,(chn2) LD C,3 DEC A JZ EXCHX2 LD C,8 DEC A JZ $+4 LD C,13EXCHX2 ADD IX,BC POP AFEXCH0 EXA PUSH INC HL LD DE,BUF LD BC,5 LDIR POP DE PUSH DE,IX POP HL LD C,5 LDIR LD HL,BUF PUSH IX POP DE LD C,5 LDIR POP HL LD C,18 ADD HL,BC ADD IX,BC EXA DEC A JNZ EXCH0 JP PRPATOCATBAR LD HL,#48B5 XOR A LD (CATBf),A LD B,A,C,A LD E,#81 LD A,(catH) OR A JNZ CATBNZ INC A LD D,A JR CATBARPCATBNZ ADD A,A DEC A LD D,A LD A,(cattopHL) OR A CALL NZ,CATBARP LD E,#BD LD A,(catH) CP AND 9 JC CATBARP LD A,SUB 8 CALL CATBARP RET NZ LD A,(catH)cattop=$+1 SUB 0 SUB 8 LD OR E,#81
RET Z
CATBARP EXA CATBf div=$+1CATBAR0 LD B,0 LD A,023 XOR -1 DJNZ $+4 LD (CATBf)A,28 ;3:4 DJNZ $+4 LD A,35 ;1:2 JZ DJNZ $+64 LD (HL)A,E47 ;1:4 CALL DHL SCF DJNZ $+4 LD A,C4 ;3:1 DJNZ $+4 ADC LD A,D7 ;5:2 DJNZ $+4 LD CA,A11 ;2:1 JNC CATBAR0 DJNZ $+4 EXA LD A,16 ;3:2 DEC ADD A,E JNZ CATBARP LD B,0 RET INC BUSEBAR SUB 12 JNC $-3 LD E,A ;00,(catH)01->+0 CP 9 ;10,11->+1 RET C LD HL,FrTab+24-512 EXA CALL FIRE ADD HL,DE,HL,DE RET Z LD A,(ARXHL) SUB #A8 INC L CP 8 RET NC LD AE,(ARXYHL) SUB #68 SRL E RRA CP #40 DJNZ $-3 RET NC ADC A,D LD LD,A XOR A AENVadr=$+2 LD (USEBf0),ADE RET EPdelln CALL XPPSCF RET NC LD EHL,A(CURY),CH,L INC L LD A,H201,(COPQJP),A CALL EPdellnP LD A,195,(catHCOPQJP) ADD A,A DEC A CALL PRPATU JR TSTNROL LD D,A TSTnSSLUSEBAR0 LD A,E(ead) CP L RLA JNC USEBok JC AEskipUSEBf=$+1USEBAR1 LD A,0(HL) AND #80 XOR -1 OR D LD (USEBfHL),A JZ $+3 INC E SCF AEskip LD A,CD ADC A,D TSTSSLQ LD C(AENVnot),A JNC USEBAR1 INC HE JR USEBAR0 JZ TSTNQUSEBok LD B,0auto=$+1 EXA LD CA,A-1 OR A RET CALL Z,AUDATER SUB 9 JC USEBARQ LD B,H,A,H(ead) RLA ADD SBC A,7A CP C CPL JC aenv=$+61 LD AE,-1 AND E CALL Z,CAENVER SUB 8 TSTNQ CALL PRCU7 ;LD A,(EPAT),B,AUSEBARQ ;LD A,B,(cattopCURY),AE,#13 JP PRCAT;CALL STROKAAUDATER CALL PRPATUU LD CA,#7F(23560) CP kL JZ $+4 CP kssL LD DE CALL NZ,AUTO2PLNOTE TSTNROL LD A,(DEroll) CP C OR A JZ AUDnS LD L,A ;на сколько строк вниз AND #80 JP NZ,ROLLPATFON LD BHL,ACURX
LD A,(HL)
AND C OR B LD (HL),A INC HL,HL,HL LD A,(DE) AND #7F RRCA RRCA RRCA RRCA LD B,A LD A,(HL) AND #F OR B LD (HL),A JR $+5AUDnS INC HL,HL,HL INC DE LD A,(DE) CP C JZ AUDnT LD B,A LD A,(HL) AND #F0 OR B LD (HL),AAUDnT INC DE,HL LD A,(DE) CP C JZ AUDnO RRCA RRCA RRCA RRCA LD B,A LD A,(HL) AND #F OR B LD (HL),AAUDnO INC DE LD A,(DE) CP C3
RET Z
LD B,A LD A,(HL) AND #F0 OR B LD (HL),A RET AENVER CP E JZ AEnres LD HL,ead RES 7,(HL) INC L RES 7,(HL)AEnresAENVFRQ=$+1 LD HL,0AENVnot=$+1 LD DE,0 INC HL,HL,HL LD A,(HL) AND 9 SUB 8 RET NZ OR E RET Zdiv=$+1 LD B,0 LD A,23 DJNZ $+4 LD A,28 ;3:4 DJNZ $+4 LD A,35 ;1:2 DJNZ $+4 LD A,47 ;1:4 DJNZ $+4 LD A,4 ;3:1 DJNZ $+4 LD A,7 ;5:2 DJNZ $+4 LD A,11 ;2:1 DJNZ $+4 LD A,16 ;3:2 ADD A,E LD B,0 INC B SUB 12 JNC $-3 LD E,A;00,01->+0;10,11->+1 LD HL,FrTab+24-512 ADD HL,DE,HL,DE LD A,(HL) INC L LD E,(HL) SRL E RRA DJNZ $-3 ADC A,D LD D,AAENVadr=$+2 LD (0),DE RET EPdelln CALL XPPSCF
RET NC
;LD HLA,2;(curite) ;CP (CURYHL),H,L ;RET C INC L(HL) RET TSTNnot LD A,201,(COPQJPAENVadr),HL XOR A CALL EPdellnP LD B,A ADD HL,195,BC LD (COPQJPAENVFRQ),AHL LD E,-1 CALL PRPATU OR D JR TSTNROL JZ TSTnNOTTSTnSSL CP 97 LD A,(ead) JNC TSTnNOT RLA INC E JC AEskipCP 25
LD A,(HL)
AND #80RES 7,A JZ TSTSSLQ CALL NotOct TSTnNOT OR ;LD A,D SUB 99 JZ TSTk INC A JP NZ,TSTnSSL LD (HL),AAEskip INC HL LD (HL),A,DTSTSSLQ INC HL LD (AENVnotHL),A TSTk INC E JZ TSTNQauto=$+1HL LD A(HL),-1 OR A CALL Z,AUDATER INC HL LD A,(eadHL) RLA SBC A,A CPL aenv=$+1 LD E(IY-50),-1kssL JP TSTSSLQ AND E EPdellnP CALL Z LD A,AENVER64TSTNQ CALL PRCU7 SUB H ; LD ADE,(EPAT),BD,A ;LD ,A,(CURY),E DEC BC LD B,#13C RET Z JP COPYU EPins ; CALL STROKAXPPSCF CALL PRPATUU RET NC LD AHL,(23560CURY),H,L CP kL INC H JZ $+4 CALL EPdellnP CP kssL CALL NZ,PLNOTETSTNROL LD A,(rollchnall)
OR A
LD L,A ;на сколько строк вниз JP NZ,ROLLPATFON LD HL,CURX LD A,(HL) CP 3 RET Z CP 5 RET NC ;LD A,2;(curite) ;CP (HL) ;RET C INC (HL) RET TSTNnot LD (AENVadr),HL XOR A LD B,A ADD HL,BC LD (AENVFRQ),HL LD E,-1 OR D JZ TSTnNOT CP 97 JNC TSTnNOT INC E CP 25 LD A,(HL) RES 7,A JZ TSTSSLQ CALL NotOctTSTnNOT ;LD A,D SUB 99 JZ TSTk INC A JP NZ,TSTnSSL LD (HL),A INC HL LD (HL),A INC HL LD (HL),ATSTk INC HL LD (HL),A INC HL LD (HL),A LD (IY-50),kssL JP TSTSSLQEPdellnP LD A,64 SUB H LD DE,(EPAT),D,A,A,E DEC BC LD B,C RET Z JP COPYUEPins CALL XPPSCF RET NC LD HL,(CURY),H,L INC H CALL EPdellnP LD A,(chnall) OR A JZ insNALL LD BC,(CURY) CALL GETnADR EXD LD HL,BUF+#480 ;тут нули LD BC,18 LDIR insNALL HALT LD (IY-50),kssLTSTNOTE
LD BC,(CURY)
CALL GETnADR
EXD LD HL,BUF+#480 ;тут нули LD BC,18 LDIR insNALL HALT LD (IY-50),kssL TSTNOTE LD BC,(CURY) CALL GETnADR CALL NOTEKEY BIT 7,D CALL Z,XPPSCF DEC BC JZ TSTNnot LD A,D CP 98 JZ $-5 CALL RECHEX INC D JNZ TSTnDIG LD C,D,B,D,D,A LD A,(CURX) OR A CALL TSTnPP+2 CALL TSTnP LD C,6 CALL TSTnPP LD C,4 CALL TSTnPP+1 LD C,11 CALL TSTnPP LD C,9 CALL TSTnPP+1 LD C,16 CALL TSTnPP LD C,14 CALL TSTnPP+1 TSTnDIG LD A,D CP 9 JZ EVENODD CALL RECopq INC D RET NZ LD D,A OR A CALL XPP RET NZ INC C,C LD B,0 ADD HL,BC LD A,(HL) LD (HL),D RLD SCF JR TSTs0EVENODD LD HL,COPSCF LD A,(HL) XOR 128 LD (HL),A LD HL,#485A LD C,2 CALL INVSYMS POP AF RET ;2(EDSONG,EPEXT)MELINV LD HL,#40EA LD C,6INVSYMS PUSH HL LD B,8invsym0 LD A,(HL) CPL LD (HL),A INC H DJNZ invsym0 POP HL INC L DEC C JR NZ,INVSYMS RET TSTL POP AF ADD HL,BC LD A,(HL) LD (HL),D RLD OR A CALL XPP JZ TSTs0-1 CP -7 JNZ tstnq LD A,(CURX) OR A JZ tstnq
LD A,D
OR ACP 9 JZ tstnqEVENODD CALL RECopq PUSH AF INC D LD A,(ORN) RET NZ LD (ORN2)D,A XOR OR A CALL ONCORN2XPP RET NZ POP AF INC C,C LD (ORN)B,A XOR A CALL ONCORNtstnq JP TSTNQ OR A0TSTs0 DEC HL, ADD HL,HL RL (HL) RRC (HL)BC
LD A,(HL)
RRA LD (HL),D RRA RLD RRA SCF AND 16 JR TSTs0 OR D EVENODD JZ tstnq PUSH AF LD HL,COPSCF LD A,(smpHL) XOR 128 LD (SMP2HL),A XOR A LD HL,#485A LD C,2 CALL ONCSMP2INVSYMS POP AF LD RET ;2(smpEDSONG,EPEXT) MELINV LD HL,A#40EA XOR A LD C,6 CALL ONCSMP INVSYMS JP tstnq PUSH HLTSTnPP LD B,8 DEC invsym0 LD A,(HL) CPL LD (HL),A JZ TSTL INC H DEC A DJNZ invsym0 JZ TSTR POP HLTSTnP INC BCL DEC AC JZ TSTL JR NZ,INVSYMS DEC A RET RET NZ TSTLTSTR POP AF ADD HL,BC
LD A,(HL)
AND #F0 OR D LD (HL),A JP TSTNQRECopq LD DE,"O LD A,(23560) CP "; JZ RECopY CP E RET Z INC E CP #22 JZ RECopY CP E RET Z CP "G RET C CP "W RET NC LD E,A XOR "Q CALL Z,8026 RET CRECopY LD A,E SUB "G DEC D RET RECHEX LD D,0 LD A,(23560) CP "0 RET C CP "G RET NC CP ": JNC $+6 SUB "0 DEC D RET CP "A RET C SUB #37 DEC D RET D0TO_ LD A,(HL) CP "0 JC d0TO0 CP ": JNC $+5 SUB "0 RET CP "A JC d0TO0 CP "G JNC $+5 SUB #37 RET d0TO0 LD (HL),"- LD A,#7F RET ENVFL LD HL,ead,A,(HL) XOR 128 LD (HL),A INC L LD (HL),A RET TSTOCT LD A,(23560) CP kE JZ ENVFL SUB "1 CP 9 RET NC ;CALL NEWOCT ;JP SHOLK;NEWOCT AND 7 INC A LD (OCT),A;1PROCT LD DE,#D08 JP PRBCDPOSEDIT LD BC,mPOS CALL WINDUM LD HL,tPOS LD DE,0 CALL PRMENU XOR A LD (EpMflag),A LD (EpY),A LD A,(POS) CALL EDPOSRPOSED0 CALL RESHALT LD A,#28 CALL EpPRCUR CALL EDPOSKY LD A,5 CALL EpPRCUR CALL EpCHMRK CALL EpPRMRK CALL TSTFIRE JNC POSED0 LD A,(EsTOP),B,A LD A,(EpY) ADD A,B LD (POS),A LD L,A,H,'TPOSS LD A,(HL),(EPAT),A LD L,A INC H LD A,(HL),(PATLEN),A CALL CLOSWIN CALL POSFON JP PRPATEpPRMRK LD HL,#58C3 LD BC,(LOOP) LD DE,32 LD A,(EsTOP) EXA LD A,16EpPRMR0 EXA CP C JNC EpPRMR1+1EpPRMRQ LD (HL),#28 INC A EXA ADD HL,DE DEC A JNZ EpPRMR0 RET EpPRMR1 EXA CP B JNC EpPRMRQ LD (HL),#55 INC A EXA ADD HL,DE DEC A JNZ EpPRMR1 RET EpCHMRK LD A,(EpMflag)RLD
OR A
CALL XPP JZ TSTs0-1 CALL NZ,EpCHENDCP -7 JNZ tstnq LD A,(NOPKACURX)
OR A
RET ZJZ tstnq LD A,D OR A JZ tstnq PUSH AF LD A,(ORN) LD (ORN2),A
XOR A
EpMflag=$+1 CP 0 JNZ EpCHMRQ CALL EpARPOSONCORN2 RET CPOP AF LD (LOOPORN),A CPL EpCHMRQ LD (EpMflag), XOR A RET CALL ONCORNEpCHEND CALL EpARPOS tstnq JP TSTNQ RET C OR A LD TSTs0 DEC HL,HL,LOOPHL CP RL (HL) JNC $+3 LD A, RRC (HL) INC LD A,HL LD (HL),A RET RRA ;1 RRA EsCHMRK RRA LD A,(EsMflag) AND 16 OR AD JZ tstnq CALL NZ,esCHENDPUSH AF LD A,(NOPKAsmp) OR LD (SMP2),A RET Z
XOR A
EsMflag CALL ONCSMP2 POP AF LD (smp),A XOR A CALL ONCSMP JP tstnq TSTnPP DEC A,A JZ TSTL DEC A JZ TSTR TSTnP INC BC DEC A JZ TSTL DEC A RET NZ TSTR POP AF ADD HL,BC LD A,(HL) AND #F0 OR D LD (HL),A JP TSTNQ RECopq LD DE,"O LD A,(23560) CP "; JZ RECopY CP E RET Z INC E CP #22 JZ RECopY CP E RET Z CP "G RET C CP "W RET NC LD E,A XOR "Q CALL Z,8026 RET C RECopY LD A,E SUB "G DEC D RET RECHEX LD D,0 LD A,(23560) CP "0 RET C CP "G RET NC CP ": JNC $+6 SUB "0 DEC D RET CP "A RET C SUB #37 DEC D RET D0TO_ LD A,(HL) CP "0 JC d0TO0 CP ": JNC $+5 SUB "0 RET CP "A JC d0TO0 CP "G JNC $+5 SUB #37 RET d0TO0 LD (HL),"- LD A,#7F RET ENVFL LD HL,ead,A,(HL) XOR 128 LD (HL),A INC L LD (HL),A RET TSTOCT LD A,(23560) CP kE JZ ENVFL SUB "1 CP 9 RET NC ;CALL NEWOCT ;JP SHOLK ;NEWOCT AND 7 INC A LD (OCT),A ;1 PROCT LD DE,#D08 JP PRBCD POSEDIT LD BC,mPOS CALL WINDUM LD HL,tPOS LD DE,0 CALL PRMENU XOR A LD (EpMflag),A LD (EpY),A LD A,(POS) CALL EDPOSR POSED0 CALL RESHALT LD A,#28 CALL EpPRCUR CALL EDPOSKY LD A,5 CALL EpPRCUR CALL EpCHMRK CALL EpPRMRK CALL TSTFIRE JNC POSED0 LD A,(EsTOP),B,A LD A,(EpY) ADD A,B LD (POS),A LD L,A,H,'TPOSS LD A,(HL),(EPAT),A LD L,A INC H LD A,(HL),(PATLEN),A CALL CLOSWIN CALL POSFON JP PRPAT EpPRMRK LD HL,#58C3 LD BC,(LOOP) LD DE,32 LD A,(EsTOP) EXA LD A,16 EpPRMR0 EXA CP C JNC EpPRMR1+1 EpPRMRQ LD (HL),#28 INC A EXA ADD HL,DE DEC A JNZ EpPRMR0 RET EpPRMR1 EXA CP B JNC EpPRMRQ LD (HL),#55 INC A EXA ADD HL,DE DEC A JNZ EpPRMR1 RET EpCHMRK LD A,(EpMflag) OR A CALL NZ,EpCHEND LD A,(NOPKA) OR A RET Z XOR A EpMflag=$+1 CP 0 JNZ esCHMRQEpCHMRQ CALL EsARPOSEpARPOS RET C LD (EsLOOPLOOP),A CPL esCHMRQ EpCHMRQ LD (EsMflagEpMflag),A RET esCHEND EpCHEND CALL EsARPOSEpARPOS RET C LD HL,EsLOOPLOOP SUB CP (HL) RET C JNC $+3 LD A,(HL) INC A,HL LD (EsLENHL),A RET ;1EoCHMRK EsCHMRK LD A,(EoMflagEsMflag) OR A CALL NZ,eoCHENDesCHEND LD A,(NOPKA) OR A RET Z XOR AEoMflag EsMflag=$+1 CP 0 JNZ eoCHMRQesCHMRQ CALL EoARLOPEsARPOS RET C LD (EoLOOPEsLOOP),A CPL eoCHMRQ esCHMRQ LD (EoMflagEsMflag),A RET eoCHEND esCHEND CALL EoARLOPEsARPOS RET C LD HL,EoLOOPEsLOOP
SUB (HL)
RET C INC A LD (EsLEN),A RET ;1 EoCHMRK LD A,(EoMflag) OR A CALL NZ,eoCHEND LD A,(NOPKA) OR A RET Z XOR A EoMflag=$+1 CP 0 JNZ eoCHMRQ CALL EoARLOP RET C LD (EoLOOP),A CPL eoCHMRQ LD (EoMflag),A RET eoCHEND CALL EoARLOP RET C LD HL,EoLOOP SUB (HL) RET C INC A LD (EoLPlen),A RET EpARPOS LD BC,#610 LD L,3 JR psARPOS EsARPOS LD BC,SMPY+1<8+SMPH LD L,1+SMPX psARPOS LD A,(ARXY) RRA RRA RRA AND 31 SUB B CP C CCF RET C LD C,A LD A,(ARX) RRA RRA RRA AND 31 CP L JNZ SCFRET LD A,(EsTOP) ADD A,C RET EoARLOP LD A,1 EoARPOS LD E,A LD HL,(ARXY) LD A,L RRA RRA RRA AND 31 SUB 3 RET C CP 16 CCF RET C LD D,A LD A,H RRA RRA RRA AND 31 LD BC,#400 EoARp0 CP E JZ EoARpQ SUB 4 INC C DJNZ EoARp0 SCFRET SCF RET EoARpQ LD A,C ADD A,A,A,A,A,A,A,A,A,D RET decCOR LD A,(DE) CP L RET C DEC A LD (DE),A RET incCOR LD A,(DE) CP L RET C RET Z INC A RET Z LD (DE),A RET EDPOSB CALL EpGadr LD (LOOP),A RET EDPOSE CALL EpGadr LD (LENG),A RET EpPRCUR EXA LD A,(EpY) ADD A,A,A,A,A,A,A,A LD L,A,H,0 ADD HL,HL LD DE,#58C6 ADD HL,DE EXA LD (HL),A INC L LD (HL),A INC L LD (HL),A RET EpGadr LD A,H ADD A,L LD L,A LD H,'TPOSS RET EDPOSDQ LD (EpY),A JP SHOLK EDPOSKY CALL BIT5 RET Z LD HL,(EsTOP) EpY=$+1 LD H,0 CALL RECHEX INC D JZ EDpDIG LD A,(23560) CP "K JZ EDPOSB CP "L JZ EDPOSE SUB 8 JNZ EDPOSNL LD A,L SUB 15 JNC $+3 XOR A JR EDPOSTO EDPOSNL DEC A JNZ EDPOSNR LD A,L ADD A,15 EDPOSR CP -16 JC $+4 LD A,-16 JR EDPOSTO EDPOSNR DEC A JNZ EDPOSND LD A,H INC A AND 15 JNZ EDPOSDQ LD A,L INC A CP -15 RET Z JR EDPOSTO EDPOSND DEC A JNZ EDPOSNU LD A,H DEC A JP P,EDPOSDQ LD A,L SUB 1 RET C EDPOSTO LD (EsTOP),A JR PRPOS EDPOSNU CP kDelLn-11 JNZ EDpNdelln CALL EpGadr LD D,H,E,L INC L RET Z PUSH HL LD A,(HL),(DE),A INC E,L JNZ $-4 POP HL LD DE,LOOP CALL decCOR LD DE,LENG CALL decCOR JR PRPOS EDpDIG LD D,A CALL EpGadr LD A,(HL) LD B,4 ADD A,A JC EpDIGo DJNZ $-3 ADD A,D CP PATS JC $+3 EpDIGo LD A,D LD (HL),A PRPOS LD HL,(EsTOP),H,'TPOSS LD A,16,DE,#41C3 PRPOS0 PUSH AF,DE LD A,L PUSH HL CALL PRF8 POP HL INC E,E,E LD A,(HL) INC L PUSH HL CALL PRF8 POP HL,DE LD A,D ADD A,6 LD D,A CALL DDE INC D POP AF DEC A JNZ PRPOS0 JP SHOLK EDpNdelln CP 201-11 RET NZ CALL EpGadr XOR -1 RET Z PUSH HL LD C,A,B,0 LD DE,bf240 PUSH HL,DE LDIR LD C,A POP HL,DE INC E LDIR POP HL LD DE,LOOP CALL incCOR LD DE,LENG CALL incCOR JR PRPOS EoGadr EoLIN=$+1 LD A,0 ornADR=$+1 LD HL,EDORbf ADD A,L LD L,A LD A,(HL) RET EDOR_p POP AF,HL CALL ORNQU CALL DECORN ;+print JP EDORN EDOR_n POP AF,HL CALL ORNQU CALL INCORN ;+print JP EDORN EDORNKY CALL BIT5 RET Z LD B,1 CP 4 JZ EDOR_p CP 5 JZ EDOR_n CP 172;i JZ EDORSMP CP "E JZ EDORNUM LD B,-1 CP 197;u JZ EDORSMP CP "W JZ EDORNUM LD B,12 CP "T JZ EDORNUM LD B,-12 CP "R JZ EDORNUM CP "0 JZ EDOR0 CP kIns JZ EDoINS CP kDelLn JP Z,EDoDELLN CP "K JP Z,EDoBEG CP "L JP Z,EDoEND CP "+ JZ EDoPLU SUB "0;1 CP 9;8 RET NC LD (OCT),A EDORSq CALL PRORNos JP SHOLK EDoPLU CALL EoGadr JR EDORNEG EDORSMP LD HL,EoSMP,A,(HL) ADD A,B AND 31 LD (HL),A JR EDORSq EDORNUM CALL EoGadr ADD A,B LD B,0 JP P,$+6 INC B NEG AND 127 CP 96
JC $+4
LD A,-1696 JR EDPOSTO DJNZ $+4EDPOSNR DEC A EDORNEG JNZ EDPOSND NEG LD (HL),A,H INC A CALL ORNline AND 15 JP SHOLK JNZ EDPOSDQ EDOR0 LD A,L CALL EoGadr INC XOR A CP -15 RET Z JR EDPOSTOEDORNEGEDPOSND DEC A EDoINS JNZ EDPOSNU CALL EoGadr LD A,H DEC A JP P,EDPOSDQ63 LD A, SUB L SUB 1 RET CZEDPOSTO LD (EsTOP)L,62,E,63,A JR PRPOSEDPOSNU CP kDelLn-11 JNZ EDpNdelln CALL EpGadr LD D,H,EB,0,C,LA LDDR
INC L
RET Z PUSH HL LD A,(HL),(DE),A INC E,L JNZ $-4 POP HL LD DE,LOOP CALL decCOR LD DE,LENG CALL decCOR JR PRPOSEDpDIG LD D,AEoLOOP CALL EpGadr LD A,(HL) LD B,4 ADD A,A JC EpDIGo DJNZ $-3 ADD A,DincCOR CP PATS JC JZ $+3EpDIGo LD A,D LD (HL),APRPOS LD HL,(EsTOP),H,'TPOSS LD A,16,DE,#41C3PRPOS0 PUSH AF,DE LD A,L PUSH HL4 CALL PRF8 POP HL INC E,E,EJNC EDoz LD A,(HL) EXD INC L PUSH HL CALL PRF8 POP HL,DE LD A,D ADD A,6 LD D,A CALL DDE INC D POP AF
DEC A
JNZ PRPOS0 ADD A,(HL) JP SHOLK CP EEDpNdelln JC EDoz CP 201-1163 RET NZ JNC $+3 CALL EpGadr EDoINSQ INC (HL) XOR -1 JR EDoz RET Z EDoDELLN PUSH HL CALL EoGadr LD CD,AH,BE,0L INC L LD DEA,bf24064 PUSH HL,DE SUB L LDIR RET Z LD B,0,C,A POP HL,DEA,L INC E LDIR POP HL LD DEL,LOOPA CALL incCOR LD DE,LENGEoLOOP CALL incCORdecCOR JR PRPOSJNC EDozEoGadr EXD EoLIN=$+1 LD A,0ornADR=$+1 LD INC HL,EDORbf ADD A,L LD L,A LD A,(HL) RET EDOR_p POP AF,HL CALL ORNQU CALL DECORN ;+print JP EDORNEDOR_n POP AF,HL CALL ORNQU CALL INCORN ;+print JP EDORNEDORNKY CALL BIT5 RET Z LD B,1 CP 4 JZ EDOR_p CP 5 JZ EDOR_n CP 172;i JZ EDORSMP CP "E JZ EDORNUM JC EDoz LD B,-1 CP 197;u DEC (HL) JZ EDORSMPEDoINSQ CP "W EDoz JZ EDORNUM LD B,12 CP "T JZ EDORNUM LD B,-12 CP "R JZ EDORNUM CP "0 JZ EDOR0 CP kIns JZ EDoINS CALL PRORN CP kDelLn JP Z,EDoDELLNSHOLK CP "K JP Z, EDoBEG CP "L JP Z LD A,EDoEND CP "+ JZ EDoPLU SUB "0;1 CP 9;8(EoLIN) RET NC LD (OCT)HL,AEoLOOPEDORSq CALL PRORNos JP SHOLKEDoPLU CALL EoGadr JR EDORNEGEDORSMP EDoBEGQ LD HL,EoSMP,AC,(HL) ADD A,B AND 31
LD (HL),A
JR EDORSqEDORNUM CALL EoGadrINC HL ADD A,B LD B,0 JP P,$+6 INC BSUB C
NEG
AND 127
CP 96
JC $+4
LD A,96
DJNZ $+4
EDORNEG
NEG
LD (HL),A
CALL ORNline
JP SHOLK
EDOR0
CALL EoGadr
XOR A
JR EDORNEG
EDoINS
CALL EoGadr
LD A,63
SUB L
RET Z
LD L,62,E,63,D,H,B,0,C,A
LDDR
INC L
LD DE,EoLOOP
CALL incCOR
JZ $+4
JNC EDoz
EXD
INC HL
DEC A
ADD A,(HL)
CP E
JC EDoz
CP 63
JNC $+3
EDoINSQ INC (HL)
JR EDoz
EDoDELLN
CALL EoGadr
LD D,H,E,L
INC L
LD A,64
SUB L
RET Z
LD B,0,C,A,A,L
LDIR
LD L,A
LD DE,EoLOOP
CALL decCOR
JNC EDoz
EXD
INC HL
ADD A,(HL)
CP E
JC EDoz
DEC (HL)
JZ EDoINSQ
EDoz
CALL PRORN
JP SHOLK
EDoBEG
LD A,(EoLIN)
LD HL,EoLOOP
EDoBEGQ LD C,(HL)
LD (HL),A
INC HL
SUB C
NEG
ADD A,(HL)
LD (HL),A
RET
EDoEND
LD HL,EoLOOP
LD A,(EoLIN)
SUB (HL)
INC HL
LD (HL),A
RET EDsBEG EDoEND LD HL,EoLOOP LD A,(EsLINEoLIN) SUB (HL) INC HL LD (HL),EsLOOPA RET JR EDoBEGQ EDsBEGEDsEND LD A,(EsLIN)
LD HL,EsLOOP
JR EDoBEGQ EDsEND LD HL,EsLOOP LD A,(EsLIN) SUB (HL) INC HL LD (HL),A RET PRORN LD HL,EDORbf LD E,1,C,16 PRORN0 PUSH HL LD D,1,B,4 PRORN1 PUSH BC LD A,L CALL toOO INC D,D PUSH HL LD A,(HL),L,A OR A LD B,"+ CALL M,NEGHL-2 LD A,B CALL PRADD INC D LD A,L CALL toOO INC D,D,D POP HL LD BC,16 ADD HL,BC POP BC DJNZ PRORN1 INC E POP HL INC L DEC C JNZ PRORN0 RET EORNCUR CALL BIT5 RET Z SUB 8 LD B,-16 JZ EORNC DEC A LD B,16 JZ EORNC DEC A LD B,1 JZ EORNC DEC A LD B,-1 RET NZ EORNC LD A,(EoLIN) ADD A,B AND 63 EORNCQ EXA LD E,7 CALL GornMRK+2 EXA LD (EoLIN),A LD HL,SHOLK PUSH HL GornMRK LD E,56,A,(EoLIN) LD BC,16 LD H,B INC B SUB C JNC $-2 ADD A,C,A,3 ADD A,A,A,A,A,A LD L,A ADD HL,HL,HL,HL LD A,H SUB -88 LD H,A,A,B ADD A,A,A,A SUB 2 OR L LD L,A,(HL),E INC L LD (HL),E RET ORNline LD A,(EoLIN),BC,16 INC B SUB C JNC $-2 ADC A,C LD E,A,A,B ADD A,A,A,A,A,A SUB 4 LD D,A LD HL,(ornADR) LD A,(EoLIN) ADD A,L LD L,A,A,(HL),L,A OR A LD B,"+ CALL M,NEGHL-2 LD A,B CALL PRADD INC D LD A,L JP toOO EoPRMRK LD A,(NOPKA) OR A LD A,3 CCF CALL NZ,EoARPOS CALL NC,EORNCQ EoLOOP=$+1 EoLPlen=$+2 LD BC,0,DE,32 XOR A LD HL,#5861 PRoLP0 CP C JZ PRoLPQ LD (HL),5 CALL PRoLPP JNZ PRoLP0 RET PRoLPQ LD (HL),#5D CALL PRoLPP RET Z DJNZ PRoLPQ JR PRoLP0 PRoLPP INC A PUSH AF AND 15 JNZ PRoLPE LD A,L AND 31 LD H,88 ADD A,#44 LD L,A PRoLPE ADD HL,DE POP AF AND 63 RET EsPRMRK LD HL,SMPATR+1;#58E5 EsLOOP=$+1 EsLEN=$+2 LD BC,#100,A,C ADD A,B LD B,A,DE,32 LD A,(EsTOP) EXA LD A,SMPH EsPRMR0 EXA CP C JNC EsPRMR1+1 EsPRMRQ LD (HL),5 INC A EXA ADD HL,DE DEC A JNZ EsPRMR0 RET EsPRMR1 EXA CP B JNC EsPRMRQ LD (HL),#5D INC A EXA ADD HL,DE DEC A JNZ EsPRMR1 RET EDSMORN LD HL,EsORN,A,(HL) ADD A,C AND #F LD (HL),A JR EDSMOq EDSM_p POP AF,HL CALL SMPQU CALL DECSMP JP EDSMP EDSM_n POP AF,HL CALL SMPQU CALL INCSMP JP EDSMP EDSMPKY CALL FIRE JP NZ,EDSMPFI XOR A LD (EDSMFIh),A CALL BIT5 RET Z CP 4 JZ EDSM_p CP 5 JZ EDSM_n LD BC,32 CP "R JZ EDSMNUM LD C,1 CP 172;i JZ EDSMORN CP "W JZ EDSMNUM DEC BC,BC CP 197;u JZ EDSMORN CP "E JZ EDSMNUM LD C,-32 CP "T JZ EDSMNUM CP "0 JZ EDSM0 CP "+ JZ EDsPLU SUB "0;1 CP 9;8 RET NC LD (OCT),A EDSMOq CALL PROCORN JP SHOLK EsX=$+1 EDsPLU LD A,0 INC A RET Z CALL EsGadr PUSH HL POP IX LD L,(IX),H,(IX+1) CALL NEGHL JR EDSMNQ EDSM0 CALL EsGadr LD A,(EsX) INC A JNZ EDsNOI0 INC L,L LD A,(HL) AND #E0 LD (HL),A JR EDsNOIQ EDsNOI0 XOR A LD (HL),A INC L LD (HL),A JR EDSMKQ EDSMNUM LD A,(EsX) INC A JZ EDSMNOI CALL EsGadr PUSH HL POP IX LD L,(IX),H,(IX+1) ADD HL,BC LD A,H OR A LD B,#F JP P,EDSMNOK CALL NEGHL LD A,H AND B LD H,A CALL NEGHL JR $+4 EDSMNOK AND B LD H,A EDSMNQ LD (IX),L,(IX+1),H EDSMKQ CALL EsPRNUM JP SHOLK EDSMNOI CALL EsGadr INC L,L LD A,(HL) SUB C XOR (HL) AND 31 XOR (HL) LD (HL),A EDsNOIQ CALL EsPRNOI JP SHOLK EsGadr LD H,'EDORbf,A,(EsTOP),D,A EsLIN=$+1 LD A,0 PUSH AF SUB D LD E,A POP AF ADD A,A,A,A LD L,A RET ;3 PRSMLIN PUSH AF,AF LD D,1 CALL toOO LD D,8 POP AF ADD A,A,A,A LD HX,'EDORbf,LX,A LD A,(IX+1) OR A LD L,(IX),H,(IX+1) LD B,"+ CALL M,NEGHL-2 LD A,"+"+"- SUB B CALL PRADD INC D CALL toOOOO INC D,D LD A,(IX+2) PUSH AF AND 31 CALL toOO INC D,D POP AF CALL PRTNE LD A,(IX+3) CALL PRVTN POP AF JP PRSMVOL EsPRNUM CALL EsGadr LD D,8,A,(HL) INC L LD H,(HL),L,A,A,H RLA LD B,"- JNC $+7 LD B,"+ CALL NEGHL LD A,B CALL PRADD INC D JP toOOOO EsPRNOI CALL EsGadr ADD A,2 LD L,A,D,#E,A,(HL) AND 31 JP toOO TNEVTN LD H,'EDORbf TNEVTNl=$+1 LD L,0 TNEVTNy=$+1 LD DE,#1100 LD A,(HL) INC HL LD B,(HL) PUSH BC CALL PRTNE POP AF JR PRVTN PRTNE LD L,A,H,"- AND #80 LD A,"T JZ $+3 LD A,H CALL PRADD INC D LD A,L AND 64 LD A,"N JZ $+3 LD A,H CALL PRADD INC D LD A,L AND 32 LD A,"E JZ $+3 LD A,H JP PRADD PRVTN LD D,4,C,A RLA LD A,"0 JNC PRVTN0 BIT 6,C LD A,"- JZ $+4 LD A,"+ PRVTN0 CALL PRADD LD A,32 CALL PRVTNPP LD A,16 PRVTNPP AND C LD A,"0 JZ $+4 LD A,"+ INC D JP PRADD EsFITN LD B,32 CP SMPX<3+#1C JC $+7 EsFIfN LD B,16 CP 64 RET NC INC HL LD A,(HL) XOR B JR EsFIVTQ EsFIx SBC A,A EXA CALL GsMRK7 LD A,(EsFIlin),(EsLIN),A EXA LD (EsX),A CALL GsMRK56 JP SHOLK EsNfix CALL EDSMFIp XOR A JR EsFIfN EsTfix CALL EDSMFIp XOR A JR EsFITN EsAfix CALL EDSMFIp JR EsFIV EsTi CALL EDSMFIp XOR A JR Es_T EsNi CALL EDSMFIp XOR A JR Es_N EsEi CALL EDSMFIp JR Es_E EsFIVTN CP SMPX<3+#38 CCF JC EsFIx ;смещ.шума CP SMPX<3+#28 JNC EsFIx ;цикл CP SMPX<3+#14 RET C ;слева от VTN CP SMPX<3+#18 JNC EsFITN EsFIV INC HL LD A,(HL),C,A LD B,#80 AND B JNZ $+6 LD A,C OR B JR EsFIVTQ LD A,C XOR 64 LD C,A AND 64 LD A,C JNZ $+4 AND 63 EsFIVTQ LD (HL),A JR EsFIQ EDSMPFI LD HL,(ARXY),A,L SUB SMPY+1<3;#38 CP SMPH<3 RET NC RES 0,H,1,H RRA RRA RRA AND #1F LD B,A CP 0 LD ($-1),A LD A,H JNZ EDSMFIn EDSMFIh=$+1 CP 0 EDSMFIn LD ($-1),A RET Z CALL EDSMFIP CP SMPX<3+#48 JC EsFIVTN CP SMPX<3+#54 JNC EsFIVOL Es_T LD B,#80 CP SMPX<3+#4C JC EsFINUM Es_N LD B,64 CP SMPX<3+#50 JC $+4 Es_E LD B,32 EsFINUM LD A,(HL) XOR B LD (HL),A EsFIQ CALL TNEVTN JP SHOLK EDSMFIp LD A,(EsLIN),HL,EsTOP SUB (HL) LD B,A EDSMFIP LD A,(EsTOP) ADD A,B LD (EsFIlin),A ADD A,A,A,A,A,2 LD L,A,(TNEVTNl),A LD A,B EDSpQ LD (TNEVTNy),A LD A,H,H,'EDORbf RET EsVOLi CALL EDSMFIp INC HL LD A,(HL) INC A JR EsVOLQ EsVOLd CALL EDSMFIp INC HL LD A,(HL) DEC A JR EsVOLQ EsFIVOL SUB SMPX<3+#54 CP #40 RET NC RRA RRA INC HL EsVOLQ AND #F LD E,A,A,(HL) AND #F0 OR E LD (HL),A LD A,(TNEVTNy),E,A EsFIlin=$+1 LD A,0 CALL PRSMVOL JP SHOLK EDsSCUP LD DE,SMPATR&#300<3+.SMPATR+#4001+SMPX LD HL,SMPATR+32&#300<3+.(SMPATR+32)+#4001+SMPX LD A,SMPH<3-8 EDsSCU0 CALL EDsLDI CALL DHL,DDE EXA JNZ EDsSCU0 RET EDsSCDN LD DE,SMPBOT&#300<3+.SMPBOT+#4001+SMPX LD HL,SMPBOT-32&#300<3+.(SMPBOT-32)+#4001+SMPX LD A,SMPH<3-8 EDsSCD0 CALL EDsLDI CALL UHL,UDE EXA JNZ EDsSCD0 RET EDsLDI DEC A EXA LD BC,19 PUSH HL,DE LDIR POP DE,HL RET EDsUP DEC A RET NZ CALL GsMRK7 LD A,(EsLIN) DEC A JP M,EDsCQ LD B,A,A,(EsTOP),C,A DEC A CP B JNZ EDsUQ PUSH BC CALL EDsSCDN POP BC LD A,C DEC A LD (EsTOP),A PUSH BC LD E,0 CALL PRSMLIN POP BC EDsUQ LD A,B,(EsLIN),A JR EDsCQ EDsLR CALL GsMRK7 LD HL,EsX,A,(HL) CPL LD (HL),A EDsCQ CALL GsMRK56 JP SHOLK EDSMCUR CALL BIT5 RET Z CP "A JP Z,EsAfix CP "9 JP Z,EsTfix CP "F JP Z,EsNfix CP ") JP Z,EsVOLi CP "( JP Z,EsVOLd CP kIns JZ EDsINS CP kDelLn DJNZ PRORN1JP Z,EDsDELLN CP "K JP Z,EDsBEG CP "L JP Z,EDsEND CP "Y JP Z,EsTi CP "U JP Z,EsNi CP "I JP Z,EsEi ; SUB 4 ; JZ EDsTRU ; DEC A ; JP Z,EDsINV SUB 3+5 JZ EDsLR DEC A JZ EDsLR DEC A JP NZ,EDsUP CALL GsMRK7 LD A,(EsLIN) INC A AND 63 JZ EDsCQ LD BC,(EsTOP),B,A SUB C CP SMPH JNZ EDsDQ PUSH BC CALL EDsSCUP POP BC LD A,C INC A LD (EsTOP),A PUSH BC LD E,SMPH-1 ADD A,E CALL PRSMLIN POP BC EDsDQ LD A,B,(EsLIN),A JP EDsCQ POP IFN 0 EDsTRU CALL GsMRK7 LD HL,EsLIN,A,(HL) SUB SMPH LD (HL),A LD DE,EsTOP,A,(DE) SUB SMPH JNC $+4 XOR A LD (HL),A JR EDsInE ENDIF EDsINS CALL EsGadr LD A,-4 SUB L RET Z LD L,-5,D,H,E,-1,B,0,C,A LDDR
INC L
DEC CSRL L,L JNZ PRORN0 RET EORNCUR LD DE,EsLOOP CALL BIT5incCOR RET ZJZ $+4 SUB 8JNC EDsINVQ LD B,-16 EXD JZ EORNC INC HL
DEC A
LD B,16 JZ EORNC DEC A LD B,1 JZ EORNC DEC A LD B,-1 RET NZEORNC LD A,(EoLIN) ADD A,B AND 63EORNCQ EXA LD E,7 CALL GornMRK+2 EXA LD (EoLINHL),A LD HL,SHOLK PUSH HLGornMRK LD CP E,56,A,(EoLIN) LD BC,16 JC EDsINVQ LD H,B INC B CP 63 SUB C JNC $-2 ADD A,C,A,+3 ADD A,A,A,A,A,A LD L,A ADD HL,HL,HL,HL LD A,H SUB -88 LD H,A,A,B ADD A,A,A,A SUB 2 OR L LD L,A,(HL),E INC L LD (HL),E RET JR EDsINVQORNline EDsDELLN LD A,(EoLIN),BC,16 CALL EsGadr INC B SUB C JNC $-2 ADC A,C LD ED,AH,A,BL ADD A,A,A,A,A,A SUB 4 LD DE,A LD HL,(ornADR) EXD LD XOR A,(EoLIN) ADD A,L LD LB,A,A,(HL), SUB L,A OR A RET Z LD BC,"+ CALL M,NEGHL-2 LD A,B CALL PRADD INC D
LD A,L
JP toOOEoPRMRK LD A,(NOPKA) OR A LD A,3 CCF CALL NZ,EoARPOS CALL NC,EORNCQEoLOOP=$+1EoLPlen=$+2 LD BC,0,DE,32 XOR A LD HL,#5861PRoLP0 CP C JZ PRoLPQ LD (HL),5 CALL PRoLPP JNZ PRoLP0 RET PRoLPQ LD (HL),#5D CALL PRoLPP RET Z DJNZ PRoLPQ JR PRoLP0PRoLPP INC A PUSH AF AND 15 JNZ PRoLPE LD A,L AND 31 LD H,88 ADD A,#44 LDIR
LD L,A
PRoLPE ADD HL SRL L,L LD DE,EsLOOP POP AF CALL decCOR AND 63JNC EDsINVQ RET EXD EsPRMRK INC HL LD HL ADD A,SMPATR+1;#58E5(HL)EsLOOP=$+1 CP EEsLEN= JC $+23 LD BC,#100,A,C DEC (HL) ADD A,BIFN 0 JR EDsINVQ EDsINV CALL GsMRK7 LD BHL,A,DEEsLIN,32 LD A,(EsTOPHL) EXA LD ADD A,SMPHEsPRMR0 EXA CP C JNC EsPRMR1+1EsPRMRQ LD (HL),5 INC A EXA ADD HL,DE,EsTOP,A,(DE) DEC ADD A,SMPH JNZ EsPRMR0 RET EsPRMR1 EXA CP B65-SMPH JNC EsPRMRQ JC EDsInE LD (HL),#5D63 INC LD A,64-SMPH EXA ADD HL EDsInE LD (DE),DEA DEC AENDIF JNZ EsPRMR1 EDsINVQ CALL SHOLK RET CALL PRSMPEDSMORN GsMRK56 LD HLE,EsORN56 JR GsmpMRK GsMRK7 LD E,7 GsmpMRK LD A,(HLEsLIN) EsTOP=$+1 SUB 0 ADD A,C AND #FA,A,A,A,A LD (HL)L,A JR EDSMOqEDSM_p POP AF,H,0,BC,SMPATR;#58E4 ADD HL,HL,HL,HL,HL,BC CALL SMPQU LD A,(EsX) CALL DECSMP OR A JP EDSMPEDSM_n POP AF LD A,HL5 CALL SMPQU JZ $+4 CALL INCSMP LD A,7 JP EDSMP ADD A,LEDSMPKY LD L,A CALL FIRE JP NZ LD (HL),EDSMPFIE XOR A INC L LD (EDSMFIhHL),A CALL BIT5E RET Z CP 4 PRORNos JZ EDSM_p CP 5 JZ EDSM_n LD A,(OCT) LD BCADD A,32 CP "R0 JZ EDSMNUM LD CDE,1#E11 CP 172;i CALL PRADD JZ EDSMORN LD A,(EoSMP) CP "W CALL HEXDIG JZ EDSMNUM DEC BC LD D,BC#18 CP 197;u JP PRADD JZ EDSMORN CP "E JZ EDSMNUM PROCORN LD CA,-32(OCT) CP ADD A,"T0 JZ EDSMNUM LD DE,#1000+SMPH CP "0 CALL PRADD JZ EDSM0 LD A,(EsORN) CP "+ CALL HEXDIG JZ EDsPLU LD D,#1C SUB "0;1 JP PRADD CP 9;8 PRSMP LD E,0 LD A,(EsTOP) RET NC ADD A,SMPH LD (OCTPRSMPe),AEDSMOq SUB SMPH CALL PROCORNPRSMP0 PUSH AF,DE CALL PRSMLIN POP DE,AF JP SHOLK INC E,AEsX PRSMPe=$+1EDsPLU LD A, CP 0 INC A JNZ PRSMP0 RET Z CALL EsGadr PRSMVOL PUSH HLDE,AF POP IX CALL PRADDPP LD LD,(IX),H,(IX11+1)SMPX CALL NEGHLDE2SCR JR EDSMNQ INC H EXD EDSM0 LD H,'EDORbf CALL EsGadr POP AF LD ADD A,(EsX) INC A JNZ EDsNOI0 INC L,LA,A,A,3 LD L,A,A,(HL) AND #E0F LD (HLPRSMVa),A JR EDsNOIQ EXD EDsNOI0 XOR A PUSH AF,HL LD (HL)A,A#22,B,7 CALL BLOBER INC L DJNZ $-4 LD (HL)A,A#20 JR EDSMKQ CALL BLOBEREDSMNUM POP HL,AF LD AE,(EsX) INC A JZ EDSMNOI RRA CALL EsGadr PUSH AF PUSH HL AND 7 POP IX JZ PRVOL7 LD LB,(IX)A,HA,(IX+1)#77 ADD HL PRVOL0 LD D,BCH DUP 5 LD (HL),A, INC H OR AEDUP LD B(HL),A,H,#FD JP P,EDSMNOK INC L CALL NEGHL DJNZ PRVOL0 PRVOL7 LD A,HE AND B CP #F LD HE,A#72 CALL NEGHL JR JNZ $+4EDSMNOK AND B LD HE,A#70 POP AFEDSMNQ LD (IX)A,LE CALL C,(IXBLOBER7 PRSMVa=$+1) LD A,H0 POP DEEDSMKQ CALL EsPRNUM LD D,#25 JP SHOLKD2HEXEDSMNOI CALL EsGadr INC L,L DQ LD A,B,(HLEsLIN),A SUB C JP EDsCQ XOR (HL) AND 31 XOR (HL) LD (HL),AEDsNOIQ CALL EsPRNOI JP SHOLKEsGadr LD H,'EDORbf,A,(EsTOP),D,AEsLIN=$+1 LD A,0 PUSH AF SUB D LD E,A POP AF ADD A,A,A,A LD L,A RET ;3PRSMLIN PUSH AF,AF LD D,1 CALL toOO LD D,8 POP AF ADD A,A,A,A LD HX,'EDORbf,LX,A LD A,(IX+1) OR A LD L,(IX),H,(IX+1) LD B,"+ CALL M,NEGHL-2 LD A,"+"+"- SUB B CALL PRADD INC D CALL toOOOO INC D,D LD A,(IX+2) PUSH AF AND 31 CALL toOO INC D,D POP AF CALL PRTNE LD A,(IX+3) CALL PRVTN POP AF JP PRSMVOLEsPRNUM CALL EsGadr LD D,8,A,(HL) INC L LD H,(HL),L,A,A,H RLA LD B,"- JNC $+7 LD B,"+ CALL NEGHL LD A,B CALL PRADD INC D JP toOOOOEsPRNOI CALL EsGadr ADD A,2 LD L,A,D,#E,A,(HL) AND 31 JP toOOTNEVTN LD H,'EDORbfTNEVTNl=$+1 LD L,0TNEVTNy=$+1 LD DE,#1100 LD A,(HL) INC HL LD B,(HL) PUSH BC CALL PRTNE POP AF JR PRVTNPRTNE LD L,A,H,"- AND #80 LD A,"T JZ $+3 LD A,H CALL PRADD INC D LD A,L AND 64 LD A,"N JZ $+3 LD A,H CALL PRADD INC D LD A,L AND 32 LD A,"E JZ $+3 LD A,H JP PRADDPRVTN LD D,4,C,A RLA LD A,"0 JNC PRVTN0 BIT 6,C LD A,"- JZ $+4 LD A,"+PRVTN0 CALL PRADD LD A,32 CALL PRVTNPP LD A,16PRVTNPP AND C LD A,"0 JZ $+4 LD A,"+ INC D JP PRADDEsFITN LD B,32 CP SMPX<3+#1C JC $+7EsFIfN LD B,16 CP 64 RET NC INC HL LD A,(HL) XOR B JR EsFIVTQEsFIx SBC A,A EXA CALL GsMRK7 LD A,(EsFIlin),(EsLIN),A EXA LD (EsX),A CALL GsMRK56 JP SHOLKEsNfix CALL EDSMFIp XOR A JR EsFIfNEsTfix CALL EDSMFIp XOR A JR EsFITNEsAfix CALL EDSMFIp JR EsFIVEsTi CALL EDSMFIp XOR A JR Es_TEsNi CALL EDSMFIp XOR A JR Es_NEsEi CALL EDSMFIp JR Es_EEsFIVTN CP SMPX<3+#38 CCF JC EsFIx ;смещ.шума CP SMPX<3+#28 JNC EsFIx ;цикл CP SMPX<3+#14 RET C ;слева от VTN CP SMPX<3+#18 JNC EsFITNEsFIV INC HL LD A,(HL),C,A LD B,#80 AND B JNZ $+6 LD A,C OR B JR EsFIVTQ LD A,C XOR 64 LD C,A AND 64 LD A,C JNZ $+4 AND 63EsFIVTQ LD (HL),A JR EsFIQEDSMPFI LD HL,(ARXY),A,L SUB SMPY+1<3;#38 CP SMPH<3 RET NC RES 0,H,1,H RRA RRA RRA AND #1F LD B,A CP 0 LD ($-1),A LD A,H JNZ EDSMFInEDSMFIh=$+1 CP 0EDSMFIn LD ($-1),A RET Z CALL EDSMFIP CP SMPX<3+#48 JC EsFIVTN CP SMPX<3+#54 JNC EsFIVOLEs_T LD B,#80 CP SMPX<3+#4C JC EsFINUMEs_N LD B,64 CP SMPX<3+#50 JC $+4Es_E LD B,32EsFINUM LD A,(HL) XOR B LD (HL),AEsFIQ CALL TNEVTN JP SHOLKEDSMFIp LD A,(EsLIN),HL,EsTOP SUB (HL) LD B,AEDSMFIP LD A,(EsTOP) ADD A,B LD (EsFIlin),A ADD A,A,A,A,A,2 LD L,A,(TNEVTNl),A LD A,BEDSpQ LD (TNEVTNy),A LD A,H,H,'EDORbf RET EsVOLi CALL EDSMFIp INC HL LD A,(HL) INC A JR EsVOLQEsVOLd CALL EDSMFIp INC HL LD A,(HL) DEC A JR EsVOLQEsFIVOL SUB SMPX<3+#54 CP #40 RET NC RRA RRA INC HLEsVOLQ AND #F LD E,A,A,(HL) AND #F0 OR E LD (HL),A LD A,(TNEVTNy),E,AEsFIlin=$+1 LD A,0 CALL PRSMVOL JP SHOLKEDsSCUP LD DE,SMPATR&#300<3+.SMPATR+#4001+SMPX LD HL,SMPATR+32&#300<3+.(SMPATR+32)+#4001+SMPX LD A,SMPH<3-8EDsSCU0 CALL EDsLDI CALL DHL,DDE EXA JNZ EDsSCU0 RET EDsSCDN LD DE,SMPBOT&#300<3+.SMPBOT+#4001+SMPX LD HL,SMPBOT-32&#300<3+.(SMPBOT-32)+#4001+SMPX LD A,SMPH<3-8EDsSCD0 CALL EDsLDI CALL UHL,UDE EXA JNZ EDsSCD0 RET EDsLDI DEC A EXA LD BC,19 PUSH HL,DE LDIR POP DE,HL RET EDsUP DEC A RET NZ CALL GsMRK7 LD A,(EsLIN) DEC A JP M,EDsCQ LD B,A,A,(EsTOP),C,A DEC A CP B JNZ EDsUQ PUSH BC CALL EDsSCDN POP BC LD A,C DEC A LD (EsTOP),A PUSH BC LD E,0 CALL PRSMLIN POP BCEDsUQ LD A,B,(EsLIN),A JR EDsCQEDsLR CALL GsMRK7 LD HL,EsX,A,(HL) CPL LD (HL),AEDsCQ CALL GsMRK56 JP SHOLKEDSMCUR CALL BIT5 RET Z CP "A JP Z,EsAfix CP "9 JP Z,EsTfix CP "F JP Z,EsNfix CP ") JP Z,EsVOLi CP "( JP Z,EsVOLd CP kIns JZ EDsINS CP kDelLn JP Z,EDsDELLN CP "K JP Z,EDsBEG CP "L JP Z,EDsEND CP "Y JP Z,EsTi CP "U JP Z,EsNi CP "I JP Z,EsEi ; SUB 4 ; JZ EDsTRU ; DEC A ; JP Z,EDsINV SUB 3+5 JZ EDsLR DEC A JZ EDsLR DEC A JP NZ,EDsUP CALL GsMRK7 LD A,(EsLIN) INC A AND 63 JZ EDsCQ LD BC,(EsTOP),B,A SUB C CP SMPH JNZ EDsDQ PUSH BC CALL EDsSCUP POP BC LD A,C INC A LD (EsTOP),A PUSH BC LD E,SMPH-1 ADD A,E CALL PRSMLIN POP BCEDsDQ LD A,B,(EsLIN),A JP EDsCQ IFN 0EDsTRU CALL GsMRK7 LD HL,EsLIN,A,(HL) SUB SMPH LD (HL),A LD DE,EsTOP,A,(DE) SUB SMPH JNC $+4 XOR A LD (HL),A JR EDsInE ENDIF EDsINS CALL EsGadr LD A,-4 SUB L RET Z LD L,-5,D,H,E,-1,B,0,C,A LDDR INC L SRL L,L LD DE,EsLOOP CALL incCOR JZ $+4 JNC EDsINVQ EXD INC HL DEC A ADD A,(HL) CP E JC EDsINVQ CP 63 JNC $+3 INC (HL) JR EDsINVQEDsDELLN CALL EsGadr LD D,H,A,L ADD A,4 LD E,A EXD XOR A LD B,A SUB L RET Z LD C,A LD A,L LDIR LD L,A SRL L,L LD DE,EsLOOP CALL decCOR JNC EDsINVQ EXD INC HL ADD A,(HL) CP E JC $+3 DEC (HL) IFN 0 JR EDsINVQEDsINV CALL GsMRK7 LD HL,EsLIN,A,(HL) ADD A,SMPH LD (HL),A,DE,EsTOP,A,(DE) ADD A,SMPH CP 65-SMPH JC EDsInE LD (HL),63 LD A,64-SMPHEDsInE LD (DE),A ENDIF EDsINVQ CALL SHOLK CALL PRSMPGsMRK56 LD E,56 JR GsmpMRKGsMRK7 LD E,7GsmpMRK LD A,(EsLIN)EsTOP=$+1 SUB 0 ADD A,A,A,A,A,A LD L,A,H,0,BC,SMPATR;#58E4 ADD HL,HL,HL,HL,HL,BC LD A,(EsX) OR A LD A,5 JZ $+4 LD A,7 ADD A,L LD L,A LD (HL),E INC L LD (HL),E RET PRORNos LD A,(OCT) ADD A,"0 LD DE,#E11 CALL PRADD LD A,(EoSMP) CALL HEXDIG LD D,#18 JP PRADDPROCORN LD A,(OCT) ADD A,"0 LD DE,#1000+SMPH CALL PRADD LD A,(EsORN) CALL HEXDIG LD D,#1C JP PRADDPRSMP LD E,0 LD A,(EsTOP) ADD A,SMPH LD (PRSMPe),A SUB SMPHPRSMP0 PUSH AF,DE CALL PRSMLIN POP DE,AF INC E,APRSMPe=$+1 CP 0 JNZ PRSMP0 RET PRSMVOL PUSH DE,AF CALL PRADDPP LD D,11+SMPX CALL DE2SCR INC H EXD LD H,'EDORbf POP AF ADD A,A,A,A,A,3 LD L,A,A,(HL) AND #F LD (PRSMVa),A EXD PUSH AF,HL LD A,#22,B,7 CALL BLOBER INC L DJNZ $-4 LD A,#20 CALL BLOBER POP HL,AF LD E,A RRA PUSH AF AND 7 JZ PRVOL7 LD B,A,A,#77PRVOL0 LD D,H DUP 5 LD (HL),A INC H EDUP LD (HL),A,H,D INC L DJNZ PRVOL0PRVOL7 LD A,E CP #F LD E,#72 JNZ $+4 LD E,#70 POP AF LD A,E CALL C,BLOBER7PRSMVa=$+1 LD A,0 POP DE LD D,#25 JP D2HEXDQ LD A,B,(EsLIN),A JP EDsCQ IFN 0IFN 0 EDsTRU CALL GsMRK7 LD HL,EsLIN,A,(HL)

Navigation menu