Used words
Unable to Write screen RamPattern boardId: {0}
Not all acks received before timeout boardId: {0}
Unable to Read screen RamPattern boardId: {0}
Unknown pattern found in screen memory boardId: {0}
"for
(uint32
channel=0
channelm_nrOfVideoChannelsOnBoard
channel++)
{
Xeikon::MathSupport::RangeList
screenRangeList
screenRangeList.AddRange(board->GetScreenMemoryRange(channel))
size_t
nrOfScreenRanges=screenRangeList.RefRanges().size()
for
(size_t
range=0
range
range++)
Xeikon::MathSupport::RangeIE
screenRange=screenRangeList.RefRanges()range
uint32
rangeSize=(uint32)screenRange.GetSize()
leftOverToWrite=rangeSize
%
maxWriteSize
nrOfCompleteWriteBlocks=rangeSize/maxWriteSize
writeBlock=0
(
writeBlock
writeBlock++)
uint8*
patternPtr=(uint8*)::malloc(maxWriteSize)
readPtr=(uint8*)::malloc(maxWriteSize)
uint8
randomNr=rand()%256
//
randomNr
in
the
range
to
255
memset(patternPtrrandomNrmaxWriteSize)
result=m_system->Write(patternPtrscreenRange.GetLower()+(writeBlock
*
maxWriteSize)maxWriteSize)
if
(result.IsSuccess()==false)
::free(patternPtr)
::free(readPtr)
errorMessage=Xeikon::Tools::Message::Format(boardId)
return
false
}
result=m_system->WaitUntilAllTcpAcksReceived(Seconds(1))
result=m_system->Read(screenRange.GetLower()+(writeBlock
maxWriteSize)readPtrmaxWriteSize)
firstNonMatchingByte=memcmp(readPtrpatternPtrmaxWriteSize)
(firstNonMatchingByte!=0)
//if
there
is
no
leftover
write
(the
was
a
multiple
of
100M)
go
next
(rangeSize
maxWriteSize==0)
continue
patternPtr=(uint8*)::malloc(leftOverToWrite)
readPtr=(uint8*)::malloc(leftOverToWrite)
memset(patternPtrrandomNrleftOverToWrite)
maxWriteSize)leftOverToWrite)
maxWriteSize)readPtrleftOverToWrite)
firstNonMatchingByte=memcmp(readPtrpatternPtrleftOverToWrite)
}"
Create your own