Jump to content

cloudstrife

Members
  • Posts

    6
  • Joined

  • Last visited

    Never

About cloudstrife

  • Birthday 01/01/1

Profile Information

  • Gender
    Not Telling

cloudstrife's Achievements

MIDIbox Newbie

MIDIbox Newbie (1/4)

0

Reputation

  1. Hi, the design and layout are simple to do, compared to software, and when you really want to make a 2 SID design, do it controlling each SID of its own with some adress-logic, this makes it easier expandable. I had similar plans. My idea was a full featured 8voice synth. One SID makes out one oscillator. Externally I planned to add some CV'ed vactrol filters (oldskool, but easier to handle than a few thousand opamps behind each of the 8 voices.) External VCA for each voice with S/H registers. Every module is connected to a bus system with analogue data (for the S/H) and digital... This makes it really large, but thats the way even Korg or Kawai built their synths in the 80s. [qoute] * Is 16K memory enough? * The feedback control R12 should probably be digitally controllable, but I don't have a digipot that is able to do this yet. I have some but they allow only 0-5V on the inputs, so I would have to change the DC offset to 2.5V. * Is 16Mhz enough to drive two SIDs (all control surface things are off-loaded to another device/microcontroller)
  2. Moin Thorsten, also das dauert jetzt n bisschen, in die Tiefe zu gehen, aber vorab als Info: Ich bekomme den Fehler nur über die Windows API "GetLastError()" heraus. Das wird leider nicht geloggt. Error 30 bedeutet soviel wie Gerät fehlerhaft oder so ähnlich (es gibt da auch ne Klartext-Funktion für...). Unter Windows98 äusserte es sich immer bei solchen Übertragungsfehlern, bei Win32 kam die Meldung trotz Fehlers nicht immer... warum weiss ich nicht. GetLastError ist der Status des letzten Windows-API Aufrufs. (Herkunft des Ganzen: http://www.hep.princeton.edu/~tziegler/electronics/microchip/_mpusbapi.cpp) Hmm, ich hab das in der Spec 1.1: http://www.usb.org/developers/docs/usbspec.zip auf Seite 203 nach Tabelle 9-10 so verstanden, dass das durch ein Bit gekennzeichnet wird, ob es IN oder OUT ist am Endpunkt. Dieses Bit wird beim Control-Transfer ignoriert (so auch an EP0, da gibts keinen Deskriptor für). Die Deskriptoren werden ja nur einmal beim Anmelden des Gerätes ausgelesen... Allerdings ist das der "Standard"-Deskriptor, whatever... darüber bin ich nicht hinausgekommen. Bei "bulk" dürfte das also eigentlich nicht funktionieren?!? Alles weitere hoffentlich später :) Viele nachtschlafene Grüsse, Claudio
  3. Moin Thorsten, *g*, jup, aber, "blocked" wunderte mich. 40ms sind natürlich eine recht lange Blockade im Verhältnis zum 1ms Framing. Ich habe mich mit der MIDI-USB Klasse noch nicht so wirklich auseinandergesetzt, daher hab ich die SysEx Geschichte noch nicht probiert. Im Laufe von 1-2 Monaten wird das aber auch noch akut werden für mich, je nachdem wie ich mit meinem Projekt vorankomme. Aber Fragen weiter: 1. Wie gross sind die Datenpakete, die du sendest, in Bytes (also die Endpunktpuffer)? 2. Wieviele Pakete gehen pro Frame in welchem Modus (iso, bulk ... ) rüber? 3. Wird dein Gerät als Teil der MIDI-Geräteklasse verwendet? Es klingt aber so, als ob das Problem tatsächlich auf der Controllerseite liegt. Hast du jemals unter Windows einen "Error 30" bekommen? Meines Wissens werden die Pipes unter Windows als Streams oder Filehandles gehandhabt. Bei mir brachten Versuche, 0 Bytes von der Hostapplikation aus der Pipe zu lesen (wenn eben keine Daten anlagen) einen Abriss der Verbindung oder erzeugten wahrscheinlich auf Kernelebene (da das System ausgelastet war) diese Timeouts. Auf dem Controller selbst hatte ich keine Probleme. Abgesehen von der Control-Pipe (EP0) darf pro Endpunkt nur entweder IN oder OUT Übertragung aktiv sein. IN/OUT an einem Endpunkt geht eigentlich nicht?! Wie sieht denn dein Device Deskriptor dafür aus? (oder wo bekomme ich denn die aktuelle Firmware, an der du arbeitest?) Die UOWN Flags garantieren offenbar nicht, dass der Puffer nach Wechsel des Zugriffsrechts auch übertragen worden ist, das musste ich feststellen. Wie ich eine erfolgreiche Übertragung von der SIE überprüfe, hab ich noch nicht herausgefunden. Was sich mir auch nicht erklärt ist, wie ich abfange, dass -während- des Pufferkopierens an den EP* eben die UOWN Bits nicht gesetzt werden. Microchip lässt sich da nur sehr dürftig drüber aus... Ist während des Timeouts denn generell gar keine USB Kommunikation mit dem Controller mehr möglich (hängt die SIE?)? Vielleicht kommen wir ja weiter :) Viele Grüsse, Claudio
  4. Hallo Thorsten, ich habe meine Examensarbeit mit dem PIC18F4550 und USB gemacht... Geht es Dir hierbei um Senden über USB oder um die serielle Schnittstelle? Falls USB: Mir sind eigenartige Effekte aufgefallen gerade in Hinsicht auf Daten Senden in Verbindung mit IRQ's. Waren IRQ's während der Übertragung erlaubt, fehlte hin und wieder etwas... (USB-Framework von Microchip und C18-Compiler). Ich habe das allerdings nicht als MIDI-Geräteklasse gemacht, sondern einfach nur für Datenblöcke... Frage 2: was sind "blocked pipes"? auf jeden Fall kennt Microchip schon eine Menge Silicon Bugs..., fast zuviele meines Erachtens *g* Viele Grüsse, Claudio
  5. Hi, Interesting cards with special features might be: - Soundblaster AWE32/SBpnp (EMU8000 Synthesizer with resonant 12dB filters and FX) - old Ensoniq Soundscape (not the vivo thing) is an syn-engine, too - Never had, but heard of some good things on ProAudioSpectrum 8/16 cards... - Turtle Beach Maui... with Kurzweil chipset - Roland SCC, RAP-10 and so on are GMIDI soundcards, some with filters and editable, others not - Soundblaster 1 or 1.5 for the warm sounding FM-Synth (very cool with old games! the chipset is even easier to handle than the newer one suggested for midibox fm (and it sounds better, i think, more analogue) or Adlib Gold card (but they lack support) - Yamaha DB-60SW or SW60 somehow, like the DB-50XG Board but as an ISA Soundcard (though the DB50XG is a cool thing too, especially the enhanced mode...) - GUS cards do emulate just RAP and SCC in a simple GMIDI way, not the cool thing at all, but rather nice for old DOS Games, if you dont own the rare Rolands. these are the most important isa's, i know. anyhow, take alook at this: http://www.oldskool.org/sound/pc greetinx, claudio
  6. moin moin, die Noise Problematik ist natürlich unschön, wenn man auf HIFI steht, aber der SID ist ja nun wahrlich nicht HIFI, was ja auch den Reiz ausmacht *g*, aber wenn ich mir das Board-Design mal genauer anschaue und prinzipiell mal mit nem Konzept analoger Synths vergleiche, würd ich sagen, man mache das mal nen bisschen anders. Bei nem Kawai SX210 beispielsweise besteht die Tonerzeugung aus einem Oszillator, ner Hüllkurve VCA, ner Hüllkurve VCF und LFO's. Soweit so gut. Der Kawai ist von nem 8051 gesteuert und hat eine Besonderheit: da sind keine VCA-Bausteine drin, der Oszillator ist ein einfacher Puls aus nem 8253... Worauf ich hinauswill: mit ein paar Widerständen und einem 4051 Buffer oder so lässt sich fix ein DA-Wandler bauen. Dann noch ein paar Pins vom PIC und wir können einen OPAMP als DCA oder Gate nutzen. Der SID spielt dann die ganze Zeit auf voller Lautstärke, weil der interne VCA nicht mehr genutzt wird. Wär das nicht ne Idee, oder hab ich was übersehn? Wenn Interesse, mach ich mal nen Schaltplan fertig... Viele Grüsse, Claudio.
×
×
  • Create New...