2010-09-22 15:10:42 +02:00
|
|
|
/*
|
|
|
|
* LPC 2000 Loader, http://www.pjrc.com/arm/lpc2k_pgm
|
|
|
|
* Copyright (c) 2004, PJRC.COM, LLC, <paul@pjrc.com>
|
|
|
|
*
|
2014-06-11 15:21:59 +02:00
|
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
|
|
* under the terms of the GNU General Public License as published by the
|
|
|
|
* Free Software Foundation; version 2 of the License.
|
2010-09-22 15:10:42 +02:00
|
|
|
*
|
2014-06-11 15:21:59 +02:00
|
|
|
* This program is distributed in the hope that it will be useful, but
|
|
|
|
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
|
|
|
* Public License for more details.
|
2010-09-22 15:10:42 +02:00
|
|
|
*
|
2014-06-11 15:21:59 +02:00
|
|
|
* You should have received a copy of the GNU General Public License along
|
|
|
|
* with this program; if not, write to the Free Software Foundation, Inc.,
|
|
|
|
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
2010-09-22 15:10:42 +02:00
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
/* If this code fails to build, please provide at least the following
|
|
|
|
* information when requesting (free) technical support.
|
2013-07-29 16:41:43 +02:00
|
|
|
*
|
2010-09-22 15:10:42 +02:00
|
|
|
* 1: Complete copy of all messages during the build.
|
|
|
|
* 2: Output of "gtk-config --version"
|
|
|
|
* 3: Output of "gtk-config --libs"
|
|
|
|
* 4: Output of "gtk-config --cflags"
|
|
|
|
* 5: Output of "uname -a"
|
|
|
|
* 6: Version of GTK installed... eg, type: ls -l /lib/libgtk*
|
|
|
|
* 7: Other info... which linux distribution, version, other software
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <string.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
|
|
|
|
#include "uuencode.h"
|
|
|
|
|
|
|
|
|
2013-07-29 16:41:43 +02:00
|
|
|
unsigned int sum = 0;
|
2010-09-22 15:10:42 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void cksum(const char *str)
|
|
|
|
{
|
2013-07-29 16:41:43 +02:00
|
|
|
int num, i;
|
|
|
|
unsigned char data[256];
|
|
|
|
|
|
|
|
if (str == NULL) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
num = uudecode(str, data, sizeof(data));
|
2010-09-22 15:10:42 +02:00
|
|
|
|
2013-07-29 16:41:43 +02:00
|
|
|
for (i = 0; i < num; i++) {
|
|
|
|
sum += data[i];
|
|
|
|
}
|
2010-09-22 15:10:42 +02:00
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
int main()
|
|
|
|
{
|
2013-07-29 16:41:43 +02:00
|
|
|
char buf[4096];
|
|
|
|
|
|
|
|
while (!feof(stdin)) {
|
|
|
|
fgets(buf, sizeof(buf), stdin);
|
|
|
|
|
|
|
|
if (strcmp(buf, "\n") == 0) {
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
|
|
cksum(buf);
|
|
|
|
}
|
2010-09-22 15:10:42 +02:00
|
|
|
|
2013-07-29 16:41:43 +02:00
|
|
|
printf("sum = %u\n", sum);
|
2010-09-22 15:10:42 +02:00
|
|
|
|
2013-07-29 16:41:43 +02:00
|
|
|
return 0;
|
2010-09-22 15:10:42 +02:00
|
|
|
}
|