robinfawell Posted November 13, 2006 Report Share Posted November 13, 2006 I have been battling very unsuccessfully for about 16 hours, trying to load my sysex messages into a 64k Bankstick (external EEProm).I have tried many different ways but all is in vain.I have used MPLab to compile a main.asm file with org at 400000 to include 39 individual sysex files. This produces a main.hex and main.lst amongst other files.The lst file looks perfect. At TK's suggestion I have defined labels in asm file so that the sysex start addresses are tabulated. This also will enable file length in bytes to be calculated conveniently using Excel.All the addresses are shown correctly and all the sysex content is correct.Using both methods (Serge's loader and MIOS Studio) I have uploaded the main.syx file converted by the hex2syx program to the core. Both method show block acknowlegement. Hopefully this shows that the core is receiving the data.The MIOS studio also shows Midi In and Out activity.Here comes the problem! When I try to read back the sysex messages from the Bankstick I get nothing from Serge's loader. I have also used the suggested Midi_ox method bankstick dump and get the following two sysex messages.F0 00 00 7E 40 00 03 00 F7 F0 00 00 7E 40 00 01 40 00 40 00 F7 This is a repeat of the sent message requesting a 64k dump!I have made 2 new 64k EEprom modules that both give send acknowledgements. Both seem to work on writing but not on reading. I'm going mad!I'm obviously missing something. My recent problems were caused by very simple errors.I notice that with MIOS 1.8 + the address structure is changed for banksticks and that there is no need for the 03 command. I am wondering if this change could affect Serge's loader and the Midi-ox request dump request method.Please help.RobinRobin PS I have made the link between J4 SC to pin 28 of the core. Quote Link to comment Share on other sites More sharing options...
robinfawell Posted November 14, 2006 Author Report Share Posted November 14, 2006 I have spent a long time, most of today, coming to a conclusion that my probem was attempting to carry out bankstick write and read functions whilst the application was loaded.You must do this task before loading the application. ie in the READY state or with MIOS 1.9c whilst "BOOTLOADER IS UP T0 DATE."Thorsten makes this clear in Page 2, Step 2 of Bankstick Transfer Example. I missed the importance of the paragraph.I think that I am right in pointing out that Serge's loader will not carry out Request Sysex Dump commands with 64k EEproms.Neither will the instructions on Step 5. The 03 command is obsolete. I tried sending the 2nd sysex message onlyF0 00 00 7E 40 00 01 40 00 40 00 F7 , but this produced 5393 bytes of mainly 00's. Robin Quote Link to comment Share on other sites More sharing options...
TK. Posted November 15, 2006 Report Share Posted November 15, 2006 Hi Robin,short note: I haven't tried out the BankStick upload/download feature for a long time, I'm not so sure if it really works anymore. I will check this in the next daysBest Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
robinfawell Posted November 17, 2006 Author Report Share Posted November 17, 2006 Just to bring this thread up to date....I can verify that MIOS Studio successfuly uploads 64kEEProm Banksticks. It is a requirement of my Organ design that stored Sysex messages are read from Banksticks. I have verified that the 64k contents were uploaded correctly using the application software..This still leaves a question mark on Serge's Loader and Step 5 of the Bankstick Transfer Example. I am only referring to "reading back the data" procedures.Is it intended that MIOS Studio will be extended to Read back Bankstick data? Maybe it is already?Robin Quote Link to comment Share on other sites More sharing options...
TK. Posted November 18, 2006 Report Share Posted November 18, 2006 Hi Robin,good to know, that at least the upload is working. Serge's Loader won't be maintained anymore, and I think that a more stable (and especially OS independent) implementation could be realized much easier with MIOS Studio. But this isn't planned yet...So, currently only MIDI-Ox can be used for a stable read-outBest Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
robinfawell Posted November 18, 2006 Author Report Share Posted November 18, 2006 Hi ThorstenPerhaps I should have made it clearer. I don't think that the Midi-ox method is able to read the 64 kBankstick contents either.I used F0 00 00 7E 40 00 01 40 00 40 00 F7 (for BS 0, Device ID 00) and received 5128 bytes mainly 00's.Regards Robin Quote Link to comment Share on other sites More sharing options...
TK. Posted November 18, 2006 Report Share Posted November 18, 2006 Hi Robin,I just tried this and also noticed that it doesn't work like expected. I think that this has to do with the latest changes in the address range checking for PIC18F4620...I don't know exactly where the error is located, but I can give you a workaround:With:F0 00 00 7E 40 00 01 40 00 3F 00 F7you can read the first 63 * 1k blocksand with:F0 00 00 7E 40 00 01 7F 00 01 00 F7you can read the remaining 1k blockOr another solution:with:F0 00 00 7E 40 00 01 40 00 20 00 F7you can read the lower half (0x0000-0x7fff)and with:F0 00 00 7E 40 00 01 60 00 20 00 F7the upper half (0x8000-0xffff)Best Regards, Thorsten. Quote Link to comment Share on other sites More sharing options...
dcer10 Posted November 19, 2006 Report Share Posted November 19, 2006 Hi All,Dont know if this info helps but in the latest V3 seq app I have uploaded patterns to the PC and back again after formatting the bankstick and it all worked as expected. John Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.