Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
96b108c909 |
21
HISTORY
21
HISTORY
@@ -1,3 +1,24 @@
|
||||
2000/11/18(<28><>)
|
||||
|
||||
wonx-b04 <20><><EFBFBD><EFBFBD>
|
||||
|
||||
UNIXTimer.c <20>ǡ<EFBFBD><C7A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD>ƤФ<C6A4><D0A4>뤿<EFBFBD>Ӥ˥<D3A4><CBA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD>ꤷ<EFBFBD>ʤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>褦<EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
(UNIXTimer_ON() <20><><EFBFBD><EFBFBD> signal() <20><><EFBFBD>ɲ<EFBFBD>)
|
||||
(IRIX <20>Ǥϥ<C7A4><CFA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˥<EFBFBD><CBA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꥢ<EFBFBD><EAA5A2><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥؤ<C8A4><D8A4>н<EFBFBD>)
|
||||
|
||||
ualarm() <20><> BSD <20><>¸<EFBFBD>ʤΤǡ<CEA4>alarm() <20><><EFBFBD><EFBFBD><EFBFBD>Ѥ<EFBFBD><D1A4><EFBFBD><EFBFBD>褦<EFBFBD>˽<EFBFBD><CBBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
UNIXTimer <20><><EFBFBD>饹<EFBFBD>Υ<EFBFBD><CEA5><EFBFBD><F3A5BFA1>Х<EFBFBD><D0A5><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD>̤<EFBFBD><CCA4>ޥ<EFBFBD><DEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ä<EFBFBD><C3A4><EFBFBD><EFBFBD>ߥ<EFBFBD><DFA5>ä<EFBFBD><C3A4>ѹ<EFBFBD><D1B9><EFBFBD>
|
||||
|
||||
<EFBFBD><EFBFBD><EFBFBD>ꥢ<EFBFBD><EFBFBD><EFBFBD>̿<EFBFBD><EFBFBD>ݡ<EFBFBD><EFBFBD>ȡ<EFBFBD>(WonxSerialPort, WWSerialPort, comm.c <20><><EFBFBD><EFBFBD>)
|
||||
|
||||
key.c <20><><EFBFBD><EFBFBD> printf() <20>ǡ<EFBFBD><C7A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͤ<EFBFBD>ɽ<EFBFBD><C9BD><EFBFBD>κݤ˴ؿ<CBB4>̾<EFBFBD><CCBE>ɽ<EFBFBD><C9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƥ<EFBFBD><C6A4>ʤ<EFBFBD><CAA4>ä<EFBFBD><C3A4>Τ<EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
|
||||
|
||||
2000/11/13(<28><>)
|
||||
|
||||
wonx-b03 <20><><EFBFBD><EFBFBD>
|
||||
|
||||
6
Makefile
6
Makefile
@@ -2,12 +2,12 @@ XINCLUDEDIR = /usr/X11R6/include
|
||||
INCLUDEDIR = .
|
||||
XLIBDIR = /usr/X11R6/lib
|
||||
|
||||
VERSION = Wonx-b03
|
||||
PKGNAME = wonx-b03
|
||||
VERSION = Wonx-b04
|
||||
PKGNAME = wonx-b04
|
||||
|
||||
SMAC = smac-b02
|
||||
|
||||
OBJS = WWCharacter.o WWColorMap.o WWDisplay.o WWLCDPanel.o WWPalette.o WWScreen.o WWSprite.o WWText.o WWInterrupt.o WWTimer.o Wonx.o WonxDisplay.o WonxText.o WonxSystem.o XDisplay.o UNIXTimer.o bank.o comm.o disp.o text.o key.o sound.o system.o timer.o etc.o
|
||||
OBJS = WWCharacter.o WWColorMap.o WWDisplay.o WWLCDPanel.o WWPalette.o WWScreen.o WWSprite.o WWText.o WWInterrupt.o WWTimer.o WWSerialPort.o Wonx.o WonxDisplay.o WonxText.o WonxSystem.o WonxSerialPort.o XDisplay.o UNIXTimer.o bank.o comm.o disp.o text.o key.o sound.o system.o timer.o etc.o
|
||||
|
||||
CC = gcc
|
||||
|
||||
|
||||
1
README
1
README
@@ -329,7 +329,6 @@ wonx
|
||||
<EFBFBD>ؿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƤӽФ<EFBFBD><EFBFBD>Ƥ⡤<EFBFBD><EFBFBD><EFBFBD>ⵯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD>δؿ<CEB4><D8BF>ˤʤäƤ<C3A4><C6A4><EFBFBD>)
|
||||
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ꥢ<EFBFBD><EFBFBD><EFBFBD>̿<EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¾<EFBFBD><EFBFBD><EFBFBD>äѤ<EFBFBD>
|
||||
|
||||
<EFBFBD><EFBFBD> <20><><EFBFBD>դ<EFBFBD><D5A4>ʤ<EFBFBD><CAA4><EFBFBD><EFBFBD>Фʤ<D0A4><CAA4>ʤ<EFBFBD><CAA4><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
40
UNIXTimer.c
40
UNIXTimer.c
@@ -25,9 +25,9 @@ static void UNIXTimer_CallBackFunction(int argument)
|
||||
int ret;
|
||||
|
||||
/*
|
||||
static <20>ʥե饰<D5A5><E9A5B0>Ω<EFBFBD>Ƥơ<C6A4><C6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD>饳<EFBFBD><E9A5B3><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF><EFBFBD>
|
||||
<20>ƤФ줿<D0A4>ΤФ<F2B8A1BD><D0A4><EFBFBD><EFBFBD>Τ<EFBFBD>ɬ<EFBFBD>פ<EFBFBD><D7A4>⡥
|
||||
*/
|
||||
* static <20>ʥե饰<D5A5><E9A5B0>Ω<EFBFBD>Ƥơ<C6A4><C6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD>饳<EFBFBD><E9A5B3><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF><EFBFBD>
|
||||
* <20>ƤФ줿<D0A4>ΤФ<F2B8A1BD><D0A4><EFBFBD><EFBFBD>Τ<EFBFBD>ɬ<EFBFBD>פ<EFBFBD><D7A4>⡥
|
||||
*/
|
||||
|
||||
if (pointed_unix_timer == NULL) return;
|
||||
if (!pointed_unix_timer->timer_on) return;
|
||||
@@ -101,9 +101,29 @@ static void UNIXTimer_CallBackFunction(int argument)
|
||||
|
||||
int UNIXTimer_ON(UNIXTimer unix_timer)
|
||||
{
|
||||
int t;
|
||||
|
||||
unix_timer->timer_on = 1;
|
||||
pointed_unix_timer = unix_timer;
|
||||
ualarm(unix_timer->interval, 0);
|
||||
|
||||
/*
|
||||
* SIGALRM <20><><EFBFBD><EFBFBD><EFBFBD>Ѥ<EFBFBD><D1A4><EFBFBD><EFBFBD>Τǡ<CEA4>sleep() <20><><EFBFBD>˥<EFBFBD><CBA5>顼<EFBFBD>ब<EFBFBD><E0A4AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˤϡ<CBA4>
|
||||
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> sleep() <20>λĤ<CEBB><C4A4><EFBFBD><EFBFBD>֤Ϸ<D6A4>³<EFBFBD><C2B3><EFBFBD><EFBFBD><EFBFBD>ʤ<EFBFBD><CAA4><EFBFBD>
|
||||
*/
|
||||
signal(SIGALRM, UNIXTimer_CallBackFunction);
|
||||
|
||||
#if 0 /* use ualarm() */
|
||||
/* ualarm(); <20>ΰ<EFBFBD><CEB0><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD>Ѥ<EFBFBD><D1A4>Ƥϥ<C6A4><CFA5><EFBFBD><EFBFBD>ʤΤ<CAA4> */
|
||||
t = unix_timer->interval * 1000;
|
||||
if (t < 1) t = 1;
|
||||
ualarm(t, 0);
|
||||
#else /* use alarm() */
|
||||
/* alarm(); <20>ΰ<EFBFBD><CEB0><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD>Ѥ<EFBFBD><D1A4>Ƥϥ<C6A4><CFA5><EFBFBD><EFBFBD>ʤΤ<CAA4> */
|
||||
t = unix_timer->interval / 1000;
|
||||
if (t < 1) t = 1;
|
||||
alarm(t);
|
||||
#endif
|
||||
|
||||
return (0);
|
||||
}
|
||||
|
||||
@@ -207,11 +227,7 @@ int UNIXTimer_IsAutoPreset(UNIXTimer unix_timer)
|
||||
int UNIXTimer_GetInterval(UNIXTimer unix_timer)
|
||||
{ return (unix_timer->interval); }
|
||||
int UNIXTimer_SetInterval(UNIXTimer unix_timer, int interval)
|
||||
{
|
||||
/* ualarm(); <20>ΰ<EFBFBD><CEB0><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD>Ѥ<EFBFBD><D1A4>Ƥϥ<C6A4><CFA5><EFBFBD><EFBFBD>ʤΤ<CAA4> */
|
||||
if (interval < 1) interval = 1;
|
||||
return (unix_timer->interval = interval);
|
||||
}
|
||||
{ return (unix_timer->interval = interval); }
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF>θƤӽФ<D3BD><D0A4><EFBFBD><EFBFBD>Υѥ<CEA5><D1A5><EFBFBD><E1A1BC> */
|
||||
@@ -260,12 +276,6 @@ UNIXTimer UNIXTimer_Create(int auto_preset, int interval, void * parameter,
|
||||
UNIXTimer_SetParameter(unix_timer, parameter);
|
||||
UNIXTimer_SetCallBack(unix_timer, callback);
|
||||
|
||||
/*
|
||||
* SIGALRM <20><><EFBFBD><EFBFBD><EFBFBD>Ѥ<EFBFBD><D1A4><EFBFBD><EFBFBD>Τǡ<CEA4>sleep() <20><><EFBFBD>˥<EFBFBD><CBA5>顼<EFBFBD>ब<EFBFBD><E0A4AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˤϡ<CBA4>
|
||||
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> sleep() <20>λĤ<CEBB><C4A4><EFBFBD><EFBFBD>֤Ϸ<D6A4>³<EFBFBD><C2B3><EFBFBD><EFBFBD><EFBFBD>ʤ<EFBFBD><CAA4><EFBFBD>
|
||||
*/
|
||||
signal(SIGALRM, UNIXTimer_CallBackFunction);
|
||||
|
||||
return (unix_timer);
|
||||
}
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ typedef struct _UNIXTimer {
|
||||
int interrupt_in_pause;
|
||||
|
||||
int auto_preset; /* <20><><EFBFBD><EFBFBD><EFBFBD>ȥץꥻ<D7A5>åȡ<C3A5>1 <20><><EFBFBD>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>ȥץꥻ<D7A5>åȤ<C3A5><C8A4>Ԥ<EFBFBD> */
|
||||
int interval; /* <20><><EFBFBD><EFBFBD><EFBFBD>ޤΥ<DEA4><CEA5><EFBFBD><F3A5BFA1>Х롥<D0A5>ޥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>äǻ<EFBFBD><EFBFBD><EFBFBD> */
|
||||
int interval; /* <20><><EFBFBD><EFBFBD><EFBFBD>ޤΥ<DEA4><CEA5><EFBFBD><F3A5BFA1>Х롥<D0A5>ߥ<EFBFBD><EFBFBD>äǻ<EFBFBD><EFBFBD><EFBFBD> */
|
||||
void * parameter; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD><D8BF>θƤӽФ<D3BD><D0A4><EFBFBD><EFBFBD>Υѥ<CEA5><D1A5><EFBFBD><E1A1BC> */
|
||||
UNIXTimerCallBack callback; /* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Хå<D0A5><C3A5>ؿ<EFBFBD> */
|
||||
|
||||
|
||||
10
WWDisplay.c
10
WWDisplay.c
@@ -214,8 +214,8 @@ static int WWDisplay_DrawScreen(WWDisplay display, WWScreen screen)
|
||||
lcd_panel_width = WWLCDPanel_GetWidth( lcd_panel);
|
||||
lcd_panel_height = WWLCDPanel_GetHeight(lcd_panel);
|
||||
|
||||
if ( (WWScreen_GetMode(screen) == WWSCREEN_INSIDE_ONLY) ||
|
||||
(WWScreen_GetMode(screen) == WWSCREEN_OUTSIDE_ONLY) ) {
|
||||
if ( (WWScreen_GetMode(screen) == WW_SCREEN_INSIDE_ONLY) ||
|
||||
(WWScreen_GetMode(screen) == WW_SCREEN_OUTSIDE_ONLY) ) {
|
||||
sx = WWScreen_GetDrawX(screen);
|
||||
sy = WWScreen_GetDrawX(screen);
|
||||
|
||||
@@ -246,7 +246,7 @@ static int WWDisplay_DrawScreen(WWDisplay display, WWScreen screen)
|
||||
|
||||
for (y = 0; y < lcd_panel_height; y++) {
|
||||
|
||||
if (mode == WWSCREEN_INSIDE_ONLY) {
|
||||
if (mode == WW_SCREEN_INSIDE_ONLY) {
|
||||
if (y > ey) { break; }
|
||||
if (y < sy) { y = sy - 1; continue; }
|
||||
}
|
||||
@@ -255,10 +255,10 @@ static int WWDisplay_DrawScreen(WWDisplay display, WWScreen screen)
|
||||
|
||||
for (x = 0; x < lcd_panel_width; x++) {
|
||||
|
||||
if (mode == WWSCREEN_INSIDE_ONLY) {
|
||||
if (mode == WW_SCREEN_INSIDE_ONLY) {
|
||||
if (x > ex) { x = lcd_panel_width - 1; continue; }
|
||||
if (x < sx) { x = sx - 1; continue; }
|
||||
} else if (mode == WWSCREEN_OUTSIDE_ONLY) {
|
||||
} else if (mode == WW_SCREEN_OUTSIDE_ONLY) {
|
||||
if ( (x >= sx) && (x <= ex) && (y >= sy) && (y <= ey) ) {
|
||||
x = ex;
|
||||
continue;
|
||||
|
||||
@@ -210,7 +210,7 @@ WWScreen WWScreen_Create(int number,
|
||||
WWScreen_SetRollY( screen, 0);
|
||||
|
||||
WWScreen_SetEnable(screen, 1);
|
||||
WWScreen_SetMode( screen, WWSCREEN_DRAW_ALL);
|
||||
WWScreen_SetMode( screen, WW_SCREEN_DRAW_ALL);
|
||||
|
||||
WWScreen_SetDrawX( screen, draw_x);
|
||||
WWScreen_SetDrawY( screen, draw_y);
|
||||
|
||||
@@ -20,9 +20,9 @@ typedef struct _WWScreen * WWScreen;
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#define WWSCREEN_DRAW_ALL 0
|
||||
#define WWSCREEN_INSIDE_ONLY 1
|
||||
#define WWSCREEN_OUTSIDE_ONLY 2
|
||||
#define WW_SCREEN_DRAW_ALL 0
|
||||
#define WW_SCREEN_INSIDE_ONLY 1
|
||||
#define WW_SCREEN_OUTSIDE_ONLY 2
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>дؿ<D0B4><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
|
||||
@@ -33,7 +33,7 @@ typedef struct _WWScreen {
|
||||
int enable; /* ɽ<><C9BD>/<2F><>ɽ<EFBFBD><C9BD><EFBFBD>Υե饰 */
|
||||
|
||||
int mode; /* ɽ<><C9BD><EFBFBD>⡼<EFBFBD><E2A1BC> */
|
||||
/* WWSCREEN_DRAW_ALL, WWSCREEN_INSIDE_ONLY, WWSCREEN_OUTSIDE_ONLY <20><> */
|
||||
/* WW_SCREEN_DRAW_ALL, WW_SCREEN_INSIDE_ONLY, WW_SCREEN_OUTSIDE_ONLY <20><> */
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>줫<EFBFBD><ECA4AB><EFBFBD>ͤ<EFBFBD><CDA4><EFBFBD><EFBFBD><EFBFBD> */
|
||||
|
||||
/* ɽ<><C9BD><EFBFBD>ΰ<EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Υ<F3A3B2A4><CEA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɥ<EFBFBD><C9A5><EFBFBD>ǽ<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǥ<F3A3B1A4>̤<EFBFBD><CCA4><EFBFBD><EFBFBD>) */
|
||||
|
||||
84
WWSerialPort.c
Normal file
84
WWSerialPort.c
Normal file
@@ -0,0 +1,84 @@
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#include "WWSerialPortP.h"
|
||||
#include "etc.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>дؿ<D0B4><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
int WWSerialPort_ON( WWSerialPort s) { return (s->port_on = 1); }
|
||||
int WWSerialPort_OFF( WWSerialPort s) { return (s->port_on = 0); }
|
||||
int WWSerialPort_IsON( WWSerialPort s) { return (s->port_on != 0); }
|
||||
int WWSerialPort_IsOFF(WWSerialPort s) { return (s->port_on == 0); }
|
||||
|
||||
int WWSerialPort_GetBaudrate(WWSerialPort s) { return (s->baudrate); }
|
||||
int WWSerialPort_SetBaudrate(WWSerialPort s, int baudrate)
|
||||
{ return (s->baudrate = baudrate); }
|
||||
|
||||
int WWSerialPort_SetBaudrate9600(WWSerialPort s)
|
||||
{ return (WWSerialPort_SetBaudrate(s, WW_SERIAL_PORT_BAUDRATE_9600)); }
|
||||
int WWSerialPort_SetBaudrate38400(WWSerialPort s)
|
||||
{ return (WWSerialPort_SetBaudrate(s, WW_SERIAL_PORT_BAUDRATE_38400)); }
|
||||
int WWSerialPort_IsBaudrate9600(WWSerialPort s)
|
||||
{ return (WWSerialPort_GetBaudrate(s) == WW_SERIAL_PORT_BAUDRATE_9600); }
|
||||
int WWSerialPort_IsBaudrate38400(WWSerialPort s)
|
||||
{ return (WWSerialPort_GetBaudrate(s) == WW_SERIAL_PORT_BAUDRATE_38400); }
|
||||
|
||||
int WWSerialPort_GetSendTimeout(WWSerialPort s)
|
||||
{ return (s->send_timeout); }
|
||||
int WWSerialPort_SetSendTimeout(WWSerialPort s, int timeout)
|
||||
{ return (s->send_timeout = timeout); }
|
||||
int WWSerialPort_GetReceiveTimeout(WWSerialPort s)
|
||||
{ return (s->receive_timeout); }
|
||||
int WWSerialPort_SetReceiveTimeout(WWSerialPort s, int timeout)
|
||||
{ return (s->receive_timeout = timeout); }
|
||||
|
||||
unsigned int WWSerialPort_GetCancelKey(WWSerialPort s)
|
||||
{ return (s->cancel_key); }
|
||||
unsigned int WWSerialPort_SetCancelKey(WWSerialPort s, int cancel_key)
|
||||
{ return (s->cancel_key = cancel_key); }
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/* <20><><EFBFBD>֥<EFBFBD><D6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥκ<C8A4><CEBA><EFBFBD> */
|
||||
/*---------------------------------------------------------------------------*/
|
||||
|
||||
WWSerialPort WWSerialPort_Create()
|
||||
{
|
||||
WWSerialPort ww_serial_port;
|
||||
|
||||
ww_serial_port = (WWSerialPort)malloc(sizeof(_WWSerialPort));
|
||||
if (ww_serial_port == NULL)
|
||||
Wonx_Error("WWSerialPort_Create", "Cannot allocate memory.");
|
||||
|
||||
WWSerialPort_OFF(ww_serial_port);
|
||||
WWSerialPort_SetBaudrate38400(ww_serial_port);
|
||||
WWSerialPort_SetSendTimeout(ww_serial_port, 100);
|
||||
WWSerialPort_SetReceiveTimeout(ww_serial_port, 100);
|
||||
|
||||
return (ww_serial_port);
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/* <20><><EFBFBD>֥<EFBFBD><D6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥκ<C8A4><CEBA><EFBFBD> */
|
||||
/*---------------------------------------------------------------------------*/
|
||||
|
||||
WWSerialPort WWSerialPort_Destroy(WWSerialPort ww_serial_port)
|
||||
{
|
||||
if (ww_serial_port == NULL)
|
||||
Wonx_Error("WWSerialPort_Destroy", "Object is not created.");
|
||||
|
||||
free(ww_serial_port);
|
||||
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
/*****************************************************************************/
|
||||
/* End of File. */
|
||||
/*****************************************************************************/
|
||||
67
WWSerialPort.h
Normal file
67
WWSerialPort.h
Normal file
@@ -0,0 +1,67 @@
|
||||
#ifndef _WWSerialPort_h_INCLUDED_
|
||||
#define _WWSerialPort_h_INCLUDED_
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "wonx_include/comm.h"
|
||||
|
||||
#define WW_SERIAL_PORT_BAUDRATE_9600 0
|
||||
#define WW_SERIAL_PORT_BAUDRATE_38400 1
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD>饹<EFBFBD><E9A5B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
typedef struct _WWSerialPort * WWSerialPort;
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>дؿ<D0B4><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
int WWSerialPort_ON( WWSerialPort s);
|
||||
int WWSerialPort_OFF( WWSerialPort s);
|
||||
int WWSerialPort_IsON( WWSerialPort s);
|
||||
int WWSerialPort_IsOFF(WWSerialPort s);
|
||||
|
||||
int WWSerialPort_GetBaudrate(WWSerialPort s);
|
||||
int WWSerialPort_SetBaudrate(WWSerialPort s, int baudrate);
|
||||
|
||||
int WWSerialPort_SetBaudrate9600(WWSerialPort s);
|
||||
int WWSerialPort_SetBaudrate38400(WWSerialPort s);
|
||||
int WWSerialPort_IsBaudrate9600(WWSerialPort s);
|
||||
int WWSerialPort_IsBaudrate38400(WWSerialPort s);
|
||||
|
||||
int WWSerialPort_GetSendTimeout(WWSerialPort s);
|
||||
int WWSerialPort_SetSendTimeout(WWSerialPort s, int timeout);
|
||||
int WWSerialPort_GetReceiveTimeout(WWSerialPort s);
|
||||
int WWSerialPort_SetReceiveTimeout(WWSerialPort s, int timeout);
|
||||
|
||||
unsigned int WWSerialPort_GetCancelKey(WWSerialPort s);
|
||||
unsigned int WWSerialPort_SetCancelKey(WWSerialPort s, int cancel_key);
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/* <20><><EFBFBD>֥<EFBFBD><D6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥκ<C8A4><CEBA><EFBFBD> */
|
||||
/*---------------------------------------------------------------------------*/
|
||||
|
||||
WWSerialPort WWSerialPort_Create();
|
||||
|
||||
/*---------------------------------------------------------------------------*/
|
||||
/* <20><><EFBFBD>֥<EFBFBD><D6A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥκ<C8A4><CEBA><EFBFBD> */
|
||||
/*---------------------------------------------------------------------------*/
|
||||
|
||||
WWSerialPort WWSerialPort_Destroy(WWSerialPort ww_serial_port);
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#endif
|
||||
|
||||
/*****************************************************************************/
|
||||
/* End of File. */
|
||||
/*****************************************************************************/
|
||||
39
WWSerialPortP.h
Normal file
39
WWSerialPortP.h
Normal file
@@ -0,0 +1,39 @@
|
||||
#ifndef _WWSerialPortP_h_INCLUDED_
|
||||
#define _WWSerialPortP_h_INCLUDED_
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#include "WWSerialPort.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD>饹<EFBFBD><E9A5B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
typedef struct _WWSerialPort {
|
||||
|
||||
int port_on; /* <20>ݡ<EFBFBD><DDA1>Ȥξ<C8A4><CEBE><EFBFBD> */
|
||||
int baudrate; /* <20>ܡ<EFBFBD><DCA1>졼<EFBFBD><ECA1BC> */
|
||||
|
||||
/*
|
||||
* <20><><EFBFBD><EFBFBD><EFBFBD>ॢ<EFBFBD><E0A5A2><EFBFBD>Ȼ<EFBFBD><C8BB><EFBFBD>
|
||||
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> VBLANK ñ<>̤ǻ<CCA4><C7BB>ꤹ<EFBFBD><EAA4B9><EFBFBD>Τ<EFBFBD><CEA4><EFBFBD><EFBFBD><EFBFBD>wonx <20>Ǥ<EFBFBD>
|
||||
* WONX_SERIAL_PORT_TIMETICKS ñ<>̤ǻ<CCA4><C7BB>ꤹ<EFBFBD>뤳<EFBFBD>Ȥˤ<C8A4><CBA4>롥
|
||||
*/
|
||||
int send_timeout;
|
||||
int receive_timeout;
|
||||
|
||||
unsigned int cancel_key;
|
||||
|
||||
} _WWSerialPort;
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#endif
|
||||
|
||||
/*****************************************************************************/
|
||||
/* End of File. */
|
||||
/*****************************************************************************/
|
||||
8
Wonx.c
8
Wonx.c
@@ -4,6 +4,7 @@
|
||||
#include "wonx_include/disp.h"
|
||||
#include "wonx_include/text.h"
|
||||
#include "wonx_include/system.h"
|
||||
#include "wonx_include/comm.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20>ǥ<EFBFBD><C7A5><EFBFBD><EFBFBD>ץ쥤<D7A5>γ<EFBFBD><CEB3><EFBFBD> */
|
||||
@@ -40,6 +41,8 @@ void Wonx_Create(void)
|
||||
|
||||
wonx->wonx_system = WonxSystem_Create();
|
||||
|
||||
wonx->wonx_serial_port = WonxSerialPort_Create();
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -58,3 +61,8 @@ WonxSystem Wonx_GetWonxSystem(void)
|
||||
return (wonx->wonx_system);
|
||||
}
|
||||
|
||||
WonxSerialPort Wonx_GetWonxSerialPort(void)
|
||||
{
|
||||
return (wonx->wonx_serial_port);
|
||||
}
|
||||
|
||||
|
||||
2
Wonx.h
2
Wonx.h
@@ -4,6 +4,7 @@
|
||||
#include "WonxDisplay.h"
|
||||
#include "WonxText.h"
|
||||
#include "WonxSystem.h"
|
||||
#include "WonxSerialPort.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20>ǥ<EFBFBD><C7A5><EFBFBD><EFBFBD>ץ쥤<D7A5>γ<EFBFBD><CEB3><EFBFBD> */
|
||||
@@ -14,5 +15,6 @@ void Wonx_Create(void);
|
||||
WonxDisplay Wonx_GetWonxDisplay(void);
|
||||
WonxText Wonx_GetWonxText(void);
|
||||
WonxSystem Wonx_GetWonxSystem(void);
|
||||
WonxSerialPort Wonx_GetWonxSerialPort(void);
|
||||
|
||||
#endif
|
||||
|
||||
1
WonxP.h
1
WonxP.h
@@ -15,6 +15,7 @@ typedef struct _Wonx {
|
||||
WonxDisplay wonx_display;
|
||||
WonxText wonx_text;
|
||||
WonxSystem wonx_system;
|
||||
WonxSerialPort wonx_serial_port;
|
||||
} _Wonx;
|
||||
|
||||
typedef struct _Wonx * Wonx;
|
||||
|
||||
59
WonxSerialPort.c
Normal file
59
WonxSerialPort.c
Normal file
@@ -0,0 +1,59 @@
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#include "WonxSerialPortP.h"
|
||||
#include "etc.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>дؿ<D0B4><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
WWSerialPort WonxSerialPort_GetWWSerialPort(WonxSerialPort wonx_serial_port)
|
||||
{ return (wonx_serial_port->ww_serial_port); }
|
||||
WWSerialPort WonxSerialPort_SetWWSerialPort(WonxSerialPort wonx_serial_port,
|
||||
WWSerialPort ww_serial_port)
|
||||
{ return (wonx_serial_port->ww_serial_port = ww_serial_port); }
|
||||
|
||||
WonxSerialPort WonxSerialPort_Create()
|
||||
{
|
||||
WonxSerialPort wonx_serial_port;
|
||||
WWSerialPort ww_serial_port;
|
||||
|
||||
wonx_serial_port = (WonxSerialPort)malloc(sizeof(_WonxSerialPort));
|
||||
if (wonx_serial_port == NULL)
|
||||
Wonx_Error("WonxSerialPort_Create", "Cannot allocate memory.");
|
||||
|
||||
ww_serial_port = WWSerialPort_Create();
|
||||
if (ww_serial_port == NULL)
|
||||
Wonx_Error("WonxSerialPort_Create",
|
||||
"Cannot create WonderWitch serial port.");
|
||||
WonxSerialPort_SetWWSerialPort(wonx_serial_port, ww_serial_port);
|
||||
|
||||
return (wonx_serial_port);
|
||||
}
|
||||
|
||||
WonxSerialPort WonxSerialPort_Destroy(WonxSerialPort wonx_serial_port)
|
||||
{
|
||||
WWSerialPort ww_serial_port;
|
||||
|
||||
if (wonx_serial_port == NULL)
|
||||
Wonx_Error("WonxSerialPort_Destroy", "Object is not created.");
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(wonx_serial_port);
|
||||
if (ww_serial_port)
|
||||
WonxSerialPort_SetWWSerialPort(wonx_serial_port,
|
||||
WWSerialPort_Destroy(ww_serial_port));
|
||||
|
||||
free(wonx_serial_port);
|
||||
|
||||
return (NULL);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
/*****************************************************************************/
|
||||
/* End of File. */
|
||||
/*****************************************************************************/
|
||||
35
WonxSerialPort.h
Normal file
35
WonxSerialPort.h
Normal file
@@ -0,0 +1,35 @@
|
||||
#ifndef _WonxSerialPort_h_INCLUDED_
|
||||
#define _WonxSerialPort_h_INCLUDED_
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#include "WWSerialPort.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD>饹<EFBFBD><E9A5B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
typedef struct _WonxSerialPort * WonxSerialPort;
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>дؿ<D0B4><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
WWSerialPort WonxSerialPort_GetWWSerialPort(WonxSerialPort wonx_serial_port);
|
||||
WWSerialPort WonxSerialPort_SetWWSerialPort(WonxSerialPort wonx_serial_port,
|
||||
WWSerialPort ww_serial_port);
|
||||
|
||||
WonxSerialPort WonxSerialPort_Create();
|
||||
WonxSerialPort WonxSerialPort_Destroy(WonxSerialPort wonx_serial_port);
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#endif
|
||||
|
||||
/*****************************************************************************/
|
||||
/* End of File. */
|
||||
/*****************************************************************************/
|
||||
26
WonxSerialPortP.h
Normal file
26
WonxSerialPortP.h
Normal file
@@ -0,0 +1,26 @@
|
||||
#ifndef _WonxSerialPortP_h_INCLUDED_
|
||||
#define _WonxSerialPortP_h_INCLUDED_
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#include "WonxSerialPort.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD>饹<EFBFBD><E9A5B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
typedef struct _WonxSerialPort {
|
||||
WWSerialPort ww_serial_port;
|
||||
} _WonxSerialPort;
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD> */
|
||||
/*****************************************************************************/
|
||||
|
||||
#endif
|
||||
|
||||
/*****************************************************************************/
|
||||
/* End of File. */
|
||||
/*****************************************************************************/
|
||||
@@ -87,7 +87,6 @@ WonxSystem WonxSystem_Create()
|
||||
Wonx_Error("WonxSystem_Create", "Cannot create WonderWitch interrupt.");
|
||||
WonxSystem_SetWWInterrupt(wonx_system, ww_interrupt);
|
||||
|
||||
/* VBlank <20><> WONX_VBLANK_INTERVAL * 0.1 <20><><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD> */
|
||||
ww_timer = WWTimer_Create(1, WONX_VBLANK_INTERVAL);
|
||||
if (ww_timer == NULL)
|
||||
Wonx_Error("WonxSystem_Create", "Cannot create WonderWitch VBlank timer.");
|
||||
@@ -113,7 +112,6 @@ WonxSystem WonxSystem_Create()
|
||||
WWTimer_OFF(WonxSystem_GetWWVBlankCountUpTimer(wonx_system));
|
||||
WWTimer_OFF(WonxSystem_GetWWHBlankCountUpTimer(wonx_system));
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤΥ<DEA4><CEA5><EFBFBD><F3A5BFA1>Х<EFBFBD><D0A5>ϡ<EFBFBD>0.1 <20><>ñ<EFBFBD>̤Ȥ<CCA4><C8A4><EFBFBD> */
|
||||
unix_timer = UNIXTimer_Create(1, WONX_TIMER_INTERVAL, wonx_system,
|
||||
(UNIXTimerCallBack)WonxTimer_Callback);
|
||||
if (unix_timer == NULL)
|
||||
|
||||
480
comm.c
480
comm.c
@@ -4,10 +4,17 @@
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#include <unistd.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
|
||||
#include "wonx_include/comm.h"
|
||||
|
||||
#include "wonx_configure.h"
|
||||
#include "Wonx.h"
|
||||
#include "etc.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/* <20>ߴ<EFBFBD><DFB4>ؿ<EFBFBD><D8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
@@ -30,66 +37,517 @@
|
||||
*/
|
||||
|
||||
void comm_open(void)
|
||||
{}
|
||||
{
|
||||
WWSerialPort ww_serial_port;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_open() : \n");
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
if (WWSerialPort_IsON(ww_serial_port))
|
||||
Wonx_Error("comm_open", "Serial port has already opened.");
|
||||
|
||||
WWSerialPort_ON(ww_serial_port);
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_open() : return value = none\n");
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
void comm_close(void)
|
||||
{}
|
||||
{
|
||||
WWSerialPort ww_serial_port;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_close() : \n");
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
if (!WWSerialPort_IsON(ww_serial_port))
|
||||
Wonx_Error("comm_close", "Serial port is not opened.");
|
||||
|
||||
WWSerialPort_OFF(ww_serial_port);
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_close() : return value = none\n");
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
static void comm_output(unsigned char c)
|
||||
{
|
||||
if (c == '\n') printf("\\n");
|
||||
else if (c == '\r') printf("\\r");
|
||||
else if (c == '\t') printf("\\t");
|
||||
else if (isprint(c)) fputc(c, stdout);
|
||||
else printf("^%02x", (int)c);
|
||||
fflush(stdout);
|
||||
return;
|
||||
}
|
||||
|
||||
static int comm_input(int timeout)
|
||||
{
|
||||
int tmp;
|
||||
int c;
|
||||
fd_set bitmap;
|
||||
struct timeval t;
|
||||
struct timeval * t_p;
|
||||
|
||||
/*
|
||||
* 0 <20>ΤȤ<CEA4><C8A4>ϡ<EFBFBD>¨<EFBFBD><C2A8>
|
||||
* -1 <20>ΤȤ<CEA4><C8A4>ϡ<EFBFBD>̵<EFBFBD><CCB5><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD>
|
||||
*/
|
||||
if (timeout == -1) {
|
||||
t_p = NULL;
|
||||
} else {
|
||||
tmp = WONX_SERIAL_PORT_TIMETICKS * timeout;
|
||||
t.tv_sec = tmp / 1000;
|
||||
t.tv_usec = (tmp % 1000) * 1000;
|
||||
t_p = &t;
|
||||
}
|
||||
|
||||
FD_ZERO(&bitmap);
|
||||
FD_SET(fileno(stdin), &bitmap);
|
||||
|
||||
/*
|
||||
* FreeBSD3.4 <20>Ǽ¸<C7BC><C2B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD><EFBFBD>
|
||||
* <20><><EFBFBD>顼<EFBFBD>ॷ<EFBFBD><E0A5B7><EFBFBD>ʥ<EFBFBD><CAA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѥ<EFBFBD><D1A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>硤select()<29>ǤΥ֥<CEA5><D6A5>å<EFBFBD><C3A5><EFBFBD><EFBFBD><EFBFBD>
|
||||
* <20><><EFBFBD>顼<EFBFBD>ॷ<EFBFBD><E0A5B7><EFBFBD>ʥ뤬ȯ<EBA4AC><C8AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD>select()<29>⥿<EFBFBD><E2A5BF><EFBFBD>ॢ<EFBFBD><E0A5A2><EFBFBD><EFBFBD>
|
||||
* <20><><EFBFBD>Ƥ<EFBFBD><C6A4>ޤ<EFBFBD><DEA4>Τǡ<CEA4><C7A1><EFBFBD><EFBFBD>ա<EFBFBD>
|
||||
* (select() <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ॢ<EFBFBD><E0A5A2><EFBFBD>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˥<EFBFBD><CBA5>顼<EFBFBD>ॷ<EFBFBD><E0A5B7><EFBFBD>ʥ뤬ȯ<EBA4AC><C8AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϡ<EFBFBD>
|
||||
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ư<EFBFBD><EFBFBD><EEA4B7>)
|
||||
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̵꤬<EAA4AC><CCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԥ<EFBFBD><D4A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>ԤäƤ<C3A4><C6A4><EFBFBD><EFBFBD>ʤ<EFBFBD><CAA4>Ȥ<EFBFBD><C8A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݤ<EFBFBD>
|
||||
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>롥
|
||||
*/
|
||||
select(fileno(stdin) + 1, &bitmap, NULL, NULL, t_p);
|
||||
|
||||
c = FD_ISSET(fileno(stdin), &bitmap) ? fgetc(stdin) : -1;
|
||||
|
||||
return (c);
|
||||
}
|
||||
|
||||
int comm_send_char(unsigned char c)
|
||||
{
|
||||
return (0);
|
||||
int ret;
|
||||
|
||||
WWSerialPort ww_serial_port;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_send_char() : character = 0x%02x\n", (int)c);
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
if (!WWSerialPort_IsON(ww_serial_port))
|
||||
Wonx_Error("comm_send_char", "Serial port is not opened.");
|
||||
|
||||
printf("output to serial port : ");
|
||||
comm_output(c);
|
||||
printf("\n");
|
||||
fflush(stdout);
|
||||
ret = 0;
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_send_char() : return value = %d\n", ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return (ret);
|
||||
}
|
||||
|
||||
int comm_receive_char(void)
|
||||
{
|
||||
return (0);
|
||||
WWSerialPort ww_serial_port;
|
||||
int c;
|
||||
int ret;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_receive_char() : \n");
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
if (!WWSerialPort_IsON(ww_serial_port))
|
||||
Wonx_Error("comm_receive_char", "Serial port is not opened.");
|
||||
|
||||
c = comm_input(WWSerialPort_GetReceiveTimeout(ww_serial_port));
|
||||
|
||||
if (c == -1) ret = ERR_SIO_TIMEOUT;
|
||||
else ret = c;
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_receive_char() : return value = %d\n", ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return (ret);
|
||||
}
|
||||
|
||||
int comm_receive_with_timeout(int timeout)
|
||||
{
|
||||
return (0);
|
||||
WWSerialPort ww_serial_port;
|
||||
int c;
|
||||
int ret;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_receive_with_timeout() : timeout = %d\n", timeout);
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
if (!WWSerialPort_IsON(ww_serial_port))
|
||||
Wonx_Error("comm_receive_with_timeout", "Serial port is not opened.");
|
||||
|
||||
c = comm_input(timeout);
|
||||
|
||||
if (c == -1) ret = ERR_SIO_TIMEOUT;
|
||||
else ret = c;
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_receive_with_timeout() : return value = %d\n", ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return (ret);
|
||||
}
|
||||
|
||||
int comm_send_string(char * string)
|
||||
{
|
||||
return (0);
|
||||
WWSerialPort ww_serial_port;
|
||||
int ret;
|
||||
int i;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_send_string() : string = %s\n", string);
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
if (!WWSerialPort_IsON(ww_serial_port))
|
||||
Wonx_Error("comm_send_string", "Serial port is not opened.");
|
||||
|
||||
printf("output to serial port : ");
|
||||
for (i = 0; string[i]; i++) {
|
||||
comm_output(string[i]);
|
||||
}
|
||||
printf("\n");
|
||||
fflush(stdout);
|
||||
ret = 0;
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_send_string() : return value = %d\n", ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return (ret);
|
||||
}
|
||||
|
||||
int comm_send_block(void * buffer, int size)
|
||||
{
|
||||
return (0);
|
||||
WWSerialPort ww_serial_port;
|
||||
int ret;
|
||||
int i;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_send_block() : buffer = %p, size = %d\n", buffer, size);
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
if (!WWSerialPort_IsON(ww_serial_port))
|
||||
Wonx_Error("comm_send_block", "Serial port is not opened.");
|
||||
|
||||
printf("output to serial port : ");
|
||||
for (i = 0; i < size; i++) {
|
||||
comm_output(((char *)buffer)[i]);
|
||||
}
|
||||
printf("\n");
|
||||
fflush(stdout);
|
||||
ret = 0;
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_send_block() : return value = %d\n", ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return (ret);
|
||||
}
|
||||
|
||||
int comm_receive_block(void * buffer, int size)
|
||||
{
|
||||
return (0);
|
||||
WWSerialPort ww_serial_port;
|
||||
int ret;
|
||||
int c;
|
||||
int i;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_receive_block() : buffer = %p, size = %d\n",
|
||||
buffer, size);
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
if (!WWSerialPort_IsON(ww_serial_port))
|
||||
Wonx_Error("comm_receive_block", "Serial port is not opened.");
|
||||
|
||||
ret = 0;
|
||||
for (i = 0; i < size; i++) {
|
||||
c = comm_input(WWSerialPort_GetReceiveTimeout(ww_serial_port));
|
||||
if (c == -1) {
|
||||
ret = ERR_SIO_TIMEOUT;
|
||||
break;
|
||||
}
|
||||
((char *)buffer)[i] = c;
|
||||
}
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_receive_block() : return value = %d\n", ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return (ret);
|
||||
}
|
||||
|
||||
void comm_set_timeout(int recv_timeout, int send_timeout)
|
||||
{
|
||||
WWSerialPort ww_serial_port;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_set_timeout() : receive_timeout = %d, send_timeout = %d\n", recv_timeout, send_timeout);
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
WWSerialPort_SetReceiveTimeout(ww_serial_port, recv_timeout);
|
||||
WWSerialPort_SetSendTimeout( ww_serial_port, send_timeout);
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_set_timeout() : return value = none\n");
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
void comm_set_baudrate(int baudrate)
|
||||
{
|
||||
WWSerialPort ww_serial_port;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_set_baudrate() : baudrate = %d\n", baudrate);
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
switch (baudrate) {
|
||||
case COMM_SPEED_9600: WWSerialPort_SetBaudrate9600( ww_serial_port); break;
|
||||
case COMM_SPEED_38400: WWSerialPort_SetBaudrate38400(ww_serial_port); break;
|
||||
default: Wonx_Error("comm_set_baudrate", "Invalid baudrate");
|
||||
}
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_set_baudrate() : return value = none\n");
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
int comm_get_baudrate(void)
|
||||
{
|
||||
return (0);
|
||||
WWSerialPort ww_serial_port;
|
||||
int ret = 0;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_get_baudrate() : \n");
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
if (WWSerialPort_IsBaudrate9600(ww_serial_port))
|
||||
ret = COMM_SPEED_9600;
|
||||
else if (WWSerialPort_IsBaudrate38400(ww_serial_port))
|
||||
ret = COMM_SPEED_38400;
|
||||
else Wonx_Error("comm_get_baudrate", "Invalid baudrate");
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_get_baudrate() : return value = %d\n", ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return (ret);
|
||||
}
|
||||
|
||||
void comm_set_cancel_key(unsigned int pattern)
|
||||
{
|
||||
WWSerialPort ww_serial_port;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_set_cancel_key() : pattern = %u\n", (int)pattern);
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
WWSerialPort_SetCancelKey(ww_serial_port, pattern);
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_set_cancel_key() : return value = none\n");
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
unsigned int comm_get_cancel_key(void)
|
||||
{
|
||||
return (0);
|
||||
WWSerialPort ww_serial_port;
|
||||
unsigned int ret;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_get_cancel_key() : \n");
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><CBBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
ret = WWSerialPort_GetCancelKey(ww_serial_port);
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_get_cancel_key() : return value = %u\n", (int)ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return (ret);
|
||||
}
|
||||
|
||||
int comm_xmodem(void * xmodem)
|
||||
{
|
||||
return (0);
|
||||
WWSerialPort ww_serial_port;
|
||||
int ret;
|
||||
|
||||
if (!Wonx_IsCreated()) Wonx_Create();
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤ<EFBFBD><DFA4><EFBFBD> */
|
||||
UNIXTimer_Pause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
printf("call : comm_xmodem() : xmodem = %p\n", xmodem);
|
||||
fflush(stdout);
|
||||
|
||||
ww_serial_port = WonxSerialPort_GetWWSerialPort(Wonx_GetWonxSerialPort());
|
||||
|
||||
/* ̤<><CCA4><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD> */
|
||||
printf("call : comm_xmodem() : not supported.\n");
|
||||
fflush(stdout);
|
||||
ret = 0;
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : comm_xmodem() : return value = %d\n", ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
return (ret);
|
||||
}
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
8
disp.c
8
disp.c
@@ -60,10 +60,10 @@ void display_control(unsigned int flags)
|
||||
|
||||
if ((flags & 0x0030) == DCM_SCR2_WIN_INSIDE)
|
||||
WWScreen_SetMode(WWDisplay_GetScreen(ww_display, SCREEN2),
|
||||
WWSCREEN_INSIDE_ONLY);
|
||||
WW_SCREEN_INSIDE_ONLY);
|
||||
else if ((flags & 0x0030) == DCM_SCR2_WIN_OUTSIDE)
|
||||
WWScreen_SetMode(WWDisplay_GetScreen(ww_display, SCREEN2),
|
||||
WWSCREEN_OUTSIDE_ONLY);
|
||||
WW_SCREEN_OUTSIDE_ONLY);
|
||||
|
||||
WWDisplay_SetBorder(ww_display, (flags & DCM_BORDER_COLOR) >> 7);
|
||||
|
||||
@@ -106,10 +106,10 @@ unsigned int display_status(void)
|
||||
ret |= DCM_SPR_WIN;
|
||||
|
||||
switch (WWScreen_GetMode(WWDisplay_GetScreen(ww_display, SCREEN2))) {
|
||||
case WWSCREEN_INSIDE_ONLY:
|
||||
case WW_SCREEN_INSIDE_ONLY:
|
||||
ret |= DCM_SCR2_WIN_INSIDE;
|
||||
break;
|
||||
case WWSCREEN_OUTSIDE_ONLY:
|
||||
case WW_SCREEN_OUTSIDE_ONLY:
|
||||
ret |= DCM_SCR2_WIN_OUTSIDE;
|
||||
break;
|
||||
default:
|
||||
|
||||
18
key.c
18
key.c
@@ -48,7 +48,8 @@ int key_press_check(void)
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("return value = 0x%04x\n", (int)ret); fflush(stdout);
|
||||
printf("call : key_press_check() : return value = 0x%04x\n", (int)ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
@@ -75,7 +76,8 @@ int key_hit_check(void)
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("return value = 0x%04x\n", (int)ret); fflush(stdout);
|
||||
printf("call : key_hit_check() : return value = 0x%04x\n", (int)ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
@@ -109,7 +111,8 @@ int key_wait(void)
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("return value = 0x%04x\n", (int)ret); fflush(stdout);
|
||||
printf("call : key_wait() : return value = 0x%04x\n", (int)ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
@@ -129,7 +132,7 @@ void key_set_repeat(int rate, int delay)
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("return value = none\n"); fflush(stdout);
|
||||
printf("call : key_set_repeat() : return value = none\n"); fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
@@ -152,7 +155,8 @@ int key_get_repeat(void)
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("return value = 0x%04x\n", (int)ret); fflush(stdout);
|
||||
printf("call : key_get_repeat() : return value = 0x%04x\n", (int)ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
@@ -179,7 +183,9 @@ int key_hit_check_with_repeat(void)
|
||||
|
||||
WonxDisplay_Sync(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("return value = 0x%04x\n", (int)ret); fflush(stdout);
|
||||
printf("call : key_hit_check_with_repeat() : return value = 0x%04x\n",
|
||||
(int)ret);
|
||||
fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
2
text.c
2
text.c
@@ -93,7 +93,7 @@ void text_window_init(int x, int y, int w, int h, unsigned int base)
|
||||
|
||||
WonxDisplay_Flush(Wonx_GetWonxDisplay());
|
||||
|
||||
printf("call : text_screen_init() : return value = none\n"); fflush(stdout);
|
||||
printf("call : text_window_init() : return value = none\n"); fflush(stdout);
|
||||
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD>ޤ<EFBFBD><DEA4><EFBFBD><EFBFBD>Ȥ<EFBFBD><C8A4>᤹ */
|
||||
UNIXTimer_Unpause(WonxSystem_GetUNIXTimer(Wonx_GetWonxSystem()));
|
||||
|
||||
@@ -3,13 +3,19 @@
|
||||
#ifndef _WONX_winx_configure_h_INCLUDED_
|
||||
#define _WONX_wonx_configure_h_INCLUDED_
|
||||
|
||||
/* Wonx <20>ǤΥ<C7A4><CEA5><EFBFBD><EFBFBD><EFBFBD><DEB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤμ<DFA4><CEBC><EFBFBD>(ñ<>̤ϥޥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) */
|
||||
#define WONX_TIMER_INTERVAL 100000 /* 0.1 <20><>*/
|
||||
/* Wonx <20>ǤΥ<C7A4><CEA5><EFBFBD><EFBFBD><EFBFBD><DEB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤμ<DFA4><CEBC><EFBFBD>(ñ<>̤ϥߥ<EFBFBD><EFBFBD><EFBFBD>) */
|
||||
#define WONX_TIMER_INTERVAL 100 /* 0.1 <20><> */
|
||||
|
||||
/* HBLANK, VBLANK <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߤΥǥե<C7A5><D5A5><EFBFBD><EFBFBD>ȤΥ<C8A4><CEA5><EFBFBD><F3A5BFA1>Х<EFBFBD>(0.1<EFBFBD><EFBFBD>ñ<EFBFBD><EFBFBD>) */
|
||||
#define WONX_HBLANK_INTERVAL ( 3 * 10) /* 3 <20><><EFBFBD><EFBFBD> */
|
||||
#define WONX_VBLANK_INTERVAL (20 * 10) /* 20 <20><><EFBFBD><EFBFBD> */
|
||||
|
||||
/*
|
||||
* <20><><EFBFBD>ꥢ<EFBFBD><EAA5A2><EFBFBD>̿<EFBFBD><CCBF><EFBFBD><EFBFBD>Υ<EFBFBD><CEA5><EFBFBD><EFBFBD>ॢ<EFBFBD><E0A5A2><EFBFBD>Ȼ<EFBFBD><C8BB>֤<EFBFBD>ñ<EFBFBD><C3B1>
|
||||
* (ñ<>̤ϥߥ<CFA5><DFA5>ä<EFBFBD><C3A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʤ<EFBFBD><CAA4><EFBFBD><EFBFBD>٤<EFBFBD>̵<EFBFBD><CCB5>)
|
||||
*/
|
||||
#define WONX_SERIAL_PORT_TIMETICKS 100 /* 1/10 <20><>ñ<EFBFBD><C3B1> */
|
||||
|
||||
#endif /* _WONX_wonx_configure_h_INCLUDED_ */
|
||||
|
||||
/* End of wonx_configure.h */
|
||||
|
||||
Reference in New Issue
Block a user