home *** CD-ROM | disk | FTP | other *** search
- # $Header: P:/source/ppee/macros/ascii.pev 1.21 20 Aug 1990 15:24:42 skipr $
-
- ##############################################################################
- #
- # Sage Software - POLYTRON Division
- # 1700 NW 167th Place
- # Beaverton, OR 97006
- #
- # Copyright 1990, Sage Software, Inc.
- #
- # Permission is hereby granted for licensed users of Sage Professional
- # Editor and PolyAwk to copy and modify this source code for their own
- # personal use. These derivative works may be distributed only to other
- # licensed Sage Professional Editor and PolyAwk users. All other usage
- # is prohibited without express written permission from Sage Software.
- #
- ##############################################################################
-
- #### $Workfile: ascii.pel $ Ascii Table
-
- local ascii_page = 0;
-
- global function display_ascii_table() {
-
- local width = 23
- local height = 18
- local flags = WINDOW_NOBORDER
- local x0 = 5,
- y0 = 2
- local ch
- local ascii_to_insert
-
- current_window = create_window( x0, y0, width, height, flags )
- init_menu_colors();
- color_border = BAR_COLOR;
- color_text = BAR_COLOR;
-
- # update the window until invalid key pressed
- #
- while (TRUE) {
- window_cursor_x = window_cursor_y = 0;
-
- if (ascii_page == 0) {
- write_window("\
- ╔Dec Hex Ch Ctrl Code═╗\
- ║ 0 00 ^@ NUL ║\
- ║ 1 01 \01 ^A SOH ║\
- ║ 2 02 \02 ^B STX ║\
- ║ 3 03 \03 ^C ETX ║\
- ║ 4 04 \04 ^D EOT ║\
- ║ 5 05 \05 ^E ENQ ║\
- ║ 6 06 \06 ^F ACK ║\
- ║ 7 07 \07 ^G BEL ║" "\
- ║ 8 08 \10 ^H BS ║\
- ║ 9 09 \11 ^I HT ║\
- ║ 10 0a ^J LF ║\
- ║ 11 0b \13 ^K VT ║\
- ║ 12 0c \14 ^L FF ║\
- ║ 13 0d \15 ^M CR ║\
- ║ 14 0e \16 ^N SO ║\
- ║ 15 0f \17 ^O SI ║\
- ╚═══ I = Insert Ch. ══╝");
- } else if (ascii_page == 1) {
- write_window("\
- ╔Dec Hex Ch Ctrl Code═╗\
- ║ 16 10 \20 ^P DLE ║\
- ║ 17 11 \21 ^Q DC1 ║\
- ║ 18 12 \22 ^R DC2 ║\
- ║ 19 13 \23 ^S DC3 ║\
- ║ 20 14 \24 ^T DC4 ║\
- ║ 21 15 \25 ^U NAK ║\
- ║ 22 16 \26 ^V SYN ║\
- ║ 23 17 \27 ^W ETB ║" "\
- ║ 24 18 \30 ^X CAN ║\
- ║ 25 19 \31 ^Y EM ║\
- ║ 26 1a \32 ^Z SUB ║\
- ║ 27 1b \33 ^[ ESC ║\
- ║ 28 1c \34 ^\\ FS ║\
- ║ 29 1d \35 ^] GS ║\
- ║ 30 1e \36 ^^ RS ║\
- ║ 31 1f \37 ^_ US ║\
- ╚═══ I = Insert Ch. ══╝");
- } else if (ascii_page == 2) {
- write_window("\
- ╔Dec Hex Ch Dec Hex Ch╗\
- ║ 32 20 │ 48 30 0 ║\
- ║ 33 21 ! │ 49 31 1 ║\
- ║ 34 22 \" │ 50 32 2 ║\
- ║ 35 23 # │ 51 33 3 ║\
- ║ 36 24 $ │ 52 34 4 ║\
- ║ 37 25 % │ 53 35 5 ║\
- ║ 38 26 & │ 54 36 6 ║\
- ║ 39 27 ' │ 55 37 7 ║" "\
- ║ 40 28 ( │ 56 38 8 ║\
- ║ 41 29 ) │ 57 39 9 ║\
- ║ 42 2a * │ 58 3a : ║\
- ║ 43 2b + │ 59 3b ; ║\
- ║ 44 2c , │ 60 3c < ║\
- ║ 45 2d - │ 61 3d = ║\
- ║ 46 2e . │ 62 3e > ║\
- ║ 47 2f / │ 63 3f ? ║\
- ╚═══ I = Insert Ch. ══╝");
- } else if (ascii_page == 3) {
- write_window("\
- ╔Dec Hex Ch Dec Hex Ch╗\
- ║ 64 40 @ │ 80 50 P ║\
- ║ 65 41 A │ 81 51 Q ║\
- ║ 66 42 B │ 82 52 R ║\
- ║ 67 43 C │ 83 53 S ║\
- ║ 68 44 D │ 84 54 T ║\
- ║ 69 45 E │ 85 55 U ║\
- ║ 70 46 F │ 86 56 V ║\
- ║ 71 47 G │ 87 57 W ║" "\
- ║ 72 48 H │ 88 58 X ║\
- ║ 73 49 I │ 89 59 Y ║\
- ║ 74 4a J │ 90 5a Z ║\
- ║ 75 4b K │ 91 5b [ ║\
- ║ 76 4c L │ 92 5c \\ ║\
- ║ 77 4d M │ 93 5d ] ║\
- ║ 78 4e N │ 94 5e ^ ║\
- ║ 79 4f O │ 95 5f _ ║\
- ╚═══ I = Insert Ch. ══╝");
- } else if (ascii_page == 4) {
- write_window("\
- ╔Dec Hex Ch Dec Hex Ch╗\
- ║ 96 60 ` │112 70 p ║\
- ║ 97 61 a │113 71 q ║\
- ║ 98 62 b │114 72 r ║\
- ║ 99 63 c │115 73 s ║\
- ║100 64 d │116 74 t ║\
- ║101 65 e │117 75 u ║\
- ║102 66 f │118 76 v ║\
- ║103 67 g │119 77 w ║" "\
- ║104 68 h │120 78 x ║\
- ║105 69 i │121 79 y ║\
- ║106 6a j │122 7a z ║\
- ║107 6b k │123 7b { ║\
- ║108 6c l │124 7c | ║\
- ║109 6d m │125 7d } ║\
- ║110 6e n │126 7e ~ ║\
- ║111 6f o │127 7f ║\
- ╚═══ I = Insert Ch. ══╝");
- } else if (ascii_page == 5) {
- write_window("\
- ╔Dec Hex Ch Dec Hex Ch╗\
- ║128 80 Ç │144 90 É ║\
- ║129 81 ü │145 91 æ ║\
- ║130 82 é │146 92 Æ ║\
- ║131 83 â │147 93 ô ║\
- ║132 84 ä │148 94 ö ║\
- ║133 85 à │149 95 ò ║\
- ║134 86 å │150 96 û ║\
- ║135 87 ç │151 97 ù ║" "\
- ║136 88 ê │152 98 ÿ ║\
- ║137 89 ë │153 99 Ö ║\
- ║138 8a è │154 9a Ü ║\
- ║139 8b ï │155 9b ¢ ║\
- ║140 8c î │156 9c £ ║\
- ║141 8d ì │157 9d ¥ ║\
- ║142 8e Ä │158 9e ₧ ║\
- ║143 8f Å │159 9f ƒ ║\
- ╚═══ I = Insert Ch. ══╝");
- } else if (ascii_page == 6) {
- write_window("\
- ╔Dec Hex Ch Dec Hex Ch╗\
- ║160 a0 á │176 b0 ░ ║\
- ║161 a1 í │177 b1 ▒ ║\
- ║162 a2 ó │178 b2 ▓ ║\
- ║163 a3 ú │179 b3 │ ║\
- ║164 a4 ñ │180 b4 ┤ ║\
- ║165 a5 Ñ │181 b5 ╡ ║\
- ║166 a6 ª │182 b6 ╢ ║\
- ║167 a7 º │183 b7 ╖ ║" "\
- ║168 a8 ¿ │184 b8 ╕ ║\
- ║169 a9 ⌐ │185 b9 ╣ ║\
- ║170 aa ¬ │186 ba ║ ║\
- ║171 ab ½ │187 bb ╗ ║\
- ║172 ac ¼ │188 bc ╝ ║\
- ║173 ad ¡ │189 bd ╜ ║\
- ║174 ae « │190 be ╛ ║\
- ║175 af » │191 bf ┐ ║\
- ╚═══ I = Insert Ch. ══╝");
- } else if (ascii_page == 7) {
- write_window("\
- ╔Dec Hex Ch Dec Hex Ch╗\
- ║192 c0 └ │208 d0 ╨ ║\
- ║193 c1 ┴ │209 d1 ╤ ║\
- ║194 c2 ┬ │210 d2 ╥ ║\
- ║195 c3 ├ │211 d3 ╙ ║\
- ║196 c4 ─ │212 d4 ╘ ║\
- ║197 c5 ┼ │213 d5 ╒ ║\
- ║198 c6 ╞ │214 d6 ╓ ║" "\
- ║199 c7 ╟ │215 d7 ╫ ║\
- ║200 c8 ╚ │216 d8 ╪ ║\
- ║201 c9 ╔ │217 d9 ┘ ║\
- ║202 ca ╩ │218 da ┌ ║\
- ║203 cb ╦ │219 db █ ║\
- ║204 cc ╠ │220 dc ▄ ║\
- ║205 cd ═ │221 dd ▌ ║\
- ║206 ce ╬ │222 de ▐ ║\
- ║207 cf ╧ │223 df ▀ ║\
- ╚═══ I = Insert Ch. ══╝");
- } else if (ascii_page == 8) {
- write_window("\
- ╔Dec Hex Ch Dec Hex Ch╗\
- ║224 e0 α │240 f0 ≡ ║\
- ║225 e1 ß │241 f1 ± ║\
- ║226 e2 Γ │242 f2 ≥ ║\
- ║227 e3 π │243 f3 ≤ ║\
- ║228 e4 Σ │244 f4 ⌠ ║\
- ║229 e5 σ │245 f5 ⌡ ║\
- ║230 e6 µ │246 f6 ÷ ║\
- ║231 e7 τ │247 f7 ≈ ║" "\
- ║232 e8 Φ │248 f8 ° ║\
- ║233 e9 Θ │249 f9 ∙ ║\
- ║234 ea Ω │250 fa · ║\
- ║235 eb δ │251 fb √ ║\
- ║236 ec ∞ │252 fc ⁿ ║\
- ║237 ed φ │253 fd ² ║\
- ║238 ee ε │254 fe ■ ║\
- ║239 ef ∩ │255 ff ║\
- ╚═══ I = Insert Ch. ══╝");
- } # end if-else
-
- display_update();
-
- ch = shiftr( getkey(), 8 ) # scan code to handle both keypads
- if ( ch == SCANCODE_DOWN \
- || ch == SCANCODE_RIGHT \
- || ch == SCANCODE_PGDN ) {
- ascii_page = (ascii_page + 1) % 9
- } else if ( ch == SCANCODE_UP \
- || ch == SCANCODE_LEFT \
- || ch == SCANCODE_PGUP ) {
- ascii_page = (ascii_page + 8) % 9
- } else if ( ch == SCANCODE_HOME \
- || ch == SCANCODE_CTRL_PGUP ) {
- ascii_page = 0
- } else if( ch == SCANCODE_END \
- || ch == SCANCODE_CTRL_PGDN ) {
- ascii_page = 8
- } else if ( ch == shiftr( key_to_int( "<I>" ), 8 )) {
- ascii_to_insert = 0+prompt_history( \
- "XASCII",
- "Decimal Code of Character to Insert: ",
- ascii_to_insert )
- message( "" )
- if ( ascii_to_insert ){
- break
- }
- } else {
- break;
- }
- } # end while
-
- delete_window() # delete the ascii window
-
- if ( ascii_to_insert ){
- insert_key( ascii_to_insert )
- }
- }
-