Paul Pan
7b33e4213a
1. add test soft 2. modify verilator (TODO: crossbar need to replace) 3. fix CP0: now CU0 is always 1 4. Controller: cacheop 5. Controller: fix TEN 6. mycpu_top fix CP0_i 7. fix AXI.sv 8. fix AXIReader.sv 9. fix AXIWriter.sv: getting the correct data and length 10. MU: fix cache writeback, fix mem data mux, fix writer address, fix read request
43 lines
699 B
C
43 lines
699 B
C
/* +++Date last modified: 05-Jul-1997 */
|
|
|
|
/*
|
|
** Make an ascii binary string into an integer.
|
|
**
|
|
** Public domain by Bob Stout
|
|
*/
|
|
|
|
//#include <string.h>
|
|
#include "bitops.h"
|
|
|
|
unsigned int bstr_i(char *cptr)
|
|
{
|
|
unsigned int i, j = 0;
|
|
|
|
while (cptr && *cptr && strchr("01", *cptr))
|
|
{
|
|
i = *cptr++ - '0';
|
|
j <<= 1;
|
|
j |= (i & 0x01);
|
|
}
|
|
return(j);
|
|
}
|
|
|
|
#ifdef TEST
|
|
|
|
#include <stdlib.h>
|
|
|
|
int main(int argc, char *argv[])
|
|
{
|
|
char *arg;
|
|
unsigned int x;
|
|
|
|
while (--argc)
|
|
{
|
|
x = bstr_i(arg = *++argv);
|
|
printf("Binary %s = %d = %04Xh\n", arg, x, x);
|
|
}
|
|
return EXIT_SUCCESS;
|
|
}
|
|
|
|
#endif /* TEST */
|