; PicBasic Pro Compiler 2.33, (c) 1998, 2001 microEngineering Labs, Inc. All Rights Reserved. PM_USED EQU 1 INCLUDE "16F628.INC" RAM_START EQU 00020h RAM_END EQU 0014Fh RAM_BANKS EQU 00003h BANK0_START EQU 00020h BANK0_END EQU 0007Fh BANK1_START EQU 000A0h BANK1_END EQU 000EFh BANK2_START EQU 00120h BANK2_END EQU 0014Fh EEPROM_START EQU 02100h EEPROM_END EQU 0217Fh R0 EQU RAM_START + 000h R1 EQU RAM_START + 002h R2 EQU RAM_START + 004h R3 EQU RAM_START + 006h R4 EQU RAM_START + 008h R5 EQU RAM_START + 00Ah R6 EQU RAM_START + 00Ch R7 EQU RAM_START + 00Eh R8 EQU RAM_START + 010h T1 EQU RAM_START + 012h T2 EQU RAM_START + 014h FLAGS EQU RAM_START + 016h GOP EQU RAM_START + 017h RM1 EQU RAM_START + 018h RM2 EQU RAM_START + 019h RR1 EQU RAM_START + 01Ah RR2 EQU RAM_START + 01Bh _element EQU RAM_START + 01Ch _command EQU RAM_START + 01Eh _dahtime EQU RAM_START + 01Fh _dittime EQU RAM_START + 020h _Keyflag EQU RAM_START + 021h _newchar EQU RAM_START + 022h _Nullflag EQU RAM_START + 023h _onemin EQU RAM_START + 024h _pointer EQU RAM_START + 025h _QRSS EQU RAM_START + 026h _QRSSflag EQU RAM_START + 027h _verify EQU RAM_START + 028h _verylong EQU RAM_START + 029h _X EQU RAM_START + 02Ah _PORTL EQU PORTB _PORTH EQU PORTA _TRISL EQU TRISB _TRISH EQU TRISA #define _trigger _PORTA_2 #define _program _PORTA_3 #define _Serial_in _PORTA_4 #define _PTT _PORTB_0 #define _Key _PORTB_1 #define _Serial_out _PORTB_2 #define _Sidetone _PORTB_3 #define _EL_pwr _PORTB_4 #define _Low_pwr _PORTB_5 #define _Med_pwr _PORTB_6 #define _High_pwr _PORTB_7 #define _PORTA_2 PORTA, 002h #define _PORTA_3 PORTA, 003h #define _PORTA_4 PORTA, 004h #define _PORTB_0 PORTB, 000h #define _PORTB_1 PORTB, 001h #define _PORTB_2 PORTB, 002h #define _PORTB_3 PORTB, 003h #define _PORTB_4 PORTB, 004h #define _PORTB_5 PORTB, 005h #define _PORTB_6 PORTB, 006h #define _PORTB_7 PORTB, 007h ; EEPROM data. ORG EEPROM_START DE 050h DE 053h DE 044h DE 076h DE 076h DE 076h DE 053h DE 051h DE 053h DE 05Ah INCLUDE "BEACON6.MAC" INCLUDE "PBPPIC14.LIB" MOVE?CB 007h, CMCON MOVE?CB 01Ch, TRISA MOVE?CB 000h, TRISB MOVE?CW 03Ch, _element MOVE?CB 005h, _dittime MOVE?CB 00Fh, _dahtime MOVE?CB 003h, _QRSS MOVE?CB 000h, _Nullflag MOVE?CB 000h, _QRSSflag LABEL?L _Start CMPNE?TCL _program, 001h, L00001 GOTO?L _main LABEL?L L00001 SERPIN?T _Serial_out SERMODE?C 006h SEROUT?C 00Dh SEROUT?C 00Ah MOVE?CB 000h, _pointer LABEL?L _loopecho READ?BB _pointer, _command SERPIN?T _Serial_out SERMODE?C 006h SEROUT?B _command ADD?BCB _pointer, 001h, _pointer CMPNE?BCL _pointer, 07Fh, L00003 GOTO?L _doneecho LABEL?L L00003 CMPNE?BCL _command, 05Ah, L00005 GOTO?L _doneecho LABEL?L L00005 GOTO?L _loopecho LABEL?L _doneecho SERPIN?T _Serial_out SERMODE?C 006h SEROUT?C 00Dh SEROUT?C 00Ah SERPIN?T _Serial_out SERMODE?C 006h SEROUT?C 00Dh SEROUT?C 00Ah SEROUT?C 043h SEROUT?C 068h SEROUT?C 061h SEROUT?C 06Eh SEROUT?C 067h SEROUT?C 065h SEROUT?C 020h SEROUT?C 070h SEROUT?C 072h SEROUT?C 06Fh SEROUT?C 067h SEROUT?C 072h SEROUT?C 061h SEROUT?C 06Dh SEROUT?C 03Fh SEROUT?C 020h SEROUT?C 079h SEROUT?C 02Fh SEROUT?C 06Eh SEROUT?C 00Dh SEROUT?C 00Ah GOSUB?L _send_y GOSUB?L _question SERPIN?T _Serial_in SERMODE?C 006h SERTIME?C 02710h SERIN?BL _verify, _main CMPEQ?BCL _verify, 079h, L00007 GOTO?L _main LABEL?L L00007 SERPIN?T _Serial_out SERMODE?C 006h SEROUT?C 00Dh SEROUT?C 00Ah SEROUT?C 045h SEROUT?C 06Eh SEROUT?C 074h SEROUT?C 065h SEROUT?C 072h SEROUT?C 020h SEROUT?C 06Eh SEROUT?C 065h SEROUT?C 077h SEROUT?C 020h SEROUT?C 070h SEROUT?C 072h SEROUT?C 06Fh SEROUT?C 067h SEROUT?C 072h SEROUT?C 061h SEROUT?C 06Dh SEROUT?C 020h SEROUT?C 066h SEROUT?C 06Fh SEROUT?C 06Ch SEROUT?C 06Ch SEROUT?C 06Fh SEROUT?C 077h SEROUT?C 065h SEROUT?C 064h SEROUT?C 020h SEROUT?C 062h SEROUT?C 079h SEROUT?C 020h SEROUT?C 05Ah SEROUT?C 02Eh SEROUT?C 00Dh SEROUT?C 00Ah GOSUB?L _send_o GOSUB?L _send_k MOVE?CB 000h, _pointer LABEL?L _prog SERPIN?T _Serial_in SERMODE?C 006h SERIN?B _newchar WRITE?BB _pointer, _newchar SERPIN?T _Serial_out SERMODE?C 006h SEROUT?B _newchar CMPNE?BCL _newchar, 05Ah, L00009 GOTO?L _main LABEL?L L00009 ADD?BCB _pointer, 001h, _pointer CMPNE?BCL _pointer, 07Fh, L00011 GOTO?L _main LABEL?L L00011 GOTO?L _prog LABEL?L _main GOSUB?L _HighP GOSUB?L _Keyup MOVE?CB 000h, _pointer LABEL?L _Loop READ?BB _pointer, _command CMPNE?BCL _command, 061h, L00013 GOSUB?L _send_a LABEL?L L00013 CMPNE?BCL _command, 062h, L00015 GOSUB?L _send_b LABEL?L L00015 CMPNE?BCL _command, 063h, L00017 GOSUB?L _send_c LABEL?L L00017 CMPNE?BCL _command, 064h, L00019 GOSUB?L _send_d LABEL?L L00019 CMPNE?BCL _command, 065h, L00021 GOSUB?L _send_e LABEL?L L00021 CMPNE?BCL _command, 066h, L00023 GOSUB?L _send_f LABEL?L L00023 CMPNE?BCL _command, 067h, L00025 GOSUB?L _send_g LABEL?L L00025 CMPNE?BCL _command, 068h, L00027 GOSUB?L _send_h LABEL?L L00027 CMPNE?BCL _command, 069h, L00029 GOSUB?L _send_i LABEL?L L00029 CMPNE?BCL _command, 06Ah, L00031 GOSUB?L _send_j LABEL?L L00031 CMPNE?BCL _command, 06Bh, L00033 GOSUB?L _send_k LABEL?L L00033 CMPNE?BCL _command, 06Ch, L00035 GOSUB?L _send_l LABEL?L L00035 CMPNE?BCL _command, 06Dh, L00037 GOSUB?L _send_m LABEL?L L00037 CMPNE?BCL _command, 06Eh, L00039 GOSUB?L _send_n LABEL?L L00039 CMPNE?BCL _command, 06Fh, L00041 GOSUB?L _send_o LABEL?L L00041 CMPNE?BCL _command, 070h, L00043 GOSUB?L _send_p LABEL?L L00043 CMPNE?BCL _command, 071h, L00045 GOSUB?L _send_q LABEL?L L00045 CMPNE?BCL _command, 072h, L00047 GOSUB?L _send_r LABEL?L L00047 CMPNE?BCL _command, 073h, L00049 GOSUB?L _send_s LABEL?L L00049 CMPNE?BCL _command, 074h, L00051 GOSUB?L _send_t LABEL?L L00051 CMPNE?BCL _command, 075h, L00053 GOSUB?L _send_u LABEL?L L00053 CMPNE?BCL _command, 076h, L00055 GOSUB?L _send_v LABEL?L L00055 CMPNE?BCL _command, 077h, L00057 GOSUB?L _send_w LABEL?L L00057 CMPNE?BCL _command, 078h, L00059 GOSUB?L _send_x LABEL?L L00059 CMPNE?BCL _command, 079h, L00061 GOSUB?L _send_y LABEL?L L00061 CMPNE?BCL _command, 07Ah, L00063 GOSUB?L _send_z LABEL?L L00063 CMPNE?BCL _command, 031h, L00065 GOSUB?L _send_1 LABEL?L L00065 CMPNE?BCL _command, 032h, L00067 GOSUB?L _send_2 LABEL?L L00067 CMPNE?BCL _command, 033h, L00069 GOSUB?L _send_3 LABEL?L L00069 CMPNE?BCL _command, 034h, L00071 GOSUB?L _send_4 LABEL?L L00071 CMPNE?BCL _command, 035h, L00073 GOSUB?L _send_5 LABEL?L L00073 CMPNE?BCL _command, 036h, L00075 GOSUB?L _send_6 LABEL?L L00075 CMPNE?BCL _command, 037h, L00077 GOSUB?L _send_7 LABEL?L L00077 CMPNE?BCL _command, 038h, L00079 GOSUB?L _send_8 LABEL?L L00079 CMPNE?BCL _command, 039h, L00081 GOSUB?L _send_9 LABEL?L L00081 CMPNE?BCL _command, 030h, L00083 GOSUB?L _send_0 LABEL?L L00083 CMPNE?BCL _command, 020h, L00085 GOSUB?L _space LABEL?L L00085 CMPNE?BCL _command, 02Fh, L00087 GOSUB?L _slash LABEL?L L00087 CMPNE?BCL _command, 02Eh, L00089 GOSUB?L _period LABEL?L L00089 CMPNE?BCL _command, 02Ch, L00091 GOSUB?L _comma LABEL?L L00091 CMPNE?BCL _command, 03Fh, L00093 GOSUB?L _question LABEL?L L00093 CMPNE?BCL _command, 03Dh, L00095 GOSUB?L _BT LABEL?L L00095 CMPNE?BCL _command, 02Bh, L00097 GOSUB?L _AR LABEL?L L00097 CMPNE?BCL _command, 026h, L00099 GOSUB?L _AS LABEL?L L00099 CMPNE?BCL _command, 028h, L00101 GOSUB?L _KN LABEL?L L00101 CMPNE?BCL _command, 02Ah, L00103 GOSUB?L _SK LABEL?L L00103 CMPNE?BCL _command, 040h, L00105 GOSUB?L _AT LABEL?L L00105 CMPNE?BCL _command, 041h, L00107 GOSUB?L _WPM5 LABEL?L L00107 CMPNE?BCL _command, 042h, L00109 GOSUB?L _WPM10 LABEL?L L00109 CMPNE?BCL _command, 043h, L00111 GOSUB?L _WPM15 LABEL?L L00111 CMPNE?BCL _command, 044h, L00113 GOSUB?L _WPM21 LABEL?L L00113 CMPNE?BCL _command, 045h, L00115 GOSUB?L _WPM52 LABEL?L L00115 CMPNE?BCL _command, 046h, L00117 GOSUB?L _Five LABEL?L L00117 CMPNE?BCL _command, 048h, L00119 GOSUB?L _HighP LABEL?L L00119 CMPNE?BCL _command, 049h, L00121 GOSUB?L _QRSSoff LABEL?L L00121 CMPNE?BCL _command, 04Bh, L00123 GOSUB?L _Keydown LABEL?L L00123 CMPNE?BCL _command, 04Ch, L00125 GOSUB?L _LowP LABEL?L L00125 CMPNE?BCL _command, 04Dh, L00127 GOSUB?L _MediumP LABEL?L L00127 CMPNE?BCL _command, 04Eh, L00129 GOSUB?L _Null LABEL?L L00129 CMPNE?BCL _command, 04Fh, L00131 GOSUB?L _One LABEL?L L00131 CMPNE?BCL _command, 050h, L00133 GOSUB?L _PTTon LABEL?L L00133 CMPNE?BCL _command, 051h, L00135 GOSUB?L _PTToff LABEL?L L00135 CMPNE?BCL _command, 052h, L00137 GOSUB?L _QRSSon LABEL?L L00137 CMPNE?BCL _command, 053h, L00139 GOSUB?L _Second LABEL?L L00139 CMPNE?BCL _command, 054h, L00141 GOSUB?L _Tenth LABEL?L L00141 CMPNE?BCL _command, 055h, L00143 GOSUB?L _Keyup LABEL?L L00143 CMPNE?BCL _command, 056h, L00145 GOSUB?L _Very LABEL?L L00145 CMPNE?BCL _command, 057h, L00147 GOSUB?L _WaitTrig LABEL?L L00147 CMPNE?BCL _command, 058h, L00149 GOSUB?L _ExtraP LABEL?L L00149 CMPNE?BCL _command, 05Ah, L00151 GOTO?L _main LABEL?L L00151 ADD?BCB _pointer, 001h, _pointer CMPNE?BCL _pointer, 07Fh, L00153 GOTO?L _main LABEL?L L00153 GOTO?L _Loop LABEL?L _send_a GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_b GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_c GOSUB?L _dah GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_d GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_e GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_f GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_g GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_h GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_i GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_j GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_k GOSUB?L _dah GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_l GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_m GOSUB?L _dah GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_n GOSUB?L _dah GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_o GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_p GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_q GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_r GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_s GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_t GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_u GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_v GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_w GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_x GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_y GOSUB?L _dah GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_z GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_1 GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_2 GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_3 GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_4 GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_5 GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_6 GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_7 GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_8 GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_9 GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _send_0 GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _slash GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _period GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _comma GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _question GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _BT GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _AR GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _AS GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _KN GOSUB?L _dah GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _SK GOSUB?L _dit GOSUB?L _dit GOSUB?L _dit GOSUB?L _dah GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _AT GOSUB?L _dit GOSUB?L _dah GOSUB?L _dah GOSUB?L _dit GOSUB?L _dah PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _dit CMPNE?BCL _QRSSflag, 001h, L00155 GOTO?L _QRSSdit LABEL?L L00155 MOVE?CT 001h, _Key SOUNDPIN?T _Sidetone SOUND?CB 06Eh, _dittime MOVE?CT 000h, _Key PAUSE?W _element RETURN? LABEL?L _QRSSdit MOVE?CT 001h, _Key MOVE?CB 001h, _X LABEL?L L00157 CMPGT?BBL _X, _QRSS, L00158 SOUNDPIN?T _Sidetone SOUND?CC 06Eh, 053h NEXT?BCL _X, 001h, L00157 LABEL?L L00158 MOVE?CT 000h, _Key PAUSE?W _element RETURN? LABEL?L _dah CMPNE?BCL _QRSSflag, 001h, L00159 GOTO?L _QRSSdah LABEL?L L00159 MOVE?CT 001h, _Key SOUNDPIN?T _Sidetone SOUND?CB 06Eh, _dahtime MOVE?CT 000h, _Key PAUSE?W _element RETURN? LABEL?L _QRSSdah MOVE?CT 001h, _Key MOVE?CB 001h, _X LABEL?L L00161 CMPGT?BBL _X, _QRSS, L00162 SOUNDPIN?T _Sidetone SOUND?CC 06Eh, 0FAh NEXT?BCL _X, 001h, L00161 LABEL?L L00162 MOVE?CT 000h, _Key PAUSE?W _element RETURN? LABEL?L _space PAUSE?W _element PAUSE?W _element PAUSE?W _element RETURN? LABEL?L _WPM5 MOVE?CW 0FAh, _element MOVE?CB 015h, _dittime MOVE?CB 03Fh, _dahtime MOVE?CB 03Ch, _QRSS CMPNE?BCL _QRSSflag, 001h, L00163 MOVE?CW 0EA60h, _element LABEL?L L00163 RETURN? LABEL?L _WPM10 MOVE?CW 078h, _element MOVE?CB 00Ah, _dittime MOVE?CB 01Eh, _dahtime MOVE?CB 01Eh, _QRSS CMPNE?BCL _QRSSflag, 001h, L00165 MOVE?CW 07530h, _element LABEL?L L00165 RETURN? LABEL?L _WPM15 MOVE?CW 054h, _element MOVE?CB 007h, _dittime MOVE?CB 015h, _dahtime MOVE?CB 00Ah, _QRSS CMPNE?BCL _QRSSflag, 001h, L00167 MOVE?CW 02710h, _element LABEL?L L00167 RETURN? LABEL?L _WPM21 MOVE?CW 03Ch, _element MOVE?CB 005h, _dittime MOVE?CB 00Fh, _dahtime MOVE?CB 003h, _QRSS CMPNE?BCL _QRSSflag, 001h, L00169 MOVE?CW 00BB8h, _element LABEL?L L00169 RETURN? LABEL?L _WPM52 MOVE?CW 018h, _element MOVE?CB 002h, _dittime MOVE?CB 006h, _dahtime MOVE?CB 001h, _QRSS CMPNE?BCL _QRSSflag, 001h, L00171 MOVE?CW 003E8h, _element LABEL?L L00171 RETURN? LABEL?L _HighP MOVE?CT 001h, _High_pwr MOVE?CT 000h, _Med_pwr MOVE?CT 000h, _Low_pwr MOVE?CT 000h, _EL_pwr RETURN? LABEL?L _MediumP MOVE?CT 000h, _High_pwr MOVE?CT 001h, _Med_pwr MOVE?CT 000h, _Low_pwr MOVE?CT 000h, _EL_pwr RETURN? LABEL?L _LowP MOVE?CT 000h, _High_pwr MOVE?CT 000h, _Med_pwr MOVE?CT 001h, _Low_pwr MOVE?CT 000h, _EL_pwr RETURN? LABEL?L _ExtraP MOVE?CT 000h, _High_pwr MOVE?CT 000h, _Med_pwr MOVE?CT 000h, _Low_pwr MOVE?CT 001h, _EL_pwr RETURN? LABEL?L _WaitTrig CMPNE?TCL _trigger, 001h, L00173 GOTO?L _WaitTrig LABEL?L L00173 RETURN? LABEL?L _Keydown MOVE?CT 001h, _Key MOVE?CB 001h, _Keyflag RETURN? LABEL?L _Keyup MOVE?CT 000h, _Key MOVE?CB 000h, _Keyflag RETURN? LABEL?L _Very CMPNE?BCL _Nullflag, 000h, L00175 MOVE?CB 001h, _verylong LABEL?L L00177 CMPGT?BCL _verylong, 00Ah, L00178 GOSUB?L _One NEXT?BCL _verylong, 001h, L00177 LABEL?L L00178 LABEL?L L00175 RETURN? LABEL?L _Null MOVE?CB 001h, _Nullflag RETURN? LABEL?L _One MOVE?CB 001h, _onemin LABEL?L L00179 CMPGT?BCL _onemin, 00Ch, L00180 GOSUB?L _Five NEXT?BCL _onemin, 001h, L00179 LABEL?L L00180 RETURN? LABEL?L _Five CMPNE?BCL _Keyflag, 001h, L00181 SOUNDPIN?T _Sidetone SOUND?CC 06Eh, 0D0h SOUNDPIN?T _Sidetone SOUND?CC 06Eh, 0D1h GOTO?L L00182 LABEL?L L00181 PAUSE?C 01388h LABEL?L L00182 RETURN? LABEL?L _Second CMPNE?BCL _Keyflag, 001h, L00183 SOUNDPIN?T _Sidetone SOUND?CC 06Eh, 053h GOTO?L L00184 LABEL?L L00183 PAUSE?C 003E8h LABEL?L L00184 RETURN? LABEL?L _Tenth CMPNE?BCL _Keyflag, 001h, L00185 SOUNDPIN?T _Sidetone SOUND?CC 06Eh, 008h GOTO?L L00186 LABEL?L L00185 PAUSE?C 064h LABEL?L L00186 RETURN? LABEL?L _PTTon MOVE?CT 001h, _PTT RETURN? LABEL?L _PTToff MOVE?CT 000h, _PTT RETURN? LABEL?L _QRSSon MOVE?CB 001h, _QRSSflag CMPNE?WCL _element, 0FAh, L00187 MOVE?CW 0EA60h, _element LABEL?L L00187 CMPNE?WCL _element, 078h, L00189 MOVE?CW 07530h, _element LABEL?L L00189 CMPNE?WCL _element, 054h, L00191 MOVE?CW 02710h, _element LABEL?L L00191 CMPNE?WCL _element, 03Ch, L00193 MOVE?CW 00BB8h, _element LABEL?L L00193 CMPNE?WCL _element, 018h, L00195 MOVE?CW 003E8h, _element LABEL?L L00195 RETURN? LABEL?L _QRSSoff MOVE?CB 000h, _QRSSflag CMPNE?WCL _element, 0EA60h, L00197 MOVE?CW 0FAh, _element LABEL?L L00197 CMPNE?WCL _element, 07530h, L00199 MOVE?CW 078h, _element LABEL?L L00199 CMPNE?WCL _element, 02710h, L00201 MOVE?CW 054h, _element LABEL?L L00201 CMPNE?WCL _element, 00BB8h, L00203 MOVE?CW 03Ch, _element LABEL?L L00203 CMPNE?WCL _element, 003E8h, L00205 MOVE?CW 018h, _element LABEL?L L00205 RETURN? END? END