Jump to content

bill

Programmer
  • Posts

    386
  • Joined

  • Last visited

Everything posted by bill

  1. bill

    control 16

    je connais pas, mais je serais curieux de voir la surface de controle, tu pourrais faire une photo ?
  2. This is probably the most beautifull traktor controller i have ever seen !!! WOW :o
  3. Goat tracker Is the most portable and easyest solution to do sidchiptune on a non commodore machine ! They are tons of C64 trackers on this website : http://microkit.free.fr
  4. OUi, et pi je viens de creer une page sur la construction d'un clone de sequenceur ala TR. http://www.midibox.org/dokuwiki/doku.php?id=trsequencer C'est que le début, mais si la liste des features et bien ficelée, et l'interface bien décrite, ça ne devrais pas etre bien long a coder et a construire ! J'aimerais bien avoir une démo de la tr808, histoire de bien tout comprendre ;) Quelqu'un sur paris pourrais me faire une demo ? Est ce que la machine a des presets ? Est ce qu'on peut selectionner le canal midi ? Comment selectionne t'on l'instrument, et combien d'instrus ? (16 ?) ...
  5. Hello ;D Still learning, i wonder : Is there an elegant coding way of swapping bytes in a array ? ex : swapping arp[1] with arp[2] so arp(0,7,3) become arp(0,3,7), without using another byte ???
  6. Hello, please, could you write a list of features a good old tr seq should have ? (resolution, interface, number of voices ...) please explain us how easy it is, i dont own a tr808 :'( also describe the machine interface, and write it on a wiki page. (please dont do complicated) I did this page for it : http://www.midibox.org/dokuwiki/doku.php?id=trsequencer You do not need to learn ho to code for this, and it could help the project a lot !!! Hope to read your descriptions soon :)
  7. bill

    Nibbles

    Woohoo ! Thank you stryd_one :-*
  8. bill

    Nibbles

    Yes, what i want to get is this please can you explain me how to "grab the bits i need by masking (AND) them and shifting (>>) them." I hae no clue how to use "AND" and ">>" :-[
  9. I would like to work with 4bit values, and store 2 of them as a byte. For example, i want to store the value 0x4f, then read separated values 0x4 and 0xf I dont know very well how to explain, but i'm sure you do understand ;D Please help me ! Thanks
  10. Salut elektrovizo ! Rien a voir avec ton problème, quel type de programateur utilise tu ? Est ce que par hazard, tu peux programmer les pic18F4620 ? (Si oui, j'aurais un petit service a te demander ;) )
  11. Hello QBAS, did you try to use the C based Scan matrix driver ? http://ucapps.de/mios/sm_c_example1_v1.zip http://ucapps.de/mios/sm_c_example2_v1.zip I'm working with those files, and i have some strange behaviors, that i suppose are on the hardware side, but i would like to compare with your results... Here is what i'm talking about : I did a keypressed counter, and it's counting fine 3 to 6 keys, but in some case, when i press, let's say 5 or 6 keys, the counter say 7,8, and sometimes more. (depending on which cols,rows) PLease, could you try to play large chords, and tell me if they allways sound ok ? Cheerz bill Ps : yes, i have signal diodes installed.
  12. Here we go. So, as mentioned before, this is a very simple, as a tutorial, sequencer example using the TK clockbox program as base... The variables, counters etc, are written in a "beginner friendly" way ;) In file mclock.c, func MCLOCK_Tick(void) is called periodicaly, 24 times per step, and theres 4 step in a mesure. (I'm not sure about the wording :-\ ) Here, we're going to play 16 notes in a mesure (so each step is divided by 4) In that function, we're going to call our own function "STEPSEQ();" // increment the meter counters STEPSEQ(); We have to set 16 notes in a pattern, i set them this way : //unsigned char pattern[16];//16 notes pattern const char pattern[16]={//16 notes pattern (values are midi notes number) {48},//note 1 {60},//note 2 {48},// {60},// {48},// {60},// {72},// {60},// {48},// {50},// {62},// {50},// {62},// {70},// {80},// {95},//note 16 }; /* Notes to midi table ------------------- Octave|| Note Numbers (midi) # || || C | C# | D | D# | E | F | F# | G | G# | A | A# | B ----------------------------------------------------------------------------- 0 || 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 1 || 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 2 || 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 3 || 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 4 || 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 5 || 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 6 || 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 7 || 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 8 || 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 9 || 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 10 || 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 |*/ Before the MCLOCK_Tick(void) declaration, we have to set the STEPSEQ() func : void STEPSEQ(void){ if( _tik == 24 )_tik=0; // PATTERN PLAY // if(_tik==0 || _tik==6 || _tik==12 || _tik==18){ // Times are divised by for this way (there 24 _tik in a time) if(step==16){ step=0;//16 step reset } // NOTE OFF (previously played note) MIOS_MIDI_TxBufferPut(144 + 0);//Note On, channel 0 (+1) MIOS_MIDI_TxBufferPut(lastep);//last played note MIOS_MIDI_TxBufferPut(0x00);//velocity 0 (=> equ Note off) // PLAY NOTE MIOS_MIDI_TxBufferPut(144 + 0);//Note On, channel 0 (+1) MIOS_MIDI_TxBufferPut(pattern[step]);//play note MIOS_MIDI_TxBufferPut(0x7f);//velocity 127 lastep=pattern[step];//mem last played note, to turn it off next time step++;//16 step counter } _tik++; return; } This should work. Now you can add velocity, more steps, multiple channels, CC's etc, i hope it can help some peoples who dont know how to start ;) get a ready made mclock.c file here : http://jambonbill.free.fr/DIY/miniseq/mclock.c I'm not a C guru, please feel free to comment and correct anything. Enjoy
  13. I'm going better, now that i can use the computer keyboard ;) I will start with a 16 notes buffer, it wont be difficult to change it's size later... For the sequencer tutorial, it's ready, i just have to send the sample code, i'll do it this evening i promise. I dont know the Kawai K5000, please could you describe how it works ? [i just found this http://gregwaltzer.com/egw/equipment/k5000arp.htm]
  14. Hello again. I'm looking for base concepts and ideas to write an arpeggiator. I did not start writing anything, but looking for knowledges around this. My first idea isto have a 16bytes buffer, (maybe 8 is enough as we only have 10 fingers) to count (i) the notes on, and fill this buffer with notes browse the buffer playing the notes to i; refresh i and the buffer on notes off. then, try different 'browse' algorythms.... Does anyone want to help me ? :)
  15. Hello, I've been very interested in sync24 feature in the clockbox program. I'm a chiptuner, and play a lot with gameboys and the LSDJ program. http://www.littlesounddj.com/lsd/ LSDJ provide a sync feature, similar to sync24, with the difference that the gameboy do not wait for pulses, but bytes (so 24 bytes per quarter notes) In clockBox, you just have to change the SR_Service_Prepare() func so it send 8 pulses (or 11111111 ) void SR_Service_Prepare(void) __wparam { // this function is called each millisecond // we are using it to output the MIDI clock at Pin D.4 for 1 mS if( mclock_pin_state.CLK_REQ ) { mclock_pin_state.CLK_REQ = 0; //Send 8 pulse, so LSDJ can read a byte ! PORTDbits.RD4 = 1; PORTDbits.RD4 = 0; PORTDbits.RD4 = 1; PORTDbits.RD4 = 0; PORTDbits.RD4 = 1; PORTDbits.RD4 = 0; PORTDbits.RD4 = 1; PORTDbits.RD4 = 0; PORTDbits.RD4 = 1; PORTDbits.RD4 = 0; PORTDbits.RD4 = 1; PORTDbits.RD4 = 0; PORTDbits.RD4 = 1; PORTDbits.RD4 = 0; PORTDbits.RD4 = 1; PORTDbits.RD4 = 0; } else { PORTDbits.RD4 = 0; } } As simple, and it works GREAT !!! 8) About the sync 24 : On the clockbox example, pulsewidth is 1ms long, I've read somewhere that the pulse length sould be at least 2ms, so any device could read it (some beatbox are expecting this, so maybe you have to change the original code a bit to fit your hardware)
  16. Hello, I'm also interested by getting 2 chips, I also live in france, and have a paypal account ! Greetz bill
  17. Hello, sound nice, please could you give us more details about that point ? How did you connect the keyb.pcb to mbhp, and what does it do ? Then are the joysticks playstations ones ? I tried to get some (from psone), but they have a spring that center them to the origin, and they look impossible to change :/ Greetz !!
  18. Nous allons sans doute devoir attendre une nouvelle version de IcProg :'(
  19. Bonjour !! Est ce qu'une ame charitable, sur paris, ou ailleurs, pourrait me bruler un bootloader v1.2 sur un (ou deu ;) ) PIC18F4620 ? Je n'ai pas le logiciel necessaire pour ce pic, voila voila Merci bill
  20. Hello, is there an easy way to know how much ram memory a C program use, or memory is left in the pic, while runing ? I have memory limits problem, and i'm fighting with the bytes ;) Thanks
  21. Hello, and sorry for the long delay, i had a car crash and my right arm is broken, now i can slowly type on my keyboard again. I will send an sample code in the afternoon !
  22. Hello, does anyone find out how to program a pic18f4620 with a JDM programmer ? My burning program (Ic prog 1.05d) do not support this pic version :/ Is there a 'compatible' pic to burn ? I have no // port on my pc, so i must use serial port and JDM, but maybe there are better softwares than Ic prog ??? Thanks !
  23. oui ça va marcher, avec le comportement du bouton qui reste enfonçé. tout dépend de l'interpretation du bouton par l'appli que tu va faire tourner. dailleurs, quel appli compte tu utiliser ? si tu par de zero et que tu ecris ton propre programme, aucun probleme : ce sera a toi de gerer ça. (MIOS te renseigne de l'état, et du changement de status)
  24. Ok, i'm on trys... I wonder : do the bankstick have to be initialised on startup to be used ? Do the variable MIOS_BOX_STAT.BS_AVAILABLE autmaticaly set to 1 when bankstick is connected ?? Soon, i will reply to questions, instead of asking ;) thanks
×
×
  • Create New...