
audiocommander
Frequent Writer-
Posts
1,358 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Gallery
Everything posted by audiocommander
-
Hi Chris, this is a MACRO-problem indeed solveable with the mentioned MIOS-fix. http://www.midibox.org/dokuwiki/doku.php?id=compiling_the_midibox_source_on_linux because the first error message is: sorry, wasn't aware of that :-[ I'm not sure if macros.h is interchangeable with macros.sed... I'm totally overasked when it comes to ASM... but I'm not sure if it works even if you fix the macros. You should definitely check the generated .hex against the original one, if you succeed in fixing the Macro's. Anyway, it's worth to give it a try :) btw. it's totally normal that the hex file is removed before compiling a new one. the other files you noticed are temporary generated output files. best regards, Michael
-
To be honest, I don't know what that means ;) ...because when I compile my C-based programs with SDCC this happens: -> C -> SDCC -> ASM -> GPASM -> HEX -> SYX everything works fine. But when I try this: -> ASM -> GPASM -> HEX the resulting hex file is wrong. I haven't had time to interspect this further, but AFAIR there were other reports where ASM-sources weren't compiled correctly. I can only assume that I simply forgot to send some parameters to GPASM or something has to be tweaked somewhere... you're welcome to test it! I recommend, that you load an ASM-based source (like the seq-app) and backup the pregenerated included hex file. Then try to compile the project unchanged. When you compare your fresh compiled .hex file against the backuped original .hex-file, there should be no differences. If there's a difference you might take a look at a C-based MIOS-App Makefile (eg. the 128 I/O test application) how GPASM is called when the process is started automatically. I hope this points you towards the right direction. If you have success, I'd be happy for a report :) Best regards, Michael sorry, admin ;D (maybe someone could split up this topic to a new one "Compile on OSX please!" )?
-
Ableton MidiFeedback / Midi Remote Scripts
audiocommander replied to DavidBanner's topic in MIDIbox HUIs
Hi David, I think, you're searching for this one here: http://www.midibox.org/forum/index.php?topic=6532.15 ;) Cheers, Michael -
gratulation! sieht cool aus und scheint ja propper zu funktionieren :D Beste Grüße, Michael
-
Hi chriss, you're in the wrong direction, because the link you found refers to MIOS, the OS itself and not to MIOS-applications like the SEQ! But you are also in the right direction, because you just need GPASM indeed, but currently there seems to be an unsolved issue: http://www.midibox.org/forum/index.php?topic=2870.msg54888#msg54888 Anyway, maybe you're interesed in these links for OSX (that's a linux topic btw ;) ) though they are targeted on C: http://www.midibox.org/dokuwiki/doku.php?id=application_development http://www.midibox.org/dokuwiki/doku.php?id=installing_gputils_and_sdcc_on_osx http://www.midibox.org/dokuwiki/doku.php?id=how_to_use_xcode2_as_ide_on_a_mac Best regards, Michael
-
oh, sorry, then I got it wrong ::) Before adding ACSim, I would try to get the C:B project right. I'd copy and paste the sources from the wiki. You also get the latest versions this way... Sorry having confused you - After being the reason for stryd's brain-explosion last week, I should spend a bit more attention to my words :P ;D
-
Hi David, have you followed the notes on the ACSim page? You have to configure some ACSim files if you're going to use them: You have to #include your c-files in ACSim_console as you would add them to the MAKEFILE.SPEC! But the ACSim files are all well commented and it's easy to see where you have to customize things. And you have to change some #includes in all your project source-files (like in main.c), that means: if _DEBUG_C is not defined (target -> *.syx) then include MIOS header, if _DEBUG_C is defined (target -> ACSim) then the ACSim classes will get included. That also means, that the codespace is strictly separated, because we don't want to have anything from the ACSim stuff stealing valueable space on our PIC! There are some more minor adaptions required, but they're all described in the ACSim Setup Guide. Stryd's comment is also quite useful: your Debug-Target should contain a list of c-files that will be compiled. As you're including the .c files in the ACSim and not only headers, you must not put any file in the target besides the Simulator classes. Else there are doubled vars, symbols and functions. As this sounds all a lot more complicated than it is in fact, here is a short summary: - in main.h: declare DISPLAY_INIT() as extern so it can be called from the simulator - in main.c and all other custom .c-files: add #ifndef _DEBUG_C (see above) to exclude "cmios.h" and "pic18f452.h" - in ACSim_console.h: customize by your needs (LCD-Size, num of AINs etc...) - in ACSim_console.c: #include additional .c-files - in your C:B target: make sure only the ACSim classes (ACSim_console.c, ACSim_mios.c, ACSim_toolbox.c) get compiled! Then it should run fine and you can easily switch between both targets using the same code. Best regards, Michael
-
Speakjet - A PIC ready sound chip?
audiocommander replied to herr_prof's topic in MIDIbox User Projects
:D -
4x4 = 16 Buttons ;)
-
??? meine antwort oder was ist stramm?
-
:-\ it has all been written down before. You should really read some basics. If your questions become more specific; then the answers will be more specific, too: http://www.midibox.org/dokuwiki/doku.php#general http://www.midibox.org/dokuwiki/doku.php#basics http://www.midibox.org/dokuwiki/doku.php?id=introduction_to_ucapps.de The main question is, if you want to hack some existing application like mb64 or if you just need one pitchBend in your custom box, that means if you want to hack (or better: midify) your joystick. In this case you should check out the AppDev C-Code pages, too: http://www.midibox.org/dokuwiki/doku.php?id=application_development regards, Michael
-
this sounds like most of the features could be achieved with a commercial USB Midi Device, a Midibox 64 and a Midibox Seq in one case ;) best regards, Michael
-
Hi cd_cd, I don't have no seq (but I will definitely build v3 someday!!), but the seq2 page sais clearly: As there is nowadays a bankstick-pcb available with up to 8 24C256, I assume TK will support this module with the seq v3 Best regards, Michael
-
das thema hatten wir hier schon öfters (sucht mal nach monome) http://www.midibox.org/forum/index.php?topic=6559.15 (see page 2) http://www.midibox.org/forum/index.php?topic=7116.0
-
...or this one: http://www.midibox.org/dokuwiki/doku.php?id=questions_and_answers#what_s_the_difference_between_pots_sliders_motorfaders_and_encoders ;) hmm... lecker... marmorkuchen...
-
Hi everyone, sorry to re-activate this topic, but I've found an error, that should be corrected: the minor scale is wrong: As the natural minor is Aeolian, it should be: The minor scale on the pianoworld.com page seems to be wrong :-\ Anyway, while I'm currently working on my harmonizer, here's an C-equivalent of this table (not exactly, only scales I personally like to use); it's not yet tested (may be errors, too) and the distribution of the notes is not musically straight (like suggested from widdly) but more equally spreaded, because I want to use it with (guess what? ;D ) sensors... const unsigned char scaleNames[SCALE_MAX][4] = { { " - " }, { "MAJ" }, // Major { "min" }, // Natural Minor { "hrm" }, // Harmonic Minor { "blu" }, // Blues Minor { "BLU" }, // Blues Major { "DOR" }, // Dorian { "JAP" }, // Japanese { "jap" }, // Japanese Diminshed { "KUM" }, // Kumoi { "LOC" }, // Locrian { "LYD" }, // Lydian { "MSH" }, // Mi-Sheberach { "MIX" }, // Mixolydian { "PLG" }, // Pelog { "PNT" }, // Pentatonic Neutral { "PBL" }, // Pentatonic Blues { "PMA" }, // Pentatonic Major { "Pmi" }, // Pentatonic Minor { "PHR" }, // Phrygian { "SPA" } // Spanish }; const unsigned char scale_set[SCALE_MAX][12] = { // C C# D D# E F F# G G# A A# B { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }, // not harmonized { 0, 0, 2, 4, 4, 5, 5, 7, 9, 9, 11, 11 }, // Major { 0, 0, 2, 3, 3, 5, 5, 7, 8, 8, 10, 10 }, // Natural Minor = Aeolian { 0, 0, 2, 3, 3, 5, 5, 7, 8, 8, 11, 11 }, // Harmonic Minor { 0, 0, 3, 3, 5, 5, 6, 7, 7, 10, 10, 10 }, // Blues Minor { 0, 0, 3, 3, 4, 4, 7, 7, 9, 9, 10, 10 }, // Blues Major { 0, 2, 2, 3, 3, 5, 5, 7, 7, 9, 10, 10 }, // Dorian { 0, 0, 2, 2, 5, 5, 5, 7, 7, 7, 10, 10 }, // Japanese { 0, 1, 1, 1, 5, 5, 5, 7, 7, 7, 10, 10 }, // Japanese Diminished { 0, 2, 2, 3, 3, 3, 7, 7, 7, 9, 9, 9 }, // Kumoi { 0, 0, 2, 2, 4, 4, 6, 7, 7, 9, 9, 11 }, // Lydian { 0, 1, 1, 3, 3, 5, 6, 6, 8, 8, 10, 10 }, // Locrian { 0, 0, 2, 3, 3, 6, 6, 7, 7, 9, 10, 10 }, // Mi-Sheberach (Jewish) { 0, 0, 2, 2, 4, 5, 5, 7, 7, 9, 10, 10 }, // Mixolydian { 0, 1, 1, 3, 3, 3, 7, 7, 8, 8, 8, 8 }, // Pelog { 0, 0, 2, 2, 2, 5, 5, 7, 7, 7, 10, 10 }, // Pentatonic Neutral { 0, 0, 3, 3, 5, 5, 6, 7, 7, 7, 10, 10 }, // Pentatonic Blues { 0, 0, 2, 2, 4, 4, 7, 7, 7, 9, 9, 9 }, // Pentatonic Major { 0, 0, 3, 3, 5, 5, 5, 7, 7, 7, 10, 10 }, // Pentatonic Minor { 0, 1, 1, 3, 3, 5, 5, 7, 8, 8, 10, 10 }, // Phrygian { 0, 1, 1, 4, 4, 5, 5, 7, 8, 8, 10, 10 } // Spanish // C Db D Eb E F Gb G Ab A Bb B }; Cheers, Michael
-
Oh, thank god! I always thought I'm the only one doing it this way ;D I think most MIOS functions are already implemented, but it might be there are some missing... just check out the Wiki if there's a newer version available (I'm constantly adding a few lines here and there) or contact me if you got problems with it or need help by adding something. I really like to see this app becoming more and more complete... it helped me in so many cases; ...even if it can't cover all SDCC-bugs or strange behaviors ;) good coding! Michael
-
Hi David, thanks for the feedback! Nice to hear, someone uses it :) There are two possible uses. 1. normal mode: if you see the console output, you can type in values to trigger various functions of the skeleton, eg. if you type: [tt]m176,12,100[/tt] {-> return key} this function is called from the main.c with the appropriate values: [tt]MPROC_NotifyReceivedEvnt(evnt0 176, evnt1 12, evnt2 100);[/tt] if you would type: [tt]a0,100[/tt] this will be called in main.c [tt]AIN_NotifyChanged(pin 0, value 100);[/tt] You will see any LCD messages printed on the console and also all MIDI messages will be printed, so you can easily see if your application works like you expect. The rest of the inputs possibilites (like m144,10,0 or a1,0 or d5,1 for switching digital input #1 to ON ...) is printed out as start-message. You can easily add your own functions if you look at "ACSim_console.c", line 60 ff 2. debug mode: I'm not exactly sure how it works with Code::Blocks, but in XCode you can set breakpoints anywhere in the code. Now when you don't "RUN" but "DEBUG" the application, the application flow is stopped once a breakpoint is reached. You can then interspect all local and global variables in a graphical debugger window and watch the changing values by stepping each expression via different buttons (next expression, continue, leave function... etc) Maybe Stryd_ can add some words to the debug use of Code::Blocks. Hope this helps! ;) Cheers Michael
-
free programming eBooks http://www.programmingebooks.tk/ very good complete PIC book, ASM focus: http://www.mikroe.com/en/books/picbook/0_Uvod.htm also read the PIC's datasheet! and of course: http://www.ucapps.de/mios_download.html http://www.ucapps.de/mios_c.html (bottom of page) http://www.ucapps.de/cmios_fun.html http://www.midibox.org/dokuwiki/doku.php?id=application_development and (most important of all!): - think about an easy to reach first project (eg instead of complicated DSP stuff, program your own midi-Filter box) and just do it. Don't think about the top of the mountain, just start climbing it (sais Nietzsche, not me ;D ) Cheers, Michael
-
naja, kurz nicht unbedingt. - am einfachsten setzt du eine Blink-LED ein, die kann man kaufen und die blinken von Haus aus. - oder du musst einen Timer programmieren, eine Status-Variable (ON/OFF/BLINK) und einen Counter, der die Zeit hochzählt, die zwischen den Blinkintervallen vergeht... Ehrlich gesagt für eine Spielerei ganz schön viele Zyklen und RAM die da belegt werden :-\ Es wäre einfacher, so etwas mit Multi-State LEDs zu realisieren, also z.B. eine grüne und eine rote LED im selben Gehäuse oder eben Blink-LEDs, da muss man dann nur entsprechende Pins umschalten. Wenn Du ohnehin einen Timer hast, kann man das noch rein-implementieren aber aus dem Nichts heraus ist das für den Effekt ein rel. fortgeschrittenes Unterfangen... und ich kann dir heute leider nicht mehr helfen, weil ich unterwegs bin ;) Grüße, Michael
-
Hi Michaël, Here is a short, but excellent description: http://www.borg.com/~jglatt/tech/midispec.htm'>http://www.borg.com/~jglatt/tech/midispec.htm (Select System Exclusive in the left frame) There are also some other handy explanations: http://www.borg.com/~jglatt/ Best regards, Michael
-
Speakjet - A PIC ready sound chip?
audiocommander replied to herr_prof's topic in MIDIbox User Projects
finally! it's done :D ...at least I think it's a nice beta-version... http://www.midibox.org/dokuwiki/doku.php?id=midibox_speakjet check out the new audio-example (no artistic musical stuff, just demonstrating the rough possibilities; 'cause my sensor board is not yet finished): http://www.audiocommander.de/downloads/midibox/SpeakJet_kII_03.mp3 comments welcome! Cheers, Michael ahh, nearly forgot this: I also implemented a very nice small harmonizer module ;D to be continued... 8) -
Spiegel Online just reported that the keyboard announced using these types of buttons is priced $ 1200,- :o http://www.spiegel.de/netzwelt/web/0,1518,451643,00.html at least, it's interesting that it should work also on a mac, as one can see in the gallery on this article: http://www.spiegel.de/netzwelt/tech/0,1518,369949,00.html The announced price once has been between $ 200,- and $ 300,- ;D Cheers! Michael