Natural Tiny Shell (NT-Shell) library is a tiny shell library for a small embedded system. The interface is really simple. You should only know ntshell_execute in ntshell.h. So you can port it to any embedded system easily. Please enjoy your small embedded system with it. :)
Dependents: NaturalTinyShell_TestProgram
vtparse_table.h@0:7147d6024de8, 2011-05-22 (annotated)
- Committer:
- shintamainjp
- Date:
- Sun May 22 02:51:35 2011 +0000
- Revision:
- 0:7147d6024de8
Initial version.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
shintamainjp | 0:7147d6024de8 | 1 | /** |
shintamainjp | 0:7147d6024de8 | 2 | * @file vtparse_table.h |
shintamainjp | 0:7147d6024de8 | 3 | * @brief VTParse |
shintamainjp | 0:7147d6024de8 | 4 | * @details |
shintamainjp | 0:7147d6024de8 | 5 | * An implementation of Paul Williams' DEC compatible state machine parser |
shintamainjp | 0:7147d6024de8 | 6 | * This code is in the public domain. |
shintamainjp | 0:7147d6024de8 | 7 | * @author Joshua Haberman <joshua@reverberate.org> |
shintamainjp | 0:7147d6024de8 | 8 | */ |
shintamainjp | 0:7147d6024de8 | 9 | |
shintamainjp | 0:7147d6024de8 | 10 | #ifndef VTPARSE_TABLE_H |
shintamainjp | 0:7147d6024de8 | 11 | #define VTPARSE_TABLE_H |
shintamainjp | 0:7147d6024de8 | 12 | |
shintamainjp | 0:7147d6024de8 | 13 | typedef enum { |
shintamainjp | 0:7147d6024de8 | 14 | VTPARSE_STATE_ANYWHERE = 0, |
shintamainjp | 0:7147d6024de8 | 15 | VTPARSE_STATE_CSI_ENTRY = 1, |
shintamainjp | 0:7147d6024de8 | 16 | VTPARSE_STATE_CSI_IGNORE = 2, |
shintamainjp | 0:7147d6024de8 | 17 | VTPARSE_STATE_CSI_INTERMEDIATE = 3, |
shintamainjp | 0:7147d6024de8 | 18 | VTPARSE_STATE_CSI_PARAM = 4, |
shintamainjp | 0:7147d6024de8 | 19 | VTPARSE_STATE_DCS_ENTRY = 5, |
shintamainjp | 0:7147d6024de8 | 20 | VTPARSE_STATE_DCS_IGNORE = 6, |
shintamainjp | 0:7147d6024de8 | 21 | VTPARSE_STATE_DCS_INTERMEDIATE = 7, |
shintamainjp | 0:7147d6024de8 | 22 | VTPARSE_STATE_DCS_PARAM = 8, |
shintamainjp | 0:7147d6024de8 | 23 | VTPARSE_STATE_DCS_PASSTHROUGH = 9, |
shintamainjp | 0:7147d6024de8 | 24 | VTPARSE_STATE_ESCAPE = 10, |
shintamainjp | 0:7147d6024de8 | 25 | VTPARSE_STATE_ESCAPE_INTERMEDIATE = 11, |
shintamainjp | 0:7147d6024de8 | 26 | VTPARSE_STATE_GROUND = 12, |
shintamainjp | 0:7147d6024de8 | 27 | VTPARSE_STATE_OSC_STRING = 13, |
shintamainjp | 0:7147d6024de8 | 28 | VTPARSE_STATE_SOS_PM_APC_STRING = 14, |
shintamainjp | 0:7147d6024de8 | 29 | } vtparse_state_t; |
shintamainjp | 0:7147d6024de8 | 30 | |
shintamainjp | 0:7147d6024de8 | 31 | typedef enum { |
shintamainjp | 0:7147d6024de8 | 32 | VTPARSE_ACTION_CLEAR = 1, |
shintamainjp | 0:7147d6024de8 | 33 | VTPARSE_ACTION_COLLECT = 2, |
shintamainjp | 0:7147d6024de8 | 34 | VTPARSE_ACTION_CSI_DISPATCH = 3, |
shintamainjp | 0:7147d6024de8 | 35 | VTPARSE_ACTION_ESC_DISPATCH = 4, |
shintamainjp | 0:7147d6024de8 | 36 | VTPARSE_ACTION_EXECUTE = 5, |
shintamainjp | 0:7147d6024de8 | 37 | VTPARSE_ACTION_HOOK = 6, |
shintamainjp | 0:7147d6024de8 | 38 | VTPARSE_ACTION_IGNORE = 7, |
shintamainjp | 0:7147d6024de8 | 39 | VTPARSE_ACTION_OSC_END = 8, |
shintamainjp | 0:7147d6024de8 | 40 | VTPARSE_ACTION_OSC_PUT = 9, |
shintamainjp | 0:7147d6024de8 | 41 | VTPARSE_ACTION_OSC_START = 10, |
shintamainjp | 0:7147d6024de8 | 42 | VTPARSE_ACTION_PARAM = 11, |
shintamainjp | 0:7147d6024de8 | 43 | VTPARSE_ACTION_PRINT = 12, |
shintamainjp | 0:7147d6024de8 | 44 | VTPARSE_ACTION_PUT = 13, |
shintamainjp | 0:7147d6024de8 | 45 | VTPARSE_ACTION_UNHOOK = 14, |
shintamainjp | 0:7147d6024de8 | 46 | } vtparse_action_t; |
shintamainjp | 0:7147d6024de8 | 47 | |
shintamainjp | 0:7147d6024de8 | 48 | typedef unsigned char state_change_t; |
shintamainjp | 0:7147d6024de8 | 49 | |
shintamainjp | 0:7147d6024de8 | 50 | state_change_t GET_STATE_TABLE(const int state, const int ch); |
shintamainjp | 0:7147d6024de8 | 51 | vtparse_action_t GET_ENTRY_ACTIONS(const int state); |
shintamainjp | 0:7147d6024de8 | 52 | vtparse_action_t GET_EXIT_ACTIONS(const int state); |
shintamainjp | 0:7147d6024de8 | 53 | const char *GET_ACTION_NAMES(const int n); |
shintamainjp | 0:7147d6024de8 | 54 | const char *GET_STATE_NAMES(const int n); |
shintamainjp | 0:7147d6024de8 | 55 | |
shintamainjp | 0:7147d6024de8 | 56 | #endif |
shintamainjp | 0:7147d6024de8 | 57 |