Jump to content

robinfawell

Programmer
  • Posts

    292
  • Joined

  • Last visited

Everything posted by robinfawell

  1. Hi Thorsten Thanks for the input, I was still revising the text! I have previously looked at the BS output using MIDIOX but it  looked wrong. For example all the sound module messages have the byte following F0 as 41 (the code for Roland) this was not the case.  I will reexamine the position again. Perhaps the problem is that using Midiox is the wrong way to go? I will test the sytem using a small sysex file and let you know what happens. Regards Robin
  2. Dear Thorsten I believe that I do understand the process of scrambling/descrambling and that the BS will contain the data as in the main.lst including the F0 and F7 bytes. Â I also understand that I can download the BS content and convert it back to the original binary form using perl. There will be no PC in the final design. Therefore, as I understand it, I will not be able to convert the data using PERL and syx2asm.pl. Â Perhaps I'm wrong. I need to be able to send selected multiple sysex strings, each framed by F0 and F7 which are triggered by the organ stop push buttons and the relevant BS files sent to the sound module by midi. I also need to send the system reset or panic ( 0xFF ) Â It is a design goal to avoid the use of a PC in the organ design. I am sorry to keep trying your patience. Regards Robin
  3. Hi Thorsten I have made a very bad assumption that MIOS would be able to send Sysex messages which included the Midi Start System Exclusive message F0 and the End System Exclusive message F7. Â Your explanation makes it clear to me that it cannot! I have a reference manual on Midi that states that there can be 16 Midi system messages from decimal 240 to 255 (F0 to FF) In my system the reset.syx file , the largest, contains several hundred such F0 xx yy zz etc F7 system exclusive messages. Perhaps the BS Eeproms could be addressed by MIOS and the stored values sent directly to the Sound Module in some way. I feel very depressed. Regards Robin
  4. Thanks Thorsten, I have been on holiday for the last week or so. Â The latest main.lst looks correct. I am still unsure whether the MIOS system will send the individual files stored in the BS to the Sound Module correctly. If I use the procedure outlined in http://www.midibox.org/cgi-bin/yabb/YaBB.cgi?board=mios;action=display;num=1078174868 Will I get the file transmitted as I originally recorded by Midiox ? I know that using the Sysex instructions via Midiox produces altered files and increases the file size.. Â In the tutorial you state that a 32k BS produces 39k file size. Please comment. Regards Robin
  5. I am off on holiday for a week. Â I will try to send you an email with my organ concept in block diagram form. Â Robin
  6. Dear John I have used 3 types of connector. For single row I have used the JYK type with crimp terminals see page 192 of Rapid Electronics catalog (UK). Â I have used straight and 90 deg Headers. In the catalog the Teminal housing is the JYK H2500-xx and the connectors are type P2500-xx and P2500R-xx; the terminals areT2500-02 I have also used the HE14 PCB connectors from AMP in both straight and right angle versions I have purchased a crimp tool that is OK for both types above. Â The cable have been made with ribbon cable stripped to the appropriate width. I have used the ribbon cable with IDC connectors where double row connectors are required. eg Display. You will need a different tool to do this. I hope this may help. Regards Robin
  7. Dear Thorsten I have sent you 2 emails. One has an attachment with the project diretory file. The 2nd contains an outline of the organ project. Regards Robin
  8. If you look at the section under Bankstick Programming in MIOS Programming you will see a dialogue between Thorston and me on storing sysex messages. Once this is sorted out I will then tackle the stops (push buttons) to enable the transmission of these sysex messages to the Roland Sound Module. The next stage will be to store several stop combinations in memory with together with preset fader balance settings. I have made most of the Modules and I believe that most of them are functional. Â I need to make a mock-up of the stops front panel next. I will then add the coupling of the keyboards and pedals. Also the addition of a 32 foot pedal stop. I know in principle what is needed however I will need some help from Thorsten (or others) on the remaining tasks. I am not attempting anthing that can be regarded as original, Â merely trying to remove the PC from the SCPOP design. Regards Robin
  9. Dear Thorsten I have removed the org statements from the .inc files and placed a .org statement in the main.asm file. I have removed the LIST statement re PIC 18F 452 and the END from all three .inc files. I showed 3 include statements (for reset, trems and tremf) in the main.asm and removed the bankstick content .inc line. I have produced a main.lst file which to me looks promising. The reset .inc was 16k+ bytes and the trems and tremf .inc file were both 2.5k+ bytes. The main.lst file lists the three files however the list still shows the three files all originating from address 400000 admittedly with ;; in front. The problem is that when I try to convert the main.hex fle to main.syx I get no result other than a line showing the directory. (There is a main.syx file produced but it is blank) I have used the same procedure with a much smaller .hex file and it seems to work. I should add that the main.hex file is about 65k bytes. Please help. Regards Robin
  10. Dear Thorsten I can see the point of having multiple sysex strings held in each bankstick and being uploaded in one operation. I have tried many times using MPlab to include the .inc files into the.asm file without any result.  The build is signalled as successful but I finish up with the original .asm file. I note that each file (.asm or .inc ) starts with Address 400000.  Should not the .inc files  start with  different address(es)? There are also comments in each .inc file re deleting the line where there is a LIST instruction.  Should these be followed? Please confirm that I should be using MPLAB to make the composite .asm file and advise  any other instruction needed. Regards Robin Since sending the above message I wondered whether I should be composing the composite "write to bankstick" by cutting and pasting within MIDIOX.
  11. Dear Thorsten Following your guidance I have produced a new reset.syx file. Originally as recorded with 16470 bytes after conversion to a syx file now 20137. (both measured by MIDIOX. By the way with MPLAB I did not use main.asm with a Reset.inc file. I made a reset.asm and used it (only) as a source file. Was this OK? Can I use Command 01 to read the BS? As you probably realise I keep thinking that the MIOS system will respond to Midi sysex messages on Midi In. Plese let me know how to proceed. Thanks Robin
  12. Thanks Thorsten I recorded the sysex files using MIDIOX. I saved the data from MIDIOX as a .txt file. I created an .asm file from the .txt file using bin2asm. Using MPLAB I made an .hex file using the .asm file as source file. Note this is the only file I used. I converted this file to a .syx file using hex2syx. I used MIDIOX to send the data to the Core via Midi in. The last offset on the "Reset" fle is 0x40C0A0. Â There is a change in the format up to 0x4080B0. Â The data up to that point was db followed by eight double bytes ;; and then the address eg 40000 (1st add). After this there are numerous db data sets per line. As if the line return had been lost. Regards Robin
  13. Dear Thorsten I am progressing slowly but have reached another difficulty. So far I have uploaded a large and medium converted binary file to BS 0 and 7. The large file "Reset" bin file was recorded as 16470 bytes by Midiox. After conversion to Reset.syx the file size measured by Midiox was 59025 bytes. During the upload Midiox received 51 Sysex acknowledgements. . For the medium file the respective bytes were 960 and 3560 with 5 ack. As you stated in your last message it seems as if data is being stored. I have tried many different ways to read the stored data using the sysex read procedures with Midiox with no success. Is it possible to use the sysex Read 01 Command for this task? I am sorry to trouble you again so soon. Regards Robin
  14. Dear Thorsten I have received the following response from the core module via Midi out after sending a test  .syx file. F0 00 00 7E 40 00 0F 07 F7 F0 00 00 7E 40 00 0F 7D F7 F0 00 00 7E 40 00 0F 3A F7 F0 00 00 7E 40 00 0F 6E F7 F0 00 00 7E 40 00 01 F7 The file was sent to BS 7.  I have worked out that the messages are to do with WREG. The last is a request for an upload, I think.  Does this message seem OK? Regards Robin PS device ID is 0x00
  15. Dear Thorsten Thanks for straightening me out. I was in the middle of assembling a binary file complete with 01, 03 commands. I am going to practice with my largest file, "reset" which will go to BS 00. I will generate a reset.inc file using bin2asm.pl. I will use MPASM to generate a .hex file. I will convert this to a syx file using hex2syx.pl and then upload this using Midiox. MPASM Do I use the default settings? I assume the source file is Reset.inc Processor EEPROM or 18F452? Which generated file? Tab size 8 ? Thanks again Robin
  16. Thanks Thorsten for such a fast response. May I ask you to clarify the checksum queries. Regards Robin
  17. I left this out of my preceding message. In checking through the Sysex Implementation text under the command 01 examples I think there may be an error in the sysex message for the Internal Flash.. Â I believe that the ch parameter should be 0x20. If Counter = 0x08000 When this is shifted 10 Â and "AND"ed with 7f the result is 0x20 Â (binary 0010 0000) not 0x10. Â Of course I may be wrong and misunderstood the basis of the calculation. Regards Robin
  18. Dear Thorsten Thank you for the last reply. You referred me to the BS Transfer Method. In Step 1 you state that the file Main.asm includes P=EEPROM16. It contains "LIST P=PIC18F452, R=DEC". There is no reference to EEPROM16. I am not ready yet to modify the main.asm file and it seems easier (for me) to use the MIOS Sysex implementation method. It might be better if I explained in detail what I am trying to do. I have recorded using Midiox several sysex messages. These are "setup" instructions for the Roland SC8850 Sound Module. I want to store these in my Bankstick module (0-7). This is built but not tested. Checksum In the sysex implementation text page 3, it refers to "checksum: inverted checksum from ah to the last byte of <dump>. In hex to Sysex converter you refer to "-(sum of bytes) & )x7f. Are we counting 8 bit or 16 bit bytes? If we count the bytes fom ah to the last dump byte in binary invert the result ie 0101 becomes 1010 and then "AND" the result with 7f (0111 1111) would this be correct? Do we always have to use perl to convert to syx from hex to send midi messages via Midi in? Thanks Robin
  19. Although this query relates to my organ project, this is likely to be of general interest. QUERY I believe that I can write sysex files to a Bankstick using the MIOS Sysex implemetation commands, using command 03 and then Command 02. To test that the files are stored I would then, using Commands 03 and 01, read from the Bankstick. I would use MIDIOX to send and receive the data files. Is this procedure correct? Do I need to prepare the Core module other than giving it an ID and programming the bootstraps, MIOS and Midio128? I do realise that ultimately the send routines to transmit the sysex messages to my sound module will be controlled by a button handler. Regards Robin Fawell
  20. I need to store on a permanent basis about 200 sysex files. About a half of these sysex files are just over 1028 bytes, there is a large "Reset" file of 11020 bytes, there are two "tremelo" files of 2756 bytes and the rest are under 690 bytes. The MIOS sysex implementation indicates that it is necesssary to insert a delay of 750mS between write blocks of 1028 bytes. The relatively long write cycles will present no problem as the write transfers will be "offline". The "Reset" sysex will be read on switch on only and the other sysex files will be read during the performance. I note that "If more than 1025 bytes are requested by the read command, MIOS will send multiple blocks and insert a delay between every block" What is this delay? I am hoping that this will be small. I am about to build an eight EEPROM bankstick module using the 24LC512. I am assuming that it will be exactly the same construction as for the 32K version. How will the use of the 64k EEPROM alter the sysex implementation? The reason I ask, is that I could use the smaller EEPROM after reanalysing the total sysex requirement. I have purchased the 64k EEPROM's already. Regards Robin
  21. This topic has been moved to [link=http://www.midibox.org/cgi-bin/yabb/YaBB.cgi?board=mios;action=display;num=1078174868;start=0]MIOS programming[/link] by Thorsten Klose.
  22. To answer John I suggest looking at the following website http://members.aol.com/realmac/jeux1.htm#AUTH I have built and commissioned one core module and several DINX$ modules and wired up one 61 note keyboard. They work. To change the ini file for the keyboards to tailor the outputs to obtain specific notes and midi channels is very easy. To program the Dout pins to load control changes looks to be fairly easy, however I have to trigger a series of sysex messages destined for the SC8850. I am thinking about this at present. I dont know anyone who is interested in midi control of pipe organs proper. Yours etc Robin
  23. Dear John I managed to get a new but obsolete! SC8850 which as you know was the latest SC module that that the SCPOP designers used. Although it was about half the original price it still cost me over £500. However it is a very comprehensive unit. Try Midi Classics. www.midi-classics.com email mcsales @midi-classics.com. (USA) I bought the SC8850 in Aug last year. The SCPOP sounds are really impressive. I contacted the Australian who supplies the midi conversion software who intimated that it was possible that the later sound modules from Roland would work. I decided not to to take a chance as I thought at the time that MIOS part would be a challege and I was right! Regards Robin
  24. Electronic organ keys operate switches. They are not velocity sensitive like synthesiser keys. There is a foot operated potentiometer or volume control . Regards Robin
  25. Thorsten mentioned in a previous thread that I was interested in pipe organs. I am in the process of converting a 1960' church electronic organ to midi. I will be attempting to use the pipe organ emulation from the SCPOP project. I do not want the PC in the organ but hope to utilise the sysex files from the project to output to the the Roland SC8850. (see http://www.scpop.de/) The upper and lower keyboards each have been wired to two DINX4 modules and I will wire the pedals to one DINX4 module. The two keyboards will require one core module. I have a fairly large number of organ stops to determine the organ sounds. There will be about 100 membrane switches with integral LED's this will utilise the 2nd Core module and the 3rd module will deal with the organ stops memory banks, the pedal switches and the LCD. The system will also require a large capacity bank stick to store the sysex files. Regards Robin Fawell
×
×
  • Create New...