Jump to content

audiocommander

Frequent Writer
  • Posts

    1,358
  • Joined

  • Last visited

Everything posted by audiocommander

  1. have you seen the snippets at the bottom of the ucapps/mios_c page? Best, Michael
  2. http://ucapps.de/mios_c.html http://www.midibox.org/dokuwiki/application_development Download mios_base_package: http://ucapps.de/mios_download.html
  3. This topic has been moved to Design Concepts. [iurl]http://www.midibox.org/forum/index.php?topic=12301.0[/iurl]
  4. Hi Calphool, and welcome to the forums! when I understand your questions correctly, you want to know - the protocol of the PG-800? -> just search for it. A quick type in google revealed lots of pages that should be able to answer this (eg http://www.synthesizer.at/synthesizer/jx8p/roland_jx8p.htm#24 ) Also: get yourself a MIDI logger to log what MIDI values you receive: eg. MIDI-Ox (PC) or MIDIMonitor or MIDIPipe (Mac) - if a BS is the best way to store patches? yes. it is. as I couldn't find any obvious relation to C, I allowed myself to move your post to the concepts threads. Best, Michael
  5. Hi, There are several options to optimize your application: - think about more effective code & functionality - don't use divisions & multiplications - don't use the sdcc library - optimize your code in ASM - write the whole application in ASM of course there are also a million programming books out there discussing optimization strategies (and I'm sure there will be reasonable disapprove of my suggestions above ;-) ) Of course there's always the possibility to write your own program in ASM without MIOS at all. I guess this would be easier than ripping apart MIOS (though you can surely try, the sources are available - though I really don't see the advantage in gaining 1 µS by loosing or breaking up an extremely reliable and tested system layer). The new programming environment already enables the in-/exclusion of rarely used libs like AOUT. so regarding the fact that you are referring to this: if you are experiencing delays or recognizable timing issues, it's definitely more an issue with your custom software (or hardware - or a general construction flaw). My ACSensorizer is filled with code up to the last byte, does timing and beat calculations, reads permanently it's 8 AIN-ports and processes quite a few calculations (incl. divisions to scale and smooth values), all in C - and I never ever recognized anything giving me the impression it would not be realtime. regards, ac
  6. Hi, this should give an answer: so: the right approach would be to set a flag at the Timer() notification and then process it (if enabled) within Tick() Regards, Michael
  7. Hi chrisbob12, love to hear your kind words about my kinetica exhibit :D lucky you, there is a good documentation (sort of diary) I made during the construction: http://www.audiocommander.de/blog/?p=71 you will find detailed drawings and concepts of pretty much everything - including the positioning of the IR sensors... if something is left open, you're welcome to ask. dunno if you stumbled upon the speakjet wiki: http://www.midibox.org/dokuwiki/doku.php?id=midibox_speakjet the speakjet application software v0.2 is the one running on the gesture box, you just have to connect the sensors to the AIN pins of the core module (though IIRC I disabled this setting by default in the code, 'cause most users probably built it without attaching these sensors. However that can be easily recompiled with that particular compile setting on... can do this of course) http://www.midibox.org/dokuwiki/speakjet_application_software_v_0.2 I used to buy my first sharp sensors at Conrad, but nowadays I get them from farnell, which is also available in the UK: http://uk.farnell.com/ ...but I think it's required that you run a business or are a student :-/ cheers! Michael
  8. hehe ;D yes, I was searching too for a veeeery long time and gave up twice, but after I discovered this marvellous Quicksilver websearch function (Quicksilver is a keyboard-only quick-launcher for Mac OS), I adamantly wanted to have it for midibox.org as well... then I looked again at the advanced search URL and just guessed and tried it with action=search2... and voilà : there it was - that wonderful shiny brand-new URL ready to be served for all our beloved first-post-noobsis ;D (you're all welcome btw, we all had our first post some day) Cheers, Michael btw: Mac-Users who want this for qs, the plugin is called "web search module" and the pages can be customized at Catalog -> Custom -> Web Search List -> "i" -> URL: http://www.midibox.org/forum/index.php?action=search2;advanced;search=***
  9. I'm sorry for assuming you're a noob, but have you tried setting the cursor first? => MIOS_LCD_CursorSet(0x00); MIOS_LCD_PrintCString("MIOS"); there's of course the tiny possibility that there's something wrong in the new wrapper, but before I go and check it by myself, it would be cool to roule out all other possibilities in advance... best, Michael Edit: and btw: what version of the wrapper (skeleton) are you using?
  10. Hi and welcome to the forums. As you provide no code, it's hard to say what you're doing wrong, but I hope some of the past topics will help, eg: http://www.midibox.org/forum/index.php/topic,10854.0.html and in general: http://www.midibox.org/forum/index.php?action=search2;advanced;search=PrintCString Best, Michael
  11. This topic has been moved to Design Concepts. [iurl]http://www.midibox.org/forum/index.php?topic=12165.0[/iurl]
  12. cool... these are two very informative options. for my next MB project I will just wait one year until it's implemented in MIOS ;D hehe.. I'll keep you updated as well - cheers! Michael
  13. This topic has been moved to Testing/Troubleshooting. [iurl]http://www.midibox.org/forum/index.php?topic=12158.0[/iurl]
  14. Hi ALEXander, unfortunately no :-( I would love to, but there are too many things I have to do the next semester. I hope that I can resume workin on this when I will finally update the ACSensorizer to the new project structure (which will be either in winter-holidays or in march 09 latest (oh, how I'm looking forward to march when my jobs will be finished :-) but I would be very interested if you could keep us updated ! Cheers, Michael
  15. if the values don't change anyway, why don't you simply define them? A compiler-replaced plain number in code is a constant value as well. #define CLEAR_REQU_PERIOD 30000000 and moreover: IMHO in SDCC an int is 16 bit (long is 32 bit), which means that the max size for an int can be 65535. So you are not only trying to put 30000000 in an unsigned int which produces an overflow but also multiplicating 10000000, which I wouldn't regard as very efficient. Cheers, Michael
  16. hm, I got SDCC 2.8.0 and gpasm-0.13.3 beta / (Mac); I think gpasm might be a bit older... what about you, Luigi?
  17. as I understood, the aim of the "mod_skeleton" is to develop modules that can be used within programs. To develop a program you should use "sdcc_skeleton" where you are free to define every function/variable you like - whereas when you work with mod_skeleton, you should edit the settings to your requirements. See README.txt in "modules/mod_skel". best, Michael $Id: README.txt 69 2008-02-01 00:20:18Z tk $ Module Skeleton Your description goes here. As for this skeleton: Search for "mod_skel" to find stuff you should change when making your module Files ~~~~~ mod_skel.inc: can be included into "asm-only" programs (non-relocatable code) mod_skel.asm: relocatable wrapper for C based applications mod_skel.h: C headers mod_skel.mk: include this into Makefile to integrate the driver Integration Hints ~~~~~~~~~~~~~~~~~ C based Applications ~~~~~~~~~~~~~~~~~~~~ 1) Makefile: add "mod_skel.o" to OBJS variable --- # list of objects that should be created and linked OBJS = mios_wrapper.o mod_skel.o app_lcd.o main.o --- 2) Makefile: include mod_skel.mk, and enhance mod_skel_DEFINE if required: --- # include mod_skel driver ; in our example it allows the 'incf' if this is 1, or if you skip this line mod_skel_DEFINE += -Dmod_skel_def=0 include $(MIOS_PATH)/modules/mod_skel/mod_skel.mk --- 3) main.c: #include <mod_skel.h> 4) main.c: add following code to Tick() hook --- // do the mod_skel thing mod_skel_function(); --- 5) main.c: add code to main.c for functions called by your module: --- ///////////////////////////////////////////////////////////////////////////// // This function is called by mod_skel ///////////////////////////////////////////////////////////////////////////// void mod_skel_extfunc(void) __wparam { // Just a dummy empty function --mod_skel_var; } --- 6) main.c: etc etc etc "Assembler-Only" Applications ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1a) add application specific #defines to the assembly code (e.g. in your main.asm file), e.g.: --- #define mod_skel_def=1 --- 1b) main.asm (or main.inc) include the module source: --- #include <mod_skel.inc> --- 2) Makefile: include mod_skel.mk, and enhance mod_skel_DEFINE if required: --- # include mod_skel driver ; in our example if this is 1, or by default if you skip this line, it allows the 'incf' mod_skel_DEFINE += -Dmod_skel_def=0 include $(MIOS_PATH)/modules/mod_skel/mod_skel.mk --- 3) app_defines.inc: add the variables you can find declared in mod_skel.asm Possible Range: 0x10..0x7f Make sure the EQU address is unique in your app! --- ;; for mod_skel module _mod_skel_var EQU 0x067 mod_skel_int EQU 0x068; ..0x69 --- 4) main.asm (or main.inc): add the following code to the USER_Tick function: --- ;; -------------------------------------------------------------------------- ;; This function is called by MIOS in the mainloop when nothing else is to do ;; -------------------------------------------------------------------------- USER_Tick call mod_skel_function return --- 5) main.asm (or main.inc): add functions which are called from your module: --- ;; -------------------------------------------------------------------------- ;; This function is called by mod_skel module ;; -------------------------------------------------------------------------- mod_skel_extfunc _mod_skel_extfunc decf _mod_skel_var, F, BANKED return --- 6) main.asm (or main.inc): etc etc etc
  18. indeed, it's working with 18F452 but not with 18F4685. I can reproduce this ;) this should be solveable... best, Michael
  19. oh yes... and I'm very bad with names: how should I remember all these PIC variants... I'm so glad when I succeed in remembering my 4-digit creditcard pin ::) Honestly, the only PIC I remember without having to look it up is the PIC18F452 (though it could also be 18F542 now that I think about it)... even when it comes to the PIC16F I don't know if its 88 or 84 or 66 or 68
  20. also, ich heiße zwar nicht Thorsten ;D , aber ich kann ja trotzdem mal mit ein paar helfenden Links um mich werfen (und bei der Gelegenheit das ganze hier in das deutsch-sprachige Board verschieben) PIC Burner inkl. Link zum PIC16F88: http://www.ucapps.de/mbhp_burner.html PIC16F88-Adapter: http://www.ucapps.de/mbhp/mbhp_burner_16f88_adapter.pdf Ob der F88 zum F84 kompatibel ist, weiß ich allerdings nicht. Hier ist noch ein Foto zum PIC16F88-Adapter (Mitte der Seite) http://www.ucapps.de/mbhp_iic_midi.html Grüße, Michael
  21. This topic has been moved to Deutsch. [iurl]http://www.midibox.org/forum/index.php?topic=12115.0[/iurl]
  22. I think you may get one, two or three pins, but have to implement some low-level techniques: please search this forum for J5 and DIN, this topic has been covered in one or two threads. When you need more DINs, you also need a DIN-module. In this case see: http://ucapps.de/mios_c_send_din.html dunno about the PIC, but you should get a PIC that's already supported by MBHP/MIOS regards, Michael
  23. I just switched to gmail and now it's working again. That's weird, because it worked all the way until the last server move. Anyway... Cheers, M.
  24. hi James, sorry, I got some problems with missing notifications lately :-( all my current projects so far are designed to work with a PIC 18F452 the handTracker has an experimental mode that combines speech and synth, but it is a bit buggy. However, if you intend to make music with your sensors, there's also the ACSensorizer you could connect the sensors to. This project is my main project and you can configure each sensor up to the limit... and of course feed back the MIDI signals into the SpeakJet Core :-) sorry, I don't know acroname? Is it a supplier or sensor manufacturer? Just worked with SHARP sensors before... Hope this helps, best, Michael
  25. Hi, sorry, there have been many many changes lately and a completely new skeleton has been introduced with the ability to include libs - but I have had no time yet to catch up, so I cannot say much to this. Though there are some newer topics here regarding that, maybe you should look around a bit. The basics of how to get SDCC and GPUtils working with Xcode should be still valid though. Best, Michael
×
×
  • Create New...