Jump to content

QBAS

Members
  • Posts

    211
  • Joined

  • Last visited

Posts posted by QBAS

  1. And here is a question: is anybody know how to get best calculations for other velocity curves?

    I mean log, exp in assembler controllable by parameters. Something like this:

    velocurves.jpg

    I ask becouse it is hard to find curve by retyping in table with 256 places possible values 1 -127.

    I know utility in din_velocity_unmuxed for perl, but it isn`t on the fly.

    Of course I can make some tables and switch beetwen, but it hard to take best point.

    I looked some hours before asking here, but nothing.

    Can someone help? Big thanks

  2. Hello Thorsten Klose.

    Before we will try changing something can we ask you what is the best direction for achieve in MB64 this:

    chance the number value to a text value, for example:

    when i move pot #6 (midi cc#118)

    for value 0-10 the display should print ES1, for value 11-22 the display should print ES2,

    for value 11-22 the display should print EXS, for value 23-34 the display should print EVOC,  and so on..

    Thank you

  3. This is mostly for custom use, for egzample if you need 17x18 matrix you can use

    only some pins (not all).

    the diagram is the same like TK relase but four times bigger (longer chain)

    http://www.ucapps.de/mbhp/mbhp_scan_matrix1.pdf

    please use DINX4 and DOUTX4.

    rows go to DINX and counting is the same like pin on board.

    Counting on DOUTX4 is here:

    first      SR pins 7 - 0  =  our  24 - 31

    second  SR pins 7 - 0  =  our 16 - 23

    third      SR pins 7 - 0  =  our  8 - 15

    fourth    SR pins 7 - 0  =  our  0 - 7

    I hope it is clearly.

    The program put outside sysex string: F0 #ROW  #COLUMN #VALUE F7.

  4. Czo?em.

    Na luzie.

    I uwaga: mam stary programator pod COM-a który mog? odst?pi? zanim si? rozpadnie. oczywi?cie darmoszka

    wystarczy odbra? osobi?cie Wawie lub zap?aci? za przesy?k?

  5. OK ja tez wawa. Napisze CI w wiadomosci prywatnej jak mozemy sie skontaktowac, ale zaznaczam ze jestem zapracowany i jeszcze nie wiem kiedy bede mogl sie zabrac za pieszczenie. Powiedzmy moze w przyszlym tygodniu.

  6. aha - a to niestety nie wiem jako ze nie zalapalem sie na pica16-tego.

    Proponuje przejscie na pica 18-tego w celu zwiekszenia kompatybilnosci z innymi (na czasie) programami.

    A jesli juz wykonales platforme dla 16-go pica to w takim razie bedziesz jego expertem gdy popytasz na forum (w ww sprawie) po angielsku.

  7. czolem

    do czego s?u?? "w??czniki" na RB0 i RB1?

    a ja nie zaskoczylem skad wzioles nazwy RB0 i RB1?

    Podaj plik albo strone to moze uda mi sie jakos ustosunkowac.

    A moze ktos inny pomoze odrazu?

  8. about your code

    ...
    
    	rgoto	PC_BLOK	;pc0e
    	rgoto	PC_BLOK	;pc0f
    	rgoto	PC_PASS	;pc10
    	rgoto	PC_PASS ;pc11
    	rgoto	PC_PASS ;pc12
    	rgoto	PC_BLOK	;pc13
    	rgoto	PC_PASS ;pc14
    	rgoto	PC_PASS ;pc15
    	rgoto	PC_PASS ;pc16
    	rgoto	PC_PASS ;pc17
    	rgoto	PC_BLOK	;pc18
    	rgoto	PC_PASS ;pc19
    	rgoto	PC_BLOK
    	rgoto	PC_BLOK
    
    ...
    
    PC_PASS     						;procedure for PC_xx : PASS
    	call	MIOS_MIDI_BeginStream
    	movf	MIOS_PARAMETER1, W		;passe le parametre 1
    	call	MIOS_MIDI_TxBufferPut
    	movf	MIOS_PARAMETER2, W		;passe le parametre 2
    	call	MIOS_MIDI_TxBufferPut
    	movf	MIOS_PARAMETER3, W		;passe le parametre 3
    	call	MIOS_MIDI_TxBufferPut
    	call	MIOS_MIDI_EndStream
    	return

    can you chane this that please not send all 3 values in case of Program Change, becouse Program change consist from only two parameters, so probubly it is reason why you have a doubled message.

    For ezgample Program change #5 on channel 8   

            call        MIOS_MIDI_BeginStream

            movlw        0xc7

            call        MIOS_MIDI_TxBufferPut

    movlw      0x05

            call        MIOS_MIDI_TxBufferPut

            call        MIOS_MIDI_EndStream

  9. hi

    I`m happy!

    2/

    You create a table called by : "JUMPTABLE_2BYTES 32"

    can i make this table 128 x 2BYTES long instead of 32 ?

    I don`t know. You can check this, but if you need no more than 32 , and want avoid jump over 32 you can read in macros.h file:

    JUMPTABLE_2BYTES MACRO max_value

    addlw -max_value ; ensure that jump index is not greater than (max_value-1)

    skpnc

    movlw -max_value

    addlw max_value

    call MIOS_HLP_GetIndex_2bytes

    ENDM

    that protection is alerady done. Have you any troubles with value bigger than 32?

    I don't see where is the default point of jump/goto...
    sorry I don`t understand, what you mean?

    I would like (ALL PC > 1f) branch to PC_BLOK

    USER_MPROC_NotifyReceivedEvent	movf	MIOS_PARAMETER1, W
    	xorlw	0xc0                        ; catch program change on channel 1
    	bz	PRG_CH1
    return
    
    PRG_CH1                                           ; procedure for assign job for every number
            movlw 0x20
           CPFSLT MIOS_PARAMETER2	    ;Compare f with W, skip if f < W
           	rgoto	PC_BLOCK
    
            movf	MIOS_PARAMETER2, W
    	JUMPTABLE_2BYTES 32
    	rgoto	PC_0
    	rgoto	PC_1
    	rgoto	PC_2
     ;      ......    here you must fill it yourself
    
    	rgoto	PC_1e
            rgoto	PC_1f
    
    return
    
    PC_0     ;here you can out procedure for PC_0  
    	call	MIOS_MIDI_BeginStream
    	movlw	0x90                                 ;noteon channel 1
    	call	MIOS_MIDI_TxBufferPut
    	movlw	0x24                                 ;like you wanted 24
    	call	MIOS_MIDI_TxBufferPut
    	movlw	0x7f                                  ; you not said about velocity - so I put maximum
    	call	MIOS_MIDI_TxBufferPut
    	call	MIOS_MIDI_EndStream
    return
    
    PC_1     ;here you can out procedure for PC_1
    
    
    return
    
    PC_2     ;here you can out procedure for PC_2
    
    
    return
    ;...........please write nexts PCn
    
    PC_1f
    
    return
    
    PC_BLOCK
    
    return
    

    1/

    the procedure "PC_PASS" takes all three byte from 1 to 3 and calls MIOS_MIDI_TxBufferPut each time.

    Any idea why the message comes twice in the midiox input monitor ?

    do you monitor both inputs (from midibox and your pedal-unit)?

  10. hi

    I probubly I have a bad style of writing app in assembler , but sometimes it work.

    If you want - you can check this.

    USER_MPROC_NotifyReceivedEvent	movf	MIOS_PARAMETER1, W
    	xorlw	0xc0                        ; catch program change on channel 1
    	bz	PRG_CH1
    return
    
    PRG_CH1                                   ; procedure for assign job for every number
    	movf	MIOS_PARAMETER2, W
    	JUMPTABLE_2BYTES 32
    	rgoto	PC_0
    	rgoto	PC_1
    	rgoto	PC_2
     ;      ......    here you must fill it yourself
    
    	rgoto	PC_1e
            rgoto	PC_1f
    
    return
    
    PC_0     ;here you can out procedure for PC_0  
    	call	MIOS_MIDI_BeginStream
    	movlw	0x90                                 ;noteon channel 1
    	call	MIOS_MIDI_TxBufferPut
    	movlw	0x24                                 ;like you wanted 24
    	call	MIOS_MIDI_TxBufferPut
    	movlw	0x7f                                  ; you not said about velocity - so I put maximum
    	call	MIOS_MIDI_TxBufferPut
    	call	MIOS_MIDI_EndStream
    return
    
    PC_1     ;here you can out procedure for PC_1
    
    
    return
    
    PC_2     ;here you can out procedure for PC_2
    
    
    return
    ;...........please write nexts PCn
    
    PC_1f
    
    return
    
    
    

    I hope it will help.

  11. Hi brother, we welcome at forum.

    Thank you for putting interesting links. I just looked for printed alu panel.

    - I want to build my own PIC burner, got PCB and all the stuff. What cable should I use to program PIC? Standard cable for printer (LPT) will be enough? What exactly means "1:1 LPT cable"?

    It isn`t printer cable. It`s cable with connector for socket at pcb on PIC burner. When you will buy soket take alerady cable. 1:1 mean male - female LPT.

    - If I fully understood the procedure, i should: 1) burn the bootloader into PIC 2) send MIOS via MIDI 3) send app - (which one? that: ain64_din128_dout128_v1_3.zip) via MIDI and that's all? Should that work this way?

    yes. You can choose your prefer app or modify, customize.

    - For now, i've got only half of pots (including these from joysticks). So - should I modify something in app?

    You can ground unused AINX pins for avoid problems or setting number of pots in a code. Remember to set muxed or if you not use AINX unmuxed

    good luck!

×
×
  • Create New...