123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- function lstinf$(a$,b$,c$)
- adra=1:adrb=1:blngt=len(b$):d$=""
- while adrb<=blngt
- if mid$ (a$,adra,1)=mid$ (b$,adrb,1) then:adrb+=1:end if
- adra=adra+1
- end while
- while mid$(a$,adra,1)<>left$(c$,1)
- d$=d$+mid$(a$,adra,1):adra=adra+1
- end while
- lstinf$=d$
- end function
- function vldc(a$)
- t0$="!"+a$+".0.0.0."
- t1$=lstinf$(t0$,"!",".")
- t2$=lstinf$(t0$,".",".")
- t3=10^(len(t2$))
- vldc=val(t1$)+(val(t2$)/t3)
- end function
- dim chfq[16],chvl[16]
- finp$="_.csv"
- if argc>2 then:finp$=argv(2):end if
- print"56676D20"
- print"FFFFFF00"
- print"61010000"
- print"0000000000000000"
- print"00000000"
- print"B00F4000"
- print"0000000000000000"
- print"3C000000"
- print"0000000000000000"
- print"00000000"
- print"CC000000"
- print"00000000000000000000000000000000"
- print"00000000000000000000000000000000"
- print"00000000000000000000000000000000"
- print"000000000000000000000000"
- print"4D4F1B00"
- print"00000000000000000000000000000000"
- print"00000000000000000000000000000000"
- print"00000000000000000000000000000000"
- print"00000000000000000000000000000000"
- print"00000000000000000000000000000000"
- print"00000000000000000000000000000000"
- print"00000000000000000000000000000000"
- print"00000000000000000000000000000000"
- print"0000000000000000"
- print
- print"A00000"
- print"A00100"
- print"A00200"
- print"A00300"
- print"A00400"
- print"A00500"
- print"A00800"
- print"A00900"
- print"A00A00"
- print"A007B8"
- lct=0
- open finp$ for input as #1
- while eof(1)=0
- file input #1,txrd$
- setcaption("b:"+str$(lct)):lct+=1
- if mid$(txrd$,1,1)="[" then:
- if mid$(txrd$,2,1)="f" then:
- chid=val(mid$(txrd$,3,2))
- chid=chid mod 3 'ay38910 has 3 channels
- chfqv=vldc(lstinf$(txrd$,":","]"))
- chfqv2=int(26.6984611843*2^(8-chfqv))
- if chfqv2>2047 then:chfqv2=2047:end if
- if chfqv2<0 then:chfqv2=0:end if
- chchrfq$=right$("000"+hex$(chfqv2),3)
- txrgo$="A0"+right$("00"+hex$(1+2*chid),2)+"0"+mid$(chchrfq$,1,1)
- txrgo$+=" A0"+right$("00"+hex$(0+2*chid),2)+mid$(chchrfq$,2,2)
- print ucase$(txrgo$)
- end if
- if mid$(txrd$,2,1)="v" then:
- chid=val(mid$(txrd$,3,2))
- chid=chid mod 3 'ay38910 has 3 channels
- chvlv=vldc(lstinf$(txrd$,":","]"))*0x10
- chchrvl$=right$("00"+hex$(chvlv),2)
- txrgo$="A0"+right$("00"+hex$(8+chid),2)+chchrvl$
- print ucase$(txrgo$)
- end if
- if mid$(txrd$,2,3)="wvb" then:
- wvblv=vldc(lstinf$(txrd$,":","]"))
- wvblv2=wvblv*44100
- wvblv3a=wvblv2 mod 65536
- wvblv3b=int(wvblv2/65536)
- wvblv3as$=ucase$(right$("0000"+hex$(wvblv3a),4))
- for ii=1 to wvblv3b:print"61FFFF":next
- print "61"+mid$(wvblv3as$,3,2)+mid$(wvblv3as$,1,2)
- end if
- end if
- wend
- print:print "66":print
- close #1
|