Jump to content

Rio

Members
  • Posts

    727
  • Joined

  • Last visited

  • Days Won

    9

Everything posted by Rio

  1. also dann ist dieses unsigned nicht nur ein bool-wert, sondern ein bitfeld, wenn man das durch ein ":" und einer Zahl dahinter deklariert? geht sowas in C++ auch? hab ich noch nie gesehn... geht sowas auch ohne eine Struktur oder Union? ich glaub da kam bei mir eine fehlermeldung: unsigned test:2;
  2. Ist es möglich eine Sinus funktion zu verwenden? Wenn ich die math.h verwenden will kommt immer das: sdcc: Calling preprocessor... sdcc: Generating code... ========================================================================== Linking project error: missing definition for symbol "_sinf", required by "_output\main.o" ERROR! Process terminated with status 1 (0 minutes, 3 seconds) 0 errors, 0 warnings anscheinend wird das nicht in der LIB von TK unterstützt. gibt es eine Lösung?
  3. Hi, für meine Anwendung benötige ich globale Variablen, die mit einem bestimmten Wert initialisiert werden, und genau da liegt mein Problem: wenn ich z.B. das global definiere: unsigned char test = 2; dann wird in meinem Programm die Variable "test" trotzdem mit 0 initialisiert. Versteh ich nicht. Anhand meiner Tests wird anscheinend alles auf 0 initialisiert und ich muss per hand in der Init() Fkt. die daten nochmal initialisieren (das frisst natürlich speicher)...oder mach ich was falsch? Übrigends wird mein Programm auch größer, sobald ich eine Initialiserung in der Deklaration vornehme...obwohl ja hier die Werte auf 0 bleiben.. Kann mir das jemand erklären und was wäre nun die günstigste Variante? brauch man eigentlich dann werte, die mit 0 initialisiert werden sollen, nicht mehr explizit zu initialisieren, weil das automatisch geschieht? PS: Ist eine Initialisierung von Variablen in der Deklaration nur in C++ und nicht in C möglich?
  4. besides: is the xxx_cc_implementation.txt a describtion for incoming or outgoing Commands of a application?
  5. first, thxs for all fast replies... :) @moxi: yes same thought... maybe there will be used channels and last note numbers stored... @audiocommander: do you mean this file?: mbseqv3_cc_implementation.txt I don't know, but this tells me nothing about how seq stops all notes on channels to other devices.. and watching source, sadly i can't interpret ASM-Code .. ;) Greets Rio.
  6. it could be interessting how tk handle this in his SEQ app... if i press stop all channels are turned off (seems without much effort) .. the MBSID device too.
  7. mhh... :-\ tss.. if that is on device to device different ... than i've to think about another technic in my app. ;)
  8. it didn't work with your code too...! i've tested it yesterday.. :-\ the osc's of sids are playing further the last tones... i have tested also with a midi channel 1 command before command 120 or 123 MIOS_MIDI_TxBufferPut(144); .. .. but here the results are the same, nothing changed for instr. in channel 1.
  9. I've tested the AllNotesOff and AllSoundsOff Midi Messages which i founded in MIDI documention on several sides: MIOS_MIDI_TxBufferPut(123); MIOS_MIDI_TxBufferPut(0); or MIOS_MIDI_TxBufferPut(120); MIOS_MIDI_TxBufferPut(0); but nothing happens sadly. Any idea? e.g. in my tests, Midibox SID doesn't release the played notes. It would be interessting, how TK handle a NoteOff for all played notes in SEQ-Application by pressing the STOP Button. Greets Rio.
  10. oki ;)
  11. no no, i'm sure that occurs only and ever on C-6 note, tested it with different input devices...
  12. Hi Tk, during i'm testing, it seems i found one bug: In record mode, if i send a C-6 Midinote, it will only register that for a minimal time. I don't know, if thats really a bug... (i only notice that on C-6) Best regards, Rio.
  13. if a const multi array are declare longer than the defined content, then at compiling.. Pc will fill memory endless til crash... :-\ const unsigned char test[2][20] = { "nur 18 lange Array", "nur 18 lange Array" }
  14. @audiocommander: thx again, yes i know bitshifting for multi/div from 6501 ASM :) @stryd_one: i don't find any source from SDCC, only headers for that. There are many *.libs for different processor types in include directory of SDCC, but i don't know what i have to do.. Greets, Rio.
  15. thx, but i've written already an function for that by myself :) . I want test how much memory will be needed to include mioslibsdcc.lib... and if it is possible to use memcpy etc. (i want check which performance is reachable with this lib)
  16. What i have to do, if i want update the overnight build? What are the changes? All i've got in svn build works fine.
  17. thxs for that fast reply, i will try it, if i need it... ;D
  18. For example, maybe i want use memcpy or strlen ... in string.h i founded string.h in SSDC directory. What i've to do to get run my application? If i add and include the header in my app in Code::Blocks , all i get is this compiler error: error: missing definition for symbol "_strlen", required by "_output\main.o" :-\
  19. 1. na also ich habs grad getestet mit const unsigned char x[41] (welche im main header deklariert wäre) funktioniert die PrintCString Fkt. Mit "nicht konstanten" char arrays (oder halt auch unsigned char arrays) (welche nur im C-file deklariert werden dürfen) kommt folgende fehlermeldung: -------------- Build: MBHP in MB-KB --------------- Compiling: main.c Makefile generated. Makefile.bat generated. Assembling MIOS SDCC wrapper ========================================================================== Compiling pic18f452.c Processor: 18F452 sdcc: Calling preprocessor... sdcc: Generating code... ========================================================================== Compiling sm_simple.asm ========================================================================== Compiling main.c Processor: 18F452 sdcc: Calling preprocessor... main.c:274: error 78: incompatible types sdcc: Generating code... from type 'char [41] ' ERROR! to type 'char code* ' main.c:313: error 103: code not generated for 'SM_NotifyToggle' due to previous errors Process terminated with status 1 (0 minutes, 3 seconds) 2 errors, 0 warnings als bei unsigned das selbe.....ich hab keine erklärung bisher dafür. und 2. hat sich geklärt...meine undurchsichtigkeit, hing mit anderem code zusammen ;D Grüße Rio.
  20. for 1: the compiler tells me that i'm using with MIOS_LCD_PrintCString(text); an invalid type, nothing more. i know these consideration of char arrays (working every day with that).. but didn't get working with that MIOS_LCD_PrintCString function :-\!! I found in declaration: void MIOS_LCD_PrintCString(code char* str); It seems that this code in front of char* is the reason for that ???? is code a own typedef or what; i've never seen such before. And does accept this "code char*" only const char arrays? For my Project i need a variable char array!! not const... ;) Are you sure?? and why? for 2. Does anyone knows a reason for that behavior with MIOS_LCD_CursorGet / MIOS_LCD_CursorSet in my code... i think the \0 will be stored in a higher position as it should be in LCD... mhh... thxs for 3. what i've to do to implement that by myself ???
  21. hi, i start programming on C, and have 3 little questions to it. 1. i've declare a : char text[41]; fill it up with chars and want to put out on LCD: MIOS_LCD_PrintCString(text); why isn't that able? something is written in compiler error about invalid types. i see that there is a "code" before char* str in PrintCString declaration. What is the meaning of that? special type? Can't i send a complete char array to LCD... only const strings or is there a other way? 2...so i've try to put out single chars and store in my char array: first i get in letters and store them in array... MIOS_LCD_CursorSet(MIOS_LCD_CursorGet()); text[MIOS_LCD_CursorGet()] = letter; // letter is a char text[MIOS_LCD_CursorGet()+1] = '\0'; MIOS_LCD_PrintChar(text[MIOS_LCD_CursorGet()]); MIOS_LCD_CursorSet(MIOS_LCD_CursorGet()+1); ..end here later, i want to output the whole char array on LCD: unsigned char i; MIOS_LCD_CursorSet(0x00); for(i=0; i<41; i++) { if (text[i] == '\0') break; MIOS_LCD_PrintChar(text[i]); } ..but if input a "HELLO" then i get back a "HELLO+filled Rectangle char". Don't understand... seems there is something wrong in my input routine (MIOS_LCD_CursorGet / MIOS_LCD_CursorSet) ? the LCD shows me not the 5 letters HELLO, but instead the first 6 array entrys (HELLO + a Rectangle) and then after Rectangle it breaks... Do someone knows a hint? 3. if i want use strlen() Funktion i got compiling error: .. // somewhere in code: strlen(test); .. Linking project error: missing definition for symbol "_strlen", required by "_output\main.o" ERROR! Process terminated with status 1 (0 minutes, 3 seconds) 0 errors, 0 warnings i've additional included in main.c: #include <string.h> I don't understand? Any helps?
  22. jauuu ;D hab mir jetzt erstmal Code::Blocks + AC Sim (wow is ja von dir) runtergezogen... dann kann ich ja loslegen ;)
  23. mhh.... irgendwie macht das teil probleme ??? Wenn ich das serielle Kabel (also im ausgeschalteten Zustand beider Geräte) mit dem Com-Port verbinde, dann beides einschalte, den PhraseAlator starte und verschiedene Aktionen ausführe, dann spinnt der SpeakJet rum, spielt effekte und phrasen gleichzeitig und das PhraseAlator-Programm hängt sich nach ner Weile auf... ich hab jetz mit 9600 baud und Com 1 getestet. PS: eventuell kann das auch an den Einstellungen die mein Grafiktablet Wacom benutzt hat liegen. Das hing vorher auch am Com1 Port. Als der Dienst fürs Tablet noch an war, hat der SpeakJet gleich irgendwelchen quatsch gemacht. Das PhraseAlator Prog. hat dann gar nicht auf den Port reagiert. Aber den Dienst für das graphical Tablet habe ich ja nun gestoppt. Jemand eine Idee? Im gegensatz zu der RS232 Schnittstelle funzt das MIDI-IN einwandfrei. ich kann wie gesagt erst immer abends testen.. so dass ich aus den worten vermute das der PhrasAlator auf 19200 gestellt werden muss, richtig?
  24. ..lag an den offenen INs. Nun funzt alles so wie es soll 8). Habs gestern getestet und wie du gesagt hast, musste der SpeakJet "resetet" werden - also mal stromlos gemacht werden (danke für die Info) .. Auf jedenfall klingt das schon mal ganz nett. Hab jetzt den SUB-D Anschluss gelötet. Kann ich eigentlich direkt ein serielles Verbindungskabel zum RS232 Com-Port des PCs anschließen, weil in deiner Doku stand ja das man das nicht direkt darf wegen der 12V vom PC?
  25. ich hab genau den MAX 232 EEPE. Ich kann erst heut abend testen.. meinste nicht, dass es an den offene Event INs liegen könnte?
×
×
  • Create New...