#ifndef ANSI_CSI_TABLE_DEFS_H #define ANSI_CSI_TABLE_DEFS_H #include "ansi_table.h" #define MAX_PARAMS 4 typedef struct cs_entry CE; typedef void (*cs_function)(void *ctx, int paramc, unsigned int *paramv); struct cs_entry { Entry head; const char *mnemonic; int param_count; int param_defaults[MAX_PARAMS]; cs_function function; }; void cs_fn_ICH(void *ctx, int paramc, unsigned int *paramv); // Insert Character void cs_fn_CUU(void *ctx, int paramc, unsigned int *paramv); // Cursor Up void cs_fn_CUD_VPR(void *ctx, int paramc, unsigned int *paramv); // Cursor Down / Vertical Position Relative void cs_fn_CUF_HPR(void *ctx, int paramc, unsigned int *paramv); // Cursor Forward / Horizontal Position Relative void cs_fn_CUB(void *ctx, int paramc, unsigned int *paramv); // Cursor Back void cs_fn_CNL(void *ctx, int paramc, unsigned int *paramv); // Cursor Next Line void cs_fn_CPL(void *ctx, int paramc, unsigned int *paramv); // Cursor Previous Line void cs_fn_CHA(void *ctx, int paramc, unsigned int *paramv); // Cursor Horizontal Absolute void cs_fn_CUP_HVP(void *ctx, int paramc, unsigned int *paramv); // Cursor Position / Horizontal & Vertical Position void cs_fn_CHT(void *ctx, int paramc, unsigned int *paramv); // Cursor Horizontal Forward Tab void cs_fn_ED(void *ctx, int paramc, unsigned int *paramv); // Erase in Display void cs_fn_EL(void *ctx, int paramc, unsigned int *paramv); // Erase in Line void cs_fn_IL(void *ctx, int paramc, unsigned int *paramv); // Insert Line void cs_fn_DL(void *ctx, int paramc, unsigned int *paramv); // Delete Line void cs_fn_EF(void *ctx, int paramc, unsigned int *paramv); // Erase in Field void cs_fn_EA(void *ctx, int paramc, unsigned int *paramv); // Erase in Area void cs_fn_DCH(void *ctx, int paramc, unsigned int *paramv); // Delete Character void cs_fn_SEE(void *ctx, int paramc, unsigned int *paramv); // Select Editing Extent void cs_fn_CPR(void *ctx, int paramc, unsigned int *paramv); // Cursor Position Report void cs_fn_SU(void *ctx, int paramc, unsigned int *paramv); // Scroll Up (DEC Pan Down) void cs_fn_SD(void *ctx, int paramc, unsigned int *paramv); // Scroll Down (DEC Pan Up) void cs_fn_NP(void *ctx, int paramc, unsigned int *paramv); // Next Page void cs_fn_PP(void *ctx, int paramc, unsigned int *paramv); // Previous Page void cs_fn_CTC(void *ctx, int paramc, unsigned int *paramv); // Cursor Tabulation Control void cs_fn_ECH(void *ctx, int paramc, unsigned int *paramv); // Erase Character void cs_fn_CVT(void *ctx, int paramc, unsigned int *paramv); // Cursor Vertical (Line) Tabulation void cs_fn_CBT(void *ctx, int paramc, unsigned int *paramv); // Cursor Backward Tabulation void cs_fn_SRS(void *ctx, int paramc, unsigned int *paramv); // Start Reversed String void cs_fn_PTX(void *ctx, int paramc, unsigned int *paramv); // Parallel Texts void cs_fn_SDS(void *ctx, int paramc, unsigned int *paramv); // Start Directed String void cs_fn_SIMD(void *ctx, int paramc, unsigned int *paramv); // Select Implicit Movement Direction void cs_fn_HPA(void *ctx, int paramc, unsigned int *paramv); // Horizontal Position Absolute void cs_fn_REP(void *ctx, int paramc, unsigned int *paramv); // Repeat void cs_fn_DA(void *ctx, int paramc, unsigned int *paramv); // Device Attributes void cs_fn_VPA(void *ctx, int paramc, unsigned int *paramv); // Vertical Position Absolute void cs_fn_TBC(void *ctx, int paramc, unsigned int *paramv); // Tabulation Clear void cs_fn_SM(void *ctx, int paramc, unsigned int *paramv); // Set Mode void cs_fn_MC(void *ctx, int paramc, unsigned int *paramv); // Media Copy void cs_fn_HPB(void *ctx, int paramc, unsigned int *paramv); // Horizontal (Character) Position Backward void cs_fn_VPB(void *ctx, int paramc, unsigned int *paramv); // Vertical (Line) Position Backward void cs_fn_RM(void *ctx, int paramc, unsigned int *paramv); // Reset Mode void cs_fn_SGR(void *ctx, int paramc, unsigned int *paramv); // Set Graphic Rendition void cs_fn_DSR(void *ctx, int paramc, unsigned int *paramv); // Device Status Report void cs_fn_DAQ(void *ctx, int paramc, unsigned int *paramv); // Define Area Qualification void cs_fn_SL(void *ctx, int paramc, unsigned int *paramv); // Scroll Left void cs_fn_SR(void *ctx, int paramc, unsigned int *paramv); // Scroll Right void cs_fn_GSM(void *ctx, int paramc, unsigned int *paramv); // Graphic Size Modification void cs_fn_GSS(void *ctx, int paramc, unsigned int *paramv); // Graphic Size Selection void cs_fn_FNT(void *ctx, int paramc, unsigned int *paramv); // Font Selection void cs_fn_TSS(void *ctx, int paramc, unsigned int *paramv); // Thin Space Specification void cs_fn_JFY(void *ctx, int paramc, unsigned int *paramv); // Justify void cs_fn_SPI(void *ctx, int paramc, unsigned int *paramv); // Spacing Increment void cs_fn_QUAD(void *ctx, int paramc, unsigned int *paramv); // Quad void cs_fn_SSU(void *ctx, int paramc, unsigned int *paramv); // Select Size Unit void cs_fn_PFS(void *ctx, int paramc, unsigned int *paramv); // Page Format Selection void cs_fn_SHS(void *ctx, int paramc, unsigned int *paramv); // Select Horizontal Spacing void cs_fn_SVS(void *ctx, int paramc, unsigned int *paramv); // Select Vertical Spacing void cs_fn_IGS(void *ctx, int paramc, unsigned int *paramv); // Identify Graphics Subrepertoire void cs_fn_HTSA(void *ctx, int paramc, unsigned int *paramv); // Horizontal Tabulation Set Absolute void cs_fn_IDCS(void *ctx, int paramc, unsigned int *paramv); // Identify Device Control String void cs_fn_PPA(void *ctx, int paramc, unsigned int *paramv); // Page Position Absolute void cs_fn_PPR(void *ctx, int paramc, unsigned int *paramv); // Page Position Relative void cs_fn_PPB(void *ctx, int paramc, unsigned int *paramv); // Page Position Backward void cs_fn_SPD(void *ctx, int paramc, unsigned int *paramv); // Select Presentation Directions void cs_fn_DTA(void *ctx, int paramc, unsigned int *paramv); // Dimension Text Area void cs_fn_SLH(void *ctx, int paramc, unsigned int *paramv); // Set Line Home void cs_fn_SLL(void *ctx, int paramc, unsigned int *paramv); // Set Line Limit void cs_fn_FNK(void *ctx, int paramc, unsigned int *paramv); // Function Key void cs_fn_SPQR(void *ctx, int paramc, unsigned int *paramv); // Select Print Quality & Rapidity void cs_fn_SEF(void *ctx, int paramc, unsigned int *paramv); // Sheet Eject & Feed void cs_fn_PEC(void *ctx, int paramc, unsigned int *paramv); // Presentation Expand or Contract void cs_fn_SSW(void *ctx, int paramc, unsigned int *paramv); // Set Space Width void cs_fn_SACS(void *ctx, int paramc, unsigned int *paramv); // Set Additional Character Separation void cs_fn_SAPV(void *ctx, int paramc, unsigned int *paramv); // Select Alternative Presentation Variants void cs_fn_STAB(void *ctx, int paramc, unsigned int *paramv); // Selective Tabulation void cs_fn_GCC(void *ctx, int paramc, unsigned int *paramv); // Graphic Character Combination void cs_fn_TATE(void *ctx, int paramc, unsigned int *paramv); // Tabulation Aligned Trailing Edge void cs_fn_TALE(void *ctx, int paramc, unsigned int *paramv); // Tabulation Aligned Leading Edge void cs_fn_TAC(void *ctx, int paramc, unsigned int *paramv); // Tabulation Aligned Centered void cs_fn_TCC(void *ctx, int paramc, unsigned int *paramv); // Tabulation Centered on Character void cs_fn_TSR(void *ctx, int paramc, unsigned int *paramv); // Tabulation Stop Remove void cs_fn_SCO(void *ctx, int paramc, unsigned int *paramv); // Set Character Orientation void cs_fn_SRCS(void *ctx, int paramc, unsigned int *paramv); // Set Reduced Character Separation void cs_fn_SCS(void *ctx, int paramc, unsigned int *paramv); // Set Character Spacing void cs_fn_SLS(void *ctx, int paramc, unsigned int *paramv); // Set Line Spacing void cs_fn_SPH(void *ctx, int paramc, unsigned int *paramv); // Set Page Home void cs_fn_SPL(void *ctx, int paramc, unsigned int *paramv); // Set Page Limit void cs_fn_SCP(void *ctx, int paramc, unsigned int *paramv); // Select Character Path void cs_fn_DECSSL(void *ctx, int paramc, unsigned int *paramv); // Select Set-Up Language void cs_fn_DECLL(void *ctx, int paramc, unsigned int *paramv); // Load LEDs void cs_fn_DECSTBM(void *ctx, int paramc, unsigned int *paramv); // Set Top & Bottom Margins void cs_fn_DECSLRM(void *ctx, int paramc, unsigned int *paramv); // Set Left & Right Margins void cs_fn_DECSLPP(void *ctx, int paramc, unsigned int *paramv); // Set Lines per Physical Page void cs_fn_DECREQTPARM(void *ctx, int paramc, unsigned int *paramv); // Request Terminal Parameters void cs_fn_DECTST(void *ctx, int paramc, unsigned int *paramv); // Invoke Confidence Test void cs_fn_DECTTC(void *ctx, int paramc, unsigned int *paramv); // Select Transmit Termination Character void cs_fn_DECPRO(void *ctx, int paramc, unsigned int *paramv); // Set Protected Field Attributes void cs_fn_DECFNK(void *ctx, int paramc, unsigned int *paramv); // Function Key void cs_fn_DECSSCLS(void *ctx, int paramc, unsigned int *paramv); // Set Scroll Speed void cs_fn_DECSCUSR(void *ctx, int paramc, unsigned int *paramv); // Set Cursor Style void cs_fn_DECSKCV(void *ctx, int paramc, unsigned int *paramv); // Set Keyclick Volume void cs_fn_DECSWBV(void *ctx, int paramc, unsigned int *paramv); // Set Warning Bell Volume void cs_fn_DECSMBV(void *ctx, int paramc, unsigned int *paramv); // Set Margin Bell Volume void cs_fn_DECSLCK(void *ctx, int paramc, unsigned int *paramv); // Set Lock Key Style void cs_fn_DECKBD(void *ctx, int paramc, unsigned int *paramv); // Keyboard Language Selection void cs_fn_DECTME(void *ctx, int paramc, unsigned int *paramv); // Terminal Mode Emulation void cs_fn_DECSTR(void *ctx, int paramc, unsigned int *paramv); // Soft Terminal Reset void cs_fn_DECSCL(void *ctx, int paramc, unsigned int *paramv); // Set Conformance Level void cs_fn_DECSCA(void *ctx, int paramc, unsigned int *paramv); // Select Character Attributes void cs_fn_DECSRFR(void *ctx, int paramc, unsigned int *paramv); // Select Refresh Rate void cs_fn_DECSTRL(void *ctx, int paramc, unsigned int *paramv); // Set Transmit Rate Limit void cs_fn_DECRQDE(void *ctx, int paramc, unsigned int *paramv); // Request Device Extent void cs_fn_DECRPDE(void *ctx, int paramc, unsigned int *paramv); // Report Device Extent void cs_fn_DECRQM(void *ctx, int paramc, unsigned int *paramv); // Request Mode Settings void cs_fn_DECSDDT(void *ctx, int paramc, unsigned int *paramv); // Select Disconnect Delay Time void cs_fn_DECCARA(void *ctx, int paramc, unsigned int *paramv); // Change Attributes in Rectangular Area void cs_fn_DECSPRTT(void *ctx, int paramc, unsigned int *paramv); // Select Printer Type void cs_fn_DECRARA(void *ctx, int paramc, unsigned int *paramv); // Reverse Attributes in Rectangular Area void cs_fn_DECRQTSR(void *ctx, int paramc, unsigned int *paramv); // Request Terminal State Report void cs_fn_DECCRA(void *ctx, int paramc, unsigned int *paramv); // Copy Rectangular Area void cs_fn_DECRQPSR(void *ctx, int paramc, unsigned int *paramv); // Request Presentation State Report void cs_fn_DECFRA(void *ctx, int paramc, unsigned int *paramv); // Fill Rectangular Area void cs_fn_DECRPM(void *ctx, int paramc, unsigned int *paramv); // Report Mode Settings void cs_fn_DECERA(void *ctx, int paramc, unsigned int *paramv); // Erase Rectangular Area void cs_fn_DECSERA(void *ctx, int paramc, unsigned int *paramv); // Selective Erase Rectangular Area void cs_fn_DECSCPP(void *ctx, int paramc, unsigned int *paramv); // Set Columns Per Page void cs_fn_DECSASD(void *ctx, int paramc, unsigned int *paramv); // Select Active Status Display void cs_fn_DECSSDT(void *ctx, int paramc, unsigned int *paramv); // Select Status Display Type void cs_fn_DECRQUPSS(void *ctx, int paramc, unsigned int *paramv); // Request User-Preferred Supplemental Set void cs_fn_DECLRP(void *ctx, int paramc, unsigned int *paramv); // Locator Report void cs_fn_DECES(void *ctx, int paramc, unsigned int *paramv); // Enable Session void cs_fn_DECTLTC(void *ctx, int paramc, unsigned int *paramv); // Transmit Line Termination Characters void cs_fn_DECEFR(void *ctx, int paramc, unsigned int *paramv); // Enable Filter Rectangle void cs_fn_DECELR(void *ctx, int paramc, unsigned int *paramv); // Enable Locator Reports void cs_fn_DECSLE(void *ctx, int paramc, unsigned int *paramv); // Select Locator Events void cs_fn_DECRQLP(void *ctx, int paramc, unsigned int *paramv); // Request Locator Position void cs_fn_DECIC(void *ctx, int paramc, unsigned int *paramv); // Insert Column void cs_fn_DECDC(void *ctx, int paramc, unsigned int *paramv); // Delete Column void cs_fn_DECSPDT(void *ctx, int paramc, unsigned int *paramv); // Select Digital Printed Data Type void cs_fn_DECSTGLT(void *ctx, int paramc, unsigned int *paramv); // Select Text/Graphics Look-Up Table void cs_fn_DECSPPCS(void *ctx, int paramc, unsigned int *paramv); // Select ProPrinter Character Set void cs_fn_DECSRC(void *ctx, int paramc, unsigned int *paramv); // Secure Reset Confirmation void cs_fn_DECSCS(void *ctx, int paramc, unsigned int *paramv); // Select Communication Speed void cs_fn_DECSFC(void *ctx, int paramc, unsigned int *paramv); // Select Flow Control void cs_fn_DECSCP(void *ctx, int paramc, unsigned int *paramv); // Select Communication Port void cs_fn_DECSACE(void *ctx, int paramc, unsigned int *paramv); // Select Attribute Change Extent void cs_fn_DECRQCRA(void *ctx, int paramc, unsigned int *paramv); // Request Checksum of Rectangular Area void cs_fn_DECINVM(void *ctx, int paramc, unsigned int *paramv); // Invoke Macro void cs_fn_DECMSR(void *ctx, int paramc, unsigned int *paramv); // Macro Space Report void cs_fn_DECSNLS(void *ctx, int paramc, unsigned int *paramv); // Select Number of Lines per Screen void cs_fn_DECLFKC(void *ctx, int paramc, unsigned int *paramv); // Local Function Key Control void cs_fn_DECSR(void *ctx, int paramc, unsigned int *paramv); // Secure Reset void cs_fn_DECELF(void *ctx, int paramc, unsigned int *paramv); // Enable Local Functions void cs_fn_DECSMKR(void *ctx, int paramc, unsigned int *paramv); // Select Modifier Key Reporting void cs_fn_DECSPP(void *ctx, int paramc, unsigned int *paramv); // Select Port Parameter void cs_fn_DECRQPKFM(void *ctx, int paramc, unsigned int *paramv); // Program Key Free Memory Inquiry void cs_fn_DECPKFMR(void *ctx, int paramc, unsigned int *paramv); // Program Key Free Memory Report void cs_fn_DECPKA(void *ctx, int paramc, unsigned int *paramv); // Program Key Action void cs_fn_DECLTOD(void *ctx, int paramc, unsigned int *paramv); // Load Time of Day void cs_fn_DECTID(void *ctx, int paramc, unsigned int *paramv); // Select Terminal ID void cs_fn_DECRQKT(void *ctx, int paramc, unsigned int *paramv); // Key Type Inquiry void cs_fn_DECRPKT(void *ctx, int paramc, unsigned int *paramv); // Report Key Type void cs_fn_DECRQKD(void *ctx, int paramc, unsigned int *paramv); // Request Key Definition void cs_fn_DECSPMA(void *ctx, int paramc, unsigned int *paramv); // Session Page Memory Allocation void cs_fn_DECUS(void *ctx, int paramc, unsigned int *paramv); // Update Session void cs_fn_DECDLDA(void *ctx, int paramc, unsigned int *paramv); // Down Line Load Allocation void cs_fn_DECSZS(void *ctx, int paramc, unsigned int *paramv); // Select Zero Symbol void cs_fn_DECAC(void *ctx, int paramc, unsigned int *paramv); // Assign Color void cs_fn_DECATC(void *ctx, int paramc, unsigned int *paramv); // Alternate Text Color void cs_fn_DECPS(void *ctx, int paramc, unsigned int *paramv); // Play Sound void cs_fn_DECARR(void *ctx, int paramc, unsigned int *paramv); // Select Auto Repeat Rate void cs_fn_DECCRTST(void *ctx, int paramc, unsigned int *paramv); // CRT Saver Timing void cs_fn_DECSEST(void *ctx, int paramc, unsigned int *paramv); // Energy Saver Timing extern struct control_seq_table CS_Table; #endif