/******************************************************************** PopCALC -- INITIALIZATION/DISPOSABLE DATA Copyright (c) 1992-94 by Omega Point, Inc. *********************************************************************/ #include "cr.h" /******************************************************************* NOTE FOR Microsoft C users: MSC will complain about strings in this module being too long. Break up the longer strings into 3 pieces and place ` as the last character of each inner string segment. Function dspf() will display the combined string correctly (see CodeRunneR's READ.ME file for more info). *******************************************************************/ /** These disposable messages go thru dspf **/ char cmd_ln_err[]="Bad command line switch: X "; char loaded_msg[]="Loaded"; char hello_atr[]={0x1b,0x1e,0x1f,0x1c,0x4e,0x1b}; char mono_atr[]={0x70,0x70,0x70,0x70,0x0f,0x70}; char first_msg[]="`2\ `\xc2`m\ `\x5PopCALC, Ver 1.24 - Programmers Calculator - Shareware `w\ `\x11(C) 1992 by Omega Point, Inc. `w\ `5Ä`w`0\ PopCALC is a TSR calculator written entirely in C. The secret `w\ of its small size (`2TSR ÷ 6.3K`0) and speed is `4 CodeRunneR `0 (tm), `w\ an amazing new library and runtime support for C and assembler. `w\ `1CodeRunneR`0 (patent pending) lets you create, with the `1ease of C`0, `w\ TSRs `1rivaling professional assembler`0 programs in size & speed. `w\ `5Ä`w\ `3þ`0 CodeRunneR has `1> 300 func's`0, hand-crafted in pure assembler. `w\ `3þ`0 Initialization code and data `1AUTO-RELEASED`0 from TSR memory. `w\ `3þ`0 `1BCD math`0, up to `1248`0 significant digits, exp up to 10^`1ñ16383`0. `w\ `3þ`0 `1Multitasking`0, dynamic `1hot-keys`0, `1scheduler`0, sw/hdw interrupts. `w\ `3þ`0 TSRs can run in `1LIM`0, `1execute`0 programs, `1overlay`0 foreground prog. `w\ `3þ`0 Transparent `1DOS`0/file acces. `1Auto-sensed`0 video, new keyboards. `w\ `3þ`1 Free source`0 for PopCALC `1+ 5`0 other \"must-have\" TSR utilities. `w\ `5Ä`w`0\ `4 Order/Info `2 (508) 877-1819`0 Fax: `2877-0915`0 Public BBS: `2875-8009`0 `w\ $ `210 `3Í`0 Latest PopCALC with source, doc & CodeRunneR brochure. `w\ $`2195 `3Í`0 CodeRunneR w/360 pg. manual, On-Line `1Hypertext`0 Help. `w\ `r"; char hello_msg[]="`2\ `\xb7`m\ PopCALC 1.24 - (C) 1992 by OP Author: Ratko Tomic `w\ `5Ä`w\ `\x4`4 Right-Alt `0: Pop-Up/Clear (also `4 Alt-SPACE `0) `w\ `\x9`1Alt-X `0: Unload from RAM (if loaded last) `w\ `\xb`1\x18 \x19 `0: Move window Up/Down (row 1-25) `w\ `\x5`1Ctl-D H B `0: Result RADIX: `2Dec`0, Hex, Bin `w\ `\x5`1Ctl-L I C `0: WORD SIZE: `24`0,2,1 bytes `w\ `\x7`1Ctl-S U `0: `2Signed`0, Unsigned `w\ `\x9`1=`0,`1ÄÙ `0: Evaluate up to current statement (`1;`0) `w\ `\x5`1Shift ÄÙ `0: Evaluate and Clear line (or `1F10`0) `w\ `\x7`1F5 `0(`1F6`0) : Send result as keys in C (ASM) form `w\ `5Ä`w\ `3þ `2NUMBERS: `0Hex start with `10`0, Bin with `1```0, Dec with `11-9`0 `w\ `3þ `2OPERATORS: `1()`0,`1~ -`0,`1* / % \x5c`0,`1+ -`0,`1<< >> [[ ]]`0,\ `1&`0,`1^`0,`1|`0,`1'`0,`1; `w\ `3þ `2LEARN: `1'a`0..`1'z`0: Set variable `1a`0..`1z`0 to value so far `w\ `3þ `2LAST VAL: `1? `3þ `2CMD LINE: `1D H B L I C S U 1`0-`125`0 (row) `w\ `3þ `2SYNTAX/C: `0`1;`0... `3þ `2EDIT: `0Ins, End, Ctl \x1b\x1a `w\ `r"; /** HOT-KEY FOR CALCULATOR ACTIVATION (disposable in this program) **/ word hk_list[]={K_RA,M_LA+57,0}; /* Right Alt, Ctl-SPACE */ /** Configuration Record **/ /**** config_block STORED IN (any) ONE MODULE ONLY ****/ struct cfg_rec config_block = { /* This record stays in only one module */ sizeof(config_block), /* Configuration block size */ 'P','C','A','L', /* Program ID string */ 101 /* Version 1.01 */ }; /** Leave program name (without memory overhead) **/ char _tsr_name[]="PopCALC (c) 1992 by OP"; /*************************************************************************** THIS FOLLOWS IMMEDIATELY AFTER THE LAST DISPOSABLE DATA ITEM ****************************************************************************/ /**** 1. Store all "install_" type function pointers into install_list ****/ fp install_list[]={install_hk,install_tsc}; /**** 2. Put Marker for the end-of-init-data (must be = NZ) ****/ word init_data_end=1; /************************************************************************/