Jump to content

SD card module - file system question


ilmenator

Recommended Posts

Hi all,

I managed to use my SD card as file storage for synth bank sounds. I can read SRAM program cards (32kB is a common size) and write their content to a file on the SD card. I can also read the file back and store it in that SRAM. All this is fine, but some problems remain.

I only discovered that this is actually working more or less by accident... Here are my questions:

1) If I read the documentation of the sdcard module correctly, then I have to create a file on the SD card in my computer first and can then write to that file. I cannot create a new file from the MIOS application, correct?

2) As all my files will have the same size (32kB), this is not a problem. The strange thing is that on my computer (a Win XP system) I create the file and fill it with some content, eg. all "FF". Then I overwrite it with the SRAM program card content. Now, when I read the file again from SD card on my computer, it still contains all "FF". But I can nevertheless read the SRAM program card content correctly from that same file in my MIOS app. This means that although the filenames are identical, MIOS and Windows access different sectors of the SD card. Huh?

3) My SD card was originally a 4GB card. What I did to make it work was to partition it to around 900MB using gparted-live-0.3.7-7, and then format it FAT16 with sector size 512 bytes in Win XP. Is this okay?

So, my SD card suffers from schizophrenia.  ;D Did I say that any help would be appreciated?

Thanks, ilmenator

Link to comment
Share on other sites

Really great news, that at least SD card reads are working at your side :)

1) If I read the documentation of the sdcard module correctly, then I have to create a file on the SD card in my computer first and can then write to that file. I cannot create a new file from the MIOS application, correct?

Yes, thats correct. Creating new files would require a more complex FAT16 handling, which would consume much more flash memory.

2) As all my files will have the same size (32kB), this is not a problem. The strange thing is that on my computer (a Win XP system) I create the file and fill it with some content, eg. all "FF". Then I overwrite it with the SRAM program card content. Now, when I read the file again from SD card on my computer, it still contains all "FF". But I can nevertheless read the SRAM program card content correctly from that same file in my MIOS app. This means that although the filenames are identical, MIOS and Windows access different sectors of the SD card. Huh?

I quickly checked this by turning the sysex_sender into a sysex_overwriter function:

http://svnmios.midibox.org/listing.php?repname=svn.mios&path=%2Ftrunk%2Fapps%2Fexamples%2Fsdcard%2Fsysex_overwriter%2F

it works as expected.

Possible error at Windows side: you don't eject the device (right-click on device, "Auswerfen"), so that your PC reads the old content from cache

Possible error at application side: it is not allowed to increment sdcard_file_sector, instead it has to be determined by the SDCARD_FILE_Seek(offset) function for the case that your FAT is fragmented.

3) My SD card was originally a 4GB card. What I did to make it work was to partition it to around 900MB using gparted-live-0.3.7-7, and then format it FAT16 with sector size 512 bytes in Win XP. Is this okay?

Hopefully yes! Good to know, that 4GB cards can be used this way.

So, my SD card suffers from schizophrenia.

;-)

Best Regards, Thorsten.

Link to comment
Share on other sites

Okay, I'm back home and did some more testing. Strangeness remains, though...

1) I do eject the device. No cache involved.

2) I created a .syx (well, actually I renamed one of my test files with known content). I ran TK's sysex_overwriter and looked at the file on my PC again. The content has not changed. The sysex_overwriter did not give me an error message, though.

3) I do use the SDCARD_FILE_Seek(offset) function to determine the sector before each 512byte sector read in my own code.

Is there a way to tell (on Win XP) which clusters are used by a specific file? If I compared that with sdcard_file_cluster I could probably see clearer.

PS: napierzaza, look here

Link to comment
Share on other sites

Using that tool I can read blocks of sectors. I can identify those sectors that contain the original SRAM data (that is the data written by my MIOS application). I can not find the data originally saved using the computer (that is the data that still shows using Explorer and opening the file!) - though I have to admit that I did not search through the whole SD card as NTDiskViewer only writes "00" into the file when I try to read the whole card at once. Chunks of 16MB are okay, but my SD card is roughly 900MB in size...

I also removed the card reader to really make sure no cache is involved.

I'm afraid I have to re-partition the SD card again to make it more friendly to handle.

Did that. The SD card is now 24MB in size. It behaves the same as before. I cannot read on a Win XP computer what my MIOS app has written on the card. The files are shown in Win Explorer, but they contain what was originally in them when I created them in Win. A bin copy of the complete SD card shows that the data written by my MIOS app nevertheless is there on the card - I just cannot access it properly.

???

Link to comment
Share on other sites

