Jump to content

gillesdeshays

Members
  • Posts

    525
  • Joined

  • Last visited

    Never

Everything posted by gillesdeshays

  1. ok thanks TK ... i think i understood how it works .... I modify what i need and it works ... Now my double MB64E is WORKING GREAT !!!!! thanks again ! Gilles
  2. oppps ... i forgot this topic .... I solve my problems on this PICs with reprogramming it with the bootstrap loader ... with the right ID ... I was stuck before 'cause i cannot burn any 452 at this time ... :-[
  3. ok .. it seems to works now ... but this is not the good button which lights to good leds ..... :-\ How can i change this with the code ? My button and leds are allready wired ... if it's too hard i can modify the wiring ... Another thing ... if i configue the button in Toggle mode .. the led stays lights and the button , on the LCD, is always "pressed" after the first pressing on the button .... ??? thanks Gilles
  4. I succeed using VMidiBox64E !!!! thanks Tk and Serge ! ;)
  5. I can't really understand how to modify the code ... I think to have to modify the MB64e_buttons.inc ... but i don't exactly know how to ... ;; -------------------------------------------------------------------------- ;; general purpose button function ;; Input: ;; o Button number in MIOS_PARAMETER1 (AND NOT IN WREG!) ;; o Button value MIOS_PARAMETER2: ;; - 1 if button has been released (=5V) ;; - 0 if button has been pressed (=0V) ;; -------------------------------------------------------------------------- MB64E_BUTTON_GP ;; save current button number in MB64E_CURRENT_BUTTON SET_BSR MB64E_BASE movf MIOS_PARAMETER1, W movwf MB64E_CURRENT_BUTTON, BANKED ;; branch to SFB handler if button has been assigned to 0xff call MB64E_FSR_ButtonEvnt0 incf INDF0, W bnz MB64E_BUTTON_GP_NoSFB MB64E_BUTTON_GP_SFB ;; toggle LED which is assigned to the SFB rcall MB64E_LED_Set ; expects MIOS_PARAMETER[12] as parameter ;; request display re-initialization bsf CS_STAT, CS_STAT_DISPLAY_INIT_REQ ;; save value in MIDI_EVNT_VALUE ;; (do it here, since MIOS_PARAMETER2 will be overwritten by MB64E_BANK_Read) movff MIOS_PARAMETER2, MIDI_EVNT_VALUE ;; save SFB event number in MIDI_EVNT0 call MB64E_FSR_ButtonEvnt1 movff INDF0, MIDI_EVNT0 ;; save special function parameter value in MIDI_EVNT1 ;; calc address to button mode entry: call MB64E_ADDR_ButtonEntry ;; select the 3th byte movlw 3-1 addwf MB_ADDRL, F ;; save it in MIDI_EVNT1 call MB64E_BANK_Read movwf MIDI_EVNT1 ;; branch to SFB handler goto MB64E_SFB_Handler MB64E_BUTTON_GP_NoSFB ;; save it also in MB64E_LAST_BUTTON movff MB64E_CURRENT_BUTTON, MB64E_LAST_BUTTON ;; notify that last controller move was a button bsf MB_STAT, MB_STAT_LAST_WAS_BUTTON ;; for MIDI learn function rcall MB64E_BUTTON_Learn ;; exit here if we are in learn mode (don't send button value) IFSET MB_STAT, MB_STAT_LEARN_MODE, return ;; store current button value in TMP1 movf MIOS_PARAMETER2, W movwf TMP1 ;; calc address to button mode entry: call MB64E_ADDR_ButtonEntry ;; select the 4th byte movlw 4-1 addwf MB_ADDRL, F ;; get fourth byte - which selects the button mode - and branch depending on value call MB64E_BANK_Read andlw 0x03 JUMPTABLE_2BYTES_UNSECURE rgoto MB64E_BUTTON_OnOff rgoto MB64E_BUTTON_OnOnly rgoto MB64E_BUTTON_Toggle rgoto MB64E_BUTTON_OnOff ;; (button value stored in TMP1) MB64E_BUTTON_OnOff ;; save status of button rcall MB64E_BUTTON_Hlp_SaveStat rgoto MB64E_BUTTON_Send ;; (button value stored in TMP1) MB64E_BUTTON_OnOnly ;; save status of button rcall MB64E_BUTTON_Hlp_SaveStat ;; when on: send button value defined in dump ;; when off: send nothing IFSET TMP1, 0, rgoto MB64E_BUTTON_NotifyChangeEnd rgoto MB64E_BUTTON_Send ;; (button value stored in TMP1) MB64E_BUTTON_Toggle ;; when on: toggle between 0x00 and the button value defined in dump ;; when off: send nothing IFSET TMP1, 0, rgoto MB64E_BUTTON_NotifyChangeEnd ;; toggle appr. bit in BUTTON_VALUE register call MB64E_FSR_ButtonValue SET_BSR MB64E_BASE movf MB64E_CURRENT_BUTTON, W, BANKED call MIOS_HLP_GetBitORMask xorwf INDF0, F ;; rgoto MB64E_BUTTON_Send MB64E_BUTTON_Send call MB64E_MIDI_SendButtonEvent ;; request display update bsf CS_STAT, CS_STAT_DISPLAY_UPDATE_REQ ;; reset the cursor of the CS call CS_MENU_ResetCursor MB64E_BUTTON_NotifyChangeEnd return First i cannot find the MB64E_LED_Set function So if i understand well .. A button is pressed .... We check if this is an CS button Then map the button to the button number Then this is the SFB implementation Then the GP implementation : Here we save the button number in MB64E_CURRENT_BUTTON Check if this is the button is configured to a SFB IF not this is a GP: "MB64E_BUTTON_GP_NoSFB" If we are not in learn mode , we store current button value in TMP1 then check the behaviour of the button ( on-off, toggle ...) and then launch the MB64E_BUTTON_Send with some other thing before depending of the button behaviour ... Am i right ? I must understand well how it works to modify this ... If yes ... do i just have to add something like that : call MB64E_LED_Set in the MB64E_BUTTON_Send handler ? because, at this time, button pin number is still in WREG, and value in MIOS_PARAMETER1....... no ??? i try several things like that without success.... To precise ... i 'm a beginner in coding ... but i'm starting to understand how it works ... thanx a lot for your help ! :) gilles
  6. Oui ... Va voir le tutoriel de la MB64 et tu verras les menus ... Si tu veux mettre 4 boutons de menu par core .. pas de soucis ... sinon tu peux modifier le code afin de transmettre les commande vers les autres core ... mais bon faut savoir coder ! ;) Ce sont des differences de potentiels ( en gros une tension) qui se crée entre les masses si elles sont eloignées ... La solution est de centrer un seul point ou toutes les masses se rejoignent ... Le plus simple serait de monter un LCD par core ... peut etre les mini LCD de Nokia ? Mais de rien ;) A +
  7. bon ben si ca tourne ... faut pas se prendre le choux ! Pour les photos, il faut que tu les upload quelques part afin de mettre iun lien vers ....
  8. Sans problème .... Un encoder te prend juste 2 entrées DIN ...
  9. Oppps ... au temps pour moi .... 4 core ! tu as raison ...
  10. 5 core .. tu sembles avoir raison .... Il faut que tu les mettes en cascade avec des ID differents : ID0, ID1, ID2 ... jetes un oeil là .. donc il n y a pas de notion d esclave/maitre mais d'ID qui te permette d'identifier les signaux midi sortant et de determiner un core pour destination d'un signal MIDI.... Tu peux brancher le reste un peu n'importe ou ... limité a 4 modules max ( DIN ou DOUT) et par le MF prend le connecteur du core qui sert a AIN aussi ...
  11. Ca sera tres simple ... Si tu veux imiter une console DJ .. 1 core suffit .... J'utilise traktor et ca marche tres bien ! Pour Virtual Dj . .j'en sais rien . .ca supporte le MIDI cette bete là ?
  12. J'ai pas capté ... rappeles moi tes connections .... Pout ton DOUT , il ne faut pas le mettre a la masse ... ca c'est sur ! Donc recapépete un peu que je capte qui ne marche pas ...
  13. Sorry j'etais Out of space .... combien tu as en sortie du Transfo ? rééllement 9v et 18 V ? 9 V Ca fait un peu bcp pour attaquer un 7805 ... mais si le radiateur est assez dimensionné, ca devrait aller .... Si ca marche , faut pas se poser de questions !!!! lol !
  14. petite rectif :1 core pour la MB64E , c'est 128 DIN max donc ... en comptant : 1 switch = 1 DIN 1 Encodeur = 2 DIN 1 module AIN = 32 entrées 1 module DIN = 32 entrées 1 module DOUT = 32 sorties Donc tu fais ton calcul ... ;) 26 faders :26 entrees soit 1 module AIN (penses à mettre les entrées non connectées à la masse !) 8 Encodeurs : 16 entrées DIN soit un demi module DIN 150 switch : 150 entrées DIN soit 5 modules DIN 189 Leds : 189 Sorties DOUT soit 6 modules DOUT Comme le maximum supporté par un core est de 4 modules par type, il te faudra mettre 1 core avec 1 mod. AIN, + 4 mod. DIN + 4 mod. DOUT puis un autre core avec 2 mod. DIN et 2 mod. DOUT Attention penses au 4 boutons de menus INDISPENSABLE soit 4 entrées DIN en + .... L'idée c'est de mettre des ID differents pour chaque core ..puis tu activeras le midiboxlink pour transmettre le midi du premier core (ID0 et Forwarding Point: FP ) vers la sortie "en passant" au travers du 2eme Core (ID1 et Ending Point) ... voir là ... c'est ce que tu appeles "en cascade" ... jetes un coup d'oeil a la MBSid avec 4 core ... Pour l'alim' .. Attention aux ground loops ou boucles de masse ... je suis en train de faire un schéma pour ce type de config ... pour resumer , il faut une seule alim ... un seul régulateur assez costaud pour les 2 cores et surtout une seule liason de masse pour tout ton montage , et ce "en etoile" .... je posterai ce schéma bientot ... n'hesites à me relancer ... Pour le LCD, de base il ne pourra afficher que les infos du core sur lequel il est branché .... mais le MIOS t'apporte tout les outils pour transmettre toutes les infos du premier core vers le deuxième afin de les afficher sur le LCD (connecté alors sur le 2eme core ...) mais ce n'est pas codé encore ... alors à toi de jouer ! ;) Pour les alims internes ce se trouve ... sinon ca se fait .. c est pas trop dur ... mais ATTENTION AU 220 V !!! Voilà .. à toi ! 8)
  15. I tought i just had to specify in the DOUT specifier map in the vmidibox64e_18f : SR# 1 ( my mute leds) to DIN SR#7 ( button ID #48-55) (my mute buttons) ..... and voila ! in fact it doesn't seems to be as simple .... I check my leds with the "dout_buttons_v1_3" test applications and the Dout SR#1 works well ... and the Din SR#7 works well also ... Where i'm wrong this time ? ;) thanks a lot !
  16. because i'm a stupid punk !! ;D As I got too much problem with the hardware ... now i'm lost in the soft part !!! sorry ... But in fact , this story point the fact that i always think about ucapps.de : For a non programmer like me, the mios is quite closed ... i mean it's hard to get the whole concept of modifying the code .... and how it works ... I often asked myself how we can clarify this .... May be a drawing, a diagram, something like that, to explain what do what in the mios labyrinth ... ??? Don't misunderstood TK , it's really to open the mios code to more people ... And i know your time is not expandable to write down such a litterature ! May the midibox.org can be the place for this .... ? best regard Gilles
  17. After trying to burn some 18F452 with NO results since 1 year .... I DID IT !!!!!! I BURN A 452 !!!!! And you know how i did ? I change my motherboard !!!!!!!!!! ;D Incredible !!!!!! For now my JDM with the right zener and the right ext power supply WORKS WELL with my new MB !!! Hope this can help ! Gilles PS : i 'm not payed by any Motherboard manufacturer Consortium ! ;)
  18. I'm trying .. with my poor "coding" knowledge to add this simple feature to my MB64E ... I just want to light on the LEDs included in my button ... I want to use it for solo and mute... but as Reason doesn't get out any MIDI message, i just need to toggle the DOUT corresponding to "his" DIN ... You push a button : it lights his led You push a second time : it lights off his led ... I try to take example on Dout_buttons & Dout_enc Test applications ... but it doesn't work ... Any elegant coding idea ? ;) Thanks a lot !!!! Gilles
  19. But if i modify the mb64e_dump.inc .... My app will boot with MBLINK in EP mode ? because i cannot really understand : ;; init MIDI merger depending on selected CFG SET_BSR MB64E_BASE movlw 0x00 BIFCLR MB64E_CFG0, MB64E_CFG0_MERGEROFF, BANKED, iorlw 0x01 BIFSET MB64E_CFG1, MB64E_CFG1_MBLINK, BANKED, iorlw 0x02 call MIOS_MIDI_MergerSet Can you tell me more about the BIFCLR & BIFSET in this case ? Thanks a lot ! Gilles
  20. really fast !!! :D max 370K/s with my 8Mo ADSL ... ;D
  21. AH .... OK ! I thought i was crazy ! ;) tx Thorsten
  22. Et en plus ils sont pas mal !! ;)
  23. Dear all ... I'm back here after monthes of works, works, works .... ... and still working on my MB"2x" 64E .... and still have problems with midibox link ( i had many jitter problems when i activate the MBLink but : I DID solve this jitter problem ... it was a f****** ground loop ! but i will wrote be another post for this ..... My new problem is that i tried to put my cores with EP and FP by defalut ... because only one core has menu buttons .... So i add : movlw MIOS_MIDI_MERGER_MBLINK_FP call MIOS_MIDI_MergerSet in the user init lines in the main.asm .... I tried several time but it doesn't seems to works ... ... for memory i used Mios V1.7, modified MB64e V2.1 "sysed" with "sysexbox_18f_v1_1c" ... (for my test i get out my last 14*encoders to put 4 menu buttons on the second core ... like thaht i could test the midibox link ) thanks ! Gilles
  24. C'est bon XSOU vient de me le donner de la main a la main .. merci quand meme !!! :-*
  25. voilà :
×
×
  • Create New...