예제 #1
0
파일: main.c 프로젝트: xwaynec/eplab
void printD() {
	int idata i;
	puts("1:");	
	for (i = 1; i <= n; i++)
		int_print(i);
	puts("\r\n2:");
	for (i = 1; i <= n; i++) 
		int_print(d[i]);
	puts("\r\n");
}
예제 #2
0
파일: main.c 프로젝트: xwaynec/eplab
void main()
{

	char i;
	idata SHA1Context sha;

	store_cpu_rate(16);

    P0_DIR &= ~0x28;
    P0_ALT &= ~0x28;

	serial_init(19200);


	for(i=0;i<6;i++)
	{
		blink_led();
		mdelay(400);
	}	
	
	sha_counter++;

	while(1)
	{
		SHA1Reset(&sha);
		SHA1Input(&sha, (const unsigned char *) TESTA, 3);

		SHA1Result(&sha);
		sha_counter++;
		//blink_led();
		int_print(sha_counter);
		puts("\r\n");
	}	

}
예제 #3
0
파일: str.c 프로젝트: cthulhuology/Jawas
str
int_str(reg i)
{
	reg l = int_len(i);
	str retval = blank(l);
	int_print(retval->data,i,l);
	return retval;
}
예제 #4
0
파일: str.c 프로젝트: cthulhuology/Jawas
str
new_str(const char* fmt, va_list args)
{
	char* c;
	str s;
	reg x, xl, sl;
	reg i, ls = 0, la = 0;
	for (i = 0; fmt[i]; ++i) la += (fmt[i] == '%' ? 1 : 0);
	str retval = blank(0);
	ls = 0;
	for (i = 0; fmt[i]; ++i) {
		if (fmt[i] == '%')
			switch (fmt[++i]) {
			case 'c':
				c = va_arg(args,char*);
				sl = strlen(c);
				memcpy(&retval->data[ls],c,sl);
				ls += sl;
				break;
			case 's':
				s = va_arg(args,str);
				memcpy(&retval->data[ls],s->data,s->length);
				ls += s->length;
				break;
			case 'd':
			case 'i':
				x = va_arg(args,reg);
				xl = int_len(x);
				int_print(&retval->data[ls],x,xl);
				ls += xl;
				break;
			case 'p':
			case 'x':
				c = va_arg(args,char*);
				xl = hex_len((reg)c);
				hex_print(&retval->data[ls],(reg)c,xl);
				ls += xl;
				break;
			case 'h':
				x  = va_arg(args,reg);
				xl = hex_len(x);
				hex_print(&retval->data[ls],x,xl);
				ls += xl;
				break;
			default:
				++ls;
			}
		else retval->data[ls++] = fmt[i];
	}
예제 #5
0
파일: main.back2.c 프로젝트: xwaynec/eplab
void dijkstra(int chStart, int chEnd) 
{

	for (ch = 0; ch < NUM_NODES; ch++)
	{
		rgnNodes[ch].iDist = NONE;
		rgnNodes[ch].iPrev = NONE;
	}

	if (chStart == chEnd) 
	{
		puts("f**k\r\n");
	}
	else
	{
		rgnNodes[chStart].iDist = 0;
		rgnNodes[chStart].iPrev = NONE;

		enqueue (chStart, 0, NONE);

		while (qcount() > 0)
		{
			dequeue (&iNode, &iDist, &iPrev);
			for (i = 0; i < NUM_NODES; i++)
			{
				if ((iCost = AdjMatrix[iNode][i]) != NONE)
				{
					if ((NONE == rgnNodes[i].iDist) || (rgnNodes[i].iDist > (iCost + iDist)))
					{
						rgnNodes[i].iDist = iDist + iCost;
						rgnNodes[i].iPrev = iNode;
						enqueue (i, iDist + iCost, iNode);
					}
				}
			}
			
			
			puts("w");
			int_print(g_qCount);
			puts("\r\n");
		}
		/*      
				printf("Shortest path is %d in cost. ", rgnNodes[chEnd].iDist);
				printf("Path is: ");
				print_path(rgnNodes, chEnd);
				printf("\n");
		 */
	}
}
예제 #6
0
파일: main.c 프로젝트: xwaynec/eplab
int main() 
{
	char i, j , k = 5;
	//char u = 1, v = 2, w = 4;

	store_cpu_rate(16);

	P0_DIR &= ~0x28;
	P0_ALT &= ~0x28;

	serial_init(19200);

	for(n=0;n<6;n++)
	{
		blink_led();
		mdelay(400);
	}

	n = GRAPHSIZE;


	while(1)
	{
		for (i = 0; i < n; i++)
			for (j = 0; j < n; j++)
				dist[i][j] = (k++)%30;
		//n = -1;
		//for (i = 0; i < 6; i++) {
		//fscanf(fin, "%d%d%d", &u, &v, &w);
		//	dist[u][v] = w++;
		//	n = MAX(u, MAX(v+w, n));
		//}
		//fclose(fin);
		for(j=0;j<n;j++)	
			dijkstra(j);

		dij_counter++;

		int_print(dij_counter);
		puts("\r\n");
		
		printD();
	}

	return 0;
}
예제 #7
0
파일: obj.c 프로젝트: Nonpython/projects
PmReturn_t
obj_print(pPmObj_t pobj, uint8_t is_expr_repr, uint8_t is_nested)
{
    PmReturn_t retval = PM_RET_OK;

    C_ASSERT(pobj != C_NULL);

    /* Something gets printed unless it's None in an unnested expression */
    if (!((OBJ_GET_TYPE(pobj) == OBJ_TYPE_NON) && is_expr_repr && !is_nested))
    {
        gVmGlobal.somethingPrinted = C_TRUE;
    }

    switch (OBJ_GET_TYPE(pobj))
    {
        case OBJ_TYPE_NON:
            if (!is_expr_repr || is_nested)
            {
                plat_putByte('N');
                plat_putByte('o');
                plat_putByte('n');
                retval = plat_putByte('e');
            }
            break;
        case OBJ_TYPE_INT:
            retval = int_print(pobj);
            break;
#ifdef HAVE_FLOAT
        case OBJ_TYPE_FLT:
            retval = float_print(pobj);
            break;
#endif /* HAVE_FLOAT */
        case OBJ_TYPE_STR:
            retval = string_print(pobj, (is_expr_repr || is_nested));
            break;
        case OBJ_TYPE_TUP:
            retval = tuple_print(pobj);
            break;
        case OBJ_TYPE_LST:
            retval = list_print(pobj);
            break;
        case OBJ_TYPE_DIC:
            retval = dict_print(pobj);
            break;
        case OBJ_TYPE_BOOL:
            if (((pPmBoolean_t) pobj)->val == C_TRUE)
            {
                plat_putByte('T');
                plat_putByte('r');
                plat_putByte('u');
            }
            else
            {
                plat_putByte('F');
                plat_putByte('a');
                plat_putByte('l');
                plat_putByte('s');
            }
            retval = plat_putByte('e');
            break;

        case OBJ_TYPE_CLI:
#ifdef HAVE_BYTEARRAY
            {
                pPmObj_t pobj2;

                retval = dict_getItem((pPmObj_t)((pPmInstance_t)pobj)->cli_attrs,
                                      PM_NONE,
                                      (pPmObj_t *)&pobj2);
                if ((retval == PM_RET_OK)
                    && (OBJ_GET_TYPE(pobj2) == OBJ_TYPE_BYA))
                {
                    retval = bytearray_print(pobj2);
                    break;
                }
            }
#endif /* HAVE_BYTEARRAY */

        case OBJ_TYPE_COB:
        case OBJ_TYPE_MOD:
        case OBJ_TYPE_CLO:
        case OBJ_TYPE_FXN:
        case OBJ_TYPE_CIM:
        case OBJ_TYPE_NIM:
        case OBJ_TYPE_NOB:
        case OBJ_TYPE_THR:
        case OBJ_TYPE_CIO:
        case OBJ_TYPE_MTH:
        case OBJ_TYPE_SQI:
            plat_putByte('<');
            plat_putByte('o');
            plat_putByte('b');
            plat_putByte('j');
            plat_putByte(' ');
            plat_putByte('t');
            plat_putByte('y');
            plat_putByte('p');
            plat_putByte('e');
            plat_putByte(' ');
            plat_putByte('0');
            plat_putByte('x');
            int_printHexByte(OBJ_GET_TYPE(pobj));
            plat_putByte(' ');
            plat_putByte('@');
            plat_putByte(' ');
            plat_putByte('0');
            plat_putByte('x');
            _int_printHex((intptr_t)pobj);
            retval = plat_putByte('>');
            break;

        default:
            /* Otherwise raise a TypeError */
            PM_RAISE(retval, PM_RET_EX_TYPE);
            break;
    }
    return retval;
}
예제 #8
0
PmReturn_t
obj_print(pPmObj_t pobj, uint8_t is_expr_repr, uint8_t is_nested)
{
    PmReturn_t retval = PM_RET_OK;

    C_ASSERT(pobj != C_NULL);

    /* Something gets printed unless it's None in an unnested expression */
    if (!((OBJ_GET_TYPE(pobj) == OBJ_TYPE_NON) && is_expr_repr && !is_nested))
    {
        gVmGlobal.somethingPrinted = C_TRUE;
    }

    switch (OBJ_GET_TYPE(pobj))
    {
    case OBJ_TYPE_NON:
        if (!is_expr_repr || is_nested)
        {
            sli_puts((uint8_t *)"None");
        }
        break;
    case OBJ_TYPE_INT:
        retval = int_print(pobj);
        break;
#ifdef HAVE_FLOAT
    case OBJ_TYPE_FLT:
        retval = float_print(pobj);
        break;
#endif /* HAVE_FLOAT */
    case OBJ_TYPE_STR:
        retval = string_print(pobj, (is_expr_repr || is_nested));
        break;
    case OBJ_TYPE_TUP:
        retval = tuple_print(pobj);
        break;
    case OBJ_TYPE_LST:
        retval = list_print(pobj);
        break;
    case OBJ_TYPE_DIC:
        retval = dict_print(pobj);
        break;
    case OBJ_TYPE_BOOL:
        sli_puts(
            (((pPmBoolean_t) pobj)->val == C_TRUE)
            ? (uint8_t *)"True"
            : (uint8_t *)"False");
        break;

    case OBJ_TYPE_CLI:
#ifdef HAVE_BYTEARRAY
    {
        pPmObj_t pobj2;

        retval = dict_getItem((pPmObj_t)((pPmInstance_t)pobj)->cli_attrs,
                              PM_NONE,
                              (pPmObj_t *)&pobj2);
        if ((retval == PM_RET_OK)
                && (OBJ_GET_TYPE(pobj2) == OBJ_TYPE_BYA))
        {
            retval = bytearray_print(pobj2);
            break;
        }
    }
#endif /* HAVE_BYTEARRAY */

    case OBJ_TYPE_COB:
    case OBJ_TYPE_MOD:
    case OBJ_TYPE_CLO:
    case OBJ_TYPE_FXN:
    case OBJ_TYPE_CIM:
    case OBJ_TYPE_NIM:
    case OBJ_TYPE_NOB:
    case OBJ_TYPE_THR:
    case OBJ_TYPE_CIO:
    case OBJ_TYPE_MTH:
    case OBJ_TYPE_SQI:
    {
        uint8_t buf[17];
        sli_puts((uint8_t *)"<obj type 0x");
        sli_btoa16(OBJ_GET_TYPE(pobj), buf, sizeof(buf), C_TRUE);
        sli_puts(buf);
        sli_puts((uint8_t *)" @ 0x");
        sli_ptoa16((intptr_t)pobj, buf, sizeof(buf), C_TRUE);
        sli_puts(buf);
        retval = plat_putByte('>');
        break;
    }

    default:
        /* Otherwise raise a TypeError */
        PM_RAISE(retval, PM_RET_EX_TYPE);
        break;
    }
    return retval;
}