A little update: out of curiosity I defragmented the SD card. The effect is that now my data is corrupted, when I read it from the SD card using my MIOS app (and subsequently write it to an SRAM card). The first sector is okay, after that something is wrong (I can't say exactly where the mess starts, the Wavestation I use to verify the SRAM prog card with resets itself when a sound with a higher memory location is selected). I guess that there is something wrong with the pointers to the next sector / cluster? This is handled differently in the MIOS driver and Win?

Link to comment
Share on other sites

My test files are usually bigger than 64k, so that they allocate multiple clusters.

With the SRAM read function of MIOS Studio you could dump the sector content which is read (probably starting at 0x100, check the project.map file), and also the sector variables (starting at 0x80, absolute addresses can be found in the .map file as well)

The content of following variables would be interesting (please note: check the project.map file for the addresses used by your application!!!)

       _sdcard_file_mode   0x000080       

    _sdcard_file_name_ptr   0x000081     

     _sdcard_file_cluster   0x000084     

      _sdcard_file_sector   0x000086     

_sdcard_file_dir_entry_num   0x00008a     

_sdcard_file_dir_entry_ptr   0x00008c     

     _sdcard_file_sector0   0x00008f     

  _sdcard_file_sector_fat   0x000091     

_sdcard_file_sector_root   0x000093     

_sdcard_file_root_sectors   0x000095     

  _sdcard_file_sector_cl2   0x000096     

_sdcard_file_cluster_size   0x000098     

_sdcard_file_seek_offset   0x000099     

_sdcard_file_seek_cluster   0x00009d     

The most interesting variable is _sdcard_file_cluster_size, because this one could be different at your side.

Also the content of the MBR (sector #0) and the parition boot sector (sector number in _sdcard_file_sector0) could be interesting (if _sdcard_buffer_p0 and ..1 is located at 0x100/0x200, dump 0x100..0x2ff)

Best Regards, Thorsten.

Link to comment
Share on other sites

I am not sure I understood everything you said, but here is the result of my memory dumps right after I selected one of the files on the (previously by Windows defragmented) SD card.

If this needs repetition with a non-defragmented card, just tell me so!

         _sdcard_file_mode   0x000a00   00
     _sdcard_file_name_ptr   0x000a01   5D 0A 80     
      _sdcard_file_cluster   0x000a04   42 00 BE
       _sdcard_file_sector   0x000a06   BE BF 00 00 
_sdcard_file_dir_entry_num   0x000a0a   05 00    
_sdcard_file_dir_entry_ptr   0x000a0c   A0 07 80    
      _sdcard_file_sector0   0x000a0f   3F 00     
   _sdcard_file_sector_fat   0x000a11   40 00     
  _sdcard_file_sector_root   0x000a13   9E 00     
 _sdcard_file_root_sectors   0x000a15   20    
   _sdcard_file_sector_cl2   0x000a16   BE BE    
 _sdcard_file_cluster_size   0x000a18   04    
  _sdcard_file_seek_offset   0x000a19   00 00 00 00     
 _sdcard_file_seek_cluster   0x000a1d   00 00 00 00 

         _sdcard_buffer_p0   0x000700   
         _sdcard_buffer_p1   0x000800   
    
0700: 53 44 2D 43 41 52 44 20  20 20 20 08 00 00 37 B8
0710: 0C 39 0C 39 00 00 37 B8  0C 39 00 00 00 00 00 00
0720: 30 30 30 32 20 20 20 20  50 52 47 20 10 2A F7 B8
0730: 0C 39 0C 39 00 00 95 A2  0B 39 02 00 00 80 00 00
0740: 30 30 30 33 20 20 20 20  50 52 47 20 10 3B F7 B8
0750: 0C 39 0C 39 00 00 95 A2  0B 39 12 00 00 80 00 00
0760: 30 30 30 34 20 20 20 20  50 52 47 20 10 49 F7 B8
0770: 0C 39 0C 39 00 00 AF BD  09 39 22 00 00 80 00 00
0780: 30 30 30 35 20 20 20 20  50 52 47 20 10 6D F7 B8
0790: 0C 39 0C 39 00 00 AF BD  09 39 32 00 00 80 00 00
07A0: 30 30 30 36 20 20 20 20  50 52 47 20 10 9A F7 B8
07B0: 0C 39 0C 39 00 00 95 A2  0B 39 42 00 00 80 00 00
07C0: 30 30 30 31 20 20 20 20  50 52 47 20 10 AB F7 B8
07D0: 0C 39 0C 39 00 00 AF BD  09 39 52 00 00 80 00 00
07E0: E5 46 52 31 31 20 20 20  54 4D 50 20 10 70 7B BD
07F0: 0C 39 0C 39 00 00 7C BD  0C 39 00 00 00 00 00 00
0800: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0810: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0820: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0830: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0840: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0850: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0860: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0870: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0880: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0890: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
08A0: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
08B0: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
08C0: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
08D0: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
08E0: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
08F0: 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00


Thanks, ilmenator

Link to comment
Share on other sites

Well, unfortunately it looks like not everything is completely working, I was too fast  :(.

The first part of the file is okay. From 0x0800 on the file is (still? again?) corrupted. This time it's easier to see for me where things go wrong, because I can open the file in a hex editor. From around 0x0800 the pattern changes, and selecting the sound that corresponds to that memory location (I can tell by looking at the sound names in the Wavestation's display and comparing them to what's in my hex file) resets the Wavestation. The first part up tp 0x0800, i.e. the first 2kB, are okay, though.

Again I strongly believe that this is not a problem of my code, because I use the same mechanism as in the example code you provide (filling sdcard_buffer_p0 and sdcard_buffer_p1 in a while loop), and as far as I can see there is nothing that changes after 4 such "fillings".

Could you please take another look?

Best regards, ilmenator

Link to comment
Share on other sites

0x800 means, that the next cluster has to be read in the FAT

In order to debug this, I need some more informations: open sdcard_file.inc, search for "#if 0", and replace it by "#if 1". After rebuild and application upload, some SysEx messages should be sent on each file access. Copy&Paste the SysEx strings which are dumped during a write operation

Best Regards, Thorsten.

Link to comment
Share on other sites

These are the SysEx messages when writing to a 32kB file on the SD card:

00000018683006 ms | Sysex message: F0 00 00 05 03 F7
00000018683256 ms | Sysex message: F0 00 00 05 03 F7
00000018683505 ms | Sysex message: F0 00 00 05 03 F7
00000018683753 ms | Sysex message: F0 00 00 05 03 F7
00000018684001 ms | Sysex message: F0 00 00 05 03 F7
00000018684003 ms | Sysex message: F0 00 00 05 04 F7
00000018684249 ms | Sysex message: F0 00 00 05 03 F7
00000018684251 ms | Sysex message: F0 00 00 05 04 F7
00000018684498 ms | Sysex message: F0 00 00 05 03 F7
00000018684500 ms | Sysex message: F0 00 00 05 04 F7
00000018684746 ms | Sysex message: F0 00 00 05 03 F7
00000018684748 ms | Sysex message: F0 00 00 05 04 F7
00000018684994 ms | Sysex message: F0 00 00 05 03 F7
00000018684996 ms | Sysex message: F0 00 00 05 04 F7
00000018684998 ms | Sysex message: F0 00 00 05 05 F7
00000018685243 ms | Sysex message: F0 00 00 05 03 F7
00000018685245 ms | Sysex message: F0 00 00 05 04 F7
00000018685246 ms | Sysex message: F0 00 00 05 05 F7
00000018685491 ms | Sysex message: F0 00 00 05 03 F7
00000018685493 ms | Sysex message: F0 00 00 05 04 F7
00000018685495 ms | Sysex message: F0 00 00 05 05 F7
00000018685739 ms | Sysex message: F0 00 00 05 03 F7
00000018685742 ms | Sysex message: F0 00 00 05 04 F7
00000018685743 ms | Sysex message: F0 00 00 05 05 F7
00000018685988 ms | Sysex message: F0 00 00 05 03 F7
00000018685990 ms | Sysex message: F0 00 00 05 04 F7
00000018685992 ms | Sysex message: F0 00 00 05 05 F7
00000018685994 ms | Sysex message: F0 00 00 05 06 F7
00000018686237 ms | Sysex message: F0 00 00 05 03 F7
00000018686239 ms | Sysex message: F0 00 00 05 04 F7
00000018686241 ms | Sysex message: F0 00 00 05 05 F7
00000018686243 ms | Sysex message: F0 00 00 05 06 F7
00000018686485 ms | Sysex message: F0 00 00 05 03 F7
00000018686488 ms | Sysex message: F0 00 00 05 04 F7
00000018686489 ms | Sysex message: F0 00 00 05 05 F7
00000018686491 ms | Sysex message: F0 00 00 05 06 F7
00000018686733 ms | Sysex message: F0 00 00 05 03 F7
00000018686736 ms | Sysex message: F0 00 00 05 04 F7
00000018686737 ms | Sysex message: F0 00 00 05 05 F7
00000018686739 ms | Sysex message: F0 00 00 05 06 F7
00000018686981 ms | Sysex message: F0 00 00 05 03 F7
00000018686983 ms | Sysex message: F0 00 00 05 04 F7
00000018686985 ms | Sysex message: F0 00 00 05 05 F7
00000018686987 ms | Sysex message: F0 00 00 05 06 F7
00000018686989 ms | Sysex message: F0 00 00 05 07 F7
00000018687230 ms | Sysex message: F0 00 00 05 03 F7
00000018687232 ms | Sysex message: F0 00 00 05 04 F7
00000018687234 ms | Sysex message: F0 00 00 05 05 F7
00000018687236 ms | Sysex message: F0 00 00 05 06 F7
00000018687238 ms | Sysex message: F0 00 00 05 07 F7
00000018687479 ms | Sysex message: F0 00 00 05 03 F7
00000018687481 ms | Sysex message: F0 00 00 05 04 F7
00000018687483 ms | Sysex message: F0 00 00 05 05 F7
00000018687485 ms | Sysex message: F0 00 00 05 06 F7
00000018687487 ms | Sysex message: F0 00 00 05 07 F7
00000018687727 ms | Sysex message: F0 00 00 05 03 F7
00000018687730 ms | Sysex message: F0 00 00 05 04 F7
00000018687731 ms | Sysex message: F0 00 00 05 05 F7
00000018687733 ms | Sysex message: F0 00 00 05 06 F7
00000018687736 ms | Sysex message: F0 00 00 05 07 F7
00000018687976 ms | Sysex message: F0 00 00 05 03 F7
00000018687978 ms | Sysex message: F0 00 00 05 04 F7
00000018687979 ms | Sysex message: F0 00 00 05 05 F7
00000018687981 ms | Sysex message: F0 00 00 05 06 F7
00000018687983 ms | Sysex message: F0 00 00 05 07 F7
00000018687986 ms | Sysex message: F0 00 00 05 08 F7
00000018688225 ms | Sysex message: F0 00 00 05 03 F7
00000018688227 ms | Sysex message: F0 00 00 05 04 F7
00000018688229 ms | Sysex message: F0 00 00 05 05 F7
00000018688230 ms | Sysex message: F0 00 00 05 06 F7
00000018688232 ms | Sysex message: F0 00 00 05 07 F7
00000018688234 ms | Sysex message: F0 00 00 05 08 F7
00000018688474 ms | Sysex message: F0 00 00 05 03 F7
00000018688476 ms | Sysex message: F0 00 00 05 04 F7
00000018688478 ms | Sysex message: F0 00 00 05 05 F7
00000018688479 ms | Sysex message: F0 00 00 05 06 F7
00000018688481 ms | Sysex message: F0 00 00 05 07 F7
00000018688483 ms | Sysex message: F0 00 00 05 08 F7
00000018688722 ms | Sysex message: F0 00 00 05 03 F7
00000018688724 ms | Sysex message: F0 00 00 05 04 F7
00000018688726 ms | Sysex message: F0 00 00 05 05 F7
00000018688728 ms | Sysex message: F0 00 00 05 06 F7
00000018688730 ms | Sysex message: F0 00 00 05 07 F7
00000018688732 ms | Sysex message: F0 00 00 05 08 F7
00000018688971 ms | Sysex message: F0 00 00 05 03 F7
00000018688973 ms | Sysex message: F0 00 00 05 04 F7
00000018688974 ms | Sysex message: F0 00 00 05 05 F7
00000018688976 ms | Sysex message: F0 00 00 05 06 F7
00000018688979 ms | Sysex message: F0 00 00 05 07 F7
00000018688980 ms | Sysex message: F0 00 00 05 08 F7
00000018688983 ms | Sysex message: F0 00 00 05 09 F7
00000018689220 ms | Sysex message: F0 00 00 05 03 F7
00000018689221 ms | Sysex message: F0 00 00 05 04 F7
00000018689223 ms | Sysex message: F0 00 00 05 05 F7
00000018689225 ms | Sysex message: F0 00 00 05 06 F7
00000018689227 ms | Sysex message: F0 00 00 05 07 F7
00000018689229 ms | Sysex message: F0 00 00 05 08 F7
00000018689231 ms | Sysex message: F0 00 00 05 09 F7
00000018689468 ms | Sysex message: F0 00 00 05 03 F7
00000018689471 ms | Sysex message: F0 00 00 05 04 F7
00000018689472 ms | Sysex message: F0 00 00 05 05 F7
00000018689474 ms | Sysex message: F0 00 00 05 06 F7
00000018689476 ms | Sysex message: F0 00 00 05 07 F7
00000018689478 ms | Sysex message: F0 00 00 05 08 F7
00000018689480 ms | Sysex message: F0 00 00 05 09 F7
00000018689717 ms | Sysex message: F0 00 00 05 03 F7
00000018689719 ms | Sysex message: F0 00 00 05 04 F7
00000018689720 ms | Sysex message: F0 00 00 05 05 F7
00000018689722 ms | Sysex message: F0 00 00 05 06 F7
00000018689724 ms | Sysex message: F0 00 00 05 07 F7
00000018689726 ms | Sysex message: F0 00 00 05 08 F7
00000018689728 ms | Sysex message: F0 00 00 05 09 F7
00000018689965 ms | Sysex message: F0 00 00 05 03 F7
00000018689967 ms | Sysex message: F0 00 00 05 04 F7
00000018689968 ms | Sysex message: F0 00 00 05 05 F7
00000018689970 ms | Sysex message: F0 00 00 05 06 F7
00000018689972 ms | Sysex message: F0 00 00 05 07 F7
00000018689974 ms | Sysex message: F0 00 00 05 08 F7
00000018689977 ms | Sysex message: F0 00 00 05 09 F7
00000018689978 ms | Sysex message: F0 00 00 05 0A F7
00000018690214 ms | Sysex message: F0 00 00 05 03 F7
00000018690216 ms | Sysex message: F0 00 00 05 04 F7
00000018690217 ms | Sysex message: F0 00 00 05 05 F7
00000018690219 ms | Sysex message: F0 00 00 05 06 F7
00000018690221 ms | Sysex message: F0 00 00 05 07 F7
00000018690223 ms | Sysex message: F0 00 00 05 08 F7
00000018690225 ms | Sysex message: F0 00 00 05 09 F7
00000018690227 ms | Sysex message: F0 00 00 05 0A F7
00000018690463 ms | Sysex message: F0 00 00 05 03 F7
00000018690464 ms | Sysex message: F0 00 00 05 04 F7
00000018690467 ms | Sysex message: F0 00 00 05 05 F7
00000018690468 ms | Sysex message: F0 00 00 05 06 F7
00000018690470 ms | Sysex message: F0 00 00 05 07 F7
00000018690472 ms | Sysex message: F0 00 00 05 08 F7
00000018690474 ms | Sysex message: F0 00 00 05 09 F7
00000018690476 ms | Sysex message: F0 00 00 05 0A F7
00000018690711 ms | Sysex message: F0 00 00 05 03 F7
00000018690713 ms | Sysex message: F0 00 00 05 04 F7
00000018690715 ms | Sysex message: F0 00 00 05 05 F7
00000018690717 ms | Sysex message: F0 00 00 05 06 F7
00000018690719 ms | Sysex message: F0 00 00 05 07 F7
00000018690721 ms | Sysex message: F0 00 00 05 08 F7
00000018690723 ms | Sysex message: F0 00 00 05 09 F7
00000018690725 ms | Sysex message: F0 00 00 05 0A F7
00000018690960 ms | Sysex message: F0 00 00 05 03 F7
00000018690962 ms | Sysex message: F0 00 00 05 04 F7
00000018690963 ms | Sysex message: F0 00 00 05 05 F7
00000018690965 ms | Sysex message: F0 00 00 05 06 F7
00000018690967 ms | Sysex message: F0 00 00 05 07 F7
00000018690969 ms | Sysex message: F0 00 00 05 08 F7
00000018690971 ms | Sysex message: F0 00 00 05 09 F7
00000018690973 ms | Sysex message: F0 00 00 05 0A F7
00000018690975 ms | Sysex message: F0 00 00 05 0B F7
00000018691210 ms | Sysex message: F0 00 00 05 03 F7
00000018691213 ms | Sysex message: F0 00 00 05 04 F7
00000018691214 ms | Sysex message: F0 00 00 05 05 F7
00000018691216 ms | Sysex message: F0 00 00 05 06 F7
00000018691218 ms | Sysex message: F0 00 00 05 07 F7
00000018691220 ms | Sysex message: F0 00 00 05 08 F7
00000018691222 ms | Sysex message: F0 00 00 05 09 F7
00000018691224 ms | Sysex message: F0 00 00 05 0A F7
00000018691226 ms | Sysex message: F0 00 00 05 0B F7
00000018691461 ms | Sysex message: F0 00 00 05 03 F7
00000018691463 ms | Sysex message: F0 00 00 05 04 F7
00000018691465 ms | Sysex message: F0 00 00 05 05 F7
00000018691466 ms | Sysex message: F0 00 00 05 06 F7
00000018691468 ms | Sysex message: F0 00 00 05 07 F7
00000018691470 ms | Sysex message: F0 00 00 05 08 F7
00000018691472 ms | Sysex message: F0 00 00 05 09 F7
00000018691474 ms | Sysex message: F0 00 00 05 0A F7
00000018691476 ms | Sysex message: F0 00 00 05 0B F7
00000018691710 ms | Sysex message: F0 00 00 05 03 F7
00000018691713 ms | Sysex message: F0 00 00 05 04 F7
00000018691714 ms | Sysex message: F0 00 00 05 05 F7
00000018691716 ms | Sysex message: F0 00 00 05 06 F7
00000018691718 ms | Sysex message: F0 00 00 05 07 F7
00000018691720 ms | Sysex message: F0 00 00 05 08 F7
00000018691722 ms | Sysex message: F0 00 00 05 09 F7
00000018691724 ms | Sysex message: F0 00 00 05 0A F7
00000018691726 ms | Sysex message: F0 00 00 05 0B F7
00000018691960 ms | Sysex message: F0 00 00 05 03 F7
00000018691963 ms | Sysex message: F0 00 00 05 04 F7
00000018691964 ms | Sysex message: F0 00 00 05 05 F7
00000018691966 ms | Sysex message: F0 00 00 05 06 F7
00000018691968 ms | Sysex message: F0 00 00 05 07 F7
00000018691970 ms | Sysex message: F0 00 00 05 08 F7
00000018691972 ms | Sysex message: F0 00 00 05 09 F7
00000018691974 ms | Sysex message: F0 00 00 05 0A F7
00000018691976 ms | Sysex message: F0 00 00 05 0B F7
00000018691977 ms | Sysex message: F0 00 00 05 0C F7
00000018692213 ms | Sysex message: F0 00 00 05 03 F7
00000018692215 ms | Sysex message: F0 00 00 05 04 F7
00000018692216 ms | Sysex message: F0 00 00 05 05 F7
00000018692218 ms | Sysex message: F0 00 00 05 06 F7
00000018692220 ms | Sysex message: F0 00 00 05 07 F7
00000018692223 ms | Sysex message: F0 00 00 05 08 F7
00000018692224 ms | Sysex message: F0 00 00 05 09 F7
00000018692226 ms | Sysex message: F0 00 00 05 0A F7
00000018692228 ms | Sysex message: F0 00 00 05 0B F7
00000018692230 ms | Sysex message: F0 00 00 05 0C F7
00000018692465 ms | Sysex message: F0 00 00 05 03 F7
00000018692467 ms | Sysex message: F0 00 00 05 04 F7
00000018692469 ms | Sysex message: F0 00 00 05 05 F7
00000018692471 ms | Sysex message: F0 00 00 05 06 F7
00000018692472 ms | Sysex message: F0 00 00 05 07 F7
00000018692475 ms | Sysex message: F0 00 00 05 08 F7
00000018692476 ms | Sysex message: F0 00 00 05 09 F7
00000018692478 ms | Sysex message: F0 00 00 05 0A F7
00000018692480 ms | Sysex message: F0 00 00 05 0B F7
00000018692482 ms | Sysex message: F0 00 00 05 0C F7
00000018692717 ms | Sysex message: F0 00 00 05 03 F7
00000018692719 ms | Sysex message: F0 00 00 05 04 F7
00000018692720 ms | Sysex message: F0 00 00 05 05 F7
00000018692722 ms | Sysex message: F0 00 00 05 06 F7
00000018692724 ms | Sysex message: F0 00 00 05 07 F7
00000018692726 ms | Sysex message: F0 00 00 05 08 F7
00000018692728 ms | Sysex message: F0 00 00 05 09 F7
00000018692730 ms | Sysex message: F0 00 00 05 0A F7
00000018692732 ms | Sysex message: F0 00 00 05 0B F7
00000018692734 ms | Sysex message: F0 00 00 05 0C F7
00000018692969 ms | Sysex message: F0 00 00 05 03 F7
00000018692971 ms | Sysex message: F0 00 00 05 04 F7
00000018692973 ms | Sysex message: F0 00 00 05 05 F7
00000018692974 ms | Sysex message: F0 00 00 05 06 F7
00000018692976 ms | Sysex message: F0 00 00 05 07 F7
00000018692979 ms | Sysex message: F0 00 00 05 08 F7
00000018692980 ms | Sysex message: F0 00 00 05 09 F7
00000018692982 ms | Sysex message: F0 00 00 05 0A F7
00000018692984 ms | Sysex message: F0 00 00 05 0B F7
00000018692986 ms | Sysex message: F0 00 00 05 0C F7
00000018692989 ms | Sysex message: F0 00 00 05 0D F7
00000018693223 ms | Sysex message: F0 00 00 05 03 F7
00000018693226 ms | Sysex message: F0 00 00 05 04 F7
00000018693227 ms | Sysex message: F0 00 00 05 05 F7
00000018693229 ms | Sysex message: F0 00 00 05 06 F7
00000018693231 ms | Sysex message: F0 00 00 05 07 F7
00000018693233 ms | Sysex message: F0 00 00 05 08 F7
00000018693235 ms | Sysex message: F0 00 00 05 09 F7
00000018693237 ms | Sysex message: F0 00 00 05 0A F7
00000018693239 ms | Sysex message: F0 00 00 05 0B F7
00000018693240 ms | Sysex message: F0 00 00 05 0C F7
00000018693243 ms | Sysex message: F0 00 00 05 0D F7
00000018693477 ms | Sysex message: F0 00 00 05 03 F7
00000018693479 ms | Sysex message: F0 00 00 05 04 F7
00000018693481 ms | Sysex message: F0 00 00 05 05 F7
00000018693483 ms | Sysex message: F0 00 00 05 06 F7
00000018693485 ms | Sysex message: F0 00 00 05 07 F7
00000018693487 ms | Sysex message: F0 00 00 05 08 F7
00000018693489 ms | Sysex message: F0 00 00 05 09 F7
00000018693491 ms | Sysex message: F0 00 00 05 0A F7
00000018693493 ms | Sysex message: F0 00 00 05 0B F7
00000018693495 ms | Sysex message: F0 00 00 05 0C F7
00000018693497 ms | Sysex message: F0 00 00 05 0D F7
00000018693731 ms | Sysex message: F0 00 00 05 03 F7
00000018693734 ms | Sysex message: F0 00 00 05 04 F7
00000018693735 ms | Sysex message: F0 00 00 05 05 F7
00000018693737 ms | Sysex message: F0 00 00 05 06 F7
00000018693739 ms | Sysex message: F0 00 00 05 07 F7
00000018693741 ms | Sysex message: F0 00 00 05 08 F7
00000018693743 ms | Sysex message: F0 00 00 05 09 F7
00000018693745 ms | Sysex message: F0 00 00 05 0A F7
00000018693747 ms | Sysex message: F0 00 00 05 0B F7
00000018693748 ms | Sysex message: F0 00 00 05 0C F7
00000018693751 ms | Sysex message: F0 00 00 05 0D F7
00000018693985 ms | Sysex message: F0 00 00 05 03 F7
00000018693987 ms | Sysex message: F0 00 00 05 04 F7
00000018693989 ms | Sysex message: F0 00 00 05 05 F7
00000018693991 ms | Sysex message: F0 00 00 05 06 F7
00000018693992 ms | Sysex message: F0 00 00 05 07 F7
00000018693994 ms | Sysex message: F0 00 00 05 08 F7
00000018693997 ms | Sysex message: F0 00 00 05 09 F7
00000018693998 ms | Sysex message: F0 00 00 05 0A F7
00000018694001 ms | Sysex message: F0 00 00 05 0B F7
00000018694002 ms | Sysex message: F0 00 00 05 0C F7
00000018694005 ms | Sysex message: F0 00 00 05 0D F7
00000018694006 ms | Sysex message: F0 00 00 05 0E F7
00000018694241 ms | Sysex message: F0 00 00 05 03 F7
00000018694244 ms | Sysex message: F0 00 00 05 04 F7
00000018694245 ms | Sysex message: F0 00 00 05 05 F7
00000018694247 ms | Sysex message: F0 00 00 05 06 F7
00000018694249 ms | Sysex message: F0 00 00 05 07 F7
00000018694251 ms | Sysex message: F0 00 00 05 08 F7
00000018694253 ms | Sysex message: F0 00 00 05 09 F7
00000018694255 ms | Sysex message: F0 00 00 05 0A F7
00000018694257 ms | Sysex message: F0 00 00 05 0B F7
00000018694258 ms | Sysex message: F0 00 00 05 0C F7
00000018694261 ms | Sysex message: F0 00 00 05 0D F7
00000018694262 ms | Sysex message: F0 00 00 05 0E F7
00000018694497 ms | Sysex message: F0 00 00 05 03 F7
00000018694500 ms | Sysex message: F0 00 00 05 04 F7
00000018694501 ms | Sysex message: F0 00 00 05 05 F7
00000018694503 ms | Sysex message: F0 00 00 05 06 F7
00000018694505 ms | Sysex message: F0 00 00 05 07 F7
00000018694508 ms | Sysex message: F0 00 00 05 08 F7
00000018694509 ms | Sysex message: F0 00 00 05 09 F7
00000018694511 ms | Sysex message: F0 00 00 05 0A F7
00000018694513 ms | Sysex message: F0 00 00 05 0B F7
00000018694515 ms | Sysex message: F0 00 00 05 0C F7
00000018694517 ms | Sysex message: F0 00 00 05 0D F7
00000018694519 ms | Sysex message: F0 00 00 05 0E F7
00000018694753 ms | Sysex message: F0 00 00 05 03 F7
00000018694756 ms | Sysex message: F0 00 00 05 04 F7
00000018694757 ms | Sysex message: F0 00 00 05 05 F7
00000018694759 ms | Sysex message: F0 00 00 05 06 F7
00000018694761 ms | Sysex message: F0 00 00 05 07 F7
00000018694763 ms | Sysex message: F0 00 00 05 08 F7
00000018694765 ms | Sysex message: F0 00 00 05 09 F7
00000018694767 ms | Sysex message: F0 00 00 05 0A F7
00000018694769 ms | Sysex message: F0 00 00 05 0B F7
00000018694771 ms | Sysex message: F0 00 00 05 0C F7
00000018694773 ms | Sysex message: F0 00 00 05 0D F7
00000018694775 ms | Sysex message: F0 00 00 05 0E F7
00000018695009 ms | Sysex message: F0 00 00 05 03 F7
00000018695012 ms | Sysex message: F0 00 00 05 04 F7
00000018695013 ms | Sysex message: F0 00 00 05 05 F7
00000018695015 ms | Sysex message: F0 00 00 05 06 F7
00000018695017 ms | Sysex message: F0 00 00 05 07 F7
00000018695019 ms | Sysex message: F0 00 00 05 08 F7
00000018695021 ms | Sysex message: F0 00 00 05 09 F7
00000018695022 ms | Sysex message: F0 00 00 05 0A F7
00000018695024 ms | Sysex message: F0 00 00 05 0B F7
00000018695026 ms | Sysex message: F0 00 00 05 0C F7
00000018695029 ms | Sysex message: F0 00 00 05 0D F7
00000018695030 ms | Sysex message: F0 00 00 05 0E F7
00000018695032 ms | Sysex message: F0 00 00 05 0F F7
00000018695267 ms | Sysex message: F0 00 00 05 03 F7
00000018695270 ms | Sysex message: F0 00 00 05 04 F7
00000018695271 ms | Sysex message: F0 00 00 05 05 F7
00000018695273 ms | Sysex message: F0 00 00 05 06 F7
00000018695275 ms | Sysex message: F0 00 00 05 07 F7
00000018695277 ms | Sysex message: F0 00 00 05 08 F7
00000018695279 ms | Sysex message: F0 00 00 05 09 F7
00000018695280 ms | Sysex message: F0 00 00 05 0A F7
00000018695282 ms | Sysex message: F0 00 00 05 0B F7
00000018695284 ms | Sysex message: F0 00 00 05 0C F7
00000018695286 ms | Sysex message: F0 00 00 05 0D F7
00000018695288 ms | Sysex message: F0 00 00 05 0E F7
00000018695290 ms | Sysex message: F0 00 00 05 0F F7
00000018695525 ms | Sysex message: F0 00 00 05 03 F7
00000018695527 ms | Sysex message: F0 00 00 05 04 F7
00000018695529 ms | Sysex message: F0 00 00 05 05 F7
00000018695531 ms | Sysex message: F0 00 00 05 06 F7
00000018695533 ms | Sysex message: F0 00 00 05 07 F7
00000018695535 ms | Sysex message: F0 00 00 05 08 F7
00000018695537 ms | Sysex message: F0 00 00 05 09 F7
00000018695539 ms | Sysex message: F0 00 00 05 0A F7
00000018695541 ms | Sysex message: F0 00 00 05 0B F7
00000018695542 ms | Sysex message: F0 00 00 05 0C F7
00000018695544 ms | Sysex message: F0 00 00 05 0D F7
00000018695546 ms | Sysex message: F0 00 00 05 0E F7
00000018695548 ms | Sysex message: F0 00 00 05 0F F7
00000018695783 ms | Sysex message: F0 00 00 05 03 F7
00000018695785 ms | Sysex message: F0 00 00 05 04 F7
00000018695786 ms | Sysex message: F0 00 00 05 05 F7
00000018695788 ms | Sysex message: F0 00 00 05 06 F7
00000018695790 ms | Sysex message: F0 00 00 05 07 F7
00000018695793 ms | Sysex message: F0 00 00 05 08 F7
00000018695794 ms | Sysex message: F0 00 00 05 09 F7
00000018695796 ms | Sysex message: F0 00 00 05 0A F7
00000018695798 ms | Sysex message: F0 00 00 05 0B F7
00000018695800 ms | Sysex message: F0 00 00 05 0C F7
00000018695802 ms | Sysex message: F0 00 00 05 0D F7
00000018695804 ms | Sysex message: F0 00 00 05 0E F7
00000018695806 ms | Sysex message: F0 00 00 05 0F F7
00000018696039 ms | Sysex message: F0 00 00 05 03 F7
00000018696041 ms | Sysex message: F0 00 00 05 04 F7
00000018696043 ms | Sysex message: F0 00 00 05 05 F7
00000018696045 ms | Sysex message: F0 00 00 05 06 F7
00000018696047 ms | Sysex message: F0 00 00 05 07 F7
00000018696050 ms | Sysex message: F0 00 00 05 08 F7
00000018696051 ms | Sysex message: F0 00 00 05 09 F7
00000018696053 ms | Sysex message: F0 00 00 05 0A F7
00000018696055 ms | Sysex message: F0 00 00 05 0B F7
00000018696057 ms | Sysex message: F0 00 00 05 0C F7
00000018696059 ms | Sysex message: F0 00 00 05 0D F7
00000018696061 ms | Sysex message: F0 00 00 05 0E F7
00000018696062 ms | Sysex message: F0 00 00 05 0F F7
00000018696064 ms | Sysex message: F0 00 00 06 00 F7
00000018696300 ms | Sysex message: F0 00 00 05 03 F7
00000018696303 ms | Sysex message: F0 00 00 05 04 F7
00000018696304 ms | Sysex message: F0 00 00 05 05 F7
00000018696306 ms | Sysex message: F0 00 00 05 06 F7
00000018696308 ms | Sysex message: F0 00 00 05 07 F7
00000018696310 ms | Sysex message: F0 00 00 05 08 F7
00000018696312 ms | Sysex message: F0 00 00 05 09 F7
00000018696314 ms | Sysex message: F0 00 00 05 0A F7
00000018696316 ms | Sysex message: F0 00 00 05 0B F7
00000018696317 ms | Sysex message: F0 00 00 05 0C F7
00000018696319 ms | Sysex message: F0 00 00 05 0D F7
00000018696321 ms | Sysex message: F0 00 00 05 0E F7
00000018696323 ms | Sysex message: F0 00 00 05 0F F7
00000018696325 ms | Sysex message: F0 00 00 06 00 F7
00000018696560 ms | Sysex message: F0 00 00 05 03 F7
00000018696563 ms | Sysex message: F0 00 00 05 04 F7
00000018696564 ms | Sysex message: F0 00 00 05 05 F7
00000018696566 ms | Sysex message: F0 00 00 05 06 F7
00000018696568 ms | Sysex message: F0 00 00 05 07 F7
00000018696570 ms | Sysex message: F0 00 00 05 08 F7
00000018696572 ms | Sysex message: F0 00 00 05 09 F7
00000018696574 ms | Sysex message: F0 00 00 05 0A F7
00000018696575 ms | Sysex message: F0 00 00 05 0B F7
00000018696577 ms | Sysex message: F0 00 00 05 0C F7
00000018696579 ms | Sysex message: F0 00 00 05 0D F7
00000018696582 ms | Sysex message: F0 00 00 05 0E F7
00000018696583 ms | Sysex message: F0 00 00 05 0F F7
00000018696585 ms | Sysex message: F0 00 00 06 00 F7
00000018696819 ms | Sysex message: F0 00 00 05 03 F7
00000018696821 ms | Sysex message: F0 00 00 05 04 F7
00000018696823 ms | Sysex message: F0 00 00 05 05 F7
00000018696825 ms | Sysex message: F0 00 00 05 06 F7
00000018696827 ms | Sysex message: F0 00 00 05 07 F7
00000018696829 ms | Sysex message: F0 00 00 05 08 F7
00000018696831 ms | Sysex message: F0 00 00 05 09 F7
00000018696833 ms | Sysex message: F0 00 00 05 0A F7
00000018696835 ms | Sysex message: F0 00 00 05 0B F7
00000018696836 ms | Sysex message: F0 00 00 05 0C F7
00000018696838 ms | Sysex message: F0 00 00 05 0D F7
00000018696841 ms | Sysex message: F0 00 00 05 0E F7
00000018696842 ms | Sysex message: F0 00 00 05 0F F7
00000018696844 ms | Sysex message: F0 00 00 06 00 F7
00000018697079 ms | Sysex message: F0 00 00 05 03 F7
00000018697080 ms | Sysex message: F0 00 00 05 04 F7
00000018697082 ms | Sysex message: F0 00 00 05 05 F7
00000018697084 ms | Sysex message: F0 00 00 05 06 F7
00000018697086 ms | Sysex message: F0 00 00 05 07 F7
00000018697088 ms | Sysex message: F0 00 00 05 08 F7
00000018697090 ms | Sysex message: F0 00 00 05 09 F7
00000018697092 ms | Sysex message: F0 00 00 05 0A F7
00000018697094 ms | Sysex message: F0 00 00 05 0B F7
00000018697096 ms | Sysex message: F0 00 00 05 0C F7
00000018697098 ms | Sysex message: F0 00 00 05 0D F7
00000018697100 ms | Sysex message: F0 00 00 05 0E F7
00000018697102 ms | Sysex message: F0 00 00 05 0F F7
00000018697103 ms | Sysex message: F0 00 00 06 00 F7
00000018697105 ms | Sysex message: F0 00 00 06 01 F7
00000018697341 ms | Sysex message: F0 00 00 05 03 F7
00000018697343 ms | Sysex message: F0 00 00 05 04 F7
00000018697345 ms | Sysex message: F0 00 00 05 05 F7
00000018697347 ms | Sysex message: F0 00 00 05 06 F7
00000018697349 ms | Sysex message: F0 00 00 05 07 F7
00000018697351 ms | Sysex message: F0 00 00 05 08 F7
00000018697352 ms | Sysex message: F0 00 00 05 09 F7
00000018697354 ms | Sysex message: F0 00 00 05 0A F7
00000018697356 ms | Sysex message: F0 00 00 05 0B F7
00000018697358 ms | Sysex message: F0 00 00 05 0C F7
00000018697360 ms | Sysex message: F0 00 00 05 0D F7
00000018697362 ms | Sysex message: F0 00 00 05 0E F7
00000018697364 ms | Sysex message: F0 00 00 05 0F F7
00000018697366 ms | Sysex message: F0 00 00 06 00 F7
00000018697369 ms | Sysex message: F0 00 00 06 01 F7
00000018697603 ms | Sysex message: F0 00 00 05 03 F7
00000018697605 ms | Sysex message: F0 00 00 05 04 F7
00000018697607 ms | Sysex message: F0 00 00 05 05 F7
00000018697609 ms | Sysex message: F0 00 00 05 06 F7
00000018697611 ms | Sysex message: F0 00 00 05 07 F7
00000018697612 ms | Sysex message: F0 00 00 05 08 F7
00000018697614 ms | Sysex message: F0 00 00 05 09 F7
00000018697617 ms | Sysex message: F0 00 00 05 0A F7
00000018697618 ms | Sysex message: F0 00 00 05 0B F7
00000018697620 ms | Sysex message: F0 00 00 05 0C F7
00000018697622 ms | Sysex message: F0 00 00 05 0D F7
00000018697624 ms | Sysex message: F0 00 00 05 0E F7
00000018697626 ms | Sysex message: F0 00 00 05 0F F7
00000018697628 ms | Sysex message: F0 00 00 06 00 F7
00000018697630 ms | Sysex message: F0 00 00 06 01 F7
00000018697864 ms | Sysex message: F0 00 00 05 03 F7
00000018697866 ms | Sysex message: F0 00 00 05 04 F7
00000018697868 ms | Sysex message: F0 00 00 05 05 F7
00000018697870 ms | Sysex message: F0 00 00 05 06 F7
00000018697872 ms | Sysex message: F0 00 00 05 07 F7
00000018697874 ms | Sysex message: F0 00 00 05 08 F7
00000018697876 ms | Sysex message: F0 00 00 05 09 F7
00000018697878 ms | Sysex message: F0 00 00 05 0A F7
00000018697880 ms | Sysex message: F0 00 00 05 0B F7
00000018697881 ms | Sysex message: F0 00 00 05 0C F7
00000018697883 ms | Sysex message: F0 00 00 05 0D F7
00000018697885 ms | Sysex message: F0 00 00 05 0E F7
00000018697887 ms | Sysex message: F0 00 00 05 0F F7
00000018697889 ms | Sysex message: F0 00 00 06 00 F7
00000018697891 ms | Sysex message: F0 00 00 06 01 F7

Thanks, ilmenator

Link to comment
Share on other sites

Here we go again. The file that was written to on the SD card is a different one than what I included in my last post.

From just looking at the output I can tell that something is wrong, as the pattern changes after the first four blocks.

00000002612817 ms | Sysex message: F0 00 00 00 00 00 00 0F 0E F7
00000002613061 ms | Sysex message: F0 00 00 00 00 00 00 0F 0F F7
00000002613304 ms | Sysex message: F0 00 00 00 00 00 01 00 00 F7
00000002613547 ms | Sysex message: F0 00 00 00 00 00 01 00 01 F7
00000002613793 ms | Sysex message: F0 00 00 01 03 F7
00000002613796 ms | Sysex message: F0 00 00 00 00 00 01 00 02 F7
00000002614042 ms | Sysex message: F0 00 00 01 03 F7
00000002614046 ms | Sysex message: F0 00 00 00 00 00 01 00 03 F7
00000002614290 ms | Sysex message: F0 00 00 01 03 F7
00000002614294 ms | Sysex message: F0 00 00 00 00 00 01 00 04 F7
00000002614538 ms | Sysex message: F0 00 00 01 03 F7
00000002614541 ms | Sysex message: F0 00 00 00 00 00 01 00 05 F7
00000002614785 ms | Sysex message: F0 00 00 01 03 F7
00000002614788 ms | Sysex message: F0 00 00 01 04 F7
00000002614791 ms | Sysex message: F0 00 00 00 00 00 01 00 06 F7
00000002615034 ms | Sysex message: F0 00 00 01 03 F7
00000002615036 ms | Sysex message: F0 00 00 01 04 F7
00000002615039 ms | Sysex message: F0 00 00 00 00 00 01 00 07 F7
00000002615282 ms | Sysex message: F0 00 00 01 03 F7
00000002615284 ms | Sysex message: F0 00 00 01 04 F7
00000002615287 ms | Sysex message: F0 00 00 00 00 00 01 00 08 F7
00000002615530 ms | Sysex message: F0 00 00 01 03 F7
00000002615532 ms | Sysex message: F0 00 00 01 04 F7
00000002615535 ms | Sysex message: F0 00 00 00 00 00 01 00 09 F7
00000002615777 ms | Sysex message: F0 00 00 01 03 F7
00000002615780 ms | Sysex message: F0 00 00 01 04 F7
00000002615781 ms | Sysex message: F0 00 00 01 05 F7
00000002615784 ms | Sysex message: F0 00 00 00 00 00 01 00 0A F7
00000002616025 ms | Sysex message: F0 00 00 01 03 F7
00000002616027 ms | Sysex message: F0 00 00 01 04 F7
00000002616029 ms | Sysex message: F0 00 00 01 05 F7
00000002616033 ms | Sysex message: F0 00 00 00 00 00 01 00 0B F7
00000002616274 ms | Sysex message: F0 00 00 01 03 F7
00000002616276 ms | Sysex message: F0 00 00 01 04 F7
00000002616278 ms | Sysex message: F0 00 00 01 05 F7
00000002616281 ms | Sysex message: F0 00 00 00 00 00 01 00 0C F7
00000002616521 ms | Sysex message: F0 00 00 01 03 F7
00000002616523 ms | Sysex message: F0 00 00 01 04 F7
00000002616525 ms | Sysex message: F0 00 00 01 05 F7
00000002616528 ms | Sysex message: F0 00 00 00 00 00 01 00 0D F7
00000002616768 ms | Sysex message: F0 00 00 01 03 F7
00000002616771 ms | Sysex message: F0 00 00 01 04 F7
00000002616772 ms | Sysex message: F0 00 00 01 05 F7
00000002616774 ms | Sysex message: F0 00 00 01 06 F7
00000002616777 ms | Sysex message: F0 00 00 00 00 00 01 00 0E F7
00000002617017 ms | Sysex message: F0 00 00 01 03 F7
00000002617019 ms | Sysex message: F0 00 00 01 04 F7
00000002617021 ms | Sysex message: F0 00 00 01 05 F7
00000002617023 ms | Sysex message: F0 00 00 01 06 F7
00000002617026 ms | Sysex message: F0 00 00 00 00 00 01 00 0F F7
00000002617265 ms | Sysex message: F0 00 00 01 03 F7
00000002617267 ms | Sysex message: F0 00 00 01 04 F7
00000002617270 ms | Sysex message: F0 00 00 01 05 F7
00000002617271 ms | Sysex message: F0 00 00 01 06 F7
00000002617274 ms | Sysex message: F0 00 00 00 00 00 01 01 00 F7
00000002617513 ms | Sysex message: F0 00 00 01 03 F7
00000002617515 ms | Sysex message: F0 00 00 01 04 F7
00000002617517 ms | Sysex message: F0 00 00 01 05 F7
00000002617519 ms | Sysex message: F0 00 00 01 06 F7
00000002617522 ms | Sysex message: F0 00 00 00 00 00 01 01 01 F7
00000002617760 ms | Sysex message: F0 00 00 01 03 F7
00000002617763 ms | Sysex message: F0 00 00 01 04 F7
00000002617764 ms | Sysex message: F0 00 00 01 05 F7
00000002617766 ms | Sysex message: F0 00 00 01 06 F7
00000002617768 ms | Sysex message: F0 00 00 01 07 F7
00000002617772 ms | Sysex message: F0 00 00 00 00 00 01 01 02 F7
00000002618010 ms | Sysex message: F0 00 00 01 03 F7
00000002618012 ms | Sysex message: F0 00 00 01 04 F7
00000002618014 ms | Sysex message: F0 00 00 01 05 F7
00000002618015 ms | Sysex message: F0 00 00 01 06 F7
00000002618017 ms | Sysex message: F0 00 00 01 07 F7
00000002618021 ms | Sysex message: F0 00 00 00 00 00 01 01 03 F7
00000002618258 ms | Sysex message: F0 00 00 01 03 F7
00000002618261 ms | Sysex message: F0 00 00 01 04 F7
00000002618262 ms | Sysex message: F0 00 00 01 05 F7
00000002618264 ms | Sysex message: F0 00 00 01 06 F7
00000002618266 ms | Sysex message: F0 00 00 01 07 F7
00000002618269 ms | Sysex message: F0 00 00 00 00 00 01 01 04 F7
00000002618506 ms | Sysex message: F0 00 00 01 03 F7
00000002618508 ms | Sysex message: F0 00 00 01 04 F7
00000002618510 ms | Sysex message: F0 00 00 01 05 F7
00000002618512 ms | Sysex message: F0 00 00 01 06 F7
00000002618514 ms | Sysex message: F0 00 00 01 07 F7
00000002618517 ms | Sysex message: F0 00 00 00 00 00 01 01 05 F7
00000002618754 ms | Sysex message: F0 00 00 01 03 F7
00000002618756 ms | Sysex message: F0 00 00 01 04 F7
00000002618758 ms | Sysex message: F0 00 00 01 05 F7
00000002618759 ms | Sysex message: F0 00 00 01 06 F7
00000002618761 ms | Sysex message: F0 00 00 01 07 F7
00000002618763 ms | Sysex message: F0 00 00 01 08 F7
00000002618767 ms | Sysex message: F0 00 00 00 00 00 01 01 06 F7
00000002619003 ms | Sysex message: F0 00 00 01 03 F7
00000002619006 ms | Sysex message: F0 00 00 01 04 F7
00000002619007 ms | Sysex message: F0 00 00 01 05 F7
00000002619009 ms | Sysex message: F0 00 00 01 06 F7
00000002619011 ms | Sysex message: F0 00 00 01 07 F7
00000002619013 ms | Sysex message: F0 00 00 01 08 F7
00000002619016 ms | Sysex message: F0 00 00 00 00 00 01 01 07 F7
00000002619252 ms | Sysex message: F0 00 00 01 03 F7
00000002619254 ms | Sysex message: F0 00 00 01 04 F7
00000002619256 ms | Sysex message: F0 00 00 01 05 F7
00000002619258 ms | Sysex message: F0 00 00 01 06 F7
00000002619260 ms | Sysex message: F0 00 00 01 07 F7
00000002619262 ms | Sysex message: F0 00 00 01 08 F7
00000002619265 ms | Sysex message: F0 00 00 00 00 00 01 01 08 F7
00000002619500 ms | Sysex message: F0 00 00 01 03 F7
00000002619502 ms | Sysex message: F0 00 00 01 04 F7
00000002619504 ms | Sysex message: F0 00 00 01 05 F7
00000002619506 ms | Sysex message: F0 00 00 01 06 F7
00000002619508 ms | Sysex message: F0 00 00 01 07 F7
00000002619509 ms | Sysex message: F0 00 00 01 08 F7
00000002619513 ms | Sysex message: F0 00 00 00 00 00 01 01 09 F7
00000002619747 ms | Sysex message: F0 00 00 01 03 F7
00000002619750 ms | Sysex message: F0 00 00 01 04 F7
00000002619751 ms | Sysex message: F0 00 00 01 05 F7
00000002619753 ms | Sysex message: F0 00 00 01 06 F7
00000002619755 ms | Sysex message: F0 00 00 01 07 F7
00000002619757 ms | Sysex message: F0 00 00 01 08 F7
00000002619760 ms | Sysex message: F0 00 00 01 09 F7
00000002619762 ms | Sysex message: F0 00 00 00 00 00 01 01 0A F7
00000002619997 ms | Sysex message: F0 00 00 01 03 F7
00000002620000 ms | Sysex message: F0 00 00 01 04 F7
00000002620001 ms | Sysex message: F0 00 00 01 05 F7
00000002620003 ms | Sysex message: F0 00 00 01 06 F7
00000002620005 ms | Sysex message: F0 00 00 01 07 F7
00000002620007 ms | Sysex message: F0 00 00 01 08 F7
00000002620009 ms | Sysex message: F0 00 00 01 09 F7
00000002620012 ms | Sysex message: F0 00 00 00 00 00 01 01 0B F7
00000002620247 ms | Sysex message: F0 00 00 01 03 F7
00000002620249 ms | Sysex message: F0 00 00 01 04 F7
00000002620250 ms | Sysex message: F0 00 00 01 05 F7
00000002620253 ms | Sysex message: F0 00 00 01 06 F7
00000002620254 ms | Sysex message: F0 00 00 01 07 F7
00000002620256 ms | Sysex message: F0 00 00 01 08 F7
00000002620258 ms | Sysex message: F0 00 00 01 09 F7
00000002620261 ms | Sysex message: F0 00 00 00 00 00 01 01 0C F7
00000002620496 ms | Sysex message: F0 00 00 01 03 F7
00000002620498 ms | Sysex message: F0 00 00 01 04 F7
00000002620499 ms | Sysex message: F0 00 00 01 05 F7
00000002620501 ms | Sysex message: F0 00 00 01 06 F7
00000002620503 ms | Sysex message: F0 00 00 01 07 F7
00000002620505 ms | Sysex message: F0 00 00 01 08 F7
00000002620508 ms | Sysex message: F0 00 00 01 09 F7
00000002620510 ms | Sysex message: F0 00 00 00 00 00 01 01 0D F7
00000002620744 ms | Sysex message: F0 00 00 01 03 F7
00000002620746 ms | Sysex message: F0 00 00 01 04 F7
00000002620748 ms | Sysex message: F0 00 00 01 05 F7
00000002620750 ms | Sysex message: F0 00 00 01 06 F7
00000002620752 ms | Sysex message: F0 00 00 01 07 F7
00000002620754 ms | Sysex message: F0 00 00 01 08 F7
00000002620756 ms | Sysex message: F0 00 00 01 09 F7
00000002620758 ms | Sysex message: F0 00 00 01 0A F7
00000002620761 ms | Sysex message: F0 00 00 00 00 00 01 01 0E F7
00000002620996 ms | Sysex message: F0 00 00 01 03 F7
00000002620999 ms | Sysex message: F0 00 00 01 04 F7
00000002621000 ms | Sysex message: F0 00 00 01 05 F7
00000002621002 ms | Sysex message: F0 00 00 01 06 F7
00000002621004 ms | Sysex message: F0 00 00 01 07 F7
00000002621006 ms | Sysex message: F0 00 00 01 08 F7
00000002621008 ms | Sysex message: F0 00 00 01 09 F7
00000002621010 ms | Sysex message: F0 00 00 01 0A F7
00000002621013 ms | Sysex message: F0 00 00 00 00 00 01 01 0F F7
00000002621248 ms | Sysex message: F0 00 00 01 03 F7
00000002621250 ms | Sysex message: F0 00 00 01 04 F7
00000002621252 ms | Sysex message: F0 00 00 01 05 F7
00000002621254 ms | Sysex message: F0 00 00 01 06 F7
00000002621256 ms | Sysex message: F0 00 00 01 07 F7
00000002621258 ms | Sysex message: F0 00 00 01 08 F7
00000002621260 ms | Sysex message: F0 00 00 01 09 F7
00000002621261 ms | Sysex message: F0 00 00 01 0A F7
00000002621265 ms | Sysex message: F0 00 00 00 00 00 01 02 00 F7
00000002621498 ms | Sysex message: F0 00 00 01 03 F7
00000002621501 ms | Sysex message: F0 00 00 01 04 F7
00000002621502 ms | Sysex message: F0 00 00 01 05 F7
00000002621504 ms | Sysex message: F0 00 00 01 06 F7
00000002621506 ms | Sysex message: F0 00 00 01 07 F7
00000002621508 ms | Sysex message: F0 00 00 01 08 F7
00000002621510 ms | Sysex message: F0 00 00 01 09 F7
00000002621512 ms | Sysex message: F0 00 00 01 0A F7
00000002621515 ms | Sysex message: F0 00 00 00 00 00 01 02 01 F7
00000002621748 ms | Sysex message: F0 00 00 01 03 F7
00000002621751 ms | Sysex message: F0 00 00 01 04 F7
00000002621752 ms | Sysex message: F0 00 00 01 05 F7
00000002621754 ms | Sysex message: F0 00 00 01 06 F7
00000002621756 ms | Sysex message: F0 00 00 01 07 F7
00000002621758 ms | Sysex message: F0 00 00 01 08 F7
00000002621760 ms | Sysex message: F0 00 00 01 09 F7
00000002621762 ms | Sysex message: F0 00 00 01 0A F7
00000002621764 ms | Sysex message: F0 00 00 01 0B F7
00000002621767 ms | Sysex message: F0 00 00 00 00 00 01 02 02 F7
00000002622002 ms | Sysex message: F0 00 00 01 03 F7
00000002622004 ms | Sysex message: F0 00 00 01 04 F7
00000002622006 ms | Sysex message: F0 00 00 01 05 F7
00000002622008 ms | Sysex message: F0 00 00 01 06 F7
00000002622009 ms | Sysex message: F0 00 00 01 07 F7
00000002622011 ms | Sysex message: F0 00 00 01 08 F7
00000002622013 ms | Sysex message: F0 00 00 01 09 F7
00000002622015 ms | Sysex message: F0 00 00 01 0A F7
00000002622018 ms | Sysex message: F0 00 00 01 0B F7
00000002622020 ms | Sysex message: F0 00 00 00 00 00 01 02 03 F7
00000002622255 ms | Sysex message: F0 00 00 01 03 F7
00000002622257 ms | Sysex message: F0 00 00 01 04 F7
00000002622259 ms | Sysex message: F0 00 00 01 05 F7
00000002622261 ms | Sysex message: F0 00 00 01 06 F7
00000002622263 ms | Sysex message: F0 00 00 01 07 F7
00000002622265 ms | Sysex message: F0 00 00 01 08 F7
00000002622267 ms | Sysex message: F0 00 00 01 09 F7
00000002622268 ms | Sysex message: F0 00 00 01 0A F7
00000002622270 ms | Sysex message: F0 00 00 01 0B F7
00000002622274 ms | Sysex message: F0 00 00 00 00 00 01 02 04 F7
00000002622507 ms | Sysex message: F0 00 00 01 03 F7
00000002622510 ms | Sysex message: F0 00 00 01 04 F7
00000002622511 ms | Sysex message: F0 00 00 01 05 F7
00000002622513 ms | Sysex message: F0 00 00 01 06 F7
00000002622515 ms | Sysex message: F0 00 00 01 07 F7
00000002622517 ms | Sysex message: F0 00 00 01 08 F7
00000002622519 ms | Sysex message: F0 00 00 01 09 F7
00000002622521 ms | Sysex message: F0 00 00 01 0A F7
00000002622523 ms | Sysex message: F0 00 00 01 0B F7
00000002622526 ms | Sysex message: F0 00 00 00 00 00 01 02 05 F7
00000002622760 ms | Sysex message: F0 00 00 01 03 F7
00000002622762 ms | Sysex message: F0 00 00 01 04 F7
00000002622764 ms | Sysex message: F0 00 00 01 05 F7
00000002622765 ms | Sysex message: F0 00 00 01 06 F7
00000002622767 ms | Sysex message: F0 00 00 01 07 F7
00000002622769 ms | Sysex message: F0 00 00 01 08 F7
00000002622771 ms | Sysex message: F0 00 00 01 09 F7
00000002622773 ms | Sysex message: F0 00 00 01 0A F7
00000002622775 ms | Sysex message: F0 00 00 01 0B F7
00000002622777 ms | Sysex message: F0 00 00 01 0C F7
00000002622780 ms | Sysex message: F0 00 00 00 00 00 01 02 06 F7
00000002623015 ms | Sysex message: F0 00 00 01 03 F7
00000002623017 ms | Sysex message: F0 00 00 01 04 F7
00000002623019 ms | Sysex message: F0 00 00 01 05 F7
00000002623021 ms | Sysex message: F0 00 00 01 06 F7
00000002623022 ms | Sysex message: F0 00 00 01 07 F7
00000002623024 ms | Sysex message: F0 00 00 01 08 F7
00000002623026 ms | Sysex message: F0 00 00 01 09 F7
00000002623028 ms | Sysex message: F0 00 00 01 0A F7
00000002623030 ms | Sysex message: F0 00 00 01 0B F7
00000002623033 ms | Sysex message: F0 00 00 01 0C F7
00000002623036 ms | Sysex message: F0 00 00 00 00 00 01 02 07 F7
00000002623269 ms | Sysex message: F0 00 00 01 03 F7
00000002623272 ms | Sysex message: F0 00 00 01 04 F7
00000002623273 ms | Sysex message: F0 00 00 01 05 F7
00000002623275 ms | Sysex message: F0 00 00 01 06 F7
00000002623277 ms | Sysex message: F0 00 00 01 07 F7
00000002623279 ms | Sysex message: F0 00 00 01 08 F7
00000002623281 ms | Sysex message: F0 00 00 01 09 F7
00000002623283 ms | Sysex message: F0 00 00 01 0A F7
00000002623285 ms | Sysex message: F0 00 00 01 0B F7
00000002623287 ms | Sysex message: F0 00 00 01 0C F7
00000002623290 ms | Sysex message: F0 00 00 00 00 00 01 02 08 F7
00000002623525 ms | Sysex message: F0 00 00 01 03 F7
00000002623527 ms | Sysex message: F0 00 00 01 04 F7
00000002623528 ms | Sysex message: F0 00 00 01 05 F7
00000002623530 ms | Sysex message: F0 00 00 01 06 F7
00000002623532 ms | Sysex message: F0 00 00 01 07 F7
00000002623534 ms | Sysex message: F0 00 00 01 08 F7
00000002623536 ms | Sysex message: F0 00 00 01 09 F7
00000002623538 ms | Sysex message: F0 00 00 01 0A F7
00000002623540 ms | Sysex message: F0 00 00 01 0B F7
00000002623542 ms | Sysex message: F0 00 00 01 0C F7
00000002623545 ms | Sysex message: F0 00 00 00 00 00 01 02 09 F7
00000002623778 ms | Sysex message: F0 00 00 01 03 F7
00000002623781 ms | Sysex message: F0 00 00 01 04 F7
00000002623783 ms | Sysex message: F0 00 00 01 05 F7
00000002623784 ms | Sysex message: F0 00 00 01 06 F7
00000002623786 ms | Sysex message: F0 00 00 01 07 F7
00000002623788 ms | Sysex message: F0 00 00 01 08 F7
00000002623790 ms | Sysex message: F0 00 00 01 09 F7
00000002623792 ms | Sysex message: F0 00 00 01 0A F7
00000002623794 ms | Sysex message: F0 00 00 01 0B F7
00000002623796 ms | Sysex message: F0 00 00 01 0C F7
00000002623798 ms | Sysex message: F0 00 00 01 0D F7
00000002623801 ms | Sysex message: F0 00 00 00 00 00 01 02 0A F7
00000002624035 ms | Sysex message: F0 00 00 01 03 F7
00000002624038 ms | Sysex message: F0 00 00 01 04 F7
00000002624039 ms | Sysex message: F0 00 00 01 05 F7
00000002624041 ms | Sysex message: F0 00 00 01 06 F7
00000002624043 ms | Sysex message: F0 00 00 01 07 F7
00000002624045 ms | Sysex message: F0 00 00 01 08 F7
00000002624047 ms | Sysex message: F0 00 00 01 09 F7
00000002624049 ms | Sysex message: F0 00 00 01 0A F7
00000002624051 ms | Sysex message: F0 00 00 01 0B F7
00000002624053 ms | Sysex message: F0 00 00 01 0C F7
00000002624054 ms | Sysex message: F0 00 00 01 0D F7
00000002624058 ms | Sysex message: F0 00 00 00 00 00 01 02 0B F7
00000002624292 ms | Sysex message: F0 00 00 01 03 F7
00000002624294 ms | Sysex message: F0 00 00 01 04 F7
00000002624297 ms | Sysex message: F0 00 00 01 05 F7
00000002624298 ms | Sysex message: F0 00 00 01 06 F7
00000002624300 ms | Sysex message: F0 00 00 01 07 F7
00000002624302 ms | Sysex message: F0 00 00 01 08 F7
00000002624304 ms | Sysex message: F0 00 00 01 09 F7
00000002624306 ms | Sysex message: F0 00 00 01 0A F7
00000002624308 ms | Sysex message: F0 00 00 01 0B F7
00000002624310 ms | Sysex message: F0 00 00 01 0C F7
00000002624312 ms | Sysex message: F0 00 00 01 0D F7
00000002624315 ms | Sysex message: F0 00 00 00 00 00 01 02 0C F7
00000002624549 ms | Sysex message: F0 00 00 01 03 F7
00000002624551 ms | Sysex message: F0 00 00 01 04 F7
00000002624554 ms | Sysex message: F0 00 00 01 05 F7
00000002624555 ms | Sysex message: F0 00 00 01 06 F7
00000002624557 ms | Sysex message: F0 00 00 01 07 F7
00000002624559 ms | Sysex message: F0 00 00 01 08 F7
00000002624561 ms | Sysex message: F0 00 00 01 09 F7
00000002624563 ms | Sysex message: F0 00 00 01 0A F7
00000002624564 ms | Sysex message: F0 00 00 01 0B F7
00000002624566 ms | Sysex message: F0 00 00 01 0C F7
00000002624568 ms | Sysex message: F0 00 00 01 0D F7
00000002624571 ms | Sysex message: F0 00 00 00 00 00 01 02 0D F7
00000002624806 ms | Sysex message: F0 00 00 01 03 F7
00000002624808 ms | Sysex message: F0 00 00 01 04 F7
00000002624810 ms | Sysex message: F0 00 00 01 05 F7
00000002624811 ms | Sysex message: F0 00 00 01 06 F7
00000002624813 ms | Sysex message: F0 00 00 01 07 F7
00000002624815 ms | Sysex message: F0 00 00 01 08 F7
00000002624817 ms | Sysex message: F0 00 00 01 09 F7
00000002624820 ms | Sysex message: F0 00 00 01 0A F7
00000002624821 ms | Sysex message: F0 00 00 01 0B F7
00000002624823 ms | Sysex message: F0 00 00 01 0C F7
00000002624825 ms | Sysex message: F0 00 00 01 0D F7
00000002624827 ms | Sysex message: F0 00 00 01 0E F7
00000002624830 ms | Sysex message: F0 00 00 00 00 00 01 02 0E F7
00000002625065 ms | Sysex message: F0 00 00 01 03 F7
00000002625067 ms | Sysex message: F0 00 00 01 04 F7
00000002625069 ms | Sysex message: F0 00 00 01 05 F7
00000002625071 ms | Sysex message: F0 00 00 01 06 F7
00000002625073 ms | Sysex message: F0 00 00 01 07 F7
00000002625075 ms | Sysex message: F0 00 00 01 08 F7
00000002625077 ms | Sysex message: F0 00 00 01 09 F7
00000002625079 ms | Sysex message: F0 00 00 01 0A F7
00000002625081 ms | Sysex message: F0 00 00 01 0B F7
00000002625082 ms | Sysex message: F0 00 00 01 0C F7
00000002625084 ms | Sysex message: F0 00 00 01 0D F7
00000002625086 ms | Sysex message: F0 00 00 01 0E F7
00000002625090 ms | Sysex message: F0 00 00 00 00 00 01 02 0F F7
00000002625324 ms | Sysex message: F0 00 00 01 03 F7
00000002625327 ms | Sysex message: F0 00 00 01 04 F7
00000002625329 ms | Sysex message: F0 00 00 01 05 F7
00000002625330 ms | Sysex message: F0 00 00 01 06 F7
00000002625332 ms | Sysex message: F0 00 00 01 07 F7
00000002625334 ms | Sysex message: F0 00 00 01 08 F7
00000002625336 ms | Sysex message: F0 00 00 01 09 F7
00000002625338 ms | Sysex message: F0 00 00 01 0A F7
00000002625340 ms | Sysex message: F0 00 00 01 0B F7
00000002625341 ms | Sysex message: F0 00 00 01 0C F7
00000002625344 ms | Sysex message: F0 00 00 01 0D F7
00000002625345 ms | Sysex message: F0 00 00 01 0E F7
00000002625348 ms | Sysex message: F0 00 00 00 00 00 01 03 00 F7
00000002625582 ms | Sysex message: F0 00 00 01 03 F7
00000002625585 ms | Sysex message: F0 00 00 01 04 F7
00000002625586 ms | Sysex message: F0 00 00 01 05 F7
00000002625588 ms | Sysex message: F0 00 00 01 06 F7
00000002625590 ms | Sysex message: F0 00 00 01 07 F7
00000002625592 ms | Sysex message: F0 00 00 01 08 F7
00000002625594 ms | Sysex message: F0 00 00 01 09 F7
00000002625595 ms | Sysex message: F0 00 00 01 0A F7
00000002625598 ms | Sysex message: F0 00 00 01 0B F7
00000002625599 ms | Sysex message: F0 00 00 01 0C F7
00000002625601 ms | Sysex message: F0 00 00 01 0D F7
00000002625603 ms | Sysex message: F0 00 00 01 0E F7
00000002625606 ms | Sysex message: F0 00 00 00 00 00 01 03 01 F7
00000002625840 ms | Sysex message: F0 00 00 01 03 F7
00000002625843 ms | Sysex message: F0 00 00 01 04 F7
00000002625844 ms | Sysex message: F0 00 00 01 05 F7
00000002625846 ms | Sysex message: F0 00 00 01 06 F7
00000002625848 ms | Sysex message: F0 00 00 01 07 F7
00000002625850 ms | Sysex message: F0 00 00 01 08 F7
00000002625852 ms | Sysex message: F0 00 00 01 09 F7
00000002625854 ms | Sysex message: F0 00 00 01 0A F7
00000002625856 ms | Sysex message: F0 00 00 01 0B F7
00000002625858 ms | Sysex message: F0 00 00 01 0C F7
00000002625859 ms | Sysex message: F0 00 00 01 0D F7
00000002625861 ms | Sysex message: F0 00 00 01 0E F7
00000002625863 ms | Sysex message: F0 00 00 01 0F F7
00000002625866 ms | Sysex message: F0 00 00 00 00 00 01 03 02 F7
00000002626102 ms | Sysex message: F0 00 00 01 03 F7
00000002626104 ms | Sysex message: F0 00 00 01 04 F7
00000002626106 ms | Sysex message: F0 00 00 01 05 F7
00000002626108 ms | Sysex message: F0 00 00 01 06 F7
00000002626110 ms | Sysex message: F0 00 00 01 07 F7
00000002626112 ms | Sysex message: F0 00 00 01 08 F7
00000002626114 ms | Sysex message: F0 00 00 01 09 F7
00000002626116 ms | Sysex message: F0 00 00 01 0A F7
00000002626117 ms | Sysex message: F0 00 00 01 0B F7
00000002626119 ms | Sysex message: F0 00 00 01 0C F7
00000002626121 ms | Sysex message: F0 00 00 01 0D F7
00000002626123 ms | Sysex message: F0 00 00 01 0E F7
00000002626125 ms | Sysex message: F0 00 00 01 0F F7
00000002626129 ms | Sysex message: F0 00 00 00 00 00 01 03 03 F7
00000002626363 ms | Sysex message: F0 00 00 01 03 F7
00000002626366 ms | Sysex message: F0 00 00 01 04 F7
00000002626367 ms | Sysex message: F0 00 00 01 05 F7
00000002626369 ms | Sysex message: F0 00 00 01 06 F7
00000002626371 ms | Sysex message: F0 00 00 01 07 F7
00000002626373 ms | Sysex message: F0 00 00 01 08 F7
00000002626375 ms | Sysex message: F0 00 00 01 09 F7
00000002626377 ms | Sysex message: F0 00 00 01 0A F7
00000002626379 ms | Sysex message: F0 00 00 01 0B F7
00000002626381 ms | Sysex message: F0 00 00 01 0C F7
00000002626383 ms | Sysex message: F0 00 00 01 0D F7
00000002626384 ms | Sysex message: F0 00 00 01 0E F7
00000002626386 ms | Sysex message: F0 00 00 01 0F F7
00000002626390 ms | Sysex message: F0 00 00 00 00 00 01 03 04 F7
00000002626624 ms | Sysex message: F0 00 00 01 03 F7
00000002626626 ms | Sysex message: F0 00 00 01 04 F7
00000002626628 ms | Sysex message: F0 00 00 01 05 F7
00000002626629 ms | Sysex message: F0 00 00 01 06 F7
00000002626631 ms | Sysex message: F0 00 00 01 07 F7
00000002626633 ms | Sysex message: F0 00 00 01 08 F7
00000002626635 ms | Sysex message: F0 00 00 01 09 F7
00000002626638 ms | Sysex message: F0 00 00 01 0A F7
00000002626639 ms | Sysex message: F0 00 00 01 0B F7
00000002626641 ms | Sysex message: F0 00 00 01 0C F7
00000002626643 ms | Sysex message: F0 00 00 01 0D F7
00000002626645 ms | Sysex message: F0 00 00 01 0E F7
00000002626647 ms | Sysex message: F0 00 00 01 0F F7
00000002626650 ms | Sysex message: F0 00 00 00 00 00 01 03 05 F7
00000002626884 ms | Sysex message: F0 00 00 01 03 F7
00000002626886 ms | Sysex message: F0 00 00 01 04 F7
00000002626889 ms | Sysex message: F0 00 00 01 05 F7
00000002626890 ms | Sysex message: F0 00 00 01 06 F7
00000002626892 ms | Sysex message: F0 00 00 01 07 F7
00000002626894 ms | Sysex message: F0 00 00 01 08 F7
00000002626896 ms | Sysex message: F0 00 00 01 09 F7
00000002626897 ms | Sysex message: F0 00 00 01 0A F7
00000002626899 ms | Sysex message: F0 00 00 01 0B F7
00000002626901 ms | Sysex message: F0 00 00 01 0C F7
00000002626903 ms | Sysex message: F0 00 00 01 0D F7
00000002626905 ms | Sysex message: F0 00 00 01 0E F7
00000002626907 ms | Sysex message: F0 00 00 01 0F F7
00000002626909 ms | Sysex message: F0 00 00 02 00 F7
00000002626912 ms | Sysex message: F0 00 00 00 00 00 01 03 06 F7
00000002627147 ms | Sysex message: F0 00 00 01 03 F7
00000002627150 ms | Sysex message: F0 00 00 01 04 F7
00000002627151 ms | Sysex message: F0 00 00 01 05 F7
00000002627153 ms | Sysex message: F0 00 00 01 06 F7
00000002627155 ms | Sysex message: F0 00 00 01 07 F7
00000002627157 ms | Sysex message: F0 00 00 01 08 F7
00000002627159 ms | Sysex message: F0 00 00 01 09 F7
00000002627161 ms | Sysex message: F0 00 00 01 0A F7
00000002627162 ms | Sysex message: F0 00 00 01 0B F7
00000002627164 ms | Sysex message: F0 00 00 01 0C F7
00000002627166 ms | Sysex message: F0 00 00 01 0D F7
00000002627168 ms | Sysex message: F0 00 00 01 0E F7
00000002627170 ms | Sysex message: F0 00 00 01 0F F7
00000002627172 ms | Sysex message: F0 00 00 02 00 F7
00000002627176 ms | Sysex message: F0 00 00 00 00 00 01 03 07 F7
00000002627411 ms | Sysex message: F0 00 00 01 03 F7
00000002627414 ms | Sysex message: F0 00 00 01 04 F7
00000002627415 ms | Sysex message: F0 00 00 01 05 F7
00000002627417 ms | Sysex message: F0 00 00 01 06 F7
00000002627419 ms | Sysex message: F0 00 00 01 07 F7
00000002627420 ms | Sysex message: F0 00 00 01 08 F7
00000002627422 ms | Sysex message: F0 00 00 01 09 F7
00000002627424 ms | Sysex message: F0 00 00 01 0A F7
00000002627426 ms | Sysex message: F0 00 00 01 0B F7
00000002627428 ms | Sysex message: F0 00 00 01 0C F7
00000002627430 ms | Sysex message: F0 00 00 01 0D F7
00000002627432 ms | Sysex message: F0 00 00 01 0E F7
00000002627434 ms | Sysex message: F0 00 00 01 0F F7
00000002627436 ms | Sysex message: F0 00 00 02 00 F7
00000002627439 ms | Sysex message: F0 00 00 00 00 00 01 03 08 F7
00000002627673 ms | Sysex message: F0 00 00 01 03 F7
00000002627675 ms | Sysex message: F0 00 00 01 04 F7
00000002627677 ms | Sysex message: F0 00 00 01 05 F7
00000002627679 ms | Sysex message: F0 00 00 01 06 F7
00000002627681 ms | Sysex message: F0 00 00 01 07 F7
00000002627683 ms | Sysex message: F0 00 00 01 08 F7
00000002627685 ms | Sysex message: F0 00 00 01 09 F7
00000002627687 ms | Sysex message: F0 00 00 01 0A F7
00000002627688 ms | Sysex message: F0 00 00 01 0B F7
00000002627690 ms | Sysex message: F0 00 00 01 0C F7
00000002627692 ms | Sysex message: F0 00 00 01 0D F7
00000002627694 ms | Sysex message: F0 00 00 01 0E F7
00000002627697 ms | Sysex message: F0 00 00 01 0F F7
00000002627698 ms | Sysex message: F0 00 00 02 00 F7
00000002627701 ms | Sysex message: F0 00 00 00 00 00 01 03 09 F7
00000002627935 ms | Sysex message: F0 00 00 01 03 F7
00000002627937 ms | Sysex message: F0 00 00 01 04 F7
00000002627939 ms | Sysex message: F0 00 00 01 05 F7
00000002627941 ms | Sysex message: F0 00 00 01 06 F7
00000002627943 ms | Sysex message: F0 00 00 01 07 F7
00000002627944 ms | Sysex message: F0 00 00 01 08 F7
00000002627946 ms | Sysex message: F0 00 00 01 09 F7
00000002627948 ms | Sysex message: F0 00 00 01 0A F7
00000002627950 ms | Sysex message: F0 00 00 01 0B F7
00000002627953 ms | Sysex message: F0 00 00 01 0C F7
00000002627954 ms | Sysex message: F0 00 00 01 0D F7
00000002627956 ms | Sysex message: F0 00 00 01 0E F7
00000002627958 ms | Sysex message: F0 00 00 01 0F F7
00000002627960 ms | Sysex message: F0 00 00 02 00 F7
00000002627962 ms | Sysex message: F0 00 00 02 01 F7
00000002627965 ms | Sysex message: F0 00 00 00 00 00 01 03 0A F7
00000002628200 ms | Sysex message: F0 00 00 01 03 F7
00000002628202 ms | Sysex message: F0 00 00 01 04 F7
00000002628204 ms | Sysex message: F0 00 00 01 05 F7
00000002628206 ms | Sysex message: F0 00 00 01 06 F7
00000002628208 ms | Sysex message: F0 00 00 01 07 F7
00000002628210 ms | Sysex message: F0 00 00 01 08 F7
00000002628212 ms | Sysex message: F0 00 00 01 09 F7
00000002628214 ms | Sysex message: F0 00 00 01 0A F7
00000002628216 ms | Sysex message: F0 00 00 01 0B F7
00000002628218 ms | Sysex message: F0 00 00 01 0C F7
00000002628220 ms | Sysex message: F0 00 00 01 0D F7
00000002628222 ms | Sysex message: F0 00 00 01 0E F7
00000002628224 ms | Sysex message: F0 00 00 01 0F F7
00000002628226 ms | Sysex message: F0 00 00 02 00 F7
00000002628227 ms | Sysex message: F0 00 00 02 01 F7
00000002628230 ms | Sysex message: F0 00 00 00 00 00 01 03 0B F7
00000002628465 ms | Sysex message: F0 00 00 01 03 F7
00000002628467 ms | Sysex message: F0 00 00 01 04 F7
00000002628470 ms | Sysex message: F0 00 00 01 05 F7
00000002628471 ms | Sysex message: F0 00 00 01 06 F7
00000002628473 ms | Sysex message: F0 00 00 01 07 F7
00000002628475 ms | Sysex message: F0 00 00 01 08 F7
00000002628477 ms | Sysex message: F0 00 00 01 09 F7
00000002628479 ms | Sysex message: F0 00 00 01 0A F7
00000002628481 ms | Sysex message: F0 00 00 01 0B F7
00000002628483 ms | Sysex message: F0 00 00 01 0C F7
00000002628485 ms | Sysex message: F0 00 00 01 0D F7
00000002628487 ms | Sysex message: F0 00 00 01 0E F7
00000002628488 ms | Sysex message: F0 00 00 01 0F F7
00000002628490 ms | Sysex message: F0 00 00 02 00 F7
00000002628493 ms | Sysex message: F0 00 00 02 01 F7
00000002628495 ms | Sysex message: F0 00 00 00 00 00 01 03 0C F7
00000002628729 ms | Sysex message: F0 00 00 01 03 F7
00000002628731 ms | Sysex message: F0 00 00 01 04 F7
00000002628733 ms | Sysex message: F0 00 00 01 05 F7
00000002628735 ms | Sysex message: F0 00 00 01 06 F7
00000002628737 ms | Sysex message: F0 00 00 01 07 F7
00000002628739 ms | Sysex message: F0 00 00 01 08 F7
00000002628741 ms | Sysex message: F0 00 00 01 09 F7
00000002628742 ms | Sysex message: F0 00 00 01 0A F7
00000002628745 ms | Sysex message: F0 00 00 01 0B F7
00000002628746 ms | Sysex message: F0 00 00 01 0C F7
00000002628748 ms | Sysex message: F0 00 00 01 0D F7
00000002628750 ms | Sysex message: F0 00 00 01 0E F7
00000002628753 ms | Sysex message: F0 00 00 01 0F F7
00000002628754 ms | Sysex message: F0 00 00 02 00 F7
00000002628756 ms | Sysex message: F0 00 00 02 01 F7
00000002628759 ms | Sysex message: F0 00 00 00 00 00 01 03 0D F7
The "read from" SD card protocol looks exactly the same. I have to admit that I cannot rule out that the mistake is on my side (did I tell you that I'm not a programmer?). Therefore I include the function that I use to write to the SD card. You can see that it is basically the same code as in your example. card_addr is the address used to access the SRAM memory, PROG_SRAM_Read() is the function to read one byte from there. It is then stored in a global variable ram_byte.
unsigned char SRAM_to_SDCARD_Bank(unsigned char *syx_filename) __wparam
{
  unsigned char i;
  unsigned char c;
  unsigned long filesize;
  unsigned long offset;
  unsigned int send_offset;
	card_addr = 0;

	MIOS_LCD_CursorSet(0x00);
	MIOS_LCD_PrintCString("Write to SD card ");

	// 1st Line: print filename
  MIOS_LCD_CursorSet(0x00);
  for(i=0; i<8; ++i)
    MIOS_LCD_PrintChar(syx_filename[i]);
  MIOS_LCD_PrintChar('.');
  for(i=0; i<3; ++i)
    MIOS_LCD_PrintChar(syx_filename[8+i]);
  for(i=0; i<4; ++i)
    MIOS_LCD_PrintChar(' ');	


  // open partition
  if( error_code = SDCARD_FILE_Init() ) {
    // maybe card has been disconnected - try to init card and read partition again
    SDCARD_Init();
    error_code = SDCARD_FILE_Init();
  }

  // if no error: open file
  if( !error_code )
    error_code = SDCARD_FILE_Open(0, syx_filename, 0); // search mode, filename, start entry

  // print error code if this failed
  if( error_code ) {
    MIOS_LCD_CursorSet(0x40);
    MIOS_LCD_PrintCString("Error Code: ");
    MIOS_LCD_PrintHex2(error_code);
    MIOS_LCD_PrintCString("  ");
		return error_code;
  }

  // check filesize
  if( !(filesize = sdcard_file_dir_entry_ptr->size) ) {
    MIOS_LCD_CursorSet(0x40);
    MIOS_LCD_PrintCString("File is empty.  ");
    return 0xff;
  }

	// read from SRAM
  offset = 0;
  while( offset < filesize ) {
    send_offset = 0;
    while( send_offset < 256 && offset < filesize ) {
			card_l_addr = card_addr;
			card_m_addr = card_addr >> 8;
			MIOS_LCD_CursorSet(0x64);
			MIOS_LCD_PrintHex2(card_m_addr);
			MIOS_LCD_PrintHex2(card_l_addr);
			PROG_SRAM_Read();
			sdcard_buffer_p0[(unsigned char)send_offset] = ram_byte;
			if(offset>5 && offset<21){
				MIOS_LCD_CursorSet(0x53 + offset);
				MIOS_LCD_PrintChar(sdcard_buffer_p0[(unsigned char)send_offset]);
			}
			++card_addr;
      ++send_offset;
      ++offset;
    }

    while( send_offset < 512 && offset < filesize ) {
			card_l_addr = card_addr;
			card_m_addr = card_addr >> 8;
			MIOS_LCD_CursorSet(0x64);
			MIOS_LCD_PrintHex2(card_m_addr);
			MIOS_LCD_PrintHex2(card_l_addr);
			PROG_SRAM_Read();
			sdcard_buffer_p1[(unsigned char)send_offset] = ram_byte;
			MIOS_LCD_CursorSet(0x61);
			MIOS_LCD_PrintHex2(sdcard_buffer_p1[(unsigned char)send_offset]);
			++card_addr;
      ++send_offset;
      ++offset;
    }


    // 2nd Line: print offset
    MIOS_LCD_CursorSet(0x40);
    MIOS_LCD_PrintCString("Offs. 0x");
    MIOS_LCD_PrintHex2((unsigned char)(offset >> 24));
    MIOS_LCD_PrintHex2((unsigned char)(offset >> 16));
    MIOS_LCD_PrintHex2((unsigned char)(offset >> 8));
    MIOS_LCD_PrintHex2((unsigned char)(offset >> 0));

    // search for sector at given offset
    if( error_code = SDCARD_FILE_Seek(offset-512) ) {
      MIOS_LCD_Clear();
      MIOS_LCD_CursorSet(0x00);
      MIOS_LCD_PrintCString("File Seek failed");
      MIOS_LCD_CursorSet(0x40);
      MIOS_LCD_PrintCString("Error Code: ");
      MIOS_LCD_PrintHex2(error_code);
      return error_code;
    }

		// 2nd line: print sector
		MIOS_LCD_PrintChar(' ');
    MIOS_LCD_PrintHex2((unsigned char)(sdcard_file_sector >> 24));
    MIOS_LCD_PrintHex2((unsigned char)(sdcard_file_sector >> 16));
    MIOS_LCD_PrintHex2((unsigned char)(sdcard_file_sector >> 8));
    MIOS_LCD_PrintHex2((unsigned char)(sdcard_file_sector >> 0));

    // write sector
    if( error_code = SDCARD_SectorWrite(sdcard_file_sector) ) {
      MIOS_LCD_Clear();
      MIOS_LCD_CursorSet(0x00);
      MIOS_LCD_PrintCString("SD access error ");
      MIOS_LCD_CursorSet(0x40);
      MIOS_LCD_PrintCString("Error Code: ");
      MIOS_LCD_PrintHex2(error_code);
      return error_code;
    }

    // feed watchdog
__asm
    clrwdt
__endasm;

  }

  return 0;
}

Best regards, ilmenator

Link to comment
Share on other sites

From just looking at the output I can tell that something is wrong, as the pattern changes after the first four blocks.

It looks fine - SDCARD_FILE_Seek() goes through the FAT to search for the cluster (smaller strings). The longer strings contain the found sector number in nibble-format - the sector number is increasing, which indicates, that a) the file system isn't fragmented (it doesn't matter anyhow, the algorithm can also work with fragmented partitions), but more important: that the FAT algorithm is working.

To doublecheck smaller cluster sizes, I re-partitioned my own SD-Card with gparted, and formatted it with 2k cluster size. I was able to reproduce the bug with the previous sdcard version, and tested the new one - successfully. The sysex_overwrite application modifies .syx files with 64k size correctly.

My assumption is, that the filesystem of your card is corrupted due to the experiments with the previous version. Random things can happen if random sectors are written ;)

Did you already re-format your sdcard?

Best Regards, Thorsten.

Link to comment
Share on other sites

It took me a bit longer to re-partition and re-format my SD card (did you know that XP's "FAT" is not the FAT16 that the SDCARD module expects? I got error message 0x11 after formatting with the FAT option in Win XP...).

There is progress, but I guess this is just because the cluster size has been increased in the re-partitioning process. It still does not work as expected over here. The first 8kB (out of 32kB) are ok, that is up to address 0x2000. After that, the data is corrupted. When you look at the attached SysEx protocol messages you can see that the first 16 sectors (=the first cluster) are apparently written without SDCARD_FILE_Seek() being called. When this is called the first time, 16 sectors have been written, which corresponds to 8kB. After that the file is corrupted.

00000000158385 ms | Sysex message: F0 00 00 00 00 00 04 05 0E F7
00000000158629 ms | Sysex message: F0 00 00 00 00 00 04 05 0F F7
00000000158871 ms | Sysex message: F0 00 00 00 00 00 04 06 00 F7
00000000159114 ms | Sysex message: F0 00 00 00 00 00 04 06 01 F7
00000000159357 ms | Sysex message: F0 00 00 00 00 00 04 06 02 F7
00000000159601 ms | Sysex message: F0 00 00 00 00 00 04 06 03 F7
00000000159845 ms | Sysex message: F0 00 00 00 00 00 04 06 04 F7
00000000160087 ms | Sysex message: F0 00 00 00 00 00 04 06 05 F7
00000000160330 ms | Sysex message: F0 00 00 00 00 00 04 06 06 F7
00000000160574 ms | Sysex message: F0 00 00 00 00 00 04 06 07 F7
00000000160818 ms | Sysex message: F0 00 00 00 00 00 04 06 08 F7
00000000161060 ms | Sysex message: F0 00 00 00 00 00 04 06 09 F7
00000000161303 ms | Sysex message: F0 00 00 00 00 00 04 06 0A F7
00000000161546 ms | Sysex message: F0 00 00 00 00 00 04 06 0B F7
00000000161790 ms | Sysex message: F0 00 00 00 00 00 04 06 0C F7
00000000162033 ms | Sysex message: F0 00 00 00 00 00 04 06 0D F7
00000000162279 ms | Sysex message: F0 00 00 02 03 F7
00000000162282 ms | Sysex message: F0 00 00 00 00 00 04 06 0E F7
00000000162527 ms | Sysex message: F0 00 00 02 03 F7
00000000162530 ms | Sysex message: F0 00 00 00 00 00 04 06 0F F7
00000000162775 ms | Sysex message: F0 00 00 02 03 F7
00000000162778 ms | Sysex message: F0 00 00 00 00 00 04 07 00 F7
00000000163023 ms | Sysex message: F0 00 00 02 03 F7
00000000163026 ms | Sysex message: F0 00 00 00 00 00 04 07 01 F7
00000000163271 ms | Sysex message: F0 00 00 02 03 F7
00000000163274 ms | Sysex message: F0 00 00 00 00 00 04 07 02 F7
00000000163520 ms | Sysex message: F0 00 00 02 03 F7
00000000163523 ms | Sysex message: F0 00 00 00 00 00 04 07 03 F7
00000000163768 ms | Sysex message: F0 00 00 02 03 F7
00000000163771 ms | Sysex message: F0 00 00 00 00 00 04 07 04 F7
00000000164016 ms | Sysex message: F0 00 00 02 03 F7
00000000164019 ms | Sysex message: F0 00 00 00 00 00 04 07 05 F7
00000000164263 ms | Sysex message: F0 00 00 02 03 F7
00000000164267 ms | Sysex message: F0 00 00 00 00 00 04 07 06 F7
00000000164513 ms | Sysex message: F0 00 00 02 03 F7
00000000164516 ms | Sysex message: F0 00 00 00 00 00 04 07 07 F7
00000000164761 ms | Sysex message: F0 00 00 02 03 F7
00000000164764 ms | Sysex message: F0 00 00 00 00 00 04 07 08 F7
00000000165008 ms | Sysex message: F0 00 00 02 03 F7
00000000165011 ms | Sysex message: F0 00 00 00 00 00 04 07 09 F7
00000000165256 ms | Sysex message: F0 00 00 02 03 F7
00000000165259 ms | Sysex message: F0 00 00 00 00 00 04 07 0A F7
00000000165505 ms | Sysex message: F0 00 00 02 03 F7
00000000165508 ms | Sysex message: F0 00 00 00 00 00 04 07 0B F7
00000000165753 ms | Sysex message: F0 00 00 02 03 F7
00000000165756 ms | Sysex message: F0 00 00 00 00 00 04 07 0C F7
00000000166001 ms | Sysex message: F0 00 00 02 03 F7
00000000166004 ms | Sysex message: F0 00 00 00 00 00 04 07 0D F7
00000000166247 ms | Sysex message: F0 00 00 02 03 F7
00000000166249 ms | Sysex message: F0 00 00 02 04 F7
00000000166253 ms | Sysex message: F0 00 00 00 00 00 04 07 0E F7
00000000166496 ms | Sysex message: F0 00 00 02 03 F7
00000000166498 ms | Sysex message: F0 00 00 02 04 F7
00000000166501 ms | Sysex message: F0 00 00 00 00 00 04 07 0F F7
00000000166744 ms | Sysex message: F0 00 00 02 03 F7
00000000166746 ms | Sysex message: F0 00 00 02 04 F7
00000000166749 ms | Sysex message: F0 00 00 00 00 00 04 08 00 F7
00000000166992 ms | Sysex message: F0 00 00 02 03 F7
00000000166994 ms | Sysex message: F0 00 00 02 04 F7
00000000166997 ms | Sysex message: F0 00 00 00 00 00 04 08 01 F7
00000000167239 ms | Sysex message: F0 00 00 02 03 F7
00000000167242 ms | Sysex message: F0 00 00 02 04 F7
00000000167244 ms | Sysex message: F0 00 00 00 00 00 04 08 02 F7
00000000167489 ms | Sysex message: F0 00 00 02 03 F7
00000000167491 ms | Sysex message: F0 00 00 02 04 F7
00000000167494 ms | Sysex message: F0 00 00 00 00 00 04 08 03 F7
00000000167737 ms | Sysex message: F0 00 00 02 03 F7
00000000167739 ms | Sysex message: F0 00 00 02 04 F7
00000000167742 ms | Sysex message: F0 00 00 00 00 00 04 08 04 F7
00000000167985 ms | Sysex message: F0 00 00 02 03 F7
00000000167987 ms | Sysex message: F0 00 00 02 04 F7
00000000167990 ms | Sysex message: F0 00 00 00 00 00 04 08 05 F7
00000000168232 ms | Sysex message: F0 00 00 02 03 F7
00000000168235 ms | Sysex message: F0 00 00 02 04 F7
00000000168237 ms | Sysex message: F0 00 00 00 00 00 04 08 06 F7
00000000168480 ms | Sysex message: F0 00 00 02 03 F7
00000000168483 ms | Sysex message: F0 00 00 02 04 F7
00000000168486 ms | Sysex message: F0 00 00 00 00 00 04 08 07 F7
00000000168729 ms | Sysex message: F0 00 00 02 03 F7
00000000168731 ms | Sysex message: F0 00 00 02 04 F7
00000000168734 ms | Sysex message: F0 00 00 00 00 00 04 08 08 F7
00000000168976 ms | Sysex message: F0 00 00 02 03 F7
00000000168979 ms | Sysex message: F0 00 00 02 04 F7
00000000168981 ms | Sysex message: F0 00 00 00 00 00 04 08 09 F7
00000000169224 ms | Sysex message: F0 00 00 02 03 F7
00000000169226 ms | Sysex message: F0 00 00 02 04 F7
00000000169229 ms | Sysex message: F0 00 00 00 00 00 04 08 0A F7
00000000169472 ms | Sysex message: F0 00 00 02 03 F7
00000000169475 ms | Sysex message: F0 00 00 02 04 F7
00000000169477 ms | Sysex message: F0 00 00 00 00 00 04 08 0B F7
00000000169720 ms | Sysex message: F0 00 00 02 03 F7
00000000169723 ms | Sysex message: F0 00 00 02 04 F7
00000000169725 ms | Sysex message: F0 00 00 00 00 00 04 08 0C F7
00000000169968 ms | Sysex message: F0 00 00 02 03 F7
00000000169971 ms | Sysex message: F0 00 00 02 04 F7
00000000169973 ms | Sysex message: F0 00 00 00 00 00 04 08 0D F7
00000000170215 ms | Sysex message: F0 00 00 02 03 F7
00000000170217 ms | Sysex message: F0 00 00 02 04 F7
00000000170219 ms | Sysex message: F0 00 00 02 05 F7
00000000170222 ms | Sysex message: F0 00 00 00 00 00 04 08 0E F7
00000000170464 ms | Sysex message: F0 00 00 02 03 F7
00000000170467 ms | Sysex message: F0 00 00 02 04 F7
00000000170468 ms | Sysex message: F0 00 00 02 05 F7
00000000170471 ms | Sysex message: F0 00 00 00 00 00 04 08 0F F7
00000000170712 ms | Sysex message: F0 00 00 02 03 F7
00000000170714 ms | Sysex message: F0 00 00 02 04 F7
00000000170716 ms | Sysex message: F0 00 00 02 05 F7
00000000170719 ms | Sysex message: F0 00 00 00 00 00 04 09 00 F7
00000000170960 ms | Sysex message: F0 00 00 02 03 F7
00000000170963 ms | Sysex message: F0 00 00 02 04 F7
00000000170964 ms | Sysex message: F0 00 00 02 05 F7
00000000170967 ms | Sysex message: F0 00 00 00 00 00 04 09 01 F7
00000000171207 ms | Sysex message: F0 00 00 02 03 F7
00000000171209 ms | Sysex message: F0 00 00 02 04 F7
00000000171211 ms | Sysex message: F0 00 00 02 05 F7
00000000171214 ms | Sysex message: F0 00 00 00 00 00 04 09 02 F7
00000000171456 ms | Sysex message: F0 00 00 02 03 F7
00000000171459 ms | Sysex message: F0 00 00 02 04 F7
00000000171460 ms | Sysex message: F0 00 00 02 05 F7
00000000171463 ms | Sysex message: F0 00 00 00 00 00 04 09 03 F7
00000000171705 ms | Sysex message: F0 00 00 02 03 F7
00000000171706 ms | Sysex message: F0 00 00 02 04 F7
00000000171708 ms | Sysex message: F0 00 00 02 05 F7
00000000171712 ms | Sysex message: F0 00 00 00 00 00 04 09 04 F7
00000000171952 ms | Sysex message: F0 00 00 02 03 F7
00000000171954 ms | Sysex message: F0 00 00 02 04 F7
00000000171956 ms | Sysex message: F0 00 00 02 05 F7
00000000171959 ms | Sysex message: F0 00 00 00 00 00 04 09 05 F7
00000000172200 ms | Sysex message: F0 00 00 02 03 F7
00000000172203 ms | Sysex message: F0 00 00 02 04 F7
00000000172204 ms | Sysex message: F0 00 00 02 05 F7
00000000172207 ms | Sysex message: F0 00 00 00 00 00 04 09 06 F7
00000000172449 ms | Sysex message: F0 00 00 02 03 F7
00000000172452 ms | Sysex message: F0 00 00 02 04 F7
00000000172453 ms | Sysex message: F0 00 00 02 05 F7
00000000172456 ms | Sysex message: F0 00 00 00 00 00 04 09 07 F7
00000000172697 ms | Sysex message: F0 00 00 02 03 F7
00000000172699 ms | Sysex message: F0 00 00 02 04 F7
00000000172702 ms | Sysex message: F0 00 00 02 05 F7
00000000172704 ms | Sysex message: F0 00 00 00 00 00 04 09 08 F7
00000000172945 ms | Sysex message: F0 00 00 02 03 F7
00000000172947 ms | Sysex message: F0 00 00 02 04 F7
00000000172948 ms | Sysex message: F0 00 00 02 05 F7
00000000172952 ms | Sysex message: F0 00 00 00 00 00 04 09 09 F7
00000000173192 ms | Sysex message: F0 00 00 02 03 F7
00000000173195 ms | Sysex message: F0 00 00 02 04 F7
00000000173196 ms | Sysex message: F0 00 00 02 05 F7
00000000173199 ms | Sysex message: F0 00 00 00 00 00 04 09 0A F7
00000000173440 ms | Sysex message: F0 00 00 02 03 F7
00000000173442 ms | Sysex message: F0 00 00 02 04 F7
00000000173444 ms | Sysex message: F0 00 00 02 05 F7
00000000173447 ms | Sysex message: F0 00 00 00 00 00 04 09 0B F7
00000000173689 ms | Sysex message: F0 00 00 02 03 F7
00000000173691 ms | Sysex message: F0 00 00 02 04 F7
00000000173693 ms | Sysex message: F0 00 00 02 05 F7
00000000173696 ms | Sysex message: F0 00 00 00 00 00 04 09 0C F7
00000000173936 ms | Sysex message: F0 00 00 02 03 F7
00000000173938 ms | Sysex message: F0 00 00 02 04 F7
00000000173940 ms | Sysex message: F0 00 00 02 05 F7
00000000173943 ms | Sysex message: F0 00 00 00 00 00 04 09 0D F7
         _sdcard_file_mode   0x000a00   00
     _sdcard_file_name_ptr   0x000a01   5D 0A 80   
      _sdcard_file_cluster   0x000a04   22 00 9D 
       _sdcard_file_sector   0x000a06   9D 04 00 00    
_sdcard_file_dir_entry_num   0x000a0a   08 00        
_sdcard_file_dir_entry_ptr   0x000a0c   00 08 80 
      _sdcard_file_sector0   0x000a0f   3F 00     
   _sdcard_file_sector_fat   0x000a11   40 00    
  _sdcard_file_sector_root   0x000a13   3E 02     
 _sdcard_file_root_sectors   0x000a15   20    
   _sdcard_file_sector_cl2   0x000a16   5E 02      
 _sdcard_file_cluster_size   0x000a18   10    
  _sdcard_file_seek_offset   0x000a19   00 7E 00 00     
 _sdcard_file_seek_cluster   0x000a1d   25 00 00 00 

(Btw, this is the same observation as in my last attachment: There, SDCARD_FILE_Seek() was called after the first 4 sectors, and the file was corrupted from address 0x800 on.)

Thanks a lot for your efforts, ilmenator

Link to comment
Share on other sites

This issue totally rankles me - did I already mention, that I love such text adventures? ;)

With WinXP you are able to specify the cluster size by using the "format" command in the DOS shell, e.g.

[tt]format <device>: /FS:FAT /A:16k[/tt]

will lead to a cluster size of 32 sectors (0x20)

d: is the <device> ID (e.g. k: for my SD card reader)

But there are also dependencies between partition and cluster size, e.g. with a 1 GB partition the minimum cluster size is 16k, otherwise FAT16 (65536) cannot cover all clusters (16k * 512 * 2^16 = 1 GB)

You could try this cluster size, but I guess that I won't solve the issue.

The traces and variable dump are still consistent.

E.g., we can see that the file starts at sector 0x45e

00000000158385 ms | Sysex message: F0 00 00 00 00 00 04 05 0E F7
and that it ends at sector 0x49d
00000000173943 ms | Sysex message: F0 00 00 00 00 00 04 09 0D F7

512 bytes * (0x49d-0x45e+1) = 32768 -> correct

Between 0x49d and 0x45e the sector number is continuously incremented -> correct

Means: SDCARD_FILE_Seek() always returns the correct sector number in sdcard_file_sector, because this is the value which is dumped by the SysEx string at the end of SDCARD_FILE_Seek()

The other variables lead to correct calculations as well (don't want to go too much into detail here...)

Between SDCARD_FILE_Seek() and SDCARD_WriteSector() I don't see any modification of the sdcard_file_sector variable in your code -> good

By using a different cluster size, you've proven that SDCARD_WriteSector() itself, but also your PROG_SRAM_Read() function is working, otherwise the file would still be corrupted after 2k

So, I need some more input.

- check the same with a cluster size of 16k (probably this won't lead to new results, data corrupted after 16k?)

- check your SDCC version, it should be 2.8.0 (or higher) -> type "sdcc --version"

- if this doesn't help, I will send you a routine which dumps the SRAM content + the interesting sectors of your SD card for easier comparison - it should give us the final answer :)

Best Regards, Thorsten.

Link to comment
Share on other sites

[me=stryd_one]jumps around doing cartwheels and waving his pom-poms.[/me]

What a sight  :o

This issue totally rankles me - did I already mention, that I love such text adventures? ;)

Hopefully you're not just being ironic  :-\.

So, I need some more input.

- check the same with a cluster size of 16k (probably this won't lead to new results, data corrupted after 16k?)

Exactly. Data corrupted after 16k.

- check your SDCC version, it should be 2.8.0 (or higher) -> type "sdcc --version"

2.8.0 #5117 (Mar 23 2008) (MINGW32)

Attached is the result of my formatting, just to be sure.

Best regards, ilmenator

SD-Card Formatierung.PNG

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...