Initial version
Committed on the Free edition of March Hare Software CVSNT Server. Upgrade to CVS Suite for more features and support: http://march-hare.com/cvsnt/ git-svn-id: http://moon:8086/svn/vhdl/trunk@790 cc03376c-175c-47c8-b038-4cd826a8556b
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include "libsys.h"
|
||||
#include "libsys.h"
|
||||
|
||||
UINT32 tset(UINT32 *pMem)
|
||||
{
|
||||
|
||||
__asm__
|
||||
(
|
||||
".set noreorder\n"
|
||||
".set nomacro\n"
|
||||
"addiu $t1, $0, 0x5555\n"
|
||||
"lw $t0, 0(%[pMem])\n"
|
||||
"sw $t1, 24(%[pMem])\n"
|
||||
"addiu $t0, 8\n"
|
||||
"sw $t0, 0(%[pMem])\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"nop\n"
|
||||
"lw $v0, 24(%[pMem])\n"
|
||||
".set macro\n"
|
||||
".set reorder\n"
|
||||
:
|
||||
: [pMem] "r" (pMem)
|
||||
: "t0", "t1"
|
||||
);
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
int i;
|
||||
volatile int *pLED = (int*)SYS_LED_PORT;
|
||||
UINT64 *pBuf64;
|
||||
UINT32 *pPtr;
|
||||
|
||||
pBuf64 = (UINT64*)0x4000FC80; //malloc(1024*sizeof(UINT32));
|
||||
|
||||
pPtr = (UINT32*)pBuf64;
|
||||
|
||||
for(i=0; i < 1024; i++)
|
||||
*pPtr++ = i;
|
||||
|
||||
pPtr = (UINT32*)pBuf64;
|
||||
sputs("Ptr: "); print_word((int)pPtr); sputs("\n");
|
||||
DCACHE_invalidate_all();
|
||||
|
||||
|
||||
*pLED = tset(pPtr);
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user