How does this code match up with what other folks have found? Not sure yet why engine rpm is calculated twice with different scale factors... re-use of older code??

Code:
************************************************
* OPTISPARK LOW RES SIGNAL IS DRIVEN OFF THE CAM
* AND HAS EIGHT SLOTS. EACH TWO ENGINE REVS GENERATE
* EIGHT PULSES OR FOUR PER REVOLUTION. 
*
* LOCATION $01E0 IS THE NUMBER OF 5.086US TICKS 
* BETWEEN EACH CYL. THIS VALUE COMES FROM 
* THE TIMER CLOCK INPUT AND PRESCALE AS:
* 12.5829MHZ /4 /16 = 196,608HZ OR 5.086US
*
* FDIV DIVIDES THE CONSTANT 461 * 2^16 OR 30,212,096
* DIVIDED BY THE NUMBER OF TICKS
* RESULT IS 8 * RPM.
*
* FOR 1000RPM, OR 16.66RPS, EACH OF THE EIGHT LOW
* RES PULSES HAPPEN AT 90 DEGREES (CRANK-> 45 CAM&OPTI)
* OR 66.666HZ/.015MS
* 15MS/5.086US = 2949 TICKS BETWEEN LOW RES PULSES
* 30,212,096/2949 = 10244....1000 RPM.
***********************************************

7182  FE 01 E0    	LDX    $01E0           ; TIMER TICKS BETWEEN LO RES INTS
7185  CC 01 CD    	LDD    #$01CD          ; DIVIDE CONSTANT 461 * 65536
7188  03          	FDIV                   ; DIVIDE TO GET RPM * 10
7189  8F          	XGDX                   ; 
718A  37          	PSHB                   ; SAVE RPM * 10
718B  36          	PSHA                   ; 
718C  C3 00 80    	ADDD   #$0080          ; FORCE CARRY OUT FROM LSBYTE
718F  24 02       	BCC    $7193           ; SHOULD NOT OVERFLOW

7191  86 FF       	LDAA   #$FF            ; FORCE ERROR INDICATION
7193  B7 01 62    	STAA   $0162           ; RPM * 10/256 OR RPM/25

7196  32          	PULA                   ; RESTORE RPM * 10
7197  33          	PULB                   ; 
7198  05          	ASLD                   ; MULTIPLY BY 2
7199  25 05       	BCS    $71A0           ;  

719B  C3 00 80    	ADDD   #$0080          ; FORCE CARRY OUT FROM LSBYTE
719E  24 02       	BCC    $71A2           ; 

71A0  86 FF       	LDAA   #$FF            ; FORCE ERROR INDICATION
71A2  B7 01 63    	STAA   $0163           ; RPM * 20/256 OR RPM/12.5

71A5  5F          	CLRB                   ; 
71A6  FE 01 64    	LDX    $0164           ; READ AGERAGE RPM
71A9  27 06       	BEQ    $71B1           ; IF ENGINE NOT RUNNING, BRANCH

71AB  F6 2A 25    	LDAB   $2A25           ; FLASH CONST $33
71AE  BD 4E 94    	JSR    $4E94           ; CALCULATE AVERAGE, OLD * 5/6 + 33 * NEW

71B1  FD 01 64    	STD    $0164           ; UPDATE 20 * RPM


* CALCULATE HIGH RESOLUTION ENGINE SPEED: RPM X 4
71B4  CC 00 B4    	LDD    #$00B4          ; DIVIDE CONSTANT 180 * 65536
71B7  FE 01 E0    	LDX    $01E0           ; TIMER TICKS BETWEEN LO RES INTS
71BA  03          	FDIV                   ; RESULT IS 4* RPM
71BB  8C 00 B4    	CPX    #$00B4          ; TEST FOR 45 RPM
71BE  22 03       	BHI    $71C3           ; BRANCH IF RUNNING...

71C0  CE 00 00    	LDX    #$0000          ; MARK AS NOT RUNNING
71C3  FF 01 D0    	STX    $01D0           ; ENGINE RPM X 4