Fixed a part of the data dump part. Changed the line of perl script from / usr / bin / perl to / usr / local / bin / perl. (On FreeBSD, Japanese perl is in / usr / local / bin) For disp.c, libwwc.c, a function for reading and acquiring bitmap data of characters, The type of bitmap data is not unsigned char *, but instead of short int *, long int * It was modified to an appropriate type. Let the bitmap of the WWCharacter class be union of uchar, ushort, ulong, By accessing with an appropriate type in WWCharacter_GetPixel () The endian dependence of bitmap data is eliminated. (i386, confirmed by SPARC) Fixed how to get the value of WWCharacter_GetPixel () in 16 PACKED color mode. (The bug that the character was displayed inverted horizontally was resolved) Stop for 10 seconds at F11, forcibly end with Ctrl-c or F12, Added iconization with Ctrl-i. (It was a function that was originally, but I forgot that, We modified it somewhat to make it formal support) Move display / non-display change key from p to F10. Manual correction. XDisplay.c: generated with XColorGC_CreateFromRGB () with XDisplay_DrawLCDWindow () Since we did not Destroy () the XColorGC object, we made a bug that caused memory flow Fix. (XColorGC_Destroy (x_color_gc) addition) Add wonx_include / fcntl.h. The contents are / usr / include / fcntl.h, Just include /usr/include/sys/fcntl.h. Format change of serial output message (output to serial port:). (I tried to enclose it with "".) etc.c: wonx_print_character () Fixed. (Add \ ", \ \ and others) Fix sout2str.pl. (Add \ ", \ \ etc .... The above message for serial output It was modified according to format change) Added int2sint.pl, filters.pl, challsrc.sh. Change sys2wonx.pl. in wonx_include / types.h typedef unsigned short WORD; typedef unsigned long DWORD; To typedef unsigned short int WORD; typedef unsigned long int DWORD; change to. Fixed README. Version 2.1 - from wonx-2.1.tar.gz
91 lines
2.4 KiB
C
91 lines
2.4 KiB
C
/*****************************************************************************/
|
|
/* ここから */
|
|
/*****************************************************************************/
|
|
|
|
#include "WWColorMapP.h"
|
|
#include "WonX.h"
|
|
|
|
/*****************************************************************************/
|
|
/* メンバ関数の定義 */
|
|
/*****************************************************************************/
|
|
|
|
WWColorMap WWColorMap_Create(int * lcd_colors)
|
|
{
|
|
WWColorMap color_map;
|
|
|
|
color_map = (WWColorMap)malloc(sizeof(_WWColorMap));
|
|
if (color_map == NULL)
|
|
WonX_Error("WWColorMap_Create", "Cannot allocate memory");
|
|
|
|
WWColorMap_SetLCDColors(color_map, lcd_colors);
|
|
|
|
return (color_map);
|
|
}
|
|
|
|
WWColorMap WWColorMap_Destroy(WWColorMap color_map)
|
|
{
|
|
if (color_map == NULL) return (NULL);
|
|
free(color_map);
|
|
return (NULL);
|
|
}
|
|
|
|
int * WWColorMap_GetLCDColors(WWColorMap color_map, int * lcd_colors)
|
|
{
|
|
int i;
|
|
|
|
for (i = 0; i < 8; i++) {
|
|
lcd_colors[i] = WWColorMap_GetLCDColor(color_map, i);
|
|
}
|
|
|
|
return (lcd_colors);
|
|
}
|
|
|
|
int WWColorMap_SetLCDColors(WWColorMap color_map, int * lcd_colors)
|
|
{
|
|
int i;
|
|
|
|
for (i = 0; i < 8; i++) {
|
|
if (lcd_colors == NULL) {
|
|
WWColorMap_SetLCDColor(color_map, i, (i * 2) + ((i == 7) ? 1 : 0));
|
|
} else {
|
|
WWColorMap_SetLCDColor(color_map, i, lcd_colors[i]);
|
|
}
|
|
}
|
|
|
|
return (0);
|
|
}
|
|
|
|
int WWColorMap_GetLCDColor(WWColorMap color_map, int color)
|
|
{
|
|
return (color_map->lcd_color[color]);
|
|
}
|
|
|
|
int WWColorMap_SetLCDColor(WWColorMap color_map, int color, int lcd_color)
|
|
{
|
|
return (color_map->lcd_color[color] = lcd_color);
|
|
}
|
|
|
|
int WWColorMap_PrintData(WWColorMap c, FILE * f)
|
|
{
|
|
int i;
|
|
|
|
fprintf(f, "\n");
|
|
|
|
for (i = 0; i < 8; i++) {
|
|
fprintf(f, "colormap :\tcolor[%01d] = %d\n",
|
|
i, WWColorMap_GetLCDColor(c, i));
|
|
}
|
|
|
|
fflush(f);
|
|
|
|
return (0);
|
|
}
|
|
|
|
/*****************************************************************************/
|
|
/* ここまで */
|
|
/*****************************************************************************/
|
|
|
|
/*****************************************************************************/
|
|
/* End of File. */
|
|
/*****************************************************************************/
|