Difference between revisions of "PROTRACKER372 PTU367 H"
From MSX MUSIC WIKI
(Created page with "PTU367 C��╔Ы�ЬЕ COLOUR=5 zwet=1 CATHGT=22 HGT EQU 24 WINCOL EQU 7 TITLCOL EQU 56 FD EQU 32765 EMSTACK EQU #5F00 SYSBUF EQU #6800 LDIRKA EQU #BB80 CURSC...") (Tags: Mobile edit, Mobile web edit) |
(Tags: Mobile edit, Mobile web edit) |
||
Line 1: | Line 1: | ||
− | PTU367 C��╔Ы�ЬЕ COLOUR=5 | + | PTU367 C��╔Ы�ЬЕ |
− | zwet=1 | + | COLOUR=5 |
− | CATHGT=22 | + | zwet=1 |
− | HGT EQU 24 | + | CATHGT=22 |
− | WINCOL EQU 7 | + | HGT EQU 24 |
− | TITLCOL EQU 56 | + | WINCOL EQU 7 |
− | FD EQU 32765 | + | TITLCOL EQU 56 |
− | EMSTACK EQU #5F00 | + | FD EQU 32765 |
− | SYSBUF EQU #6800 | + | EMSTACK EQU #5F00 |
− | LDIRKA EQU #BB80 | + | SYSBUF EQU #6800 |
− | CURSCOL EQU 56 | + | LDIRKA EQU #BB80 |
− | SECBUF EQU #B700 | + | CURSCOL EQU 56 |
− | ;TEXT=SECBUF+1 | + | SECBUF EQU #B700 |
− | LINBUF EQU #BE00 | + | ;TEXT=SECBUF+1 |
− | WINBUF EQU #BF00 | + | LINBUF EQU #BE00 |
− | FILENAM EQU #5CDD | + | WINBUF EQU #BF00 |
− | FNEXT EQU FILENAM+8 | + | FILENAM EQU #5CDD |
− | MUZ=#C000 | + | FNEXT EQU FILENAM+8 |
− | + | MUZ=#C000 | |
− | begin | + | ORG #8000 |
− | FONTS | + | begin |
− | + | FONTS | |
− | GO | + | INCBIN "42>> |
− | + | GO | |
− | + | LD SP,#6000 | |
− | + | OUT (-2),A | |
− | + | INC A | |
− | + | LD (IY-48),A | |
− | + | LD (IY+48),A | |
− | + | LD (IY+1),#CC | |
− | + | LD (IY+14),COLOUR | |
− | + | LD (IY-49),16 | |
− | + | CALL OLDRV | |
− | + | LD (23798),A | |
− | + | LD HL,ONERROR | |
− | + | LD (23747),HL | |
− | ST | + | CALL CLS |
− | + | ST | |
− | STC | + | CALL PRMENU |
− | + | STC | |
− | + | LD C,0 | |
− | + | CALL RULILKA | |
− | + | LD A,C | |
− | + | LD (STC+1),A | |
− | + | LD DE,QUIT | |
− | + | CALL 8020 | |
− | + | JR NC,STPUSH | |
− | + | LD B,0 | |
− | + | LD HL,JPS | |
− | + | ADD HL,BC,HL,BC | |
− | + | LD E,(HL) | |
− | + | INC HL | |
− | STPUSH LD HL,ST | + | LD D,(HL) |
− | + | STPUSH LD HL,ST | |
− | + | PUSH HL,DE | |
− | JPS | + | RET |
− | + | JPS | |
− | + | DW PLOAD | |
− | + | DW PPLAY | |
− | + | DW PSAVE | |
− | + | DW PCOM | |
− | + | DW PSWAP | |
− | + | DW PREN | |
− | + | DW PSORT | |
− | + | DW PHELP | |
− | PLOAD | + | DW QUIT |
− | + | PLOAD | |
− | + | LD HL,TLOAD | |
− | + | CALL PRCAT | |
− | + | JP NC,PLOADQ | |
− | + | LD (LENGTH),HL | |
− | + | PUSH BC | |
− | + | PUSH DE | |
− | + | CALL CLS | |
− | + | LD HL,MUZ | |
− | + | PUSH HL | |
− | + | LD DE,MUZ+1 | |
− | + | LD B,#40 | |
− | + | LD (HL),L | |
− | + | LDIR | |
− | + | POP HL | |
− | + | POP DE | |
− | + | POP BC | |
− | + | LD (ERRSP+1),SP | |
− | + | PUSH HL | |
− | + | LD A,64 | |
− | + | CP B | |
− | + | JR NC,$+3 | |
− | + | LD B,A | |
− | PLDCPU CALL DEPKFNT | + | CALL EM15635 |
− | + | PLDCPU CALL DEPKFNT | |
− | + | POP HL | |
− | PLOADCP LD DE,TDISTIN | + | LD BC,#4000 |
− | + | PLOADCP LD DE,TDISTIN | |
− | + | LD A,(DE) | |
− | + | CPIR | |
− | + | JR NZ,PLDBUGL | |
− | PLDCP0 INC DE | + | LD (PLDOK+1),HL |
− | + | PLDCP0 INC DE | |
− | + | LD A,(DE) | |
− | + | OR A | |
− | + | JR Z,PLDOK | |
− | + | CP (HL) | |
− | + | INC HL | |
− | + | DEC BC | |
− | + | JR Z,PLDCP0 | |
− | PLDOK LD HL,0 | + | JR PLOADCP |
− | + | PLDOK LD HL,0 | |
− | + | LD BC,-14-1 | |
+ | ADD HL,BC | ||
+ | LD DE,MUZ | ||
+ | LD BC,#4000 | ||
+ | LDIR | ||
LD DE,MUZ | LD DE,MUZ | ||
− | + | CALL deinit+3 | |
− | + | LD D,0 | |
− | + | LD HL,MUZ+105 | |
− | + | LD A,48 | |
− | + | PLDOKM0 LD C,(HL) | |
− | + | INC HL | |
− | + | LD B,(HL) | |
− | PLDOKM0 LD C,(HL) | + | INC HL |
− | + | EX DE,HL | |
− | + | OR A | |
− | + | SBC HL,BC | |
− | + | ADD HL,BC | |
− | + | EX DE,HL | |
− | + | JR NC,$+4 | |
− | + | LD D,B | |
− | + | LD E,C | |
− | + | DEC A | |
− | + | JR NZ,PLDOKM0 | |
− | + | LD HL,MUZ+1 | |
− | + | ADD HL,DE | |
− | + | LD C,(HL) | |
− | + | LD B,0 | |
− | + | INC HL | |
− | + | ADD HL,BC | |
− | + | LD DE,-MUZ | |
− | + | ADD HL,DE | |
− | + | LD (LENGTH),HL | |
− | + | LD A,183 | |
− | + | LD (MODOK),A | |
− | + | PLOADQ | |
− | + | JP CLS | |
− | + | ||
− | PLOADQ | + | PLDBUGL LD A,(MUZ) |
− | + | CP 243 | |
− | + | JR NZ,PLDBUG | |
− | PLDBUGL LD A,(MUZ) | + | PLDBGL0 LD HL,TDEPKYN |
− | + | LD DE,#4040 | |
− | + | CALL PRTEXT | |
− | PLDBGL0 LD HL,TDEPKYN | + | CALL IYKEY |
− | + | CP "n | |
− | + | JR Z,PLDBUG | |
− | + | CP "y | |
− | + | JR NZ,PLDBGL0 | |
− | + | LD HL,MUZ | |
− | + | PUSH HL | |
− | + | LD DE,(STADR+1) | |
− | + | LD BC,(LENGTH) | |
− | + | LDIR | |
− | + | STADR CALL 0 | |
− | + | EI | |
− | + | JP PLDCPU | |
− | STADR CALL 0 | + | PLDBUG |
− | + | LD HL,TLDBUG | |
− | + | LD DE,#4060 | |
− | PLDBUG | + | CALL PRTEXT |
− | + | CALL IYKEY | |
− | + | LD A,55 | |
− | + | LD (MODOK),A | |
− | + | JR PLOADQ | |
− | + | ||
− | + | TLDBUG DB "INVALID MODULE!",0 | |
− | + | TDEPKYN DB "DEPACK (Y/N)?",0 | |
− | + | TDISTIN DB " compilation of ",0 | |
− | TLDBUG DB "INVALID MODULE!",0 | + | COPYTAB |
− | TDEPKYN DB "DEPACK (Y/N)?",0 | + | LD A,(MUZ+99) |
− | TDISTIN DB " compilation of ",0 | + | LD L,A |
− | COPYTAB | + | ADD A,A |
− | + | ADD A,L | |
− | + | LD L,0 | |
− | + | RRA | |
− | + | RR L | |
− | + | RRA | |
− | + | RR L | |
− | + | ADD A,'TABS | |
− | + | LD H,A | |
− | + | LD DE,tab_frq | |
− | + | LD BC,#C0 | |
+ | LDIR | ||
+ | RET | ||
+ | PPLAY | ||
+ | MODOK SCF | ||
+ | JR C,PLDBUG | ||
+ | CALL COPYTAB | ||
+ | CALL initia | ||
+ | PPLAY0 | ||
+ | RES 5,(IY+1) | ||
+ | HALT | ||
+ | CALL play | ||
+ | BIT 5,(IY+1) | ||
+ | JR Z,PPLAY0 | ||
+ | LD A,(23560) | ||
+ | OR #20 | ||
+ | CP "f | ||
+ | JR NZ,stop | ||
+ | CALL play,play | ||
+ | JR PPLAY0 | ||
+ | stop | ||
+ | CALL deinit | ||
+ | AYOFF | ||
+ | LD DE,#E00 | ||
+ | OFF0 LD BC,-3 | ||
+ | DEC D | ||
+ | OUT (C),D | ||
+ | LD B,#BF | ||
+ | OUT (C),E | ||
+ | JR NZ,OFF0 | ||
+ | RET | ||
+ | |||
+ | PSAVE | ||
+ | LD A,(MODOK) | ||
+ | RLA | ||
+ | JP NC,PLDBUG | ||
+ | LD A,"m | ||
+ | LD (FNEXT),A | ||
+ | CALL SAVE | ||
+ | JP CLS | ||
+ | |||
+ | PREN | ||
+ | LD A,(MODOK) | ||
+ | RLA | ||
+ | JP NC,PLDBUG | ||
+ | |||
+ | LD HL,MUZ | ||
+ | LD DE,LINBUF | ||
+ | LD BC,256 | ||
+ | LDIR | ||
+ | LD LX,20 | ||
+ | PRENST | ||
+ | PUSH BC | ||
+ | CALL PRBY | ||
+ | POP BC | ||
+ | PUSH BC | ||
+ | LD A,LX | ||
+ | CALL 3742 | ||
+ | INC L | ||
+ | LD A,C | ||
+ | ADD A,6 | ||
+ | CALL PRCU | ||
+ | POP BC | ||
+ | LD HL,MUZ+#1E | ||
+ | LD A,LX | ||
+ | RRA | ||
+ | JR NC,$+5 | ||
+ | LD HL,MUZ+#42 | ||
+ | LD B,0 | ||
+ | ADD HL,BC | ||
+ | CALL IYKEY | ||
+ | JP NC,PRENNO | ||
+ | ADD A,-13 | ||
+ | JR Z,PRENQQ | ||
+ | LD DE,PRENST | ||
+ | PUSH DE | ||
+ | LD DE,#1F20 | ||
+ | DEC A | ||
+ | JR Z,PRENEXT | ||
+ | DEC A | ||
+ | JR Z,PRENGR | ||
+ | ADD A,3 | ||
+ | JP Z,WORKDEL | ||
+ | ADD A,2 | ||
+ | JR NC,PRENNUD | ||
+ | LD A,LX | ||
+ | XOR 1 | ||
+ | LD LX,A | ||
+ | RET | ||
+ | PRENNUD INC A | ||
+ | JR Z,PRENIC | ||
+ | INC A | ||
+ | JP Z,WORKDC | ||
+ | INC A | ||
+ | RET Z | ||
+ | INC A | ||
+ | JP Z,CAPLNT | ||
+ | SUB 193 | ||
+ | RET Z | ||
+ | DEC A | ||
+ | RET Z | ||
+ | DEC A | ||
+ | RET Z | ||
+ | SUB 55 | ||
+ | CP 172 | ||
+ | RET Z | ||
+ | CP E | ||
+ | RET C | ||
+ | PUSH BC | ||
+ | CALL RECODE-1 | ||
+ | LD (HL),B | ||
+ | POP BC | ||
+ | PRENIC JP WORKIC | ||
+ | PRENGR LD A,D | ||
+ | INC A | ||
+ | SUB C | ||
+ | PUSH BC | ||
+ | LD C,A | ||
+ | LD B,0 | ||
+ | LD D,H | ||
+ | LD E,L | ||
+ | INC HL | ||
+ | LDIR | ||
+ | DEC DE | ||
+ | LD A,32 | ||
+ | LD (DE),A | ||
+ | POP BC | ||
+ | RET | ||
+ | PRENEXT LD A,D | ||
+ | INC A | ||
+ | SUB C | ||
+ | LD B,A | ||
+ | LD E,32 | ||
+ | PRENEX0 LD A,(HL) | ||
+ | LD (HL),E | ||
+ | LD E,A | ||
+ | INC HL | ||
+ | DJNZ PRENEX0 | ||
+ | RET | ||
+ | PRENQQ | ||
+ | RET | ||
+ | PRENNO | ||
+ | LD DE,MUZ | ||
+ | LD HL,LINBUF | ||
+ | LD BC,256 | ||
+ | LDIR | ||
+ | RET | ||
+ | CAPLNT | ||
+ | LD A,(23658) | ||
+ | XOR 8 | ||
+ | LD (23658),A | ||
+ | RET | ||
+ | |||
+ | TLEN DB "Compiled length=",0 | ||
+ | T_ENT DB "Press <ENTER>",0 | ||
+ | TENSTAD DB "Enter start address=#C000",0 | ||
+ | TEDSTAD EQU $-5 | ||
+ | |||
+ | PCOM | ||
+ | LD A,(MODOK) | ||
+ | RLA | ||
+ | JP NC,PLDBUG | ||
+ | CALL CLS | ||
+ | CALL COPYTAB | ||
+ | LD HL,-1-LENP | ||
+ | LD DE,-1 | ||
+ | LD BC,-MUZ-LENP | ||
+ | LDDR | ||
+ | LD BC,LENP | ||
+ | LD HL,(LENGTH) | ||
+ | ADD HL,BC | ||
+ | LD (LENGTH),HL | ||
+ | PUSH HL | ||
+ | ;LD HL,ENDP-1 | ||
+ | ;LDDR | ||
+ | LD HL,T_ENT | ||
+ | LD DE,#48EA | ||
+ | CALL PRTEXT | ||
+ | LD HL,TLEN | ||
+ | LD DE,#4863 | ||
+ | CALL PRTEXT | ||
+ | POP HL | ||
+ | PUSH HL | ||
+ | INC E | ||
+ | CALL PRNUM | ||
+ | POP HL | ||
+ | CALL PRNUMH | ||
+ | LD BC,0 | ||
+ | PCOMIN PUSH BC | ||
+ | LD HL,TENSTAD | ||
+ | LD DE,#48A5 | ||
+ | PUSH DE | ||
+ | CALL PRTEXT | ||
+ | POP HL | ||
+ | INC L | ||
+ | POP BC | ||
+ | LD A,C | ||
+ | ADD A,TEDSTAD-TENSTAD | ||
+ | CALL PRCU | ||
+ | CALL IYKEY | ||
+ | JR NC,PCOMQQ | ||
+ | CP 13 | ||
+ | JR Z,PCOMOK | ||
+ | LD E,A | ||
+ | SUB "0 | ||
+ | RES 5,A | ||
+ | CP "G"-"0 | ||
+ | JR NC,PCOMIN | ||
+ | CP "A"-"0 | ||
+ | JR NC,PCOMSB | ||
+ | CP 10 | ||
+ | JR NC,PCOMIN | ||
+ | JR $+4 | ||
+ | PCOMSB SUB "A"-": | ||
+ | PCOMDG LD HL,TEDSTAD | ||
+ | ADD HL,BC | ||
+ | LD (HL),E | ||
+ | LD DE,PCOMOK+1-TEDSTAD | ||
+ | ADD HL,DE | ||
+ | LD (HL),A | ||
+ | LD A,C | ||
+ | XOR 1 | ||
+ | LD C,A | ||
+ | JR PCOMIN | ||
+ | PCOMOK LD HL,#C000 | ||
+ | LD A,H | ||
+ | DB ")))) | ||
+ | OR L | ||
LD H,A | LD H,A | ||
− | + | LD L,0 | |
− | + | LD (CADDR+1),HL | |
− | + | LD DE,LENP | |
− | + | ADD HL,DE | |
− | + | SUB 'PLAYER | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LD LX,A | LD LX,A | ||
− | + | ;LD (MUZ+1),HL | |
− | + | EX DE,HL | |
− | + | ;сонг лежит в MUZ+LENP | |
− | + | ;пересчитываем его,как будто он в DE | |
− | + | LD B,D,C,E | |
− | + | LD DE,MUZ+LENP | |
− | + | CALL initia3 | |
− | + | CALL PCOMCH | |
− | + | LD HL,PLAYER | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | LD B, | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | LD | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | LD | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LD DE,MUZ | LD DE,MUZ | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LD BC,LENP | LD BC,LENP | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LDIR | LDIR | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
XOR A | XOR A | ||
− | + | SUB LX | |
− | + | LD LX,A | |
− | + | CALL PCOMCH | |
− | + | ||
− | + | CADDR LD HL,#C000 | |
− | + | LD (SSTART+1),HL | |
− | + | LD A,"C | |
− | + | LD (FNEXT),A | |
− | + | CALL SAVE | |
− | + | LD HL,0 | |
− | + | LD (SSTART+1),HL | |
− | + | PCOMQQ | |
− | + | LD HL,MUZ | |
− | + | PUSH HL | |
− | + | JP PLDCPU | |
− | + | PCOMCH | |
− | + | LD HL,TABC | |
− | + | LD BC,LTABC | |
− | + | PCOMCH0 LD E,(HL) | |
− | + | INC HL | |
− | |||
− | SUB | ||
− | |||
− | LD | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LD A,(HL) | LD A,(HL) | ||
− | INC HL | + | SUB #C0-'PLAYER |
− | + | LD D,A | |
− | + | INC HL | |
− | + | LD A,(DE) | |
− | + | ADD A,LX | |
− | + | LD (DE),A | |
− | + | DEC BC | |
− | + | LD A,B | |
− | LD | + | OR C |
− | + | JR NZ,PCOMCH0 | |
− | + | RET | |
− | + | PHELP | |
− | + | CALL CLS | |
− | + | IFN 0 | |
− | + | DI | |
− | + | LD (PHELPE+1),SP | |
− | + | LD HL,-1-LENP | |
− | + | LD DE,-1 | |
− | + | LD BC,-MUZ-LENP | |
− | + | LDDR | |
+ | LD HL,#5FFF | ||
+ | INC B | ||
+ | LDDR | ||
+ | LD HL,PHELPE | ||
+ | LD (#5E33),HL | ||
+ | LD HL,TEXT | ||
+ | LD (#5D64),HL | ||
+ | LD HL,PAKHELP+6 | ||
+ | JP #5D5A | ||
+ | |||
+ | PHELPE LD SP,0 | ||
XOR A | XOR A | ||
− | LD D,A | + | LD (DE),A |
− | + | LD (TEXT-1),A | |
− | + | LD HL,MUZ+LENP-1 | |
− | + | LD DE,#5FFF | |
− | + | LD BC,256 | |
− | + | LDDR | |
− | + | EI | |
− | + | ENDIF | |
− | + | CALL LISTER | |
+ | IFN 0 | ||
+ | LD HL,MUZ+LENP | ||
+ | LD DE,MUZ | ||
+ | LD B,64 | ||
+ | LDIR | ||
+ | ENDIF | ||
+ | JP CLS | ||
+ | |||
+ | PSORT | ||
+ | LD A,(MODOK) | ||
+ | RLA | ||
+ | JP NC,PLDBUG | ||
+ | |||
+ | |||
+ | LD DE,MUZ+201 ;POS | ||
+ | |||
+ | LD C,0 ;CURR.PAT | ||
+ | PSORT0 | ||
+ | LD A,(DE) | ||
+ | CP -1 | ||
+ | JR Z,POK | ||
+ | LD B,A | ||
+ | CP C | ||
+ | JR C,PSORTOK | ||
+ | LD H,D | ||
+ | LD L,E | ||
+ | PSORT1 LD A,(HL) | ||
+ | CP -1 | ||
+ | JR Z,PSORT1Q | ||
+ | CP B | ||
+ | LD (HL),C | ||
+ | JR Z,PSORT1E | ||
+ | CP C | ||
+ | LD (HL),B | ||
+ | JR Z,$+3 | ||
+ | LD (HL),A | ||
+ | PSORT1E INC HL | ||
+ | JR PSORT1 | ||
+ | PSORT1Q | ||
+ | LD A,B | ||
+ | PUSH BC | ||
+ | PUSH DE | ||
+ | LD HL,(MUZ+103) | ||
+ | SLA C | ||
+ | LD B,'MUZ | ||
+ | ADD HL,BC | ||
+ | EX DE,HL | ||
+ | LD HL,(MUZ+103) | ||
+ | ADD A,A | ||
+ | LD C,A | ||
+ | ADD HL,BC | ||
+ | LD B,6 | ||
+ | PSORT2 LD A,(DE) | ||
+ | LD C,(HL) | ||
+ | LD (HL),A | ||
+ | LD A,C | ||
+ | LD (DE),A | ||
+ | INC HL | ||
+ | INC DE | ||
+ | DJNZ PSORT2 | ||
+ | POP DE | ||
+ | POP BC | ||
+ | INC C,C,C | ||
+ | PSORTOK | ||
+ | INC DE | ||
+ | JR PSORT0 | ||
+ | |||
+ | POK | ||
+ | LD HL,#58E0 | ||
+ | LD DE,#58E1 | ||
+ | LD BC,31 | ||
+ | LD (HL),#44 | ||
+ | LDIR | ||
+ | LD HL,TOK | ||
+ | LD DE,#40E6 | ||
+ | CALL PRTEXT | ||
+ | CALL IYKEY | ||
+ | JP CLS | ||
+ | |||
+ | TPOSS DB "POSITIONS:",0 | ||
+ | DB "PATTERNS:",0 | ||
+ | DB "TRACKS:",0 | ||
+ | |||
+ | DB "SAMPLES:",0 | ||
+ | DB "ORNAMENTS:",0 | ||
+ | |||
+ | TOK DB "OPERATION COMPLETED OK.",0 | ||
+ | |||
+ | TA_B DB " -> 1. A<>B",0 | ||
+ | TB_C DB "2. B<>C",0 | ||
+ | |||
+ | PSWAP | ||
+ | LD A,(MODOK) | ||
+ | RLA | ||
+ | JP NC,PLDBUG | ||
+ | LD HL,TA_B | ||
+ | LD DE,#4895 | ||
+ | CALL PRTEXT | ||
+ | INC HL | ||
+ | LD DE,#48B8 | ||
+ | CALL PRTEXT | ||
+ | |||
+ | PSWAPK CALL IYKEY | ||
+ | JP NC,CLS | ||
+ | CP "2 | ||
+ | JR Z,ACB | ||
+ | CP "1 | ||
+ | JR NZ,PSWAPK | ||
+ | LD A,197 | ||
+ | LD (ACBX1),A | ||
+ | LD A,193 | ||
+ | LD (ACBX2),A | ||
+ | ACB LD HL,MUZ | ||
+ | DI | ||
+ | LD (Sav_SP0+1),SP | ||
+ | LD D,H | ||
+ | LD E,L | ||
+ | LD BC,100 | ||
+ | ADD HL,BC | ||
+ | INC HL | ||
+ | LD SP,HL | ||
+ | ADD HL,BC | ||
+ | XOR A | ||
+ | ACBMAX LD C,(HL) | ||
+ | INC C | ||
+ | JR Z,ACBMAXQ | ||
+ | DEC C | ||
+ | INC HL | ||
+ | CP C | ||
+ | JR NC,ACBMAX | ||
+ | LD A,C | ||
+ | JR ACBMAX | ||
+ | ACBMAXQ POP HL;AF | ||
+ | POP HL | ||
+ | ADD HL,DE | ||
+ | |||
+ | LD SP,HL | ||
+ | ACB0 POP BC | ||
+ | POP DE | ||
+ | ACBX1 POP HL ;PUSH BC | ||
+ | PUSH DE | ||
+ | ACBX2 PUSH HL ;POP BC | ||
+ | POP DE | ||
+ | POP HL | ||
+ | SUB 3 | ||
+ | JR NC,ACB0 | ||
+ | LD A,225 | ||
+ | LD (ACBX1),A | ||
+ | LD A,229 | ||
+ | LD (ACBX2),A | ||
+ | Sav_SP0 LD SP,0 | ||
+ | EI | ||
+ | JP POK | ||
+ | PRMENU | ||
+ | CALL DEPKFNT | ||
+ | LD HL,#5800 | ||
+ | LD DE,#5801 | ||
+ | LD BC,31 | ||
+ | LD (HL),6 | ||
+ | LDIR | ||
+ | LD HL,#5A40 | ||
+ | LD DE,#5A41 | ||
+ | LD C,128 | ||
+ | LD (HL),7 | ||
+ | LDIR | ||
+ | LD C,63 | ||
+ | LD (HL),6 | ||
+ | LDIR | ||
+ | LD HL,TPTUTIL | ||
+ | LD DE,#4004 | ||
+ | CALL PRTEXT | ||
+ | LD HL,TBY | ||
+ | LD DE,#50E3 | ||
+ | CALL PRTEXT | ||
+ | LD HL,TMENU | ||
+ | LD DE,#4809 | ||
+ | PUSH DE | ||
+ | LD LX,0 | ||
+ | PRMENU0 PUSH DE | ||
+ | INC LX | ||
+ | LD C,0 | ||
+ | PRMENU2 LD A,(HL) | ||
+ | INC HL | ||
+ | CP 32 | ||
+ | JR C,$+7 | ||
+ | CALL PRSYM | ||
+ | JR PRMENU2 | ||
+ | POP DE | ||
+ | CALL NXTLINE | ||
+ | XOR A | ||
+ | OR (HL) | ||
+ | JR NZ,PRMENU0 | ||
+ | LD A,(MODOK) | ||
+ | RLA | ||
+ | JR NC,PRMENNN | ||
+ | CALL PRBY | ||
+ | CALL PRNS | ||
+ | LD HL,(LENGTH) | ||
+ | LD DE,#5040 | ||
+ | PUSH HL | ||
+ | CALL PRNUM | ||
+ | POP HL | ||
+ | CALL PRNUMH | ||
+ | LD A,(MUZ+99) | ||
+ | LD HL,TFRQTAB | ||
+ | PRMNFR0 SUB 1 | ||
+ | JR C,PRMENFR | ||
+ | LD E,A | ||
+ | XOR A | ||
+ | LD B,H | ||
+ | CPIR | ||
+ | LD A,E | ||
+ | JR PRMNFR0 | ||
+ | PRMENFR LD DE,#5050 | ||
+ | CALL PRTEXT | ||
+ | PRMENNN POP HL | ||
+ | CALL FINDATR-1 | ||
+ | LD H,A | ||
+ | LD B,LX | ||
+ | RET | ||
+ | TFRQTAB | ||
+ | DB "ProTracker 3.1",0 | ||
+ | DB "SoundTracker or PT2",0 | ||
+ | DB "ASM or PSC",0 | ||
+ | DB "Real sound",0 | ||
+ | PRNS | ||
+ | LD HL,MUZ+105 | ||
+ | LD BC,#2000 | ||
+ | LD D,C | ||
+ | PRNSsmp | ||
+ | LD A,(HL) | ||
+ | INC HL | ||
+ | OR (HL) | ||
+ | INC HL | ||
+ | JR Z,$+3 | ||
+ | INC D | ||
+ | DJNZ PRNSsmp | ||
+ | LD B,#10 | ||
+ | PRNSorn | ||
+ | LD A,(HL) | ||
+ | INC HL | ||
+ | OR (HL) | ||
+ | INC HL | ||
+ | JR Z,$+3 | ||
+ | INC C | ||
+ | DJNZ PRNSorn | ||
LD A,C | LD A,C | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
PUSH AF | PUSH AF | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
PUSH DE | PUSH DE | ||
− | + | ||
− | + | LD HL,MUZ+201 | |
− | + | XOR A | |
− | WORKDEL CP C | + | LD D,A |
− | + | SRTMAX LD C,(HL) | |
− | + | INC C | |
− | + | JR Z,SRTMAXQ | |
− | WORKDC CP C | + | INC D |
− | + | DEC C | |
− | + | INC HL | |
− | + | CP C | |
− | WORKND SUB -3 | + | JR NC,SRTMAX |
− | + | LD A,C | |
− | + | JR SRTMAX | |
− | + | SRTMAXQ LD BC,3 | |
− | + | INC B | |
− | + | SUB C | |
− | + | JR NC,$-2 | |
− | + | PUSH BC | |
− | + | PUSH DE | |
− | + | LD A,B | |
− | + | RLCA | |
− | + | ADD A,B | |
− | + | LD B,A | |
− | + | LD HL,(MUZ+103) | |
− | WORKIC LD A,C | + | LD DE,MUZ |
− | + | ADD HL,DE ;PATS | |
− | + | LD HX,0 | |
− | + | SRTNTR | |
− | + | LD DE,LINBUF | |
− | + | LD C,HX | |
− | + | INC C | |
− | RECODE | + | DEC C |
− | + | JR Z,SRTNTRA | |
− | + | SRTNTR0 LD A,(DE) | |
− | + | INC E | |
− | + | CP (HL) | |
− | + | INC HL | |
− | + | JR NZ,SRTNTR1 | |
− | + | LD A,(DE) | |
− | + | CP (HL) | |
− | + | JR Z,SRTNTRQ | |
− | + | SRTNTR1 DEC HL | |
− | + | INC E | |
− | + | DEC C | |
− | + | JR NZ,SRTNTR0 | |
− | + | SRTNTRA LD A,(HL) | |
− | + | LD (DE),A | |
− | + | INC HL | |
− | + | INC E | |
− | + | LD A,(HL) | |
− | + | LD (DE),A | |
− | + | INC HX | |
− | + | SRTNTRQ | |
− | + | INC HL | |
− | + | DJNZ SRTNTR | |
− | + | ||
− | PRFNDO | + | LD HL,TPOSS |
− | + | LD DE,#4040 | |
− | + | CALL PRTEXT | |
− | + | INC E | |
− | + | POP AF | |
− | PRFN | + | CALL PRNUMA |
− | + | INC HL | |
− | + | LD DE,#4060 | |
− | + | CALL PRTEXT | |
− | + | INC E | |
− | + | POP AF | |
− | + | CALL PRNUMA | |
+ | INC HL | ||
+ | LD DE,#4080 | ||
+ | CALL PRTEXT | ||
+ | INC E | ||
+ | LD A,HX | ||
+ | CALL PRNUMA | ||
+ | |||
+ | INC HL | ||
+ | LD DE,#40A0 | ||
+ | CALL PRTEXT | ||
+ | INC E | ||
+ | POP AF | ||
+ | CALL PRNUMA | ||
+ | INC HL | ||
+ | LD DE,#40C0 | ||
+ | CALL PRTEXT | ||
+ | INC E | ||
+ | POP AF | ||
+ | JP PRNUMA | ||
+ | PRBY | ||
+ | LD HL,TSONG | ||
+ | LD DE,#5080 | ||
+ | CALL PRTEXT | ||
+ | LD HL,MUZ+#1E | ||
+ | CALL PRSTR-2 | ||
+ | LD HL,TSONGBY | ||
+ | LD DE,#50A0 | ||
+ | CALL PRTEXT | ||
+ | LD HL,MUZ+#42 | ||
+ | LD B,32 | ||
+ | PRSTR | ||
+ | LD A,(HL) | ||
+ | INC HL | ||
+ | CALL PRSYM | ||
+ | DJNZ PRSTR | ||
+ | RET | ||
+ | |||
+ | TSONG DB "MUSIC:",0 | ||
+ | TSONGBY DB " BY:",0 | ||
+ | |||
+ | RULILKA | ||
+ | PUSH HL | ||
+ | CALL CURSCNT | ||
+ | LD A,14 | ||
+ | LD (CURSOR0-1),A | ||
+ | CALL CURSOR | ||
+ | CALL IYKEY | ||
+ | PUSH AF | ||
+ | CALL CURRES | ||
+ | LD A,8 | ||
+ | LD (CURSOR0-1),A | ||
+ | POP AF | ||
+ | POP HL | ||
+ | SUB 8 | ||
+ | JR Z,RUL0 | ||
+ | DEC A | ||
+ | JR Z,RULZ | ||
+ | SUB 2 | ||
+ | JR NZ,RULILND | ||
+ | CP C | ||
+ | JR NZ,$+3 | ||
+ | RULZ LD C,B | ||
+ | DEC C | ||
+ | JR RULILKA | ||
+ | RULILND INC A | ||
+ | RET NZ | ||
+ | INC C | ||
+ | LD A,C | ||
+ | SUB B | ||
+ | JR NZ,$+3 | ||
+ | RUL0 LD C,A | ||
+ | JR RULILKA | ||
+ | DDE | ||
+ | INC D | ||
+ | LD A,D | ||
+ | AND 7 | ||
+ | RET NZ | ||
+ | LD A,E | ||
+ | ADD A,32 | ||
+ | LD E,A | ||
+ | RET C | ||
+ | LD A,D | ||
+ | ADD A,-8 | ||
+ | LD D,A | ||
+ | RET | ||
+ | |||
+ | LD A,H | ||
+ | FINDATR RRA | ||
+ | RRA | ||
+ | RRA | ||
+ | AND 3 | ||
+ | OR 88 | ||
+ | RET | ||
+ | |||
+ | NAME | ||
+ | LD C,0 | ||
+ | WORKPN | ||
+ | PUSH BC | ||
+ | CALL WORKPP | ||
+ | POP BC | ||
+ | LD B,0 | ||
+ | LD HL,FILENAM | ||
+ | ADD HL,BC | ||
+ | CALL IYKEY | ||
+ | RET NC | ||
+ | ADD A,-13 | ||
+ | RET Z | ||
+ | LD DE,WORKPN | ||
+ | PUSH DE | ||
+ | LD DE,#720 | ||
+ | INC A | ||
+ | JR NZ,WORKND | ||
+ | WORKDEL CP C | ||
+ | RET Z | ||
+ | DEC HL | ||
+ | LD (HL),E | ||
+ | WORKDC CP C | ||
+ | RET Z | ||
+ | DEC C | ||
+ | RET | ||
+ | WORKND SUB -3 | ||
+ | JR Z,WORKIC | ||
+ | INC A | ||
+ | JR Z,WORKDC | ||
+ | INC A | ||
+ | INC A | ||
+ | JP Z,CAPLNT | ||
+ | ADD A,6 | ||
+ | CP E | ||
+ | RET C | ||
+ | CALL RECODE-1 | ||
+ | BIT 7,B | ||
+ | RET NZ | ||
+ | LD (HL),B | ||
+ | WORKIC LD A,C | ||
+ | SUB D | ||
+ | ADC A,D | ||
+ | LD C,A | ||
+ | RET | ||
+ | |||
+ | LD B,A | ||
+ | RECODE | ||
+ | LD A,B | ||
+ | CP 198 | ||
+ | LD B,"[ | ||
+ | RET Z | ||
+ | INC B | ||
+ | CP 205 | ||
+ | RET Z | ||
+ | INC B | ||
+ | CP 197 | ||
+ | RET Z | ||
+ | LD B,"{ | ||
+ | CP 204 | ||
+ | RET Z | ||
+ | INC B | ||
+ | CP 195 | ||
+ | RET Z | ||
+ | INC B | ||
+ | CP 203 | ||
+ | RET Z | ||
+ | INC B | ||
+ | CP 226 | ||
+ | RET Z | ||
+ | LD B,A | ||
+ | RET | ||
+ | PRFNDO | ||
+ | SBC HL,BC | ||
+ | LD (PRCDESC+1),HL | ||
+ | LD DE,#4009 | ||
+ | LD C,0 | ||
+ | PRFN | ||
+ | LD B,8 | ||
+ | CALL PRSYM-1 | ||
+ | INC HL | ||
+ | DJNZ $-4 | ||
+ | DB ">. | ||
+ | CALL PRSYM | ||
+ | LD A,(HL) | ||
+ | PRSYM | ||
+ | PUSH HL | ||
+ | PUSH DE | ||
+ | LD L,A | ||
+ | XOR A | ||
+ | OR C | ||
+ | LD H,'FONTS | ||
+ | JR Z,PRSMED | ||
+ | DUP 4 | ||
+ | RLCA | ||
+ | EDUP | ||
+ | SUB -80 | ||
+ | JP P,PRSSLOW | ||
+ | LD C,0 | ||
+ | DUP 7 | ||
+ | LD A,(DE) | ||
+ | OR (HL) | ||
+ | LD (DE),A | ||
+ | INC D | ||
+ | INC H | ||
+ | EDUP | ||
+ | LD A,(DE) | ||
+ | OR (HL) | ||
+ | LD (DE),A | ||
+ | POP AF | ||
+ | LD D,A | ||
+ | POP HL | ||
+ | RET | ||
+ | PRSMED INC E | ||
+ | INC C | ||
+ | DUP 8 | ||
+ | DB "~ | ||
+ | RLCA | ||
+ | RLCA | ||
+ | LD (DE),A | ||
+ | INC D | ||
+ | INC H | ||
+ | EDUP | ||
+ | ORG $-2 | ||
+ | JR PRS42D | ||
+ | PRSSLOW LD H,A | ||
+ | INC C | ||
+ | DUP 4 | ||
+ | LD A,(DE) | ||
+ | OR (HL) | ||
+ | LD (DE),A | ||
+ | INC E | ||
+ | DB "$~$ | ||
+ | LD (DE),A | ||
+ | INC D | ||
+ | DB "~$ | ||
+ | LD (DE),A | ||
+ | DEC E | ||
+ | LD A,(DE) | ||
+ | OR (HL) | ||
+ | LD (DE),A | ||
+ | INC H | ||
+ | INC D | ||
+ | EDUP | ||
+ | ORG $-2 | ||
+ | INC E | ||
+ | PRS42D POP AF | ||
+ | LD D,A | ||
+ | POP HL | ||
+ | RET | ||
+ | |||
+ | |||
+ | TYN CALL WINDTXT | ||
+ | DW #4847,#1F11 | ||
+ | CALL 8020 | ||
+ | JR NC,$-3 | ||
+ | TYN0 CALL 8020 | ||
+ | CCF | ||
+ | JR C,TYNQ | ||
+ | AND 4 | ||
+ | HALT | ||
+ | JR Z,TYNQ | ||
+ | LD A,#DF | ||
+ | IN A,(-2) | ||
+ | CPL | ||
+ | AND 16 | ||
+ | JR Z,TYN0 | ||
+ | TYNQ PUSH AF | ||
+ | CALL PUTWIN | ||
+ | POPRET POP AF | ||
+ | RET | ||
+ | |||
+ | IYKEY RES 5,(IY+1) | ||
+ | IY0 BIT 5,(IY+1) | ||
+ | JR Z,IY0 | ||
+ | CALL 8020 | ||
+ | LD A,(23560) | ||
+ | RET | ||
+ | |||
+ | CURSCNT EX DE,HL | ||
+ | LD L,C | ||
+ | LD H,0 | ||
+ | DB "))))) | ||
+ | ADD HL,DE | ||
+ | RET | ||
+ | CURSOR PUSH BC | ||
LD A,(HL) | LD A,(HL) | ||
− | PRSYM | + | LD (CURSORR-1),A |
− | + | LD C,CURSCOL | |
+ | JR CURSORR | ||
+ | CURRES PUSH BC | ||
+ | LD C,5 | ||
+ | CURSORR PUSH HL | ||
+ | LD B,8 | ||
+ | CURSOR0 DB "q, | ||
+ | DJNZ $-2 | ||
+ | POP HL | ||
+ | POP BC | ||
+ | RET | ||
+ | |||
+ | EM6 LD BC,262 | ||
+ | EM15635 | ||
+ | LD A,195 | ||
+ | LD (23746),A | ||
+ | LD (EMSP+1),SP | ||
+ | PUSH BC | ||
+ | PUSH DE | ||
+ | PUSH HL | ||
+ | CALL AYOFF | ||
+ | LD HL,#5C00 | ||
+ | LD D,'SYSBUF | ||
+ | LD BC,#400 | ||
+ | LDIR | ||
+ | DRV LD A,0 | ||
+ | LD (23798),A | ||
+ | OR #3C | ||
+ | LD (23830),A | ||
+ | LD H,L | ||
+ | LD (23823),HL | ||
+ | LD (23802),HL | ||
+ | POP HL | ||
+ | POP DE | ||
+ | POP BC | ||
+ | LD SP,EMSTACK | ||
+ | CALL 15635 | ||
+ | EMSP LD SP,0 | ||
+ | LD A,201 | ||
+ | LD (23746),A | ||
+ | RET | ||
+ | ONERROR LD (ERRDE+1),DE | ||
+ | EX (SP),HL | ||
+ | LD DE,8020 | ||
+ | OR A | ||
+ | SBC HL,DE | ||
+ | JR NZ,ERRSP | ||
+ | POP HL | ||
+ | ERRDE LD DE,0 | ||
+ | SCF | ||
+ | RET | ||
+ | ERRSP LD SP,0 | ||
+ | LD HL,SYSBUF | ||
+ | LD DE,#5C00 | ||
+ | LD BC,#400 | ||
+ | LDIR | ||
+ | CALL DEPKFNT | ||
+ | LD HL,SAVERR | ||
+ | CALL WINDTXT | ||
+ | DW #4848,#2711 | ||
+ | CALL IYKEY | ||
+ | OR A | ||
+ | OLDRV LD A,(23833) | ||
+ | LD (DRV+1),A | ||
+ | RET | ||
+ | |||
+ | PRCURXY PUSH BC | ||
+ | PUSH DE | ||
+ | JR PRCU3 | ||
+ | WORKPP PUSH BC | ||
+ | LD DE,#400B | ||
+ | LD HL,FILENAM | ||
+ | CALL PRFN-2 | ||
+ | LD A,32 | ||
+ | CALL PRSYM | ||
+ | POP BC | ||
+ | LD A,C | ||
+ | CP 8 | ||
+ | SBC A,-17 | ||
+ | LD HL,#4000 | ||
+ | PRCU LD E,A | ||
+ | PUSH BC | ||
+ | PUSH DE | ||
+ | PUSH HL | ||
+ | JR PRCUS | ||
+ | PRCUR PUSH BC | ||
+ | PUSH DE | ||
+ | CURXY EQU $+1 | ||
+ | LD DE,0 | ||
+ | PRCU3 PUSH HL | ||
+ | LD A,D | ||
+ | CALL 3742 | ||
+ | PRCUS LD A,E | ||
+ | RLCA | ||
+ | ADD A,E | ||
+ | ADD A,A | ||
+ | LD C,0 | ||
+ | SBC A,C | ||
+ | LD B,A | ||
+ | RRA | ||
+ | RRA | ||
+ | RRA | ||
+ | AND 31 | ||
+ | ADD A,L | ||
+ | LD L,A | ||
+ | LD A,B | ||
+ | CPL | ||
+ | AND 7 | ||
+ | INC A | ||
+ | LD B,A | ||
+ | CUR1 PUSH BC | ||
+ | LD A,#FC | ||
+ | ADD A,A | ||
+ | RL C | ||
+ | DJNZ $-3 | ||
+ | LD B,A | ||
+ | LD A,C | ||
+ | XOR (HL) | ||
+ | DB "w, | ||
+ | LD A,L | ||
+ | AND 31 | ||
+ | LD A,B | ||
+ | JR Z,$+4 | ||
+ | XOR (HL) | ||
+ | DB "w-$ | ||
+ | POP BC | ||
+ | LD A,H | ||
+ | AND 7 | ||
+ | JR NZ,CUR1 | ||
+ | CURQ POP HL | ||
+ | POP DE | ||
+ | POP BC | ||
+ | RET | ||
+ | |||
+ | CLS LD H,64 | ||
+ | CALL CLA+7 | ||
+ | LD A,COLOUR | ||
+ | CLA LD BC,#2FF | ||
+ | LD H,88 | ||
+ | JR $+6 | ||
+ | LD BC,#17FF | ||
+ | XOR A | ||
+ | LD L,0 | ||
+ | DB "w | ||
+ | LD D,H | ||
+ | LD E,1 | ||
+ | JR $+5 | ||
+ | LDIR1 LD BC,256 | ||
+ | LDIR | ||
+ | RET | ||
+ | NXTLINE | ||
+ | LD A,E | ||
+ | ADD A,32 | ||
+ | LD E,A | ||
+ | RET NC | ||
+ | LD A,D | ||
+ | SUB -8 | ||
+ | LD D,A | ||
+ | RET | ||
+ | PRCATU | ||
+ | LD DE,SECBUF | ||
+ | PUSH DE | ||
+ | PUSH HL | ||
+ | LD HL,SECBUF | ||
+ | LD D,L,E,L | ||
+ | LD BC,#905 | ||
+ | CALL Z,EM15635 | ||
+ | CALL DEPKFNT | ||
+ | CALL CLS | ||
+ | CALL DEPKFNT | ||
+ | LD A,TITLCOL | ||
+ | LD HL,#5AE0 | ||
+ | DB "w, | ||
+ | JR NZ,$-2 | ||
+ | LD HL,#5820 | ||
+ | DB "-w | ||
+ | JR NZ,$-2 | ||
+ | LD DE,#4000 | ||
+ | POP HL | ||
+ | LD (PRCRE+4),HL | ||
+ | CALL PRTEXT | ||
+ | LD DE,#50E0 | ||
+ | LD HL,TFREE | ||
+ | CALL PRTEXT | ||
+ | INC E | ||
+ | LD HL,(SECBUF+#8E5) | ||
+ | CALL PRNUM | ||
+ | LD C,B | ||
+ | POP HL | ||
+ | LD (PRCATF0-2),HL | ||
+ | LD DE,#4020 | ||
+ | PRCAT0 LD (PRCRE+1),HL | ||
+ | LD A,C | ||
+ | CP 88 | ||
+ | RET Z | ||
+ | XOR A | ||
+ | OR (HL) | ||
+ | RET Z | ||
+ | ;DEC A | ||
+ | ;JR Z,PRCATNO | ||
+ | PUSH BC | ||
PUSH DE | PUSH DE | ||
− | + | LD C,3 | |
− | + | CALL PRFN | |
− | + | IFN zwet | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
POP DE | POP DE | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
PUSH DE | PUSH DE | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LD A,D | LD A,D | ||
− | + | RRCA | |
− | + | RRCA | |
− | + | RRCA | |
− | ADD A, | + | ADD A,80 |
− | + | LD D,A | |
− | + | LD A,(HL) | |
− | + | LD C,#47 | |
− | + | SUB "B | |
− | + | JR Z,zwY | |
− | + | LD C,#07 | |
− | + | DEC A | |
− | + | JR Z,zwY | |
− | + | LD C,#45 | |
− | + | CP "m"-"C | |
− | + | JR Z,zwY | |
− | + | DEC C | |
− | + | CP "W"-"C | |
− | + | JR Z,zwY | |
− | + | CP "p"-"C | |
− | + | JR NZ,zwN | |
− | + | zwY | |
− | + | LD B,8 | |
− | + | LD A,C | |
− | + | LD (DE),A | |
− | + | INC E | |
− | + | DJNZ $-2 | |
− | + | zwN | |
− | + | ENDIF | |
− | + | RES 3,L | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
POP DE | POP DE | ||
− | + | CALL NXTLINE | |
− | |||
− | |||
− | |||
− | CALL | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | NXTLINE | ||
LD A,E | LD A,E | ||
ADD A,32 | ADD A,32 | ||
− | |||
− | |||
LD A,D | LD A,D | ||
− | SUB - | + | RLA |
− | + | CP 80+81 | |
− | + | JR C,PRCprok | |
− | + | LD A,E | |
+ | ADD A,64+8 | ||
+ | LD E,A | ||
+ | LD D,64 | ||
+ | PRCprok | ||
+ | POP BC | ||
+ | INC C | ||
+ | ;DB "~ | ||
+ | PRCATNO ;DB "w | ||
+ | LD A,L | ||
+ | SUB -16 | ||
+ | LD L,A | ||
+ | JR NZ,PRCAT0 | ||
+ | INC H | ||
+ | JR PRCAT0 | ||
+ | PRCRE | ||
+ | LD DE,0 | ||
+ | LD HL,0 | ||
+ | LD A,(DE) | ||
+ | OR A | ||
+ | JR NZ,$+6 | ||
+ | PRCAT | ||
LD DE,SECBUF | LD DE,SECBUF | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
XOR A | XOR A | ||
− | + | LD (ERRSP+1),SP | |
− | + | CALL PRCATU+3 | |
− | + | XOR A | |
− | + | CP C | |
− | + | JP Z,OLDRV | |
− | + | LD HL,(PRCDESC+1) | |
− | + | CALL SAVTEST | |
− | + | JP NZ,PRCCPN | |
− | + | PRCB LD B,0 | |
− | + | PRCATST LD A,B | |
− | + | CP C | |
− | + | JP NC,PRCCPN | |
− | + | LD L,-1 | |
− | + | INC L | |
− | + | SUB 22 | |
− | + | JR NC,$-3 | |
− | + | ;nom=stolb+4*(stroka+1) | |
− | + | ;HL=8*(#1100+nom) | |
− | + | ADD A,23 | |
− | + | ADD A,A,A,A | |
− | + | ADD A,L | |
− | LD | + | ;SUB -4 |
− | + | LD H,11 | |
− | + | LD L,A | |
− | + | DB "))) | |
− | + | PUSH HL | |
− | + | CALL CURSOR | |
− | + | PUSH BC | |
− | + | LD A,B | |
− | + | LD (PRCB+1),A | |
− | + | LD BC,16 | |
− | + | LD HL,SECBUF | |
− | + | PRCATF0 DEC (HL) | |
− | + | INC (HL) | |
− | + | ADD HL,BC | |
− | + | JR Z,PRCATF0 | |
− | + | ADD A,-1 | |
− | + | JR C,PRCATF0 | |
− | + | CALL PRFNDO | |
− | + | DB ",~, | |
− | + | PUSH HL | |
− | + | LD H,(HL) | |
− | + | LD L,A | |
− | + | LD B,32 | |
− | + | SUB B | |
− | + | CP 96 | |
− | + | LD A,B | |
− | + | JR NC,PRFNE | |
− | + | LD A,H | |
− | + | SUB B | |
− | + | CP 96 | |
− | + | LD A,B | |
− | + | JR NC,$+4 | |
− | + | LD B,H | |
− | + | LD A,L | |
− | + | PRFNE CALL PRSYM | |
− | + | LD A,B | |
− | + | CALL PRSYM | |
− | + | POP BC | |
− | + | INC C | |
− | + | CALL PRSTLEN | |
− | + | POP BC | |
− | + | CALL IYKEY | |
− | JR | + | POP HL |
− | + | RET NC | |
− | + | CALL CURRES | |
− | + | CP 13 | |
− | + | JR Z,PRCDESC | |
− | + | SUB 8 | |
− | + | JP C,PRCRE | |
− | + | JR NZ,PRCATNL | |
− | + | LD A,B | |
− | + | SUB CATHGT | |
− | + | JR NC,$+3 | |
− | + | XOR A | |
+ | LD B,A | ||
XOR A | XOR A | ||
− | + | PRCATNL DEC A | |
− | + | JR NZ,PRCATNR | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LD A,B | LD A,B | ||
− | + | ADD A,CATHGT | |
− | + | LD B,A | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | ADD A, | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | LD | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
XOR A | XOR A | ||
− | + | PRCATNR DEC A | |
− | + | JR NZ,PRCATND | |
− | + | INC B | |
− | + | PRCATND DEC A | |
− | + | JR NZ,PRCATNU | |
− | + | PRCATUP XOR A | |
− | + | CP B | |
− | + | JR Z,$+3 | |
− | PRCATNR DEC A | + | DEC B |
− | + | PRCND JP PRCATST | |
− | + | PRCCPN LD B,C | |
− | PRCATND DEC A | + | JR PRCATUP |
− | + | PRCATNU SUB "1"-11 | |
− | PRCATUP XOR A | + | CP 4 |
− | + | JR NC,PRCND | |
− | + | LD (DRV+1),A | |
− | + | LD HL,(PRCRE+4) | |
− | PRCND JP PRCATST | + | JP PRCAT |
− | PRCCPN LD B,C | + | PRCDESC |
− | + | LD HL,0 | |
− | PRCATNU SUB "1"-11 | + | CALL LDIR9-3 |
− | + | LD E,(HL) | |
− | + | INC L | |
− | + | LD D,(HL) | |
− | + | LD (STADR+1),DE | |
− | + | GETbde INC L | |
− | PRCDESC | + | LD E,(HL) |
− | + | INC L | |
− | + | LD D,(HL) | |
− | + | GETBDE INC L | |
− | + | PUSH DE | |
− | + | LD A,(HL) | |
− | + | INC L | |
− | GETbde INC L | + | LD E,(HL) |
− | + | INC L | |
− | + | LD D,(HL) | |
− | + | POP HL | |
− | GETBDE INC L | + | LD B,A |
− | + | LD C,5 | |
− | + | SCF | |
− | + | RET | |
− | + | REMFN | |
− | + | LD HL,FNBUF | |
− | + | LD DE,FILENAM | |
− | + | LDIR9 LD BC,9 | |
− | + | LDIR | |
− | + | RET | |
− | + | SAVE | |
− | + | LD HL,TSAVE | |
− | REMFN | + | LENGTH EQU $+1 |
− | + | LD DE,0 | |
− | + | LD (SDESCHL+1),DE | |
− | LDIR9 LD BC,9 | + | DEC DE |
+ | INC D | ||
+ | RET Z | ||
+ | LD (ERRSP+1),SP | ||
+ | PUSH DE | ||
+ | CALL PRCATU | ||
+ | LD HL,(SSTART+1) | ||
+ | LD BC,LENGTH | ||
+ | CALL PRSTLEN | ||
+ | LD HL,FILENAM | ||
+ | LD DE,FNBUF | ||
+ | CALL LDIR9 | ||
+ | CALL NAME | ||
+ | JP NC,POPRET | ||
+ | LD HL,LINBUF | ||
+ | LD DE,8 | ||
+ | LD BC,#105 | ||
+ | CALL EM15635 | ||
+ | POP BC | ||
+ | LD A,(LINBUF+#E4) | ||
+ | LD C,A | ||
+ | LD DE,0 | ||
+ | SAV0 LD A,E | ||
+ | LD (SAVSEC+1),A | ||
+ | LD HL,WINBUF | ||
+ | PUSH BC | ||
+ | PUSH DE | ||
+ | PUSH HL | ||
+ | LD BC,#105 | ||
+ | CALL EM15635 | ||
+ | POP HL | ||
+ | POP DE | ||
+ | POP BC | ||
+ | SAV1 LD A,C | ||
+ | OR A | ||
+ | JP Z,SAVNEON | ||
+ | CALL SAVTEST | ||
+ | JR NZ,NOERASE | ||
+ | LD A,C | ||
+ | DEC A | ||
+ | JR Z,SAVON | ||
+ | PUSH BC | ||
+ | LD A,L | ||
+ | OR 15 | ||
+ | LD L,A | ||
+ | LD A,B | ||
+ | LD B,(HL) | ||
+ | DEC L | ||
+ | LD C,(HL) | ||
+ | DEC L | ||
+ | CP (HL) | ||
+ | RES 2,L | ||
+ | JR Z,SAVOVER | ||
+ | RES 3,L | ||
+ | DEC L | ||
+ | LD (HL),1 | ||
+ | PUSH DE | ||
+ | PUSH HL | ||
+ | LD HL,LINBUF+#F4 | ||
+ | INC (HL) | ||
+ | LD HL,WINBUF | ||
+ | CALL EM6 | ||
+ | POP HL | ||
+ | POP DE | ||
+ | POP BC | ||
+ | NOERASE DEC C | ||
+ | LD A,16 | ||
+ | ADD A,L | ||
+ | LD L,A | ||
+ | JR NC,SAV1 | ||
+ | INC E | ||
+ | JR SAV0 | ||
+ | SAVOVER | ||
+ | LD D,B | ||
+ | LD E,C | ||
+ | POP BC | ||
+ | CALL SAVTAM | ||
+ | XOR A | ||
+ | LD (SAVFLAG+3),A | ||
+ | JR SAVALL2 | ||
+ | SAVON | ||
+ | SET 3,L | ||
+ | INC L | ||
+ | CALL SAVTAM | ||
+ | LD E,(HL) | ||
+ | INC L | ||
+ | LD D,(HL) | ||
+ | LD HL,LINBUF+#E5 | ||
+ | ADD A,(HL) | ||
+ | LD (HL),A | ||
+ | INC HL | ||
+ | JR NC,$+3 | ||
+ | INC (HL) | ||
+ | SAVALL LD HL,LINBUF+#E5 | ||
+ | LD A,(HL) | ||
+ | SUB B | ||
+ | LD (HL),A | ||
+ | INC HL | ||
+ | JR NC,$+3 | ||
+ | DEC (HL) | ||
+ | SAVALL2 PUSH BC | ||
+ | PUSH DE | ||
+ | LD E,C | ||
+ | LD D,'WINBUF | ||
+ | SDESCHL LD HL,0 | ||
+ | LD BC,MUZ | ||
+ | ADD HL,BC | ||
+ | LD C,L | ||
+ | LD L,-1 | ||
+ | LD B,14 | ||
+ | SAVSDES LD A,C | ||
+ | CP L | ||
+ | JR Z,SAVSEC | ||
+ | LD A,(DE) | ||
+ | DEC E | ||
+ | LD (HL),A | ||
+ | DEC L | ||
+ | DJNZ SAVSDES | ||
+ | SAVS0 LD A,C | ||
+ | CP L | ||
+ | ;; JR Z,$+4 | ||
+ | LD (HL),0 | ||
+ | DEC HL | ||
+ | JR NZ,SAVS0 | ||
+ | SAVSEC LD DE,0 | ||
+ | LD HL,WINBUF | ||
+ | CALL EM6 | ||
+ | POP DE | ||
+ | POP BC | ||
+ | LD HL,MUZ | ||
+ | SVNXPAG LD C,6 | ||
+ | CALL EM15635 | ||
+ | LD DE,(23796) | ||
+ | SAVFLAG LD (LINBUF+#E1),DE | ||
+ | LD HL,MUZ | ||
+ | LD (SVNXPAG-2),HL | ||
+ | LD HL,LINBUF | ||
+ | LD A,H | ||
+ | LD (SAVFLAG+3),A | ||
+ | LD DE,8 | ||
+ | JP EM6 | ||
+ | SAVNEON | ||
+ | LD HL,LINBUF+#E4 | ||
+ | LD A,(HL) | ||
+ | INC (HL) | ||
+ | CP 128 | ||
+ | RET Z | ||
+ | PUSH BC | ||
+ | CALL SAVEPP | ||
+ | SAVNEO0 LD A,(DE) | ||
+ | LD (HL),A | ||
+ | INC DE | ||
+ | INC L | ||
+ | DJNZ SAVNEO0 | ||
+ | POP BC | ||
+ | CALL SAVTAM | ||
+ | LD DE,(LINBUF+#E1) | ||
+ | LD (HL),E | ||
+ | INC L | ||
+ | LD (HL),D | ||
+ | JP SAVALL | ||
+ | SAVTAM | ||
+ | PUSH BC | ||
+ | SSTART LD BC,0 | ||
+ | LD (HL),C | ||
+ | INC L | ||
+ | LD (HL),B | ||
+ | INC L | ||
+ | LD BC,(LENGTH) | ||
+ | LD (HL),C | ||
+ | INC L | ||
+ | LD (HL),B | ||
+ | INC L | ||
+ | POP BC | ||
+ | LD A,(HL) | ||
+ | LD (HL),B | ||
+ | LD C,L | ||
+ | INC L | ||
+ | RET | ||
+ | SAVEPP | ||
+ | LD L,A | ||
+ | LD H,0 | ||
+ | LD D,H | ||
+ | DB ")))) | ||
+ | LD E,H | ||
+ | LD A,E | ||
+ | LD (SAVSEC+1),A | ||
+ | LD H,'WINBUF | ||
+ | PUSH HL | ||
+ | LD L,D | ||
+ | LD BC,#105 | ||
+ | CALL EM15635 | ||
+ | POP HL | ||
+ | LD DE,FILENAM | ||
+ | LD B,9 | ||
+ | RET | ||
+ | SAVTEST | ||
+ | PUSH BC,DE,HL | ||
+ | LD DE,FILENAM | ||
+ | LD B,9 | ||
+ | SAVTST0 LD A,(DE) | ||
+ | CP (HL) | ||
+ | JR NZ,POP3 | ||
+ | INC HL,DE | ||
+ | DJNZ SAVTST0 | ||
+ | POP3 POP HL,DE,BC | ||
+ | RET | ||
+ | PRNUMH | ||
+ | CALL PRSK | ||
+ | PUSH HL | ||
+ | LD A,H | ||
+ | CALL PRHEX | ||
+ | LD A,L | ||
+ | JR PRNUMAQ | ||
+ | PRSK | ||
+ | LD A,"( | ||
+ | CALL PR88 | ||
+ | LD A,"# | ||
+ | JR PR88 | ||
+ | PRNUMA | ||
+ | PUSH HL | ||
+ | PUSH AF | ||
+ | LD L,A | ||
+ | LD H,0 | ||
+ | CALL PRNUM3 | ||
+ | CALL PRSK | ||
+ | POP AF | ||
+ | PRNUMAQ CALL PRHEX | ||
+ | LD A,") | ||
+ | CALL PR88 | ||
+ | POP HL | ||
+ | RET | ||
+ | PRHEX | ||
+ | LD C,A | ||
+ | DUP 4 | ||
+ | RRA | ||
+ | EDUP | ||
+ | CALL PRH | ||
+ | LD A,C | ||
+ | PRH AND 15 | ||
+ | ADD A,"0 | ||
+ | CP ": | ||
+ | JR C,$+4 | ||
+ | SUB ":"-"A | ||
+ | JR PR88 | ||
+ | PRAHL | ||
+ | CALL PR88 | ||
+ | LD A,H | ||
+ | CALL PR88 | ||
+ | LD A,L | ||
+ | PR88 | ||
+ | PUSH HL | ||
+ | ADD A,A | ||
+ | LD L,A | ||
+ | LD H,15 | ||
+ | DB ")) | ||
+ | JR PRDGUSE | ||
+ | PRSTLEN | ||
+ | PUSH BC | ||
+ | LD DE,#4015 | ||
+ | CALL PRNUM | ||
+ | DB ">, | ||
+ | CALL PR88 | ||
+ | POP HL | ||
+ | LD A,(HL) | ||
+ | INC HL | ||
+ | LD H,(HL) | ||
+ | LD L,A | ||
+ | PRNUM LD BC,10000 | ||
+ | CALL PRDIG | ||
+ | PRNUM4 LD BC,1000 | ||
+ | CALL PRDIG | ||
+ | PRNUM3 LD BC,100 | ||
+ | CALL PRDIG | ||
+ | PRNUM99 LD BC,10 | ||
+ | LD H,B | ||
+ | CALL PRDIG | ||
+ | LD C,1 | ||
+ | PRDIG LD A,120 | ||
+ | PRDIG0 ADD A,8 | ||
+ | SBC HL,BC | ||
+ | JR NC,PRDIG0 | ||
+ | ADD HL,BC | ||
+ | PUSH HL | ||
+ | LD H,61 | ||
+ | LD L,A | ||
+ | PRDGUSE PUSH DE | ||
+ | LD B,8 | ||
+ | DB "~ | ||
+ | RRCA | ||
+ | OR (HL) | ||
+ | INC L | ||
+ | LD (DE),A | ||
+ | INC D | ||
+ | DJNZ $-6 | ||
+ | POP DE | ||
+ | POP HL | ||
+ | INC E | ||
+ | RET | ||
+ | PRTEXT | ||
+ | LD C,0 | ||
+ | PRTXT XOR A | ||
+ | OR (HL) | ||
+ | RET Z | ||
+ | INC HL | ||
+ | CALL PRSYM | ||
+ | JR PRTXT | ||
+ | GETWIN | ||
+ | LD HL,LDIRKA | ||
+ | LD (HL),E | ||
+ | INC HL | ||
+ | LD (HL),D | ||
+ | INC HL | ||
+ | LD (HL),C | ||
+ | INC HL | ||
+ | LD (HL),B | ||
+ | INC HL | ||
+ | PUSH BC | ||
+ | PUSH DE | ||
+ | GETWIN0 PUSH BC | ||
+ | EX DE,HL | ||
+ | PUSH HL | ||
+ | LD B,0 | ||
+ | LDIR | ||
+ | POP HL | ||
+ | EX DE,HL | ||
+ | POP BC | ||
+ | CALL DDE | ||
+ | DJNZ GETWIN0 | ||
+ | POP DE | ||
+ | POP BC | ||
+ | RET | ||
+ | WINDTXT | ||
+ | EX (SP),HL | ||
+ | LD E,(HL) | ||
+ | INC HL | ||
+ | LD D,(HL) | ||
+ | INC HL | ||
+ | LD C,(HL) | ||
+ | INC HL | ||
+ | LD B,(HL) | ||
+ | INC HL | ||
+ | EX (SP),HL | ||
+ | PUSH DE | ||
+ | PUSH BC | ||
+ | PUSH DE | ||
+ | PUSH HL | ||
+ | LD A,B | ||
+ | SUB -9 | ||
+ | LD B,A | ||
+ | CP 50 | ||
+ | LD HL,WINBUF | ||
+ | CALL C,GETWIN | ||
+ | EX DE,HL | ||
+ | PUSH BC | ||
+ | CALL FINDATR-1 | ||
+ | LD H,A | ||
+ | CALL LDIR1 | ||
+ | DEC H | ||
+ | POP BC | ||
+ | SRL B,B,B | ||
+ | GETWN1 PUSH BC | ||
+ | PUSH HL | ||
+ | LD B,C | ||
+ | GWCOL LD (HL),WINCOL | ||
+ | INC L | ||
+ | DJNZ $-3 | ||
+ | POP HL | ||
+ | LD C,32 | ||
+ | ADD HL,BC | ||
+ | POP BC | ||
+ | DJNZ GETWN1 | ||
+ | CALL DEPKFNT | ||
+ | POP HL | ||
+ | POP DE | ||
+ | POP BC | ||
+ | PUSH BC | ||
+ | WINDTIT LD B,C | ||
+ | PUSH DE | ||
+ | XOR A | ||
+ | LD (DE),A | ||
+ | INC E | ||
+ | DJNZ $-2 | ||
+ | POP DE | ||
+ | CALL DDE | ||
+ | JR NC,WINDTIT | ||
+ | POP BC | ||
+ | WINDBOK PUSH BC | ||
+ | PUSH DE | ||
+ | LD A,128 | ||
+ | LD (DE),A | ||
+ | LD B,C | ||
+ | DEC B | ||
+ | XOR A | ||
+ | INC E | ||
+ | LD (DE),A | ||
+ | DJNZ $-2 | ||
+ | INC A | ||
+ | LD (DE),A | ||
+ | POP DE | ||
+ | CALL DDE | ||
+ | POP BC | ||
+ | DJNZ WINDBOK | ||
+ | LD B,C | ||
+ | LD A,-1 | ||
+ | LD (DE),A | ||
+ | INC E | ||
+ | DJNZ $-2 | ||
+ | POP DE | ||
+ | LD B,-2 | ||
+ | PUSH DE | ||
+ | CALL WIND0XT | ||
+ | POP HL | ||
+ | CALL FINDATR-1 | ||
+ | LD H,A | ||
+ | PUSH HL | ||
+ | LD (HL),TITLCOL | ||
+ | INC L | ||
+ | DEC C | ||
+ | JR NZ,$-4 | ||
+ | POP HL | ||
+ | LD DE,64 | ||
+ | ADD HL,DE | ||
+ | RET | ||
+ | WIND0XT | ||
+ | PUSH BC | ||
+ | PUSH DE | ||
+ | CALL WINDPX0 | ||
+ | POP DE | ||
+ | INC E | ||
+ | CALL NXTLINE | ||
+ | DEC E | ||
+ | POP BC | ||
+ | INC B | ||
+ | XOR A | ||
+ | OR (HL) | ||
+ | JR NZ,WIND0XT | ||
+ | RET | ||
+ | WINDPX0 | ||
+ | LD C,0 | ||
+ | LD B,42 | ||
+ | WINDOX0 DEC B | ||
+ | XOR A | ||
+ | OR (HL) | ||
+ | RET Z | ||
+ | INC HL | ||
+ | CP 13 | ||
+ | RET Z | ||
+ | CALL PRSYM | ||
+ | JR WINDOX0 | ||
+ | PUTWIN | ||
+ | LD HL,LDIRKA | ||
+ | LD E,(HL) | ||
+ | INC HL | ||
+ | LD D,(HL) | ||
+ | INC HL | ||
+ | LD C,(HL) | ||
+ | INC HL | ||
+ | LD B,(HL) | ||
+ | INC HL | ||
+ | PUSH DE | ||
+ | PUTWIN0 PUSH BC | ||
+ | PUSH DE | ||
+ | LD B,0 | ||
+ | LDIR | ||
+ | POP DE | ||
+ | POP BC | ||
+ | CALL DDE | ||
+ | DJNZ PUTWIN0 | ||
+ | POP DE | ||
+ | LD A,D | ||
+ | CALL FINDATR | ||
+ | LD D,A | ||
+ | CALL LDIR1 | ||
+ | DEPKFNT | ||
+ | LD E,0 | ||
+ | DEPKFN1 LD H,#6E | ||
+ | LD L,E | ||
+ | LD D,'FONTS | ||
+ | LD B,4 | ||
+ | DEPKFN2 CALL DEPKA | ||
+ | DB "q$w | ||
+ | RES 4,H | ||
+ | CALL DEPKB | ||
+ | DB "w%q | ||
+ | CALL DEPKA | ||
+ | DB "w$q | ||
+ | RES 4,H | ||
+ | CALL DEPKB | ||
+ | DB "q%w | ||
+ | DJNZ DEPKFN2 | ||
+ | INC E | ||
+ | JR NZ,DEPKFN1 | ||
+ | RET | ||
+ | DEPKA | ||
+ | LD A,(DE) | ||
+ | INC D | ||
+ | LD C,A | ||
+ | DB "$$ | ||
+ | SET 4,H | ||
+ | XOR A | ||
+ | DEPKB SRL C | ||
+ | RRA | ||
+ | SRL C | ||
+ | RRA | ||
+ | RET | ||
+ | OUTME | ||
+ | PUSH BC | ||
+ | LD BC,FD | ||
+ | OUT (C),A | ||
+ | POP BC | ||
+ | RET | ||
+ | QUIT | ||
+ | LD HL,SSBREAK | ||
+ | CALL TYN | ||
+ | PUTWD RET Z | ||
+ | JR QUIT3 | ||
+ | QUIT2 | ||
+ | CALL TYN | ||
+ | JR C,PUTWD | ||
+ | CALL NZ,SAVE | ||
+ | QUIT3 | ||
+ | LD A,23 | ||
+ | CALL OUTME | ||
+ | LD HL,(#C000) | ||
+ | LD DE,#FF31 | ||
+ | XOR A | ||
+ | SBC HL,DE | ||
+ | JP Z,#C000 | ||
+ | LD H,A,L,A | ||
+ | QUITHL PUSH HL | ||
+ | LD A,16 | ||
+ | CALL OUTME | ||
+ | JP 15663 | ||
+ | |||
+ | TFREE DB "Free:",0 | ||
+ | TLOAD DB "Load file:",0 | ||
+ | TSAVE DB "Save file:",0 | ||
+ | |||
+ | TPTUTIL DB "Pro Tracker 3.x Utility v1.367" | ||
+ | NOP | ||
+ | TBY DB "(C) 09.03.2004 by Alone Coder" | ||
+ | DB "/i8",0 | ||
+ | |||
+ | TMENU DB " LOAD MODULE",1 | ||
+ | DB " PLAY MODULE",1 | ||
+ | DB " SAVE MODULE",1 | ||
+ | DB " COMPILE SONG",1 | ||
+ | DB " SWAP CHANNELS",1 | ||
+ | DB " RENAME SONG",1 | ||
+ | DB " SORT PATTERNS",1 | ||
+ | ; DB "TRACKS/POSITIONS",1 | ||
+ | DB " HELP",1 | ||
+ | DB " QUIT",1,0 | ||
+ | SSBREAK | ||
+ | DB " Выход из программы",13,13 | ||
+ | DB "QUIT?STAY?QUIT?STAY?",13 | ||
+ | DB " Sure to quit(Y/N)?",0 | ||
+ | SAVERR | ||
+ | DB " ERROR",13,13 | ||
+ | DB " Virtual memory",13 | ||
+ | DB " allocation error",0 | ||
+ | LISTER | ||
+ | ;CALL DEPKFNT | ||
+ | LD HL,TEXT | ||
+ | CALL PRPAGE | ||
+ | START CALL IYKEY | ||
+ | RET NC | ||
+ | LD HL,STQ | ||
+ | PUSH HL | ||
+ | SUB "9 | ||
+ | JR Z,UP | ||
+ | INC A | ||
+ | JR Z,DOWN | ||
+ | SUB 11-"8 | ||
+ | JR Z,UP | ||
+ | INC A | ||
+ | JR Z,DOWN | ||
+ | INC A | ||
+ | JR Z,PGDN | ||
+ | INC A | ||
+ | JR Z,PGUP | ||
+ | SUB -3 | ||
+ | JR Z,PGDN | ||
+ | INC A | ||
+ | JR Z,PGUP | ||
+ | POP HL | ||
+ | STQ | ||
+ | JR START | ||
+ | PGUP | ||
+ | LD HL,(TOP) | ||
+ | UPPAGE LD B,HGT | ||
+ | CALL LINEUP | ||
+ | DJNZ $-3 | ||
+ | PRPAGE LD (TOP),HL | ||
+ | LD DE,#4000 | ||
+ | LD B,HGT | ||
+ | PRPAGE0 CALL PRLINE | ||
+ | CALL NXTLINE | ||
+ | DJNZ PRPAGE0 | ||
+ | LD (BOTTOM),HL | ||
+ | RET | ||
+ | PGDN | ||
+ | LD HL,(BOTTOM) | ||
+ | LD (TOP),HL | ||
+ | LD DE,#4000 | ||
+ | LD B,HGT | ||
+ | DNPAGE0 LD A,(HL) | ||
+ | OR A | ||
+ | JR Z,UPPAGE | ||
+ | CALL PRLINE | ||
+ | CALL NXTLINE | ||
+ | DJNZ DNPAGE0 | ||
+ | LD (BOTTOM),HL | ||
+ | RET | ||
+ | BOTTOM=$+1 | ||
+ | DOWN | ||
+ | LD HL,0 | ||
+ | LD A,(HL) | ||
+ | OR A | ||
+ | RET Z | ||
+ | PUSH HL | ||
+ | CALL SCRUP | ||
+ | LD HL,(TOP) | ||
+ | CALL LINEDN | ||
+ | LD (TOP),HL | ||
+ | POP HL | ||
+ | LD DE,#50E0 | ||
+ | CALL PRLINE | ||
+ | LD (BOTTOM),HL | ||
+ | RET | ||
+ | TOP=$+1 | ||
+ | UP | ||
+ | LD HL,0 | ||
+ | DEC HL | ||
+ | LD A,(HL) | ||
+ | INC HL | ||
+ | OR A | ||
+ | RET Z | ||
+ | CALL LINEUP | ||
+ | LD (TOP),HL | ||
+ | PUSH HL | ||
+ | CALL SCRDN | ||
+ | LD HL,(BOTTOM) | ||
+ | CALL LINEUP | ||
+ | LD (BOTTOM),HL | ||
+ | POP HL | ||
+ | LD DE,#4000 | ||
+ | PRLINE PUSH BC | ||
+ | PUSH DE | ||
+ | DEC E | ||
+ | LD BC,#2A00 | ||
+ | PRLINEP LD A,(HL) | ||
+ | OR A | ||
+ | JR Z,PRLINEQ | ||
+ | INC HL | ||
+ | CP 13 | ||
+ | JR Z,PRLINEQ | ||
+ | CALL PRSYM | ||
+ | DJNZ PRLINEP | ||
+ | INC HL | ||
+ | PRLNE | ||
+ | POP DE | ||
+ | POP BC | ||
+ | RET | ||
+ | PRLINEQ LD A,32 | ||
+ | CALL PRSYM | ||
+ | DJNZ $-5 | ||
+ | JR PRLNE | ||
+ | SCRDN | ||
+ | LD B,HGT-1 | ||
+ | LD HL,#50E0 | ||
+ | SCRDN0 LD D,H,E,L,A,L | ||
+ | SUB 32 | ||
+ | LD L,A | ||
+ | JR NC,$+6 | ||
+ | LD A,H | ||
+ | SUB 8 | ||
+ | LD H,A | ||
+ | CALL LDIRER | ||
+ | DJNZ SCRDN0 | ||
+ | RET | ||
+ | LDIRER | ||
+ | INC B | ||
+ | PUSH HL | ||
+ | LD A,8 | ||
+ | LDIR0 PUSH DE,HL | ||
+ | DUP 32 | ||
+ | LDI | ||
+ | EDUP | ||
+ | POP HL,DE | ||
+ | INC H,D | ||
+ | DEC A | ||
+ | JR NZ,LDIR0 | ||
+ | POP HL | ||
+ | RET | ||
+ | SCRUP | ||
+ | LD B,HGT-1 | ||
+ | LD HL,#4000 | ||
+ | SCRUP0 LD D,H,E,L | ||
+ | CALL NXTLINE | ||
+ | EX DE,HL | ||
+ | CALL LDIRER | ||
+ | DJNZ SCRUP0 | ||
+ | RET | ||
+ | LINEDN | ||
+ | LD A,(HL) | ||
+ | OR A | ||
+ | RET Z | ||
+ | INC HL | ||
+ | CP 13 | ||
+ | JR NZ,LINEDN | ||
+ | RET | ||
+ | LINEUP | ||
+ | DEC HL | ||
+ | LD A,(HL) | ||
+ | OR A | ||
+ | JR Z,LFQ | ||
+ | LINEUP0 DEC HL | ||
+ | LD A,(HL) | ||
+ | OR A | ||
+ | JR Z,LFQ | ||
+ | CP 13 | ||
+ | JR NZ,LINEUP0 | ||
+ | LFQ INC HL | ||
+ | RET | ||
+ | deinit | ||
+ | LD DE,MUZ | ||
+ | PUSH DE | ||
+ | LD HL,TcomT | ||
+ | LD BC,TcomTln | ||
LDIR | LDIR | ||
− | + | POP DE | |
− | + | DI | |
− | LD HL, | + | LD HL,105 |
− | + | ADD HL,DE | |
− | + | LD (dei_SP0+1),SP | |
− | + | LD SP,HL | |
− | + | LD HL,201-105 | |
− | + | ADD HL,SP | |
− | + | LD BC,0 | |
− | + | LD A,-1 | |
− | + | CPIR | |
− | + | OR A ;SUB HL,SP-105 | |
− | LD HL, | + | SBC HL,SP |
− | + | LD BC,105 | |
− | + | ADD HL,BC | |
− | LD | + | DEC SP,SP |
− | LD | ||
− | |||
− | |||
− | |||
− | |||
− | LD | ||
− | |||
− | |||
POP BC | POP BC | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
PUSH BC | PUSH BC | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
OR A | OR A | ||
− | + | SBC HL,BC | |
− | + | EX DE,HL | |
− | + | LD B,49;48 | |
− | + | dia_s0 POP HL | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ; | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LD A,H | LD A,H | ||
− | + | CP #40 | |
− | + | JR C,$+3 | |
− | + | ADD HL,DE | |
− | + | PUSH HL | |
− | + | POP HL | |
− | + | DJNZ dia_s0 | |
− | + | deiNpa0 LD A,B | |
− | + | deiNpa DEC SP | |
− | + | POP BC | |
− | + | INC B | |
− | + | JR Z,deiNpaQ | |
− | + | DEC B | |
− | + | CP B | |
− | + | JR NC,deiNpa | |
− | + | JR deiNpa0 | |
− | + | deiNpaQ | |
− | + | ADD A,3 | |
− | + | LD B,A | |
− | + | dia_p0 POP HL | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LD A,H | LD A,H | ||
− | + | CP #40 | |
− | + | JR C,$+3 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | JR C,$+ | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
ADD HL,DE | ADD HL,DE | ||
− | + | PUSH HL | |
− | + | POP HL | |
− | + | DJNZ dia_p0 | |
− | + | dei_SP0 LD SP,0 | |
− | + | EI | |
− | + | RET | |
− | + | TcomT | |
− | + | DB "ProTracker 3.6" | |
− | + | TcomTln=$-TcomT | |
− | + | PAKHELP | |
− | + | NOP | |
− | + | TEXT INCBIN "acbdoc .W" | |
− | + | NOP | |
− | + | ||
− | + | TABC INCBIN "TABC | |
− | + | LTABC EQU $-TABC/2 | |
− | + | FNBUF DS 9 | |
− | + | DISPLAY $ | |
− | + | DS .(-$) | |
− | + | TABS | |
− | + | INCBIN "tb_PT | |
− | + | INCBIN "tb_ST | |
− | + | INCBIN "tb_ASM | |
− | + | INCBIN "tb_REAL | |
− | + | INCLUDE "PTUPLAY",#C2 | |
− | + | initia | |
− | + | LD DE,MUZ | |
− | + | LD B,D,C,E | |
− | + | initia3 | |
− | + | ;LD (ia_pos0+1),BC | |
− | + | DI | |
− | + | LD HL,101 | |
− | + | ADD HL,DE | |
− | LD | + | PUSH HL |
− | + | LD (sav_SP0+1),SP | |
− | + | LD SP,HL | |
− | + | POP AF | |
− | + | POP HL | |
− | + | ADD HL,BC | |
− | + | LD (Psa_chn+1),HL | |
− | + | LD D,B,E,C | |
− | + | DEC SP,SP | |
− | + | LD B,49;48 | |
− | + | ia_s0 POP HL | |
− | + | ADD HL,DE | |
− | + | PUSH HL | |
− | + | POP HL | |
− | + | DJNZ ia_s0 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LD L,E | LD L,E | ||
− | + | ADD HL,SP | |
− | LD | + | LD H,D |
− | + | LD (Psa_beg+1),HL | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
LD C,A | LD C,A | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
ADD HL,BC | ADD HL,BC | ||
− | + | LD (Psa_lop+1),HL | |
− | + | iniNpa0 LD A,B | |
− | + | iniNpa DEC SP | |
− | + | POP BC | |
− | + | INC B | |
− | + | JR Z,iniNpaQ | |
− | + | DEC B | |
− | + | CP B | |
− | + | JR NC,iniNpa | |
− | + | JR iniNpa0 | |
− | + | iniNpaQ | |
− | + | ADD A,3 | |
− | + | LD B,A | |
− | + | ia_p0 POP HL | |
− | + | ADD HL,DE | |
− | + | PUSH HL | |
− | iniNpa0 LD A,B | + | POP HL |
− | iniNpa DEC SP | + | DJNZ ia_p0 |
− | + | ||
− | + | LD HL,T_m | |
− | + | LD C,D | |
− | + | LD B,T_m_l | |
− | + | ini_m0 LD E,(HL) | |
− | + | INC HL | |
− | + | LD D,(HL) | |
− | iniNpaQ | + | INC HL |
− | + | LD A,C | |
− | + | LD (DE),A | |
− | ia_p0 POP HL | + | DJNZ ini_m0 |
− | + | LD HL,#101 | |
− | + | LD (int_qty),HL ;&A_qty | |
− | + | LD (B_qty),HL ;&C_qty | |
− | + | sav_SP0 LD SP,0 | |
− | + | EI | |
− | + | XOR A | |
− | + | LD (Am_vol+1),A | |
− | + | LD (Bm_vol+1),A | |
− | ini_m0 LD E,(HL) | + | LD (Cm_vol+1),A |
− | + | LD HL,DUMMYORN | |
− | + | LD (Ao_adr+1),HL | |
− | + | LD (Bo_adr+1),HL | |
− | + | LD (Co_adr+1),HL | |
− | + | LD (As_adr+1),HL | |
− | + | LD (Bs_adr+1),HL | |
− | + | LD (Cs_adr+1),HL | |
− | + | LD (Ach_adr+1),HL | |
− | + | SUB 16 | |
− | sav_SP0 LD SP,0 | + | LD (Ag_vol+1),A |
− | + | LD (Bg_vol+1),A | |
− | + | LD (Cg_vol+1),A | |
− | + | SBC A,A | |
− | + | LD (Avb_lok+1),A | |
− | + | LD (Cvb_lok+1),A | |
− | + | LD (Bvb_lok+1),A | |
− | + | POP DE | |
− | + | DEC DE | |
− | + | JP eff_tmp | |
− | + | end | |
− | + | DISPLAY $,"<",SECBUF | |
− | + | ORG #5CDD | |
− | + | DB "PTU1.367B | |
− | + | INCLUDE "mrip*",#C5 | |
− | + | ORG $ | |
− | + | CALL 8026 | |
− | + | JP NC,nenado | |
− | + | LD HL,QUITHL | |
− | + | LD (HL),225 | |
− | + | XOR A | |
− | + | JP GO+3 | |
− | + | DISPLAY $MUZ | |
− | + | PUSH DE | |
− | + | LD HL,TcomT | |
− | end | + | LD BC,Tco |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
Latest revision as of 21:47, 8 March 2020
PTU367 C��╔Ы�ЬЕ
COLOUR=5 zwet=1 CATHGT=22 HGT EQU 24 WINCOL EQU 7 TITLCOL EQU 56 FD EQU 32765 EMSTACK EQU #5F00 SYSBUF EQU #6800 LDIRKA EQU #BB80 CURSCOL EQU 56 SECBUF EQU #B700 ;TEXT=SECBUF+1 LINBUF EQU #BE00 WINBUF EQU #BF00 FILENAM EQU #5CDD FNEXT EQU FILENAM+8 MUZ=#C000 ORG #8000 begin FONTS INCBIN "42>> GO LD SP,#6000 OUT (-2),A INC A LD (IY-48),A LD (IY+48),A LD (IY+1),#CC LD (IY+14),COLOUR LD (IY-49),16 CALL OLDRV LD (23798),A LD HL,ONERROR LD (23747),HL CALL CLS ST CALL PRMENU STC LD C,0 CALL RULILKA LD A,C LD (STC+1),A LD DE,QUIT CALL 8020 JR NC,STPUSH LD B,0 LD HL,JPS ADD HL,BC,HL,BC LD E,(HL) INC HL LD D,(HL) STPUSH LD HL,ST PUSH HL,DE RET JPS DW PLOAD DW PPLAY DW PSAVE DW PCOM DW PSWAP DW PREN DW PSORT DW PHELP DW QUIT PLOAD LD HL,TLOAD CALL PRCAT JP NC,PLOADQ LD (LENGTH),HL PUSH BC PUSH DE CALL CLS LD HL,MUZ PUSH HL LD DE,MUZ+1 LD B,#40 LD (HL),L LDIR POP HL POP DE POP BC LD (ERRSP+1),SP PUSH HL LD A,64 CP B JR NC,$+3 LD B,A CALL EM15635 PLDCPU CALL DEPKFNT POP HL LD BC,#4000 PLOADCP LD DE,TDISTIN LD A,(DE) CPIR JR NZ,PLDBUGL LD (PLDOK+1),HL PLDCP0 INC DE LD A,(DE) OR A JR Z,PLDOK CP (HL) INC HL DEC BC JR Z,PLDCP0 JR PLOADCP PLDOK LD HL,0 LD BC,-14-1 ADD HL,BC LD DE,MUZ LD BC,#4000 LDIR LD DE,MUZ CALL deinit+3 LD D,0 LD HL,MUZ+105 LD A,48 PLDOKM0 LD C,(HL) INC HL LD B,(HL) INC HL EX DE,HL OR A SBC HL,BC ADD HL,BC EX DE,HL JR NC,$+4 LD D,B LD E,C DEC A JR NZ,PLDOKM0 LD HL,MUZ+1 ADD HL,DE LD C,(HL) LD B,0 INC HL ADD HL,BC LD DE,-MUZ ADD HL,DE LD (LENGTH),HL LD A,183 LD (MODOK),A PLOADQ JP CLS PLDBUGL LD A,(MUZ) CP 243 JR NZ,PLDBUG PLDBGL0 LD HL,TDEPKYN LD DE,#4040 CALL PRTEXT CALL IYKEY CP "n JR Z,PLDBUG CP "y JR NZ,PLDBGL0 LD HL,MUZ PUSH HL LD DE,(STADR+1) LD BC,(LENGTH) LDIR STADR CALL 0 EI JP PLDCPU PLDBUG LD HL,TLDBUG LD DE,#4060 CALL PRTEXT CALL IYKEY LD A,55 LD (MODOK),A JR PLOADQ TLDBUG DB "INVALID MODULE!",0 TDEPKYN DB "DEPACK (Y/N)?",0 TDISTIN DB " compilation of ",0 COPYTAB LD A,(MUZ+99) LD L,A ADD A,A ADD A,L LD L,0 RRA RR L RRA RR L ADD A,'TABS LD H,A LD DE,tab_frq LD BC,#C0 LDIR RET PPLAY MODOK SCF JR C,PLDBUG CALL COPYTAB CALL initia PPLAY0 RES 5,(IY+1) HALT CALL play BIT 5,(IY+1) JR Z,PPLAY0 LD A,(23560) OR #20 CP "f JR NZ,stop CALL play,play JR PPLAY0 stop CALL deinit AYOFF LD DE,#E00 OFF0 LD BC,-3 DEC D OUT (C),D LD B,#BF OUT (C),E JR NZ,OFF0 RET PSAVE LD A,(MODOK) RLA JP NC,PLDBUG LD A,"m LD (FNEXT),A CALL SAVE JP CLS PREN LD A,(MODOK) RLA JP NC,PLDBUG LD HL,MUZ LD DE,LINBUF LD BC,256 LDIR LD LX,20 PRENST PUSH BC CALL PRBY POP BC PUSH BC LD A,LX CALL 3742 INC L LD A,C ADD A,6 CALL PRCU POP BC LD HL,MUZ+#1E LD A,LX RRA JR NC,$+5 LD HL,MUZ+#42 LD B,0 ADD HL,BC CALL IYKEY JP NC,PRENNO ADD A,-13 JR Z,PRENQQ LD DE,PRENST PUSH DE LD DE,#1F20 DEC A JR Z,PRENEXT DEC A JR Z,PRENGR ADD A,3 JP Z,WORKDEL ADD A,2 JR NC,PRENNUD LD A,LX XOR 1 LD LX,A RET PRENNUD INC A JR Z,PRENIC INC A JP Z,WORKDC INC A RET Z INC A JP Z,CAPLNT SUB 193 RET Z DEC A RET Z DEC A RET Z SUB 55 CP 172 RET Z CP E RET C PUSH BC CALL RECODE-1 LD (HL),B POP BC PRENIC JP WORKIC PRENGR LD A,D INC A SUB C PUSH BC LD C,A LD B,0 LD D,H LD E,L INC HL LDIR DEC DE LD A,32 LD (DE),A POP BC RET PRENEXT LD A,D INC A SUB C LD B,A LD E,32 PRENEX0 LD A,(HL) LD (HL),E LD E,A INC HL DJNZ PRENEX0 RET PRENQQ RET PRENNO LD DE,MUZ LD HL,LINBUF LD BC,256 LDIR RET CAPLNT LD A,(23658) XOR 8 LD (23658),A RET TLEN DB "Compiled length=",0 T_ENT DB "Press <ENTER>",0 TENSTAD DB "Enter start address=#C000",0 TEDSTAD EQU $-5 PCOM LD A,(MODOK) RLA JP NC,PLDBUG CALL CLS CALL COPYTAB LD HL,-1-LENP LD DE,-1 LD BC,-MUZ-LENP LDDR LD BC,LENP LD HL,(LENGTH) ADD HL,BC LD (LENGTH),HL PUSH HL ;LD HL,ENDP-1 ;LDDR LD HL,T_ENT LD DE,#48EA CALL PRTEXT LD HL,TLEN LD DE,#4863 CALL PRTEXT POP HL PUSH HL INC E CALL PRNUM POP HL CALL PRNUMH LD BC,0 PCOMIN PUSH BC LD HL,TENSTAD LD DE,#48A5 PUSH DE CALL PRTEXT POP HL INC L POP BC LD A,C ADD A,TEDSTAD-TENSTAD CALL PRCU CALL IYKEY JR NC,PCOMQQ CP 13 JR Z,PCOMOK LD E,A SUB "0 RES 5,A CP "G"-"0 JR NC,PCOMIN CP "A"-"0 JR NC,PCOMSB CP 10 JR NC,PCOMIN JR $+4 PCOMSB SUB "A"-": PCOMDG LD HL,TEDSTAD ADD HL,BC LD (HL),E LD DE,PCOMOK+1-TEDSTAD ADD HL,DE LD (HL),A LD A,C XOR 1 LD C,A JR PCOMIN PCOMOK LD HL,#C000 LD A,H DB ")))) OR L LD H,A LD L,0 LD (CADDR+1),HL LD DE,LENP ADD HL,DE SUB 'PLAYER LD LX,A ;LD (MUZ+1),HL EX DE,HL ;сонг лежит в MUZ+LENP ;пересчитываем его,как будто он в DE LD B,D,C,E LD DE,MUZ+LENP CALL initia3 CALL PCOMCH LD HL,PLAYER LD DE,MUZ LD BC,LENP LDIR XOR A SUB LX LD LX,A CALL PCOMCH CADDR LD HL,#C000 LD (SSTART+1),HL LD A,"C LD (FNEXT),A CALL SAVE LD HL,0 LD (SSTART+1),HL PCOMQQ LD HL,MUZ PUSH HL JP PLDCPU PCOMCH LD HL,TABC LD BC,LTABC PCOMCH0 LD E,(HL) INC HL LD A,(HL) SUB #C0-'PLAYER LD D,A INC HL LD A,(DE) ADD A,LX LD (DE),A DEC BC LD A,B OR C JR NZ,PCOMCH0 RET PHELP CALL CLS IFN 0 DI LD (PHELPE+1),SP LD HL,-1-LENP LD DE,-1 LD BC,-MUZ-LENP LDDR LD HL,#5FFF INC B LDDR LD HL,PHELPE LD (#5E33),HL LD HL,TEXT LD (#5D64),HL LD HL,PAKHELP+6 JP #5D5A PHELPE LD SP,0 XOR A LD (DE),A LD (TEXT-1),A LD HL,MUZ+LENP-1 LD DE,#5FFF LD BC,256 LDDR EI ENDIF CALL LISTER IFN 0 LD HL,MUZ+LENP LD DE,MUZ LD B,64 LDIR ENDIF JP CLS PSORT LD A,(MODOK) RLA JP NC,PLDBUG LD DE,MUZ+201 ;POS LD C,0 ;CURR.PAT PSORT0 LD A,(DE) CP -1 JR Z,POK LD B,A CP C JR C,PSORTOK LD H,D LD L,E PSORT1 LD A,(HL) CP -1 JR Z,PSORT1Q CP B LD (HL),C JR Z,PSORT1E CP C LD (HL),B JR Z,$+3 LD (HL),A PSORT1E INC HL JR PSORT1 PSORT1Q LD A,B PUSH BC PUSH DE LD HL,(MUZ+103) SLA C LD B,'MUZ ADD HL,BC EX DE,HL LD HL,(MUZ+103) ADD A,A LD C,A ADD HL,BC LD B,6 PSORT2 LD A,(DE) LD C,(HL) LD (HL),A LD A,C LD (DE),A INC HL INC DE DJNZ PSORT2 POP DE POP BC INC C,C,C PSORTOK INC DE JR PSORT0 POK LD HL,#58E0 LD DE,#58E1 LD BC,31 LD (HL),#44 LDIR LD HL,TOK LD DE,#40E6 CALL PRTEXT CALL IYKEY JP CLS TPOSS DB "POSITIONS:",0 DB "PATTERNS:",0 DB "TRACKS:",0 DB "SAMPLES:",0 DB "ORNAMENTS:",0 TOK DB "OPERATION COMPLETED OK.",0 TA_B DB " -> 1. A<>B",0 TB_C DB "2. B<>C",0 PSWAP LD A,(MODOK) RLA JP NC,PLDBUG LD HL,TA_B LD DE,#4895 CALL PRTEXT INC HL LD DE,#48B8 CALL PRTEXT PSWAPK CALL IYKEY JP NC,CLS CP "2 JR Z,ACB CP "1 JR NZ,PSWAPK LD A,197 LD (ACBX1),A LD A,193 LD (ACBX2),A ACB LD HL,MUZ DI LD (Sav_SP0+1),SP LD D,H LD E,L LD BC,100 ADD HL,BC INC HL LD SP,HL ADD HL,BC XOR A ACBMAX LD C,(HL) INC C JR Z,ACBMAXQ DEC C INC HL CP C JR NC,ACBMAX LD A,C JR ACBMAX ACBMAXQ POP HL;AF POP HL ADD HL,DE LD SP,HL ACB0 POP BC POP DE ACBX1 POP HL ;PUSH BC PUSH DE ACBX2 PUSH HL ;POP BC POP DE POP HL SUB 3 JR NC,ACB0 LD A,225 LD (ACBX1),A LD A,229 LD (ACBX2),A Sav_SP0 LD SP,0 EI JP POK PRMENU CALL DEPKFNT LD HL,#5800 LD DE,#5801 LD BC,31 LD (HL),6 LDIR LD HL,#5A40 LD DE,#5A41 LD C,128 LD (HL),7 LDIR LD C,63 LD (HL),6 LDIR LD HL,TPTUTIL LD DE,#4004 CALL PRTEXT LD HL,TBY LD DE,#50E3 CALL PRTEXT LD HL,TMENU LD DE,#4809 PUSH DE LD LX,0 PRMENU0 PUSH DE INC LX LD C,0 PRMENU2 LD A,(HL) INC HL CP 32 JR C,$+7 CALL PRSYM JR PRMENU2 POP DE CALL NXTLINE XOR A OR (HL) JR NZ,PRMENU0 LD A,(MODOK) RLA JR NC,PRMENNN CALL PRBY CALL PRNS LD HL,(LENGTH) LD DE,#5040 PUSH HL CALL PRNUM POP HL CALL PRNUMH LD A,(MUZ+99) LD HL,TFRQTAB PRMNFR0 SUB 1 JR C,PRMENFR LD E,A XOR A LD B,H CPIR LD A,E JR PRMNFR0 PRMENFR LD DE,#5050 CALL PRTEXT PRMENNN POP HL CALL FINDATR-1 LD H,A LD B,LX RET TFRQTAB DB "ProTracker 3.1",0 DB "SoundTracker or PT2",0 DB "ASM or PSC",0 DB "Real sound",0 PRNS LD HL,MUZ+105 LD BC,#2000 LD D,C PRNSsmp LD A,(HL) INC HL OR (HL) INC HL JR Z,$+3 INC D DJNZ PRNSsmp LD B,#10 PRNSorn LD A,(HL) INC HL OR (HL) INC HL JR Z,$+3 INC C DJNZ PRNSorn LD A,C PUSH AF PUSH DE LD HL,MUZ+201 XOR A LD D,A SRTMAX LD C,(HL) INC C JR Z,SRTMAXQ INC D DEC C INC HL CP C JR NC,SRTMAX LD A,C JR SRTMAX SRTMAXQ LD BC,3 INC B SUB C JR NC,$-2 PUSH BC PUSH DE LD A,B RLCA ADD A,B LD B,A LD HL,(MUZ+103) LD DE,MUZ ADD HL,DE ;PATS LD HX,0 SRTNTR LD DE,LINBUF LD C,HX INC C DEC C JR Z,SRTNTRA SRTNTR0 LD A,(DE) INC E CP (HL) INC HL JR NZ,SRTNTR1 LD A,(DE) CP (HL) JR Z,SRTNTRQ SRTNTR1 DEC HL INC E DEC C JR NZ,SRTNTR0 SRTNTRA LD A,(HL) LD (DE),A INC HL INC E LD A,(HL) LD (DE),A INC HX SRTNTRQ INC HL DJNZ SRTNTR LD HL,TPOSS LD DE,#4040 CALL PRTEXT INC E POP AF CALL PRNUMA INC HL LD DE,#4060 CALL PRTEXT INC E POP AF CALL PRNUMA INC HL LD DE,#4080 CALL PRTEXT INC E LD A,HX CALL PRNUMA INC HL LD DE,#40A0 CALL PRTEXT INC E POP AF CALL PRNUMA INC HL LD DE,#40C0 CALL PRTEXT INC E POP AF JP PRNUMA PRBY LD HL,TSONG LD DE,#5080 CALL PRTEXT LD HL,MUZ+#1E CALL PRSTR-2 LD HL,TSONGBY LD DE,#50A0 CALL PRTEXT LD HL,MUZ+#42 LD B,32 PRSTR LD A,(HL) INC HL CALL PRSYM DJNZ PRSTR RET TSONG DB "MUSIC:",0 TSONGBY DB " BY:",0 RULILKA PUSH HL CALL CURSCNT LD A,14 LD (CURSOR0-1),A CALL CURSOR CALL IYKEY PUSH AF CALL CURRES LD A,8 LD (CURSOR0-1),A POP AF POP HL SUB 8 JR Z,RUL0 DEC A JR Z,RULZ SUB 2 JR NZ,RULILND CP C JR NZ,$+3 RULZ LD C,B DEC C JR RULILKA RULILND INC A RET NZ INC C LD A,C SUB B JR NZ,$+3 RUL0 LD C,A JR RULILKA DDE INC D LD A,D AND 7 RET NZ LD A,E ADD A,32 LD E,A RET C LD A,D ADD A,-8 LD D,A RET LD A,H FINDATR RRA RRA RRA AND 3 OR 88 RET NAME LD C,0 WORKPN PUSH BC CALL WORKPP POP BC LD B,0 LD HL,FILENAM ADD HL,BC CALL IYKEY RET NC ADD A,-13 RET Z LD DE,WORKPN PUSH DE LD DE,#720 INC A JR NZ,WORKND WORKDEL CP C RET Z DEC HL LD (HL),E WORKDC CP C RET Z DEC C RET WORKND SUB -3 JR Z,WORKIC INC A JR Z,WORKDC INC A INC A JP Z,CAPLNT ADD A,6 CP E RET C CALL RECODE-1 BIT 7,B RET NZ LD (HL),B WORKIC LD A,C SUB D ADC A,D LD C,A RET LD B,A RECODE LD A,B CP 198 LD B,"[ RET Z INC B CP 205 RET Z INC B CP 197 RET Z LD B,"{ CP 204 RET Z INC B CP 195 RET Z INC B CP 203 RET Z INC B CP 226 RET Z LD B,A RET PRFNDO SBC HL,BC LD (PRCDESC+1),HL LD DE,#4009 LD C,0 PRFN LD B,8 CALL PRSYM-1 INC HL DJNZ $-4 DB ">. CALL PRSYM LD A,(HL) PRSYM PUSH HL PUSH DE LD L,A XOR A OR C LD H,'FONTS JR Z,PRSMED DUP 4 RLCA EDUP SUB -80 JP P,PRSSLOW LD C,0 DUP 7 LD A,(DE) OR (HL) LD (DE),A INC D INC H EDUP LD A,(DE) OR (HL) LD (DE),A POP AF LD D,A POP HL RET PRSMED INC E INC C DUP 8 DB "~ RLCA RLCA LD (DE),A INC D INC H EDUP ORG $-2 JR PRS42D PRSSLOW LD H,A INC C DUP 4 LD A,(DE) OR (HL) LD (DE),A INC E DB "$~$ LD (DE),A INC D DB "~$ LD (DE),A DEC E LD A,(DE) OR (HL) LD (DE),A INC H INC D EDUP ORG $-2 INC E PRS42D POP AF LD D,A POP HL RET TYN CALL WINDTXT DW #4847,#1F11 CALL 8020 JR NC,$-3 TYN0 CALL 8020 CCF JR C,TYNQ AND 4 HALT JR Z,TYNQ LD A,#DF IN A,(-2) CPL AND 16 JR Z,TYN0 TYNQ PUSH AF CALL PUTWIN POPRET POP AF RET IYKEY RES 5,(IY+1) IY0 BIT 5,(IY+1) JR Z,IY0 CALL 8020 LD A,(23560) RET CURSCNT EX DE,HL LD L,C LD H,0 DB "))))) ADD HL,DE RET CURSOR PUSH BC LD A,(HL) LD (CURSORR-1),A LD C,CURSCOL JR CURSORR CURRES PUSH BC LD C,5 CURSORR PUSH HL LD B,8 CURSOR0 DB "q, DJNZ $-2 POP HL POP BC RET EM6 LD BC,262 EM15635 LD A,195 LD (23746),A LD (EMSP+1),SP PUSH BC PUSH DE PUSH HL CALL AYOFF LD HL,#5C00 LD D,'SYSBUF LD BC,#400 LDIR DRV LD A,0 LD (23798),A OR #3C LD (23830),A LD H,L LD (23823),HL LD (23802),HL POP HL POP DE POP BC LD SP,EMSTACK CALL 15635 EMSP LD SP,0 LD A,201 LD (23746),A RET ONERROR LD (ERRDE+1),DE EX (SP),HL LD DE,8020 OR A SBC HL,DE JR NZ,ERRSP POP HL ERRDE LD DE,0 SCF RET ERRSP LD SP,0 LD HL,SYSBUF LD DE,#5C00 LD BC,#400 LDIR CALL DEPKFNT LD HL,SAVERR CALL WINDTXT DW #4848,#2711 CALL IYKEY OR A OLDRV LD A,(23833) LD (DRV+1),A RET PRCURXY PUSH BC PUSH DE JR PRCU3 WORKPP PUSH BC LD DE,#400B LD HL,FILENAM CALL PRFN-2 LD A,32 CALL PRSYM POP BC LD A,C CP 8 SBC A,-17 LD HL,#4000 PRCU LD E,A PUSH BC PUSH DE PUSH HL JR PRCUS PRCUR PUSH BC PUSH DE CURXY EQU $+1 LD DE,0 PRCU3 PUSH HL LD A,D CALL 3742 PRCUS LD A,E RLCA ADD A,E ADD A,A LD C,0 SBC A,C LD B,A RRA RRA RRA AND 31 ADD A,L LD L,A LD A,B CPL AND 7 INC A LD B,A CUR1 PUSH BC LD A,#FC ADD A,A RL C DJNZ $-3 LD B,A LD A,C XOR (HL) DB "w, LD A,L AND 31 LD A,B JR Z,$+4 XOR (HL) DB "w-$ POP BC LD A,H AND 7 JR NZ,CUR1 CURQ POP HL POP DE POP BC RET CLS LD H,64 CALL CLA+7 LD A,COLOUR CLA LD BC,#2FF LD H,88 JR $+6 LD BC,#17FF XOR A LD L,0 DB "w LD D,H LD E,1 JR $+5 LDIR1 LD BC,256 LDIR RET NXTLINE LD A,E ADD A,32 LD E,A RET NC LD A,D SUB -8 LD D,A RET PRCATU LD DE,SECBUF PUSH DE PUSH HL LD HL,SECBUF LD D,L,E,L LD BC,#905 CALL Z,EM15635 CALL DEPKFNT CALL CLS CALL DEPKFNT LD A,TITLCOL LD HL,#5AE0 DB "w, JR NZ,$-2 LD HL,#5820 DB "-w JR NZ,$-2 LD DE,#4000 POP HL LD (PRCRE+4),HL CALL PRTEXT LD DE,#50E0 LD HL,TFREE CALL PRTEXT INC E LD HL,(SECBUF+#8E5) CALL PRNUM LD C,B POP HL LD (PRCATF0-2),HL LD DE,#4020 PRCAT0 LD (PRCRE+1),HL LD A,C CP 88 RET Z XOR A OR (HL) RET Z ;DEC A ;JR Z,PRCATNO PUSH BC PUSH DE LD C,3 CALL PRFN IFN zwet POP DE PUSH DE LD A,D RRCA RRCA RRCA ADD A,80 LD D,A LD A,(HL) LD C,#47 SUB "B JR Z,zwY LD C,#07 DEC A JR Z,zwY LD C,#45 CP "m"-"C JR Z,zwY DEC C CP "W"-"C JR Z,zwY CP "p"-"C JR NZ,zwN zwY LD B,8 LD A,C LD (DE),A INC E DJNZ $-2 zwN ENDIF RES 3,L POP DE CALL NXTLINE LD A,E ADD A,32 LD A,D RLA CP 80+81 JR C,PRCprok LD A,E ADD A,64+8 LD E,A LD D,64 PRCprok POP BC INC C ;DB "~ PRCATNO ;DB "w LD A,L SUB -16 LD L,A JR NZ,PRCAT0 INC H JR PRCAT0 PRCRE LD DE,0 LD HL,0 LD A,(DE) OR A JR NZ,$+6 PRCAT LD DE,SECBUF XOR A LD (ERRSP+1),SP CALL PRCATU+3 XOR A CP C JP Z,OLDRV LD HL,(PRCDESC+1) CALL SAVTEST JP NZ,PRCCPN PRCB LD B,0 PRCATST LD A,B CP C JP NC,PRCCPN LD L,-1 INC L SUB 22 JR NC,$-3 ;nom=stolb+4*(stroka+1) ;HL=8*(#1100+nom) ADD A,23 ADD A,A,A,A ADD A,L ;SUB -4 LD H,11 LD L,A DB "))) PUSH HL CALL CURSOR PUSH BC LD A,B LD (PRCB+1),A LD BC,16 LD HL,SECBUF PRCATF0 DEC (HL) INC (HL) ADD HL,BC JR Z,PRCATF0 ADD A,-1 JR C,PRCATF0 CALL PRFNDO DB ",~, PUSH HL LD H,(HL) LD L,A LD B,32 SUB B CP 96 LD A,B JR NC,PRFNE LD A,H SUB B CP 96 LD A,B JR NC,$+4 LD B,H LD A,L PRFNE CALL PRSYM LD A,B CALL PRSYM POP BC INC C CALL PRSTLEN POP BC CALL IYKEY POP HL RET NC CALL CURRES CP 13 JR Z,PRCDESC SUB 8 JP C,PRCRE JR NZ,PRCATNL LD A,B SUB CATHGT JR NC,$+3 XOR A LD B,A XOR A PRCATNL DEC A JR NZ,PRCATNR LD A,B ADD A,CATHGT LD B,A XOR A PRCATNR DEC A JR NZ,PRCATND INC B PRCATND DEC A JR NZ,PRCATNU PRCATUP XOR A CP B JR Z,$+3 DEC B PRCND JP PRCATST PRCCPN LD B,C JR PRCATUP PRCATNU SUB "1"-11 CP 4 JR NC,PRCND LD (DRV+1),A LD HL,(PRCRE+4) JP PRCAT PRCDESC LD HL,0 CALL LDIR9-3 LD E,(HL) INC L LD D,(HL) LD (STADR+1),DE GETbde INC L LD E,(HL) INC L LD D,(HL) GETBDE INC L PUSH DE LD A,(HL) INC L LD E,(HL) INC L LD D,(HL) POP HL LD B,A LD C,5 SCF RET REMFN LD HL,FNBUF LD DE,FILENAM LDIR9 LD BC,9 LDIR RET SAVE LD HL,TSAVE LENGTH EQU $+1 LD DE,0 LD (SDESCHL+1),DE DEC DE INC D RET Z LD (ERRSP+1),SP PUSH DE CALL PRCATU LD HL,(SSTART+1) LD BC,LENGTH CALL PRSTLEN LD HL,FILENAM LD DE,FNBUF CALL LDIR9 CALL NAME JP NC,POPRET LD HL,LINBUF LD DE,8 LD BC,#105 CALL EM15635 POP BC LD A,(LINBUF+#E4) LD C,A LD DE,0 SAV0 LD A,E LD (SAVSEC+1),A LD HL,WINBUF PUSH BC PUSH DE PUSH HL LD BC,#105 CALL EM15635 POP HL POP DE POP BC SAV1 LD A,C OR A JP Z,SAVNEON CALL SAVTEST JR NZ,NOERASE LD A,C DEC A JR Z,SAVON PUSH BC LD A,L OR 15 LD L,A LD A,B LD B,(HL) DEC L LD C,(HL) DEC L CP (HL) RES 2,L JR Z,SAVOVER RES 3,L DEC L LD (HL),1 PUSH DE PUSH HL LD HL,LINBUF+#F4 INC (HL) LD HL,WINBUF CALL EM6 POP HL POP DE POP BC NOERASE DEC C LD A,16 ADD A,L LD L,A JR NC,SAV1 INC E JR SAV0 SAVOVER LD D,B LD E,C POP BC CALL SAVTAM XOR A LD (SAVFLAG+3),A JR SAVALL2 SAVON SET 3,L INC L CALL SAVTAM LD E,(HL) INC L LD D,(HL) LD HL,LINBUF+#E5 ADD A,(HL) LD (HL),A INC HL JR NC,$+3 INC (HL) SAVALL LD HL,LINBUF+#E5 LD A,(HL) SUB B LD (HL),A INC HL JR NC,$+3 DEC (HL) SAVALL2 PUSH BC PUSH DE LD E,C LD D,'WINBUF SDESCHL LD HL,0 LD BC,MUZ ADD HL,BC LD C,L LD L,-1 LD B,14 SAVSDES LD A,C CP L JR Z,SAVSEC LD A,(DE) DEC E LD (HL),A DEC L DJNZ SAVSDES SAVS0 LD A,C CP L ;; JR Z,$+4 LD (HL),0 DEC HL JR NZ,SAVS0 SAVSEC LD DE,0 LD HL,WINBUF CALL EM6 POP DE POP BC LD HL,MUZ SVNXPAG LD C,6 CALL EM15635 LD DE,(23796) SAVFLAG LD (LINBUF+#E1),DE LD HL,MUZ LD (SVNXPAG-2),HL LD HL,LINBUF LD A,H LD (SAVFLAG+3),A LD DE,8 JP EM6 SAVNEON LD HL,LINBUF+#E4 LD A,(HL) INC (HL) CP 128 RET Z PUSH BC CALL SAVEPP SAVNEO0 LD A,(DE) LD (HL),A INC DE INC L DJNZ SAVNEO0 POP BC CALL SAVTAM LD DE,(LINBUF+#E1) LD (HL),E INC L LD (HL),D JP SAVALL SAVTAM PUSH BC SSTART LD BC,0 LD (HL),C INC L LD (HL),B INC L LD BC,(LENGTH) LD (HL),C INC L LD (HL),B INC L POP BC LD A,(HL) LD (HL),B LD C,L INC L RET SAVEPP LD L,A LD H,0 LD D,H DB ")))) LD E,H LD A,E LD (SAVSEC+1),A LD H,'WINBUF PUSH HL LD L,D LD BC,#105 CALL EM15635 POP HL LD DE,FILENAM LD B,9 RET SAVTEST PUSH BC,DE,HL LD DE,FILENAM LD B,9 SAVTST0 LD A,(DE) CP (HL) JR NZ,POP3 INC HL,DE DJNZ SAVTST0 POP3 POP HL,DE,BC RET PRNUMH CALL PRSK PUSH HL LD A,H CALL PRHEX LD A,L JR PRNUMAQ PRSK LD A,"( CALL PR88 LD A,"# JR PR88 PRNUMA PUSH HL PUSH AF LD L,A LD H,0 CALL PRNUM3 CALL PRSK POP AF PRNUMAQ CALL PRHEX LD A,") CALL PR88 POP HL RET PRHEX LD C,A DUP 4 RRA EDUP CALL PRH LD A,C PRH AND 15 ADD A,"0 CP ": JR C,$+4 SUB ":"-"A JR PR88 PRAHL CALL PR88 LD A,H CALL PR88 LD A,L PR88 PUSH HL ADD A,A LD L,A LD H,15 DB ")) JR PRDGUSE PRSTLEN PUSH BC LD DE,#4015 CALL PRNUM DB ">, CALL PR88 POP HL LD A,(HL) INC HL LD H,(HL) LD L,A PRNUM LD BC,10000 CALL PRDIG PRNUM4 LD BC,1000 CALL PRDIG PRNUM3 LD BC,100 CALL PRDIG PRNUM99 LD BC,10 LD H,B CALL PRDIG LD C,1 PRDIG LD A,120 PRDIG0 ADD A,8 SBC HL,BC JR NC,PRDIG0 ADD HL,BC PUSH HL LD H,61 LD L,A PRDGUSE PUSH DE LD B,8 DB "~ RRCA OR (HL) INC L LD (DE),A INC D DJNZ $-6 POP DE POP HL INC E RET PRTEXT LD C,0 PRTXT XOR A OR (HL) RET Z INC HL CALL PRSYM JR PRTXT GETWIN LD HL,LDIRKA LD (HL),E INC HL LD (HL),D INC HL LD (HL),C INC HL LD (HL),B INC HL PUSH BC PUSH DE GETWIN0 PUSH BC EX DE,HL PUSH HL LD B,0 LDIR POP HL EX DE,HL POP BC CALL DDE DJNZ GETWIN0 POP DE POP BC RET WINDTXT EX (SP),HL LD E,(HL) INC HL LD D,(HL) INC HL LD C,(HL) INC HL LD B,(HL) INC HL EX (SP),HL PUSH DE PUSH BC PUSH DE PUSH HL LD A,B SUB -9 LD B,A CP 50 LD HL,WINBUF CALL C,GETWIN EX DE,HL PUSH BC CALL FINDATR-1 LD H,A CALL LDIR1 DEC H POP BC SRL B,B,B GETWN1 PUSH BC PUSH HL LD B,C GWCOL LD (HL),WINCOL INC L DJNZ $-3 POP HL LD C,32 ADD HL,BC POP BC DJNZ GETWN1 CALL DEPKFNT POP HL POP DE POP BC PUSH BC WINDTIT LD B,C PUSH DE XOR A LD (DE),A INC E DJNZ $-2 POP DE CALL DDE JR NC,WINDTIT POP BC WINDBOK PUSH BC PUSH DE LD A,128 LD (DE),A LD B,C DEC B XOR A INC E LD (DE),A DJNZ $-2 INC A LD (DE),A POP DE CALL DDE POP BC DJNZ WINDBOK LD B,C LD A,-1 LD (DE),A INC E DJNZ $-2 POP DE LD B,-2 PUSH DE CALL WIND0XT POP HL CALL FINDATR-1 LD H,A PUSH HL LD (HL),TITLCOL INC L DEC C JR NZ,$-4 POP HL LD DE,64 ADD HL,DE RET WIND0XT PUSH BC PUSH DE CALL WINDPX0 POP DE INC E CALL NXTLINE DEC E POP BC INC B XOR A OR (HL) JR NZ,WIND0XT RET WINDPX0 LD C,0 LD B,42 WINDOX0 DEC B XOR A OR (HL) RET Z INC HL CP 13 RET Z CALL PRSYM JR WINDOX0 PUTWIN LD HL,LDIRKA LD E,(HL) INC HL LD D,(HL) INC HL LD C,(HL) INC HL LD B,(HL) INC HL PUSH DE PUTWIN0 PUSH BC PUSH DE LD B,0 LDIR POP DE POP BC CALL DDE DJNZ PUTWIN0 POP DE LD A,D CALL FINDATR LD D,A CALL LDIR1 DEPKFNT LD E,0 DEPKFN1 LD H,#6E LD L,E LD D,'FONTS LD B,4 DEPKFN2 CALL DEPKA DB "q$w RES 4,H CALL DEPKB DB "w%q CALL DEPKA DB "w$q RES 4,H CALL DEPKB DB "q%w DJNZ DEPKFN2 INC E JR NZ,DEPKFN1 RET DEPKA LD A,(DE) INC D LD C,A DB "$$ SET 4,H XOR A DEPKB SRL C RRA SRL C RRA RET OUTME PUSH BC LD BC,FD OUT (C),A POP BC RET QUIT LD HL,SSBREAK CALL TYN PUTWD RET Z JR QUIT3 QUIT2 CALL TYN JR C,PUTWD CALL NZ,SAVE QUIT3 LD A,23 CALL OUTME LD HL,(#C000) LD DE,#FF31 XOR A SBC HL,DE JP Z,#C000 LD H,A,L,A QUITHL PUSH HL LD A,16 CALL OUTME JP 15663 TFREE DB "Free:",0 TLOAD DB "Load file:",0 TSAVE DB "Save file:",0 TPTUTIL DB "Pro Tracker 3.x Utility v1.367" NOP TBY DB "(C) 09.03.2004 by Alone Coder" DB "/i8",0 TMENU DB " LOAD MODULE",1 DB " PLAY MODULE",1 DB " SAVE MODULE",1 DB " COMPILE SONG",1 DB " SWAP CHANNELS",1 DB " RENAME SONG",1 DB " SORT PATTERNS",1 ; DB "TRACKS/POSITIONS",1 DB " HELP",1 DB " QUIT",1,0 SSBREAK DB " Выход из программы",13,13 DB "QUIT?STAY?QUIT?STAY?",13 DB " Sure to quit(Y/N)?",0 SAVERR DB " ERROR",13,13 DB " Virtual memory",13 DB " allocation error",0 LISTER ;CALL DEPKFNT LD HL,TEXT CALL PRPAGE START CALL IYKEY RET NC LD HL,STQ PUSH HL SUB "9 JR Z,UP INC A JR Z,DOWN SUB 11-"8 JR Z,UP INC A JR Z,DOWN INC A JR Z,PGDN INC A JR Z,PGUP SUB -3 JR Z,PGDN INC A JR Z,PGUP POP HL STQ JR START PGUP LD HL,(TOP) UPPAGE LD B,HGT CALL LINEUP DJNZ $-3 PRPAGE LD (TOP),HL LD DE,#4000 LD B,HGT PRPAGE0 CALL PRLINE CALL NXTLINE DJNZ PRPAGE0 LD (BOTTOM),HL RET PGDN LD HL,(BOTTOM) LD (TOP),HL LD DE,#4000 LD B,HGT DNPAGE0 LD A,(HL) OR A JR Z,UPPAGE CALL PRLINE CALL NXTLINE DJNZ DNPAGE0 LD (BOTTOM),HL RET BOTTOM=$+1 DOWN LD HL,0 LD A,(HL) OR A RET Z PUSH HL CALL SCRUP LD HL,(TOP) CALL LINEDN LD (TOP),HL POP HL LD DE,#50E0 CALL PRLINE LD (BOTTOM),HL RET TOP=$+1 UP LD HL,0 DEC HL LD A,(HL) INC HL OR A RET Z CALL LINEUP LD (TOP),HL PUSH HL CALL SCRDN LD HL,(BOTTOM) CALL LINEUP LD (BOTTOM),HL POP HL LD DE,#4000 PRLINE PUSH BC PUSH DE DEC E LD BC,#2A00 PRLINEP LD A,(HL) OR A JR Z,PRLINEQ INC HL CP 13 JR Z,PRLINEQ CALL PRSYM DJNZ PRLINEP INC HL PRLNE POP DE POP BC RET PRLINEQ LD A,32 CALL PRSYM DJNZ $-5 JR PRLNE SCRDN LD B,HGT-1 LD HL,#50E0 SCRDN0 LD D,H,E,L,A,L SUB 32 LD L,A JR NC,$+6 LD A,H SUB 8 LD H,A CALL LDIRER DJNZ SCRDN0 RET LDIRER INC B PUSH HL LD A,8 LDIR0 PUSH DE,HL DUP 32 LDI EDUP POP HL,DE INC H,D DEC A JR NZ,LDIR0 POP HL RET SCRUP LD B,HGT-1 LD HL,#4000 SCRUP0 LD D,H,E,L CALL NXTLINE EX DE,HL CALL LDIRER DJNZ SCRUP0 RET LINEDN LD A,(HL) OR A RET Z INC HL CP 13 JR NZ,LINEDN RET LINEUP DEC HL LD A,(HL) OR A JR Z,LFQ LINEUP0 DEC HL LD A,(HL) OR A JR Z,LFQ CP 13 JR NZ,LINEUP0 LFQ INC HL RET deinit LD DE,MUZ PUSH DE LD HL,TcomT LD BC,TcomTln LDIR POP DE DI LD HL,105 ADD HL,DE LD (dei_SP0+1),SP LD SP,HL LD HL,201-105 ADD HL,SP LD BC,0 LD A,-1 CPIR OR A ;SUB HL,SP-105 SBC HL,SP LD BC,105 ADD HL,BC DEC SP,SP POP BC PUSH BC OR A SBC HL,BC EX DE,HL LD B,49;48 dia_s0 POP HL LD A,H CP #40 JR C,$+3 ADD HL,DE PUSH HL POP HL DJNZ dia_s0 deiNpa0 LD A,B deiNpa DEC SP POP BC INC B JR Z,deiNpaQ DEC B CP B JR NC,deiNpa JR deiNpa0 deiNpaQ ADD A,3 LD B,A dia_p0 POP HL LD A,H CP #40 JR C,$+3 ADD HL,DE PUSH HL POP HL DJNZ dia_p0 dei_SP0 LD SP,0 EI RET TcomT DB "ProTracker 3.6" TcomTln=$-TcomT PAKHELP NOP TEXT INCBIN "acbdoc .W" NOP TABC INCBIN "TABC LTABC EQU $-TABC/2 FNBUF DS 9 DISPLAY $ DS .(-$) TABS INCBIN "tb_PT INCBIN "tb_ST INCBIN "tb_ASM INCBIN "tb_REAL INCLUDE "PTUPLAY",#C2 initia LD DE,MUZ LD B,D,C,E initia3 ;LD (ia_pos0+1),BC DI LD HL,101 ADD HL,DE PUSH HL LD (sav_SP0+1),SP LD SP,HL POP AF POP HL ADD HL,BC LD (Psa_chn+1),HL LD D,B,E,C DEC SP,SP LD B,49;48 ia_s0 POP HL ADD HL,DE PUSH HL POP HL DJNZ ia_s0 LD L,E ADD HL,SP LD H,D LD (Psa_beg+1),HL LD C,A ADD HL,BC LD (Psa_lop+1),HL iniNpa0 LD A,B iniNpa DEC SP POP BC INC B JR Z,iniNpaQ DEC B CP B JR NC,iniNpa JR iniNpa0 iniNpaQ ADD A,3 LD B,A ia_p0 POP HL ADD HL,DE PUSH HL POP HL DJNZ ia_p0 LD HL,T_m LD C,D LD B,T_m_l ini_m0 LD E,(HL) INC HL LD D,(HL) INC HL LD A,C LD (DE),A DJNZ ini_m0 LD HL,#101 LD (int_qty),HL ;&A_qty LD (B_qty),HL ;&C_qty sav_SP0 LD SP,0 EI XOR A LD (Am_vol+1),A LD (Bm_vol+1),A LD (Cm_vol+1),A LD HL,DUMMYORN LD (Ao_adr+1),HL LD (Bo_adr+1),HL LD (Co_adr+1),HL LD (As_adr+1),HL LD (Bs_adr+1),HL LD (Cs_adr+1),HL LD (Ach_adr+1),HL SUB 16 LD (Ag_vol+1),A LD (Bg_vol+1),A LD (Cg_vol+1),A SBC A,A LD (Avb_lok+1),A LD (Cvb_lok+1),A LD (Bvb_lok+1),A POP DE DEC DE JP eff_tmp end DISPLAY $,"<",SECBUF ORG #5CDD DB "PTU1.367B INCLUDE "mrip*",#C5 ORG $ CALL 8026 JP NC,nenado LD HL,QUITHL LD (HL),225 XOR A JP GO+3 DISPLAY $MUZ PUSH DE LD HL,TcomT LD BC,Tco