[[File:Binwalk entropy image.png|left|thumb|Binwalk entropy image looking good - encouraging at least]]
[[File:DIF-AT BINVIS.png|alt=binvis.io|center|thumb|BINVIS The little 'white line defined' area is where the pointer is viewing]]
=== Strings - ===
Alright we've heard enough about them here is the list - '''''strings -n 6 INTEL_HEX_DIF_AT_LH28F400BVE@TSOP48_byte_swapped.bin'''''
{| class="wikitable sortable"
|+
!mpTp**RolandDIF-AT**z
<nowiki>:</nowiki>MONITOR Ver.1.00z
mpVp DIF-AT system program Ver 0.9800
H0123456789ABCDEF
System Version =
Check Sum =
0123456789ABCDEF
Flash memory OK.
Flash memory check error
RAM test OK.
RAM test NG.
RS-422 loopback test 1 OK.
RS-422 loopback test 1 NG.
RS-422 loopback test 2 OK.
RS-422 loopback test 2 NG.
DA-88 sync loopback test 1 OK.
DA-88 sync loopback test 1 NG.
DA-88 sync opback test 2 OK.
DA-88 sync loopback test 2 NG.
ADAT sync loopback test 1 OK.
ADAT sync loopback test 1 NG.
ADAT sync loopback test 2 OK.
ADAT sync loopback test 2 NG.
RMDB Fs unstable.
Video sync in check NG.
NTSC video signal received.
PAL video signal received.
Video signal checked NG.
Different sampling Clock.
Check the sampling rate.
ADAT Sync port di onnect.
DA-88 Sync port disconnect.
Dectecte tape end.
Tape is write pr 0ected.
Tape Ejected.
Unformat Tape.
<nowiki>!"#$%&'()0123456789@ABCDEFGHIPQRSTUVWXY</nowiki>
DIF-AT system program Ver 1.022
!
!
!
|-
|
|
|
|
|-
|
|
|
|
|-
|
|
|
|
|}
I removed all the strings returned which are over n6 but not really strings - and - There are also two blank strings which the above table has optimised away. These seem to have a function, unclear at present.
You can see how, it does look like corruption in some of the strings, gaps in the text.
The **Roland xx is a boot banner and is called differently in the firmware, I'm sure that's why it has different start and stop markers. Ditto for the early Version string. Interestingly, the early Version is way at the other end of the addresses in the code, which adds to the DFU / Bank swap theory.
When I finally load the firmware (I still haven't at this point) I spend ages looking for what calls these strings. It is very difficult to navigate the firmware. Basically zero xrefs, indirect. One or two strings can be discovered, which have a different call system to the diagnostic strings (the ones I'm most interested in) especially because I have to repair so many subsystems.
I don't know at this point that these diagnostic strings are highly likely to be called by the Monitor Version 1.00, which is highly likely a Machine Language diagnostic tool which must operate over UART.