IF about
mABOUT
DB 1,9,30,21,32
tABOUT
;DB "23may2007 dmitry.alonecoder@gmail.com (4912)751390(Dima)"
DB "CODE:Nick (4732)141962 | DESIGN:Mm<M (8462)941595(Serge)"
DB " Golden Disk|Pro Tracker v3.74 "
DB "0???=No Effect <EFFECTS|KEYS> W=Edmuz,Ext=Edpat,Ent=Play"
DB "1(2)wii=Gliss Down/Up | E=Env,F,"
IF bemol
DB "ssY=b/#,"
ELSE
DB " "
ENDIF
DB "ssW=Ins,"
IF 0==(kL-15)
DB "cs0=Del"
ELSE
DB "ssQ=Del"
ENDIF
DB "3wii=Tone Portamento | csU/I/Y/T;csE,csA,9;ssI,ssU,csL"
DB "4(5)?oo=Smp/Orn offset | "
IF 0==(kL-15)
DB "ssT>m,ssR<m;Ho,End,cs12;K,ssL,)"
ELSE
DB "ssE>m,ssR<m;Gr,ss9,cs12;K,[ss]L"
ENDIF
DB "6?YN=Vibrato |MENU KEYS> Ext,Ent=EXIT, KL=Loop"
DB "9(A)wii=Env.Gliss Dn/Up| 0WERT+,A9FYUI=atnTNE, ssUI,cs34"
DB "B?tt=Tempo |DISK MENU> 1-4=ABCD "
db "8sNN=play GS"
DB #A0
ENDIF
IF set
mSETUP
DB 8,6,#19,#13,#68
tSETUP
DB 6,13,0,"SETUP"
DB 6,1,1,"Frequency table:"
DB 6,5,2,"Print points :"
DB 6,11,3,"Colours:"
DB 6,9,4,"Ink Pap."
DB 6,9,5,"Ink Pap."
DB 6,9,6,"Border :"
IF savset
DB 6,11,10,"Save SETUP"
ENDIF
DB 6,7,7,"Sound :"
DB 6,7,8,"Play on :"
DB 6,5,9,"Kempston joystick",#BA
tPTST
DB "'ProTracker","'"+#80
DB "SoundTracke","r"+#80
DB "1.750000 Hz"," "+#80
DB "'Real Sound","'"+#80
tALL
DB "ALL",#A0
tNOTE
DB "NOT",#C5
IF savset
TPTSETU
DB "PT 3.4 SETUP"
ENDIF
ENDIF
mDISK
DB 5,8,#19,#17,#28
tDISK
DB 6,#17,2,"Files:"
DB 6,2,2,"Reread Catalogue"
DB 6,#23,4,"Up"
DB 6,8,4,"Save"
DB 6,1,6,"File Name:"
DB 6,#22,11,"Down"
DB 6,4,8,"Save Pattern"
DB 6,4,10,"Save Sample"
DB 6,4,12,"Save Ornament",#A0
tSZ
DB 6,#B,0,"Song Len=","#"+#80
mCLEAR
DB 6,2,#10,#B+1,#28
tCLEAR
DB " CLEARS "
DS 18," "
DB " Song ........... "
DB " Positions ...... "
DB " Pattern ........ "
DB " Sample ......... "
DB " Ornament ....... "
db " .. QUIT to OS .. ",#A0
mSURE
DB #D,#A,#15,#F,#16
tSURE
DB "ARE YOU SURE ?"
DB 6,0,2,"YES NO AL",#CC
IF cmpilmnu
mCOMPIL
DB 3,6,#E,#16,#28
tCOMPIL
DB "ProTracker Compiler"
DB 6,1,2,"Save compiled song "
DB "Include player:"
DB 6,0,4,"Start address:#"
DB 6,5,6,"Parameters:"
DB 6,0,8,"Init address :#"
DB 6,0,9,"Play address :#"
DB 6,0,10,"Stop address :#"
DB 6,0,11,"Data address :#"
DB 6,0,#D,"Length"
DB 6,#E,#D,":",#A3
ENDIF
mDISKER
DB #A,6,#15,#C,#14
tDISKER
DB 6,5,0,"DISK ERROR"
DB 6,0,2,"Retry,Abort,Ignore ",#BF
mEDORN
;DB 0,1,#11,#17,7
DB 0,1,#11,#14,7
tEDORN
DB "EDIT ORNAMENT 0"
EDORNN DB "1",#A0
tORNo_s
DB "OCTAVE SAMPLE ",#A0
;tORNKEY
;DB " ssUI,ssK,0WERT,Ins,cs0 ,CURSOR "
;DB " PRESS NOTE KEYS FOR PLA",#D9
mEDSMP
DB SMPX,SMPY,#14+SMPX,2+SMPY+SMPH,7
EDSMPN DB "1",#A0
tSMPKEY
DB "OCTAVE ORNAMENT",#A0
mPOS
DB 1,1,#A,#17,#28
tPOS
DB " POSITIONS LIST"
DB 6,0,2," POSIT. PAT",#D4
;=====================================
T____
DB "---",#AD
Tmemo
DB "mem",#EF
FILEXTS
DB "m"
filextS DB "SM"
filextF DB "Fpso"
IF gs
DB "i"
ENDIF
TSORRY
DB " *** I'M SORRY *** ",#A0
TDISKER
DB " DISK DRIVE ERROR !!! ",#A0
TNOFILE
DB " NO FILE !! ",#A0
TSEARCH
DB "PLEASE WAIT, SEARCHING !",#A1
TLSMP
DB "LOADING SAMPLE",#A0
TSSMP
DB "SAVING SAMPLE",#A0
TLORN
DB "LOADING ORNAMENT",#A0
TSORN
DB "SAVING ORNAMENT",#A0
TLPAT
DB "LOADING PATTERN",#A0
TSPAT
DB "SAVING PATTERN",#A0
DIVS
DB "1:",#B1
DB "3:",#B4
DB "1:",#B2
DB "1:",#B4
DB "3:",#B1
DB "5:",#B2
DB "2:",#B1
DB "3:",#B2
IF cmpilmnu
tC0
DB "C0"
ENDIF
tON
DB "ON",#A0
tOFF
DB "OF",#C6
TYES
DB "YE",#D3
TNO
DB "NO",#A0
mOK
DB #C,#A,#16,#D,#18
TCOMPLE
DB "OPERATION COMPLET",#C5
IF opcompl
TERROR
DB "ERROR IN OPERATIO",#CE
ENDIF
tSS
DB "('&%$#@!_"
TNOTEKY
;DB "F"
db 'f'
;DB ".-,^*",203,"/?",205,"`",195,":"
db ".-,^*",ssG,"/?",ssD,"`",ssA,":"
;DB "MJNHBGVCDXSZ"
db "mjnhbgvcdxsz",kL
TNOTEKE
TDEFORN
DB 7,12,16
DB 4,7,12
DB 0,4,7
DB 7,12,15
DB 3,7,12
DB 0,3,7
IF tab
TJP
DB 4,4,4,5,6,6
DB 11,16,17,18,19,15,21,22,23
DB 20,25,26,27,28,24,30,31,32
DB 29,25,26,27,28,2,12,13,14
TJPLEFT
DB 29,29,29,29,2,3
DB 4,0,1,2,3,6,30,31,32
DB 11,7,8,9,10,15,12,13,14
DB 20,16,17,18,19,24,21,22,23
ENDIF
;=====================================
;DS -$&3
;DS .(-$)
align 256
ayblock
ENV
DW 0 ;почему здесь?
Achan
DB -1
Aorn DW ORNS
DB 1,0,0
DW SMPS
DB 1,0,0,0
Avol2 DB #F0
Avol DB #F
Acom DS 5
Adfrq DS 10
Bchan
DB -1
Born DW ORNS
DB 1,0,0
DW SMPS
DB 1,0,0,0
Bvol2 DEFB #F0
Bvol DEFB #F
Bcom DS 5
Bdfrq DS 10
Cchan
DB -1
Corn DW ORNS
DB 1,0,0
DW SMPS
DB 1,0,0,0
Cvol2 DEFB #F0
Cvol DEFB #F
Ccom DS 5
Cdfrq DS 10
frqA
DW 0
frqB DW 0
frqC DW 0
nois NOP
mix NOP
volA NOP
volB NOP
volC NOP
frqE DW 0
env DW 0
pianRG DS 12
pianE NOP
piaSMP DW 0
piaORN DW 0
NOP ;NU,но нужно!
piSLIN NOP
piSEND NOP
piOLIN NOP
piOEND NOP
piSLOOP NOP
piOLOOP NOP
piCURv DB 0;#18VOL
DW 0;#19dFRQ
DB 0;#1BNOISE
DB 0;#1CENV
usedisp DW 0
BASENV DW 0
Edfrq DB 0
Efrq DW 0
EstCNT DB 0
Estep DW 0
EiniCNT DB 0
NOTENV DB 0 ;или не в ayblock?
DNOIS DB 0
DS -$&3
szayblock=$-ayblock
szayblock4=szayblock/4
DS ayblock+256-$
ayblock2
DS szayblock
;=====================================
IF set
DB 10+savset
SETUCOO
DW #4048,#4888
DW #4858,#5090
DW #5868,#6078
DW #5878,#6088
DW #6068,#6878
DW #6078,#6888
DW #6868,#7088
DW #7060,#7888
DW #7860,#8088
IF savset
DW #8870,#9098
ENDIF
DW #8058,#88A0
ENDIF
DB 6;5
CLEACOO
DW #2838,#3078
DW #3038,#3878
DW #3838,#4078
DW #4038,#4878
DW #4838,#5078
DW #5038,#5878 ;QUIT
DSKopts DB 8
DISKCOO
DW #5830,#6078
DW #6830,#7078
DW #7830,#8078
DW #68B0,#70C8
DW #A0B0,#A8C8
DW #8830,#9078
DW #9830,#A078
DW #A830,#B078
DW #6880,#70A8
DW #7080,#78A8
DW #7880,#80A8
DW #8080,#88A8
DW #8880,#90A8
DW #9080,#98A8
DW #9880,#A0A8
DW #A080,#A8A8
DB 3
SURECOO
DW #6868,#7078
DW #6880,#7090
DW #6898,#70A8
MENUCOO
;minYX,maxYX
DW #0038,#0840
DW #0040,#0848
DW #0838,#1040
DW #0840,#1048
DW #1038,#1840
DW #1040,#1848
DW #1838,#2040
DW #1840,#2048
DW #2038,#2840
DW #2040,#2848
DW #2838,#3040
DW #2840,#3048
;DW #4038,#4840
;DW #4040,#4848
DW #3038,#3840
DW #3040,#3848
DW #3838,#4040
DW #3840,#4048
DW #4000,#4828
;DW #4838,#5040
;DW #4840,#5048
DW #4800,#5028
DW #4838,#5048
DW #4038,#4848
DW #0048,#0888
DW #0850,#1080
DW #3848,#4088
DW #3000,#3830
DW #5000,#5818
DW #5800,#5F18
DW #3098,#38B8;SMP
DW #30C0,#38C8
DW #30C8,#38D0
DW #30E8,#38F0
DW #30F0,#38F8
DW #30D0,#38E0
DW #3898,#40B8;ORN
DW #38C0,#40C8
DW #38C8,#40D0
DW #38E8,#40F0
DW #38F0,#40F8
DW #38D0,#40E0
DW #3050,#3880 ;about
DW #4058,#4770;ONOFFTS
DW #4850,#4f60;TRNSVOL
DW #4860,#4f70;TRNSTONE
DW #4880,#4f88
DW #4888,#4f90
DW #48D0,#50E0 ;???
DW #40C0,#48C8
DW #40C8,#48D0
DW #40E8,#48F0
DW #40F0,#48F8
DW #48C0,#50C8
DW #48C8,#50D0
DW #48E8,#50F0
DW #48F0,#50F8
DW #50C0,#58C8
DW #50C8,#58D0
DW #58C0,#60C8
DW #58C8,#60D0
DW #58D8,#60F8 ;exchange
DW #2048,#2888
DW #2848,#3088
DW #1050,#1880 ;compile
DW #1850,#2080 ;decomp (new setup)
DW #50E8,#58F0;+B2
DW #50F0,#58F8
;DW #4050,#4880 ;setup
DW #3800,#4030
DW #0800,#1028
DW #4898,#50B8
DW #5098,#58B8
DW #5898,#60B8
DW #50D0,#57E0 ;homecop
DW #4870,#4f80
IF cmpilmnu
DB 3
COMPCOO
DW #4820,#5068
DW #5018,#5858
DW #5818,#6058
ENDIF
;=====================================
IF set
SETUUSE
DW suFRQ
DW suPOI
DW suINK1
DW suPAP1
DW suINK2
DW suPAP2
DW suBORD
DW suSND
DW suPLAY
IF savset
DW suSAVE
ENDIF
DW suKJ
ENDIF
CLEAUSE
DEFW clSONG
DEFW clPOS
DEFW clPAT
DEFW clSMP
DEFW clORN
DW clQUIT
DISKUSE
DW READCAT
DW SAVE
DW EDFILE
DW CATUP
DW CATDN
DW SAVPAT
DW SAVSMP
DW SAVORN
DW LOAD
DW LOAD
DW LOAD
DW LOAD
DW LOAD
DW LOAD
DW LOAD
DW LOAD
SUREUSE
DW YES,YES,YES
MENUUSE
DEFW INCTMP
DEFW DECTMP
DEFW INCPOS
DEFW DECPOS
DEFW INCPAT
DEFW DECPAT
DEFW INCLENG
DEFW DECLENG
DEFW INCLOOP
DEFW DECLOOP
DEFW INCVOL
DEFW DECVOL
;DEFW INCOCT
;DEFW DECOCT
DEFW INCEPAT
DEFW DECEPAT
DEFW INCPATL
DEFW DECPATL
DEFW AUTOON
;DEFW INCROLL
;DEFW DECROLL
DEFW ENVON
DIVNO=($-MENUUSE)/2
DEFW NXTDIV
DEFW AUTOS
DEFW DISKS
DEFW CLEARS
DEFW EDSONG
DEFW EDPAT
DEFW TITLES
DEFW BYS
DEFW EDSMP
DEFW INCSMP
DEFW DECSMP
DEFW INCSMP2
DEFW DECSMP2
DEFW COPYSMP
DEFW EDORN
DEFW INCORN
DEFW DECORN
DEFW INCORN2
DEFW DECORN2
DEFW COPYORN
IF about
DEFW ABOUT
ELSE
DW ret
ENDIF
DEFW ONOFFTS
DEFW TRANVOL ;vol
DEFW TRANSP ;tone
DEFW INCTRA
DEFW DECTRA
DEFW COPY
DEFW INCPAT1
DEFW DECPAT1
DEFW INCPAT2
DEFW DECPAT2
DEFW INCCHN
DEFW DECCHN
DEFW INCCHN2
DEFW DECCHN2
DEFW INCBEG1
DEFW DECBEG1
DEFW INCEND
DEFW DECEND
DEFW EXCHANG
DEFW PLSONG
DEFW PLPAT
DEFW COMPILS
DEFW SETUP;DECOMS
DEFW INCBEG2
DEFW DECBEG2
;IF set
; DEFW SETUP
;ELSE
; DW ret
;ENDIF
DEFW PATLENS
DEFW POSEDIT
DW ALLCHAN
DW BEGcur
DW ENDcur
DW HOMEcop
DW HOMEtra
mains=($-MENUUSE)/2
IF cmpilmnu
COMPUSE
DW COMSAVE
DW PLYRyn
DW EcomADR
ENDIF