* Peter Novodvorsky <petya@logic.ru>
*/
-#include "internal.h"
+#include "busybox.h"
#include <stdio.h>
#include <stdlib.h>
#include <memory.h>
#include <errno.h>
#include <signal.h>
#include <sys/types.h>
-#include <sys/stat.h>
#include <sys/ioctl.h>
#include <sys/kd.h>
-static const char loadacm_usage[] = "loadacm\n"
-#ifndef BB_FEATURE_TRIVIAL_HELP
- "\nLoads an acm from standard input.\n"
-#endif
- ;
-
typedef unsigned short unicode;
static long int ctoi(unsigned char *s, int *is_unicode);
fd = open("/dev/tty", O_RDWR);
if (fd < 0) {
- fprintf(stderr, "Error opening /dev/tty1: %s\n", strerror(errno));
- return( FALSE);
+ error_msg("Error opening /dev/tty1: %s\n", strerror(errno));
+ return EXIT_FAILURE;
}
if (screen_map_load(fd, stdin)) {
- fprintf(stderr, "Error loading acm: %s\n", strerror(errno));
- return( FALSE);
+ error_msg("Error loading acm: %s\n", strerror(errno));
+ return EXIT_FAILURE;
}
write(fd, "\033(K", 3);
- return( TRUE);
+ return EXIT_SUCCESS;
}
int screen_map_load(int fd, FILE * fp)
if (parse_failed) {
if (-1 == fseek(fp, 0, SEEK_SET)) {
if (errno == ESPIPE)
- fprintf(stderr,
- "16bit screen-map MUST be a regular file.\n"),
+ error_msg("16bit screen-map MUST be a regular file.\n"),
exit(1);
else
perror("fseek failed reading binary 16bit screen-map"),
perror("Cannot read [new] map from file"), exit(1);
#if 0
else
- fprintf(stderr, "Input screen-map is binary.\n");
+ error_msg("Input screen-map is binary.\n");
#endif
}
/* rewind... */
if (-1 == fseek(fp, 0, SEEK_SET)) {
if (errno == ESPIPE)
- fprintf(stderr,
- "Assuming 8bit screen-map - MUST be a regular file.\n"),
+ error_msg("Assuming 8bit screen-map - MUST be a regular file.\n"),
exit(1);
else
perror("fseek failed assuming 8bit screen-map"), exit(1);
if (-1 == fseek(fp, 0, SEEK_SET)) {
if (errno == ESPIPE)
/* should not - it succedeed above */
- fprintf(stderr, "fseek() returned ESPIPE !\n"),
+ error_msg("fseek() returned ESPIPE !\n"),
exit(1);
else
perror("fseek for binary 8bit screen-map"), exit(1);
perror("Cannot read [old] map from file"), exit(1);
#if 0
else
- fprintf(stderr, "Input screen-map is binary.\n");
+ error_msg("Input screen-map is binary.\n");
#endif
}
else
return 0;
}
- fprintf(stderr, "Error parsing symbolic map\n");
+ error_msg("Error parsing symbolic map\n");
return(1);
}
}
#endif
- if ((fp = fopen(omfil, "w")) == NULL) {
- perror(omfil);
- exit(1);
- }
+ fp = xfopen(omfil, "w");
#ifdef GIO_UNISCRNMAP
if (is_old_map) {
#endif